[llvm-commits] [llvm] r157899 - /llvm/trunk/lib/VMCore/AutoUpgrade.cpp

Craig Topper craig.topper at gmail.com
Sun Jun 3 01:07:25 PDT 2012


Author: ctopper
Date: Sun Jun  3 03:07:25 2012
New Revision: 157899

URL: http://llvm.org/viewvc/llvm-project?rev=157899&view=rev
Log:
Autoupgrade support the rename of x86.fma4 intrinsics to x86.fma from r157898.

Modified:
    llvm/trunk/lib/VMCore/AutoUpgrade.cpp

Modified: llvm/trunk/lib/VMCore/AutoUpgrade.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/VMCore/AutoUpgrade.cpp?rev=157899&r1=157898&r2=157899&view=diff
==============================================================================
--- llvm/trunk/lib/VMCore/AutoUpgrade.cpp (original)
+++ llvm/trunk/lib/VMCore/AutoUpgrade.cpp Sun Jun  3 03:07:25 2012
@@ -64,6 +64,80 @@
       NewFn = 0;
       return true;
     }
+    // Fix the FMA4 intrinsics to remove the 4
+    if (Name.startswith("x86.fma4.")) {
+      const char* NewFnName = 0;
+      if (Name == "x86.fma4.vfmadd.ss")
+        NewFnName = "llvm.x86.fma.vfmadd.ss";
+      else if (Name == "x86.fma4.vfmadd.sd")
+        NewFnName = "llvm.x86.fma.vfmadd.sd";
+      else if (Name == "x86.fma4.vfmadd.ps")
+        NewFnName = "llvm.x86.fma.vfmadd.ps";
+      else if (Name == "x86.fma4.vfmadd.pd")
+        NewFnName = "llvm.x86.fma.vfmadd.pd";
+      else if (Name == "x86.fma4.vfmadd.ps.256")
+        NewFnName = "llvm.x86.fma.vfmadd.ps.256";
+      else if (Name == "x86.fma4.vfmadd.pd.256")
+        NewFnName = "llvm.x86.fma.vfmadd.pd.256";
+      else if (Name == "x86.fma4.vfmsub.ss")
+        NewFnName = "llvm.x86.fma.vfmsub.ss";
+      else if (Name == "x86.fma4.vfmsub.sd")
+        NewFnName = "llvm.x86.fma.vfmsub.sd";
+      else if (Name == "x86.fma4.vfmsub.ps")
+        NewFnName = "llvm.x86.fma.vfmsub.ps";
+      else if (Name == "x86.fma4.vfmsub.pd")
+        NewFnName = "llvm.x86.fma.vfmsub.pd";
+      else if (Name == "x86.fma4.vfmsub.ps.256")
+        NewFnName = "llvm.x86.fma.vfmsub.ps.256";
+      else if (Name == "x86.fma4.vfmsub.pd.256")
+        NewFnName = "llvm.x86.fma.vfmsub.pd.256";
+      else if (Name == "x86.fma4.vfnmadd.ss")
+        NewFnName = "llvm.x86.fma.vfnmadd.ss";
+      else if (Name == "x86.fma4.vfnmadd.sd")
+        NewFnName = "llvm.x86.fma.vfnmadd.sd";
+      else if (Name == "x86.fma4.vfnmadd.ps")
+        NewFnName = "llvm.x86.fma.vfnmadd.ps";
+      else if (Name == "x86.fma4.vfnmadd.pd")
+        NewFnName = "llvm.x86.fma.vfnmadd.pd";
+      else if (Name == "x86.fma4.vfnmadd.ps.256")
+        NewFnName = "llvm.x86.fma.vfnmadd.ps.256";
+      else if (Name == "x86.fma4.vfnmadd.pd.256")
+        NewFnName = "llvm.x86.fma.vfnmadd.pd.256";
+      else if (Name == "x86.fma4.vfnmsub.ss")
+        NewFnName = "llvm.x86.fma.vfnmsub.ss";
+      else if (Name == "x86.fma4.vfnmsub.sd")
+        NewFnName = "llvm.x86.fma.vfnmsub.sd";
+      else if (Name == "x86.fma4.vfnmsub.ps")
+        NewFnName = "llvm.x86.fma.vfnmsub.ps";
+      else if (Name == "x86.fma4.vfnmsub.pd")
+        NewFnName = "llvm.x86.fma.vfnmsub.pd";
+      else if (Name == "x86.fma4.vfnmsub.ps.256")
+        NewFnName = "llvm.x86.fma.vfnmsub.ps.256";
+      else if (Name == "x86.fma4.vfnmsub.pd.256")
+        NewFnName = "llvm.x86.fma.vfnmsub.pd.256";
+      else if (Name == "x86.fma4.vfmaddsub.ps")
+        NewFnName = "llvm.x86.fma.vfmaddsub.ps";
+      else if (Name == "x86.fma4.vfmaddsub.pd")
+        NewFnName = "llvm.x86.fma.vfmaddsub.pd";
+      else if (Name == "x86.fma4.vfmaddsub.ps.256")
+        NewFnName = "llvm.x86.fma.vfmaddsub.ps.256";
+      else if (Name == "x86.fma4.vfmaddsub.pd.256")
+        NewFnName = "llvm.x86.fma.vfmaddsub.pd.256";
+      else if (Name == "x86.fma4.vfmsubadd.ps")
+        NewFnName = "llvm.x86.fma.vfmsubadd.ps";
+      else if (Name == "x86.fma4.vfmsubadd.pd")
+        NewFnName = "llvm.x86.fma.vfmsubadd.pd";
+      else if (Name == "x86.fma4.vfmsubadd.ps.256")
+        NewFnName = "llvm.x86.fma.vfmsubadd.ps.256";
+      else if (Name == "x86.fma4.vfmsubadd.pd.256")
+        NewFnName = "llvm.x86.fma.vfmsubadd.pd.256";
+
+      if (NewFnName) {
+        F->setName(NewFnName);
+        NewFn = F;
+        return true;
+      }
+    }
     break;
   }
   }





More information about the llvm-commits mailing list