mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2025-01-31 20:51:52 +01:00
[RISCV] Add intrinsics for vector unordered indexed load in RVV 1.0
Add unordered indexed load: vluxei Reviewed By: craig.topper Differential Revision: https://reviews.llvm.org/D95028
This commit is contained in:
parent
8009ef0a5f
commit
1d80f86c9c
@ -710,9 +710,10 @@ let TargetPrefix = "riscv" in {
|
||||
defm vse : RISCVUSStore;
|
||||
defm vlse: RISCVSLoad;
|
||||
defm vsse: RISCVSStore;
|
||||
defm vloxei: RISCVILoad;
|
||||
defm vsoxei: RISCVIStore;
|
||||
defm vsuxei: RISCVIStore;
|
||||
defm vluxei : RISCVILoad;
|
||||
defm vloxei : RISCVILoad;
|
||||
defm vsoxei : RISCVIStore;
|
||||
defm vsuxei : RISCVIStore;
|
||||
|
||||
defm vamoswap : RISCVAMO;
|
||||
defm vamoadd : RISCVAMO;
|
||||
|
@ -2944,6 +2944,7 @@ foreach eew = EEWList in {
|
||||
|
||||
// Vector Indexed Loads and Stores
|
||||
foreach eew = EEWList in {
|
||||
defm PseudoVLUXEI # eew : VPseudoILoad;
|
||||
defm PseudoVLOXEI # eew : VPseudoILoad;
|
||||
defm PseudoVSOXEI # eew : VPseudoIStore;
|
||||
defm PseudoVSUXEI # eew : VPseudoIStore;
|
||||
@ -3517,6 +3518,10 @@ foreach eew = EEWList in {
|
||||
defvar elmul =!cast<LMULInfo>("V_" # elmul_str);
|
||||
defvar idx_vti = !cast<VTypeInfo>("VI" # eew # elmul_str);
|
||||
|
||||
defm : VPatILoad<"int_riscv_vluxei",
|
||||
"PseudoVLUXEI"#eew,
|
||||
vti.Vector, idx_vti.Vector, vti.Mask, vti.SEW,
|
||||
vlmul, elmul, vti.RegClass, idx_vti.RegClass>;
|
||||
defm : VPatILoad<"int_riscv_vloxei",
|
||||
"PseudoVLOXEI"#eew,
|
||||
vti.Vector, idx_vti.Vector, vti.Mask, vti.SEW,
|
||||
|
4138
test/CodeGen/RISCV/rvv/vluxei-rv32.ll
Normal file
4138
test/CodeGen/RISCV/rvv/vluxei-rv32.ll
Normal file
File diff suppressed because it is too large
Load Diff
5898
test/CodeGen/RISCV/rvv/vluxei-rv64.ll
Normal file
5898
test/CodeGen/RISCV/rvv/vluxei-rv64.ll
Normal file
File diff suppressed because it is too large
Load Diff
Loading…
x
Reference in New Issue
Block a user