[PATCH] D87107: [AMDGPU] Target hook to apply target specific split constraint
Alexander via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Fri Sep 4 10:27:28 PDT 2020
alex-t added a comment.
So, since we now have sensible diff to discuss...
Why I decided to disallow split in any block that gets control with exec == 0 and has no restoring code in prologue?
I just did it by example of the code that already does same for the blocks with interference - a bit later below:
// Abort if the spill cannot be inserted at the MBB' start
MachineBasicBlock *MBB = MF->getBlockNumbered(Number);
if (!MBB->empty() &&
SlotIndex::isEarlierInstr(LIS->getInstructionIndex(MBB->instr_front()),
SA->getFirstSplitPoint(Number)))
return false;
Your idea of returnin the iterator to the nearest valid insert point is good but I have to find another place to invade. Maybe I should try to modify InsertPointAnalysis::getFirst/LastInsertPoint methods.
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D87107/new/
https://reviews.llvm.org/D87107
More information about the llvm-commits
mailing list