mirror of
https://github.com/RPCS3/llvm.git
synced 2024-12-24 13:06:56 +00:00
Handle dbg_value instructions (i.e., skip them) when generating IT blocks.
rdar://7797940 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@105557 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
221aec60a7
commit
8077e76f93
@ -71,8 +71,10 @@ bool Thumb2ITBlockPass::InsertITBlocks(MachineBasicBlock &MBB) {
|
||||
unsigned Mask = 0, Pos = 3;
|
||||
// Branches, including tricky ones like LDM_RET, need to end an IT
|
||||
// block so check the instruction we just put in the block.
|
||||
while (MBBI != E && Pos &&
|
||||
(!MI->getDesc().isBranch() && !MI->getDesc().isReturn())) {
|
||||
for (; MBBI != E && Pos &&
|
||||
(!MI->getDesc().isBranch() && !MI->getDesc().isReturn()) ; ++MBBI) {
|
||||
if (MBBI->isDebugValue())
|
||||
continue;
|
||||
MachineInstr *NMI = &*MBBI;
|
||||
MI = NMI;
|
||||
DebugLoc ndl = NMI->getDebugLoc();
|
||||
@ -83,7 +85,6 @@ bool Thumb2ITBlockPass::InsertITBlocks(MachineBasicBlock &MBB) {
|
||||
else
|
||||
break;
|
||||
--Pos;
|
||||
++MBBI;
|
||||
}
|
||||
Mask |= (1 << Pos);
|
||||
// Tag along (firstcond[0] << 4) with the mask.
|
||||
|
Loading…
Reference in New Issue
Block a user