Sachin.Punyani at microchip.com
2009-Jun-22 10:56 UTC
[LLVMdev] Floating point comparison doubt
Hi, In unordered floating point comparison before making a call for comparison proper one node called UO_F32 is generated. In targets this node is replaced with a call to __unordsf2. My doubts here 1) What are these UO_F32 and O_F32 nodes for? 2) What is this function (__unordsf2) supposed to do? Regards Sachin -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20090622/51812e27/attachment.html>
On Jun 22, 2009, at 3:56 AM, Sachin.Punyani at microchip.com wrote:> Hi, > > In unordered floating point comparison before making a call for > comparison proper one node called UO_F32 is generated. In targets > this node is replaced with a call to __unordsf2. > > My doubts here > 1) What are these UO_F32 and O_F32 nodes for? > 2) What is this function (__unordsf2) supposed to do? >uo -> unordered, o -> ordered. unordered(x,y) is true if either x or y is a NaN ordered(x,y) is true if neither x or y is a nan. See also the CondCode enum in llvm/include/llvm/CodeGen/ SelectionDAGNodes.h. -Chris -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20090622/a6bb4afc/attachment.html>