mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2025-01-10 13:51:37 +00:00
Add a little hook
llvm-svn: 21883
This commit is contained in:
parent
b38ffd7fbf
commit
045b3f0110
@ -76,6 +76,10 @@ public:
|
||||
MVT::ValueType getShiftAmountTy() const { return ShiftAmountTy; }
|
||||
OutOfRangeShiftAmount getShiftAmountFlavor() const {return ShiftAmtHandling; }
|
||||
|
||||
/// isSetCCExpensive - Return true if the setcc operation is expensive for
|
||||
/// this target.
|
||||
bool isSetCCExpensive() const { return SetCCIsExpensive; }
|
||||
|
||||
/// getSetCCResultTy - Return the ValueType of the result of setcc operations.
|
||||
///
|
||||
MVT::ValueType getSetCCResultTy() const { return SetCCResultTy; }
|
||||
@ -207,6 +211,11 @@ protected:
|
||||
ShiftAmtHandling = OORSA;
|
||||
}
|
||||
|
||||
/// 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.
|
||||
void setSetCCIsExpensive() { SetCCIsExpensive = true; }
|
||||
|
||||
/// addRegisterClass - Add the specified register class as an available
|
||||
/// regclass for the specified value type. This indicates the selector can
|
||||
/// handle values of that class natively.
|
||||
@ -310,6 +319,11 @@ private:
|
||||
|
||||
OutOfRangeShiftAmount ShiftAmtHandling;
|
||||
|
||||
/// SetCCIsExpensive - 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.
|
||||
bool SetCCIsExpensive;
|
||||
|
||||
/// SetCCResultTy - The type that SetCC operations use. This defaults to the
|
||||
/// PointerTy.
|
||||
MVT::ValueType SetCCResultTy;
|
||||
|
Loading…
Reference in New Issue
Block a user