From 962f549d207337c03f7d1d1a120860034a52a0e7 Mon Sep 17 00:00:00 2001 From: Eli Friedman Date: Wed, 2 Jun 2010 19:35:46 +0000 Subject: [PATCH] Fix comment so it doesn't include comments which are irrelevant to the x86 backend. Add a FIXME noting what can be fixed here. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@105342 91177308-0d34-0410-b5e6-96231b3b80d8 --- lib/Target/X86/X86ISelLowering.cpp | 14 +++++--------- 1 file changed, 5 insertions(+), 9 deletions(-) diff --git a/lib/Target/X86/X86ISelLowering.cpp b/lib/Target/X86/X86ISelLowering.cpp index a322ad2aa25..1d5997801de 100644 --- a/lib/Target/X86/X86ISelLowering.cpp +++ b/lib/Target/X86/X86ISelLowering.cpp @@ -981,16 +981,12 @@ X86TargetLowering::X86TargetLowering(X86TargetMachine &TM) setOperationAction(ISD::USUBO, MVT::i32, Custom); setOperationAction(ISD::SMULO, MVT::i32, Custom); - // Don't try to custom-lower 64-bit add-with-overflow and friends - // on x86-32; the x86 backend currently doesn't know how to handle them. + // Only custom-lower 64-bit SADDO and friends on 64-bit because we don't + // handle type legalization for these operations here. // - // This doesn't really fix anything because LegalizeTypes doesn't know - // how to handle them either. We do get a better error message, though. - // - // This may not be hard to implement though. - // In fact you could even cheat, and turn the 64 bit add-with-overflow - // into a 65 bit add, with the top bit being used to compute the overflow - // flag. That should then all get expanded out automagically. + // FIXME: We really should do custom legalization for addition and + // subtraction on x86-32 once PR3203 is fixed. We really can't do much better + // than generic legalization for 64-bit multiplication-with-overflow, though. if (Subtarget->is64Bit()) { setOperationAction(ISD::SADDO, MVT::i64, Custom); setOperationAction(ISD::UADDO, MVT::i64, Custom);