Index: lib/Target/AMDGPU/SIInstrInfo.cpp =================================================================== --- lib/Target/AMDGPU/SIInstrInfo.cpp +++ lib/Target/AMDGPU/SIInstrInfo.cpp @@ -2407,6 +2407,7 @@ } case 32: { MachineInstr *Lo, *Hi; + addUsersToMoveToVALUWorklist(MI->getOperand(0).getReg(), MRI, Worklist); splitSMRD(MI, &AMDGPU::SReg_128RegClass, AMDGPU::S_LOAD_DWORDX4_IMM, AMDGPU::S_LOAD_DWORDX4_SGPR, Lo, Hi); MI->eraseFromParent(); @@ -2417,6 +2418,7 @@ case 64: { MachineInstr *Lo, *Hi; + addUsersToMoveToVALUWorklist(MI->getOperand(0).getReg(), MRI, Worklist); splitSMRD(MI, &AMDGPU::SReg_256RegClass, AMDGPU::S_LOAD_DWORDX8_IMM, AMDGPU::S_LOAD_DWORDX8_SGPR, Lo, Hi); MI->eraseFromParent();