[PATCH] D49754: Add -m(no-)spe, and e500 CPU definitions and support to clang

Kei Thomsen via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Tue Jan 29 07:16:35 PST 2019


kthomsen added a comment.

With this modification for SPE in VAARG, I was now able to compile all OS-9 libraries for SPE and tested them with whetstone. The results of the whetstone are the same like with a real FPU and they are correctly shown with printf.
Also the performance of CLANG is about 30% better than with my old compiler. Therefore, the modification in  tools/clang/lib/CodeGen/TargetInfo.cpp line 9322

  case llvm::Triple::ppc:
    return SetCGInfo(
        new PPC32TargetCodeGenInfo(Types, (CodeGenOpts.FloatABI == "soft") ||
              getTarget().hasFeature("spe")));
  case llvm::Triple::ppc64:

Helps to get the va_arg() parameter correctly. We should not rename the isSoftFloatABI to something else, because this is just one line of code change compared to >12 lines. Also the naming is still correct and not really confusing.
Conclusion: the SPE is now at a level, where it can be used completely.


Repository:
  rC Clang

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D49754/new/

https://reviews.llvm.org/D49754





More information about the cfe-commits mailing list