mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-01-04 21:30:49 +00:00
t2Bcc is allowed to have a predicate without a preceding IT instruction.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138946 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
ae779eea27
commit
7f17b5a483
@ -3377,7 +3377,8 @@ validateInstruction(MCInst &Inst,
|
|||||||
// Check for non-'al' condition codes outside of the IT block.
|
// Check for non-'al' condition codes outside of the IT block.
|
||||||
} else if (isThumbTwo() && MCID.isPredicable() &&
|
} else if (isThumbTwo() && MCID.isPredicable() &&
|
||||||
Inst.getOperand(MCID.findFirstPredOperandIdx()).getImm() !=
|
Inst.getOperand(MCID.findFirstPredOperandIdx()).getImm() !=
|
||||||
ARMCC::AL && Inst.getOpcode() != ARM::tBcc)
|
ARMCC::AL && Inst.getOpcode() != ARM::tBcc &&
|
||||||
|
Inst.getOpcode() != ARM::t2Bcc)
|
||||||
return Error(Loc, "predicated instructions must be in IT block");
|
return Error(Loc, "predicated instructions must be in IT block");
|
||||||
|
|
||||||
switch (Inst.getOpcode()) {
|
switch (Inst.getOpcode()) {
|
||||||
|
@ -86,6 +86,12 @@ _func:
|
|||||||
@ CHECK: addw r12, r6, #256 @ encoding: [0x06,0xf2,0x00,0x1c]
|
@ CHECK: addw r12, r6, #256 @ encoding: [0x06,0xf2,0x00,0x1c]
|
||||||
@ CHECK: adds.w r1, r2, #496 @ encoding: [0x12,0xf5,0xf8,0x71]
|
@ CHECK: adds.w r1, r2, #496 @ encoding: [0x12,0xf5,0xf8,0x71]
|
||||||
|
|
||||||
|
@------------------------------------------------------------------------------
|
||||||
|
@ B
|
||||||
|
@------------------------------------------------------------------------------
|
||||||
|
bmi.w #-183396
|
||||||
|
|
||||||
|
@ CHECK: bmi.w #-183396 @ encoding: [0x13,0xf5,0xce,0xa9]
|
||||||
|
|
||||||
@------------------------------------------------------------------------------
|
@------------------------------------------------------------------------------
|
||||||
@ CBZ/CBNZ
|
@ CBZ/CBNZ
|
||||||
|
Loading…
Reference in New Issue
Block a user