[llvm-commits] [llvm] r60388 - in /llvm/trunk: lib/Target/X86/X86ISelLowering.cpp lib/Target/X86/X86ISelLowering.h test/CodeGen/X86/add-with-overflow.ll

Bill Wendling isanbard at gmail.com
Wed Dec 3 00:31:26 PST 2008


On Dec 2, 2008, at 11:27 PM, Evan Cheng wrote:

> On Dec 1, 2008, at 5:06 PM, Bill Wendling wrote:
>
>> Author: void
>> Date: Mon Dec  1 19:06:39 2008
>> New Revision: 60388
>>
>> URL: http://llvm.org/viewvc/llvm-project?rev=60388&view=rev
>> Log:
>> Second stab at target-dependent lowering of everyone's favorite
>> nodes: [SU]ADDO
>>
>> - LowerXADDO lowers [SU]ADDO into an ADD with an implicit EFLAGS
>> define. The
>> EFLAGS are fed into a SETCC node which has the conditional COND_O
>> or COND_C,
>> depending on the type of ADDO requested.
>>
>> - LowerBRCOND now recognizes if it's coming from a SETCC node with
>> COND_O or
>> COND_C set.
>>
>>  // If condition flag is set by a X86ISD::CMP, then use it as the
>> condition
>>  // setting operand in place of the X86ISD::SETCC.
>> @@ -5199,6 +5201,17 @@
>>        Opc == X86ISD::UCOMI) {
>>      Cond = Cmp;
>>      addTest = false;
>> +    } else {
>> +      if (ConstantSDNode *CSDN =
>> dyn_cast<ConstantSDNode>(CC.getNode())) {
>
> Is it possible for CC not to be a constsdnode here? Should it be an
> assertion instead?
>
I'll make it a cast<>() instead.

-bw




More information about the llvm-commits mailing list