File tree Expand file tree Collapse file tree 1 file changed +5
-12
lines changed Expand file tree Collapse file tree 1 file changed +5
-12
lines changed Original file line number Diff line number Diff line change @@ -63,12 +63,8 @@ class AMDGPUInsertDelayAlu : public MachineFunctionPass {
63
63
64
64
static bool instructionWaitsForSGPRWrites (const MachineInstr &MI) {
65
65
// These instruction types wait for VA_SDST==0 before issuing.
66
- // S_CBRANCH_EXECZ and S_CBRANCH_VCCZ are covered by SALU flag
67
- const uint64_t VA_SDST_0 = SIInstrFlags::SALU | SIInstrFlags::EXP |
68
- SIInstrFlags::DS | SIInstrFlags::SMRD |
69
- SIInstrFlags::MIMG | SIInstrFlags::VIMAGE |
70
- SIInstrFlags::VSAMPLE;
71
-
66
+ const uint64_t VA_SDST_0 = SIInstrFlags::SALU | SIInstrFlags::SMRD;
67
+
72
68
if (MI.getDesc ().TSFlags & VA_SDST_0)
73
69
return true ;
74
70
@@ -423,16 +419,13 @@ class AMDGPUInsertDelayAlu : public MachineFunctionPass {
423
419
if (SII->isVALU (MI.getOpcode ())) {
424
420
for (const auto &Op : MI.defs ()) {
425
421
Register Reg = Op.getReg ();
426
- for (MCRegUnit Unit : TRI->regunits (Reg)) {
427
- if (AMDGPU::isSGPR (Reg, TRI)) {
428
- lastSGPRfromVALU = Unit;
429
- break ;
430
- }
422
+ if (AMDGPU::isSGPR (Reg, TRI)) {
423
+ lastSGPRfromVALU = *(TRI->regunits (Reg).begin ());
424
+ break ;
431
425
}
432
426
}
433
427
}
434
428
435
-
436
429
if (Emit && !MI.isBundledWithPred ()) {
437
430
// TODO: For VALU->SALU delays should we use s_delay_alu or s_nop or
438
431
// just ignore them?
You can’t perform that action at this time.
0 commit comments