[LLVMdev] Min and max

Nicolas Capens nicolas at capens.net
Tue May 27 02:49:42 PDT 2008


Hi all,

 

I'm trying to implement a floating-point 'min' and 'max' operation using
select. For 'min' I get the expected x86 assembly minss instruction, but for
'max' I get a branch instead of maxss.

 

The corresponding C syntax code looks like this:

 

float z = (x > y) ? x : y;

 

Any clues?

 

Could someone maybe explain to me the basics of LLVM's target specific
optimizations and code generation? I'd love to analyze things like this
myself but I don't know where to start.

 

Thanks,

 

Nicolas Capens

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20080527/fa5ba41a/attachment.html>


More information about the llvm-dev mailing list