mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2024-11-23 11:13:28 +01:00
[SystemZ] Handle vectors in getSetCCResultType
I don't have a standalone testcase for this, but it should allow r193676 to be reapplied. llvm-svn: 194148
This commit is contained in:
parent
b611fbe0fd
commit
593286d79d
@ -279,8 +279,13 @@ SystemZTargetLowering::SystemZTargetLowering(SystemZTargetMachine &tm)
|
||||
MaxStoresPerMemsetOptSize = 0;
|
||||
}
|
||||
|
||||
bool
|
||||
SystemZTargetLowering::isFMAFasterThanFMulAndFAdd(EVT VT) const {
|
||||
EVT SystemZTargetLowering::getSetCCResultType(LLVMContext &, EVT VT) const {
|
||||
if (!VT.isVector())
|
||||
return MVT::i32;
|
||||
return VT.changeVectorElementTypeToInteger();
|
||||
}
|
||||
|
||||
bool SystemZTargetLowering::isFMAFasterThanFMulAndFAdd(EVT VT) const {
|
||||
VT = VT.getScalarType();
|
||||
|
||||
if (!VT.isSimple())
|
||||
|
@ -198,9 +198,7 @@ public:
|
||||
virtual MVT getScalarShiftAmountTy(EVT LHSTy) const LLVM_OVERRIDE {
|
||||
return MVT::i32;
|
||||
}
|
||||
virtual EVT getSetCCResultType(LLVMContext &, EVT) const LLVM_OVERRIDE {
|
||||
return MVT::i32;
|
||||
}
|
||||
virtual EVT getSetCCResultType(LLVMContext &, EVT) const LLVM_OVERRIDE;
|
||||
virtual bool isFMAFasterThanFMulAndFAdd(EVT VT) const LLVM_OVERRIDE;
|
||||
virtual bool isFPImmLegal(const APFloat &Imm, EVT VT) const LLVM_OVERRIDE;
|
||||
virtual bool isLegalAddressingMode(const AddrMode &AM, Type *Ty) const
|
||||
|
Loading…
Reference in New Issue
Block a user