mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-10-31 09:11:13 +00:00
The FP stack doesn't support UNDEF, ask the legalizer to legalize it
instead of lying and saying we have it. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25775 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
8ca05e0c30
commit
44d9b9bb86
@ -221,7 +221,9 @@ X86TargetLowering::X86TargetLowering(TargetMachine &TM)
|
|||||||
} else {
|
} else {
|
||||||
// Set up the FP register classes.
|
// Set up the FP register classes.
|
||||||
addRegisterClass(MVT::f64, X86::RFPRegisterClass);
|
addRegisterClass(MVT::f64, X86::RFPRegisterClass);
|
||||||
|
|
||||||
|
setOperationAction(ISD::UNDEF, MVT::f64, Expand);
|
||||||
|
|
||||||
if (!X86PatIsel) {
|
if (!X86PatIsel) {
|
||||||
setOperationAction(ISD::SINT_TO_FP, MVT::i16, Custom);
|
setOperationAction(ISD::SINT_TO_FP, MVT::i16, Custom);
|
||||||
setOperationAction(ISD::SINT_TO_FP, MVT::i32, Custom);
|
setOperationAction(ISD::SINT_TO_FP, MVT::i32, Custom);
|
||||||
|
@ -3022,10 +3022,6 @@ def : Pat<(X86fst RFP:$src, addr:$op, f64), (FpST64m addr:$op, RFP:$src)>;
|
|||||||
def : Pat<(f64 fp64immneg0), (FpCHS (FpLD0))>, Requires<[FPStack]>;
|
def : Pat<(f64 fp64immneg0), (FpCHS (FpLD0))>, Requires<[FPStack]>;
|
||||||
def : Pat<(f64 fp64immneg1), (FpCHS (FpLD1))>, Requires<[FPStack]>;
|
def : Pat<(f64 fp64immneg1), (FpCHS (FpLD1))>, Requires<[FPStack]>;
|
||||||
|
|
||||||
// RFP undef
|
|
||||||
def : Pat<(f64 (undef)), (FpLD0)>, Requires<[FPStack]>;
|
|
||||||
|
|
||||||
|
|
||||||
//===----------------------------------------------------------------------===//
|
//===----------------------------------------------------------------------===//
|
||||||
// Some peepholes
|
// Some peepholes
|
||||||
//===----------------------------------------------------------------------===//
|
//===----------------------------------------------------------------------===//
|
||||||
|
Loading…
Reference in New Issue
Block a user