[PATCH] D69013: [AArch64] Don't assume __powidf2 is available on Windows.

Saleem Abdulrasool via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Oct 16 08:37:08 PDT 2019


compnerd added a comment.

I do believe that we need it for all the targets (x86, x86_64, armv7, aarch64).



================
Comment at: lib/Target/AArch64/AArch64ISelLowering.cpp:529
+  if (Subtarget->isTargetWindows() &&
+      Subtarget->getTargetTriple().isOSMSVCRT()) {
+    // MSVCRT doesn't have powi; fall back to pow
----------------
Is there a reason to have the check do both?  Is the latter not sufficient?  The reason that we need to fall back to `pow` for `powi` is because MSVCRT does not support it, it has not much to do with the fact that it is Windows.  That is - I can see this applying equally well to say ReactOS, which I suppose would be treated as Windows, but isn't really Windows.


================
Comment at: lib/Target/ARM/ARMISelLowering.cpp:1163
 
-  if (Subtarget->isTargetWindows() && Subtarget->getTargetTriple().isOSMSVCRT())
-    for (auto &VT : {MVT::f32, MVT::f64})
-      setOperationAction(ISD::FPOWI, VT, Custom);
+  if (Subtarget->isTargetWindows() &&
+      Subtarget->getTargetTriple().isOSMSVCRT()) {
----------------
Similar


Repository:
  rL LLVM

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

https://reviews.llvm.org/D69013





More information about the llvm-commits mailing list