Skip to content

Commit 26ebc51

Browse files
committed
AMDGPU/GlobalISel: Fix smrd loads of v4i64
1 parent 88b493a commit 26ebc51

File tree

2 files changed

+5
-3
lines changed

2 files changed

+5
-3
lines changed

llvm/lib/Target/AMDGPU/SIRegisterInfo.td

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -578,15 +578,15 @@ def SReg_160 : RegisterClass<"AMDGPU", [v5i32, v5f32], 32,
578578
let AllocationPriority = 16;
579579
}
580580

581-
def SGPR_256 : RegisterClass<"AMDGPU", [v8i32, v8f32], 32, (add SGPR_256Regs)> {
581+
def SGPR_256 : RegisterClass<"AMDGPU", [v8i32, v8f32, v4i64], 32, (add SGPR_256Regs)> {
582582
let AllocationPriority = 17;
583583
}
584584

585585
def TTMP_256 : RegisterClass<"AMDGPU", [v8i32, v8f32], 32, (add TTMP_256Regs)> {
586586
let isAllocatable = 0;
587587
}
588588

589-
def SReg_256 : RegisterClass<"AMDGPU", [v8i32, v8f32], 32,
589+
def SReg_256 : RegisterClass<"AMDGPU", [v8i32, v8f32, v4i64], 32,
590590
(add SGPR_256, TTMP_256)> {
591591
// Requires 4 s_mov_b64 to copy
592592
let CopyCost = 4;

llvm/lib/Target/AMDGPU/SMInstructions.td

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -808,7 +808,9 @@ foreach vt = SReg_128.RegTypes in {
808808
defm : SMRD_Pattern <"S_LOAD_DWORDX4", vt>;
809809
}
810810

811-
defm : SMRD_Pattern <"S_LOAD_DWORDX8", v8i32>;
811+
foreach vt = SReg_256.RegTypes in {
812+
defm : SMRD_Pattern <"S_LOAD_DWORDX8", vt>;
813+
}
812814
defm : SMRD_Pattern <"S_LOAD_DWORDX16", v16i32>;
813815

814816
defm : SMLoad_Pattern <"S_BUFFER_LOAD_DWORD", i32>;

0 commit comments

Comments
 (0)