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

Craig Topper craig.topper at gmail.com
Sun Jun 3 09:50:59 PDT 2012


I've simplified it in r157902. I just extracted everything after fma4 and
appended it to llvm.x86.fma.

On Sun, Jun 3, 2012 at 2:12 AM, Duncan Sands <baldrick at free.fr> wrote:

> Hi Craig,
>
> > 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")
>
> rather than having a long list, can't you just compute the new name by
> deleting
> the '4' in "fma4" and pre-prending "llvm."?
>
> Ciao, Duncan.
>
> > +        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;
> >     }
> >     }
> >
> >
> > _______________________________________________
> > llvm-commits mailing list
> > llvm-commits at cs.uiuc.edu
> > http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
>
> _______________________________________________
> llvm-commits mailing list
> llvm-commits at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
>



-- 
~Craig
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20120603/a107c61c/attachment.html>


More information about the llvm-commits mailing list