[llvm] PreISelIntrinsicLowering: Lower llvm.exp to a loop if scalable vec arg (PR #117568)

Eli Friedman via llvm-commits llvm-commits at lists.llvm.org
Wed Dec 11 15:51:01 PST 2024


================
@@ -453,6 +454,11 @@ bool PreISelIntrinsicLowering::lowerIntrinsics(Module &M) const {
     case Intrinsic::objc_sync_exit:
       Changed |= lowerObjCCall(F, "objc_sync_exit");
       break;
+    case Intrinsic::exp:
+      Changed |= forEachCall(F, [&](CallInst *CI) {
+        return lowerUnaryMathIntrinsicWithScalableVecArgAsLoop(M, CI);
----------------
efriedma-quic wrote:

The "legalization action" is referring to the "LegalizeAction" enum in TargetLoweringBase.  You'd query it with `TargetLowering::isOperationLegalOrCustom()`.

https://github.com/llvm/llvm-project/pull/117568


More information about the llvm-commits mailing list