Skip to content

Commit 4960712

Browse files
committed
Reapply "[AMDGPU][SDAG] Add missing cases for SI_INDIRECT_SRC/DST (#170323)"
This reverts commit 4f94941.
1 parent 55c0e2e commit 4960712

File tree

4 files changed

+9297
-0
lines changed

4 files changed

+9297
-0
lines changed

llvm/lib/Target/AMDGPU/SIISelLowering.cpp

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6304,7 +6304,11 @@ SITargetLowering::EmitInstrWithCustomInserter(MachineInstr &MI,
63046304
}
63056305
case AMDGPU::SI_INDIRECT_SRC_V1:
63066306
case AMDGPU::SI_INDIRECT_SRC_V2:
6307+
case AMDGPU::SI_INDIRECT_SRC_V3:
63076308
case AMDGPU::SI_INDIRECT_SRC_V4:
6309+
case AMDGPU::SI_INDIRECT_SRC_V5:
6310+
case AMDGPU::SI_INDIRECT_SRC_V6:
6311+
case AMDGPU::SI_INDIRECT_SRC_V7:
63086312
case AMDGPU::SI_INDIRECT_SRC_V8:
63096313
case AMDGPU::SI_INDIRECT_SRC_V9:
63106314
case AMDGPU::SI_INDIRECT_SRC_V10:
@@ -6315,7 +6319,11 @@ SITargetLowering::EmitInstrWithCustomInserter(MachineInstr &MI,
63156319
return emitIndirectSrc(MI, *BB, *getSubtarget());
63166320
case AMDGPU::SI_INDIRECT_DST_V1:
63176321
case AMDGPU::SI_INDIRECT_DST_V2:
6322+
case AMDGPU::SI_INDIRECT_DST_V3:
63186323
case AMDGPU::SI_INDIRECT_DST_V4:
6324+
case AMDGPU::SI_INDIRECT_DST_V5:
6325+
case AMDGPU::SI_INDIRECT_DST_V6:
6326+
case AMDGPU::SI_INDIRECT_DST_V7:
63196327
case AMDGPU::SI_INDIRECT_DST_V8:
63206328
case AMDGPU::SI_INDIRECT_DST_V9:
63216329
case AMDGPU::SI_INDIRECT_DST_V10:

llvm/lib/Target/AMDGPU/SIInstructions.td

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -969,7 +969,11 @@ class SI_INDIRECT_DST<RegisterClass rc> : VPseudoInstSI <
969969

970970
def SI_INDIRECT_SRC_V1 : SI_INDIRECT_SRC<VGPR_32>;
971971
def SI_INDIRECT_SRC_V2 : SI_INDIRECT_SRC<VReg_64>;
972+
def SI_INDIRECT_SRC_V3 : SI_INDIRECT_SRC<VReg_96>;
972973
def SI_INDIRECT_SRC_V4 : SI_INDIRECT_SRC<VReg_128>;
974+
def SI_INDIRECT_SRC_V5 : SI_INDIRECT_SRC<VReg_160>;
975+
def SI_INDIRECT_SRC_V6 : SI_INDIRECT_SRC<VReg_192>;
976+
def SI_INDIRECT_SRC_V7 : SI_INDIRECT_SRC<VReg_224>;
973977
def SI_INDIRECT_SRC_V8 : SI_INDIRECT_SRC<VReg_256>;
974978
def SI_INDIRECT_SRC_V9 : SI_INDIRECT_SRC<VReg_288>;
975979
def SI_INDIRECT_SRC_V10 : SI_INDIRECT_SRC<VReg_320>;
@@ -980,7 +984,11 @@ def SI_INDIRECT_SRC_V32 : SI_INDIRECT_SRC<VReg_1024>;
980984

981985
def SI_INDIRECT_DST_V1 : SI_INDIRECT_DST<VGPR_32>;
982986
def SI_INDIRECT_DST_V2 : SI_INDIRECT_DST<VReg_64>;
987+
def SI_INDIRECT_DST_V3 : SI_INDIRECT_DST<VReg_96>;
983988
def SI_INDIRECT_DST_V4 : SI_INDIRECT_DST<VReg_128>;
989+
def SI_INDIRECT_DST_V5 : SI_INDIRECT_DST<VReg_160>;
990+
def SI_INDIRECT_DST_V6 : SI_INDIRECT_DST<VReg_192>;
991+
def SI_INDIRECT_DST_V7 : SI_INDIRECT_DST<VReg_224>;
984992
def SI_INDIRECT_DST_V8 : SI_INDIRECT_DST<VReg_256>;
985993
def SI_INDIRECT_DST_V9 : SI_INDIRECT_DST<VReg_288>;
986994
def SI_INDIRECT_DST_V10 : SI_INDIRECT_DST<VReg_320>;
@@ -2787,7 +2795,11 @@ multiclass SI_INDIRECT_Pattern <ValueType vt, ValueType eltvt, string VecSize> {
27872795
}
27882796

27892797
defm : SI_INDIRECT_Pattern <v2f32, f32, "V2">;
2798+
defm : SI_INDIRECT_Pattern<v3f32, f32, "V3">;
27902799
defm : SI_INDIRECT_Pattern <v4f32, f32, "V4">;
2800+
defm : SI_INDIRECT_Pattern<v5f32, f32, "V5">;
2801+
defm : SI_INDIRECT_Pattern<v6f32, f32, "V6">;
2802+
defm : SI_INDIRECT_Pattern<v7f32, f32, "V7">;
27912803
defm : SI_INDIRECT_Pattern <v8f32, f32, "V8">;
27922804
defm : SI_INDIRECT_Pattern <v9f32, f32, "V9">;
27932805
defm : SI_INDIRECT_Pattern <v10f32, f32, "V10">;
@@ -2797,7 +2809,11 @@ defm : SI_INDIRECT_Pattern <v16f32, f32, "V16">;
27972809
defm : SI_INDIRECT_Pattern <v32f32, f32, "V32">;
27982810

27992811
defm : SI_INDIRECT_Pattern <v2i32, i32, "V2">;
2812+
defm : SI_INDIRECT_Pattern<v3i32, i32, "V3">;
28002813
defm : SI_INDIRECT_Pattern <v4i32, i32, "V4">;
2814+
defm : SI_INDIRECT_Pattern<v5i32, i32, "V5">;
2815+
defm : SI_INDIRECT_Pattern<v6i32, i32, "V6">;
2816+
defm : SI_INDIRECT_Pattern<v7i32, i32, "V7">;
28012817
defm : SI_INDIRECT_Pattern <v8i32, i32, "V8">;
28022818
defm : SI_INDIRECT_Pattern <v9i32, i32, "V9">;
28032819
defm : SI_INDIRECT_Pattern <v10i32, i32, "V10">;

0 commit comments

Comments
 (0)