[Stackmaps] Remove the liveness calculation for stackmap intrinsics.

There is no need to calculate the liveness information for stackmaps. The
liveness information is still available for the patchpoint intrinsic and
that is also the intended usage model.

Related to <rdar://problem/17473725>

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@211816 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Juergen Ributzka
2014-06-26 23:39:44 +00:00
parent 9bd578efea
commit 307a6447e5
4 changed files with 53 additions and 129 deletions

View File

@ -8,8 +8,8 @@
//===----------------------------------------------------------------------===//
//
// This pass calculates the liveness for each basic block in a function and
// attaches the register live-out information to a stackmap or patchpoint
// intrinsic if present.
// attaches the register live-out information to a patchpoint intrinsic (if
// present).
//
//===----------------------------------------------------------------------===//
@ -23,14 +23,13 @@
namespace llvm {
/// \brief This pass calculates the liveness information for each basic block in
/// a function and attaches the register live-out information to a stackmap or
/// patchpoint intrinsic if present.
/// a function and attaches the register live-out information to a patchpoint
/// intrinsic if present.
///
/// This is an optional pass that has to be explicitly enabled via the
/// -enable-stackmap-liveness and/or -enable-patchpoint-liveness flag. The pass
/// skips functions that don't have any stackmap or patchpoint intrinsics. The
/// information provided by this pass is optional and not required by the
/// aformentioned intrinsics to function.
/// -enable-patchpoint-liveness flag. The pass skips functions that don't have
/// any patchpoint intrinsics. The information provided by this pass is optional
/// and not required by the aformentioned intrinsic to function.
class StackMapLiveness : public MachineFunctionPass {
MachineFunction *MF;
const TargetRegisterInfo *TRI;