They do have a def machine operand.
Fixing the definition is necessary for an upcoming patch.
Differential D18384
CodeGen: Correct specification of PHI nodes MatzeB on Mar 22 2016, 8:35 PM. Authored by
Details They do have a def machine operand. Fixing the definition is necessary for an upcoming patch.
Diff Detail
Event TimelineComment Actions I am posting this for review, because I did not expect the change in the AMDGPU test being necessary. It would be nice if someone familiar with AMDGPU could double check the AMDGPU testcase change. Looking through the AMDGPU code my guess would be that SIFixSGPRLiveRanges.cpp missed PHI instruction definitions before this patch, as the phi def operands where not part of the MachineInstr::defs() iterator before this fix. Reading the comment in that code, I'd also recommend to change the code to loop over all MachineInstr::operands(), there is nothing preventing implicit-defs to address vregs as well (though this may not happen in the AMDGPU backend today). Comment Actions Thanks for diagnosing the issue with the AMDGPU backend. I don't think I'm going to have time to look into this in the next few days, so I don't mind dealing with any problems in a post-commit review. You can commit when ready. |