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

Reid Kleckner via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Oct 16 13:47:27 PDT 2019


rnk added a comment.

I tried to get clang to make llvm.powi from C, but it was challenging. Setting -fno-math-errno was what ended up mattering, and even then, I couldn't go from llvm.pow.f64 to powi.

Then, I used powi directly from LLVM IR, and I couldn't get it to generate a libcall for x86. It just does repeated multiplication. So, I guess we don't need to do anything for x86?



================
Comment at: lib/CodeGen/SelectionDAG/LegalizeFloatTypes.cpp:581-582
+  if (!TLI.getLibcallName(LC)) {
+    // Some targets don't have a powi libcall; use pow instead.
+    report_fatal_error("Don't know how to soften fpowi to fpow");
+  }
----------------
Can this be made into an assert or non-fatal error by DAG->getContext().emitError("..."), and then returning the input SDNode unmodified?


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