[llvm-commits] [llvm-gcc-4.2] r103005 - /llvm-gcc-4.2/trunk/gcc/config/i386/llvm-i386.cpp

Duncan Sands baldrick at free.fr
Tue May 4 03:10:31 PDT 2010


Author: baldrick
Date: Tue May  4 05:10:31 2010
New Revision: 103005

URL: http://llvm.org/viewvc/llvm-project?rev=103005&view=rev
Log:
Port commit 103004 (baldrick) from dragonegg:
Use FAdd rather than Add when adding floating point vectors,
and likewise for subtraction and multiplication.

Modified:
    llvm-gcc-4.2/trunk/gcc/config/i386/llvm-i386.cpp

Modified: llvm-gcc-4.2/trunk/gcc/config/i386/llvm-i386.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/config/i386/llvm-i386.cpp?rev=103005&r1=103004&r2=103005&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/config/i386/llvm-i386.cpp (original)
+++ llvm-gcc-4.2/trunk/gcc/config/i386/llvm-i386.cpp Tue May  4 05:10:31 2010
@@ -54,6 +54,8 @@
   default: break;
   case IX86_BUILTIN_ADDPS:
   case IX86_BUILTIN_ADDPD:
+    Result = Builder.CreateFAdd(Ops[0], Ops[1]);
+    return true;
   case IX86_BUILTIN_PADDB:
   case IX86_BUILTIN_PADDW:
   case IX86_BUILTIN_PADDD:
@@ -66,6 +68,8 @@
     return true;
   case IX86_BUILTIN_SUBPS:
   case IX86_BUILTIN_SUBPD:
+    Result = Builder.CreateFSub(Ops[0], Ops[1]);
+    return true;
   case IX86_BUILTIN_PSUBB:
   case IX86_BUILTIN_PSUBW:
   case IX86_BUILTIN_PSUBD:
@@ -78,6 +82,8 @@
     return true;
   case IX86_BUILTIN_MULPS:
   case IX86_BUILTIN_MULPD:
+    Result = Builder.CreateFMul(Ops[0], Ops[1]);
+    return true;
   case IX86_BUILTIN_PMULLW:
   case IX86_BUILTIN_PMULLW128:
   case IX86_BUILTIN_PMULLD128:





More information about the llvm-commits mailing list