[llvm] [llvm][CodeGen] Intrinsic `llvm.powi.*` code gen for vector arguments (PR #118242)
Craig Topper via llvm-commits
llvm-commits at lists.llvm.org
Sun Dec 8 22:37:29 PST 2024
================
@@ -2585,6 +2585,8 @@ SDValue DAGTypeLegalizer::PromoteIntOp_ExpOp(SDNode *N) {
: RTLIB::getLDEXP(N->getValueType(0));
if (LC == RTLIB::UNKNOWN_LIBCALL || !TLI.getLibcallName(LC)) {
+ if (IsPowI && N->getValueType(0).isVector())
----------------
topperc wrote:
Add a comment something like this
```
// Scalarize vector FPOWI instead of promoting the type. This allows the scalar FPOWIs to be visited and converted to libcalls before promoting the type.
FIXME: This should be done in LegalizeVectorOps/LegalizeDAG, but call lowering needs the unpromoted EVT.
```
https://github.com/llvm/llvm-project/pull/118242
More information about the llvm-commits
mailing list