forked from OSchip/llvm-project
Provide an interface for Targets to specify their stack pointer register
for llvm.stacksave/restore. llvm-svn: 25275
This commit is contained in:
parent
0b94324c5e
commit
3b8b0c4f6a
|
@ -234,6 +234,13 @@ public:
|
|||
bool usesUnderscoreSetJmpLongJmp() const {
|
||||
return UseUnderscoreSetJmpLongJmp;
|
||||
}
|
||||
|
||||
/// getStackPointerRegisterToSaveRestore - If a physical register, this
|
||||
/// specifies the register that llvm.savestack/llvm.restorestack should save
|
||||
/// and restore.
|
||||
unsigned getStackPointerRegisterToSaveRestore() const {
|
||||
return StackPointerRegisterToSaveRestore;
|
||||
}
|
||||
|
||||
//===--------------------------------------------------------------------===//
|
||||
// TargetLowering Configuration Methods - These methods should be invoked by
|
||||
|
@ -267,6 +274,13 @@ protected:
|
|||
UseUnderscoreSetJmpLongJmp = Val;
|
||||
}
|
||||
|
||||
/// setStackPointerRegisterToSaveRestore - If set to a physical register, this
|
||||
/// specifies the register that llvm.savestack/llvm.restorestack should save
|
||||
/// and restore.
|
||||
void setStackPointerRegisterToSaveRestore(unsigned R) {
|
||||
StackPointerRegisterToSaveRestore = R;
|
||||
}
|
||||
|
||||
/// setSetCCIxExpensive - This is a short term hack for targets that codegen
|
||||
/// setcc as a conditional branch. This encourages the code generator to fold
|
||||
/// setcc operations into other operations if possible.
|
||||
|
@ -443,6 +457,11 @@ private:
|
|||
/// UseUnderscoreSetJmpLongJmp - This target prefers to use _setjmp and
|
||||
/// _longjmp to implement llvm.setjmp/llvm.longjmp. Defaults to false.
|
||||
bool UseUnderscoreSetJmpLongJmp;
|
||||
|
||||
/// StackPointerRegisterToSaveRestore - If set to a physical register, this
|
||||
/// specifies the register that llvm.savestack/llvm.restorestack should save
|
||||
/// and restore.
|
||||
unsigned StackPointerRegisterToSaveRestore;
|
||||
|
||||
/// RegClassForVT - This indicates the default register class to use for
|
||||
/// each ValueType the target supports natively.
|
||||
|
|
Loading…
Reference in New Issue