[llvm-commits] [llvm] r59760 - in /llvm/trunk: include/llvm/CodeGen/SelectionDAGNodes.h lib/CodeGen/SelectionDAG/SelectionDAG.cpp

Duncan Sands baldrick at free.fr
Fri Nov 21 05:17:40 PST 2008


> > They aren't the same.  ADDC returns a value + flag.  SADDO returns a
> > value + bool.  The use of the bool may very well be a store to memory
> > or something like that.  You can't flag these together.
> >
> > OTOH, I think it would be perfectly fine for X86 to custom legalize
> > SADDO into ADDC + an X86ISD::SETO node or something.
> 
> I wonder if it shouldn't be the other way around. Right now legalizer  
> is issues ADDC + ADDE pair and these are flagged together. Why not  
> issue SADDO + ADDE (which would take a boolean operand) instead? I  
> rather like modeling the carry bit explicitly.

I'm all with Evan here!

Duncan.



More information about the llvm-commits mailing list