[llvm] [RISCV] Remove SEW operand for load/store and SEW-aware pseudos (PR #90396)
Michael Maitland via llvm-commits
llvm-commits at lists.llvm.org
Mon Apr 29 09:03:54 PDT 2024
================
@@ -917,56 +925,62 @@ class VPseudoILoadMask<VReg RetClass,
class VPseudoUSStoreNoMask<VReg StClass,
int EEW> :
Pseudo<(outs),
- (ins StClass:$rd, GPRMem:$rs1, AVL:$vl, ixlenimm:$sew), []>,
+ !if(!eq(EEW, 1),
+ (ins StClass:$rd, GPRMem:$rs1, AVL:$vl, ixlenimm:$sew),
+ (ins StClass:$rd, GPRMem:$rs1, AVL:$vl)), []>,
RISCVVPseudo,
RISCVVSE</*Masked*/0, /*Strided*/0, !logtwo(EEW), VLMul> {
let mayLoad = 0;
let mayStore = 1;
let hasSideEffects = 0;
let HasVLOp = 1;
- let HasSEWOp = 1;
+ // For mask store, EEW = 1.
----------------
michaelmaitland wrote:
Can `VPseudoUSStoreNoMask` be a `mask store`? Those two things sound like they may conflict?
https://github.com/llvm/llvm-project/pull/90396
More information about the llvm-commits
mailing list