Skip to content

Commit 481ff22

Browse files
authored
[RISCV] Lower fixed-length vp_{gather,scatter} for zvfhmin/zvfbfmin (#115253)
This uses the same lowering as masked gathers and scatters.
1 parent 3bdd711 commit 481ff22

File tree

3 files changed

+313
-69
lines changed

3 files changed

+313
-69
lines changed

llvm/lib/Target/RISCV/RISCVISelLowering.cpp

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1339,12 +1339,11 @@ RISCVTargetLowering::RISCVTargetLowering(const TargetMachine &TM,
13391339
ISD::VECTOR_SHUFFLE, ISD::VECTOR_COMPRESS},
13401340
VT, Custom);
13411341

1342-
// FIXME: vp_gather/scatter can be hoisted to here.
13431342
setOperationAction({ISD::LOAD, ISD::STORE, ISD::MLOAD, ISD::MSTORE,
13441343
ISD::MGATHER, ISD::MSCATTER},
13451344
VT, Custom);
1346-
setOperationAction({ISD::VP_LOAD, ISD::VP_STORE,
1347-
ISD::EXPERIMENTAL_VP_STRIDED_LOAD,
1345+
setOperationAction({ISD::VP_LOAD, ISD::VP_STORE, ISD::VP_GATHER,
1346+
ISD::VP_SCATTER, ISD::EXPERIMENTAL_VP_STRIDED_LOAD,
13481347
ISD::EXPERIMENTAL_VP_STRIDED_STORE},
13491348
VT, Custom);
13501349

@@ -1409,8 +1408,6 @@ RISCVTargetLowering::RISCVTargetLowering(const TargetMachine &TM,
14091408
setOperationAction({ISD::BUILD_VECTOR, ISD::SCALAR_TO_VECTOR}, VT,
14101409
Custom);
14111410

1412-
setOperationAction({ISD::VP_GATHER, ISD::VP_SCATTER}, VT, Custom);
1413-
14141411
setOperationAction({ISD::FADD, ISD::FSUB, ISD::FMUL, ISD::FDIV,
14151412
ISD::FNEG, ISD::FABS, ISD::FCOPYSIGN, ISD::FSQRT,
14161413
ISD::FMA, ISD::FMINNUM, ISD::FMAXNUM,

0 commit comments

Comments
 (0)