[llvm] [X86][AVX10] Allow AVX10 use VBMI2 instructions (PR #73276)
Shengchen Kan via llvm-commits
llvm-commits at lists.llvm.org
Thu Nov 23 19:13:42 PST 2023
================
@@ -1970,20 +1970,27 @@ X86TargetLowering::X86TargetLowering(const X86TargetMachine &TM,
}
if (Subtarget.hasVBMI2()) {
- for (auto VT : { MVT::v8i16, MVT::v4i32, MVT::v2i64,
- MVT::v16i16, MVT::v8i32, MVT::v4i64,
- MVT::v32i16, MVT::v16i32, MVT::v8i64 }) {
+ for (auto VT : {MVT::v32i16, MVT::v16i32, MVT::v8i64}) {
setOperationAction(ISD::FSHL, VT, Custom);
setOperationAction(ISD::FSHR, VT, Custom);
}
setOperationAction(ISD::ROTL, MVT::v32i16, Custom);
- setOperationAction(ISD::ROTR, MVT::v8i16, Custom);
- setOperationAction(ISD::ROTR, MVT::v16i16, Custom);
setOperationAction(ISD::ROTR, MVT::v32i16, Custom);
}
}// useAVX512Regs
+ if (Subtarget.hasVBMI2()) {
+ for (auto VT : {MVT::v8i16, MVT::v4i32, MVT::v2i64, MVT::v16i16, MVT::v8i32,
+ MVT::v4i64}) {
+ setOperationAction(ISD::FSHL, VT, Custom);
+ setOperationAction(ISD::FSHR, VT, Custom);
+ }
+
+ setOperationAction(ISD::ROTR, MVT::v8i16, Custom);
----------------
KanRobert wrote:
How about ROTL for v16i16?
https://github.com/llvm/llvm-project/pull/73276
More information about the llvm-commits
mailing list