Skip to content

Commit

Permalink
[RISCV] Add intrinsics for vector unordered indexed load in RVV 1.0
Browse files Browse the repository at this point in the history
Add unordered indexed load: vluxei

Reviewed By: craig.topper

Differential Revision: https://reviews.llvm.org/D95028
  • Loading branch information
arcbbb committed Jan 22, 2021
1 parent bea661d commit 976cf53
Show file tree
Hide file tree
Showing 4 changed files with 10,045 additions and 3 deletions.
7 changes: 4 additions & 3 deletions llvm/include/llvm/IR/IntrinsicsRISCV.td
Original file line number Diff line number Diff line change
Expand Up @@ -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;
Expand Down
5 changes: 5 additions & 0 deletions llvm/lib/Target/RISCV/RISCVInstrInfoVPseudos.td
Original file line number Diff line number Diff line change
Expand Up @@ -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;
Expand Down Expand Up @@ -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,
Expand Down
Loading

0 comments on commit 976cf53

Please sign in to comment.