Skip to content

Commit bba8686

Browse files
committed
style changes, small fix
1 parent f093ec6 commit bba8686

File tree

3 files changed

+15
-15
lines changed

3 files changed

+15
-15
lines changed

llvm/lib/Target/AMDGPU/AMDGPUWaitSGPRHazards.cpp

Lines changed: 12 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -190,19 +190,18 @@ class AMDGPUWaitSGPRHazards {
190190
return Mask;
191191
}
192192

193-
bool mergeSubsequentWaitAlus(MachineBasicBlock::instr_iterator &MI,
194-
unsigned Mask) {
193+
bool mergeConsecutiveWaitAlus(MachineBasicBlock::instr_iterator &MI,
194+
unsigned Mask) {
195195
auto MBB = MI->getParent();
196-
if (MI != MBB->instr_begin()) {
197-
MachineBasicBlock::instr_iterator It = std::prev(MI);
198-
while (It != MBB->instr_begin() && It->isDebugInstr())
199-
--It;
200-
if (It->getOpcode() == AMDGPU::S_WAITCNT_DEPCTR) {
201-
It->getOperand(0).setImm(mergeMasks(Mask, It->getOperand(0).getImm()));
202-
return true;
203-
}
204-
}
205-
return false;
196+
if (MI == MBB->instr_begin())
197+
return false;
198+
199+
auto It = prev_nodbg(MI, MBB->instr_begin());
200+
if (It->getOpcode() != AMDGPU::S_WAITCNT_DEPCTR)
201+
return false;
202+
203+
It->getOperand(0).setImm(mergeMasks(Mask, It->getOperand(0).getImm()));
204+
return true;
206205
}
207206

208207
bool runOnMachineBasicBlock(MachineBasicBlock &MBB, bool Emit) {
@@ -403,7 +402,7 @@ class AMDGPUWaitSGPRHazards {
403402
Mask = AMDGPU::DepCtr::encodeFieldVaSdst(Mask, 0);
404403
}
405404
if (Emit) {
406-
if (!mergeSubsequentWaitAlus(MI, Mask)) {
405+
if (!mergeConsecutiveWaitAlus(MI, Mask)) {
407406
auto NewMI = BuildMI(MBB, MI, MI->getDebugLoc(),
408407
TII->get(AMDGPU::S_WAITCNT_DEPCTR))
409408
.addImm(Mask);

llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1805,15 +1805,15 @@ unsigned encodeFieldVaSsrc(unsigned Encoded, unsigned VaSsrc) {
18051805
}
18061806

18071807
unsigned encodeFieldVaSsrc(unsigned VaSsrc) {
1808-
return encodeFieldVaSsrc(0xfff, VaSsrc);
1808+
return encodeFieldVaSsrc(0xffff, VaSsrc);
18091809
}
18101810

18111811
unsigned encodeFieldHoldCnt(unsigned Encoded, unsigned HoldCnt) {
18121812
return packBits(HoldCnt, Encoded, getHoldCntBitShift(), getHoldCntWidth());
18131813
}
18141814

18151815
unsigned encodeFieldHoldCnt(unsigned HoldCnt) {
1816-
return encodeFieldHoldCnt(0xfff, HoldCnt);
1816+
return encodeFieldHoldCnt(0xffff, HoldCnt);
18171817
}
18181818

18191819
} // namespace DepCtr

llvm/test/CodeGen/AMDGPU/merge-consecutive-wait-alus.mir

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -76,3 +76,4 @@ body: |
7676
DBG_VALUE $sgpr0
7777
renamable $vgpr0 = V_CNDMASK_B32_e64 0, -1, 0, killed $vgpr0, killed $sgpr0, implicit $exec, implicit-def $vcc
7878
...
79+

0 commit comments

Comments
 (0)