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:
Chris Lattner 2006-01-29 06:44:22 +00:00
parent 8ca05e0c30
commit 44d9b9bb86
2 changed files with 3 additions and 5 deletions

View File

@ -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);

View File

@ -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
//===----------------------------------------------------------------------===// //===----------------------------------------------------------------------===//