[all-commits] [llvm/llvm-project] 51940d: [RISCV] Special case sign extended scalars when ty...
Craig Topper via All-commits
all-commits at lists.llvm.org
Tue Mar 22 10:32:04 PDT 2022
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 51940d69cb5d95417b914ec75961ffb78901fb53
https://github.com/llvm/llvm-project/commit/51940d69cb5d95417b914ec75961ffb78901fb53
Author: Craig Topper <craig.topper at sifive.com>
Date: 2022-03-22 (Tue, 22 Mar 2022)
Changed paths:
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/test/CodeGen/RISCV/rvv/vadd.ll
Log Message:
-----------
[RISCV] Special case sign extended scalars when type legalizing nxvXi64 .vx instrinsics on RV32.
On RV32, we need to type legalize i64 scalar arguments to intrinsics.
We usually do this by splatting the value into a vector separately.
If the scalar happens to be sign extended, we can continue using a .vx
intrinsic.
We already special cased sign extended constants, this extends it
to any sign extended value.
I've only added tests for one case of vadd. Most intrinsics go
through the same check.
Reviewed By: khchen
Differential Revision: https://reviews.llvm.org/D122186
More information about the All-commits
mailing list