aboutsummaryrefslogtreecommitdiff
path: root/clang/lib/Frontend/CompilerInvocation.cpp
diff options
context:
space:
mode:
authorZhaoxin Yang <yangzhaoxin@loongson.cn>2024-12-19 08:57:31 +0800
committerGitHub <noreply@github.com>2024-12-19 08:57:31 +0800
commitf334db92be168876b618db72dc93078ce23ffa89 (patch)
tree2e6ab54d3093069229127f7423bdc7ffd33c2452 /clang/lib/Frontend/CompilerInvocation.cpp
parent2691b964150c77a9e6967423383ad14a7693095e (diff)
downloadllvm-f334db92be168876b618db72dc93078ce23ffa89.zip
llvm-f334db92be168876b618db72dc93078ce23ffa89.tar.gz
llvm-f334db92be168876b618db72dc93078ce23ffa89.tar.bz2
[llvm][CodeGen] Intrinsic `llvm.powi.*` code gen for vector arguments (#118242)
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. Without this patch, in some backends, such as RISCV64 and LoongArch64, the i32 type is illegal and will be promoted. This causes exponent type check to fail when ISD::FPOWI node generates a libcall. Fix https://github.com/llvm/llvm-project/issues/118079
Diffstat (limited to 'clang/lib/Frontend/CompilerInvocation.cpp')
0 files changed, 0 insertions, 0 deletions