mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-12-13 04:30:23 +00:00
Thumb needs a few different encoding schemes for branch targets. Rename
t_brtarget to be more specific. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121398 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
b78558c0e1
commit
cf6220a9de
@ -74,7 +74,7 @@ def t_imm_s4 : Operand<i32> {
|
||||
|
||||
// Define Thumb specific addressing modes.
|
||||
|
||||
def t_brtarget : Operand<i32> {
|
||||
def t_cbtarget : Operand<i32> {
|
||||
let EncoderMethod = "getThumbBRTargetOpValue";
|
||||
}
|
||||
|
||||
@ -518,7 +518,7 @@ let isBranch = 1, isTerminator = 1 in
|
||||
|
||||
// Compare and branch on zero / non-zero
|
||||
let isBranch = 1, isTerminator = 1 in {
|
||||
def tCBZ : T1I<(outs), (ins tGPR:$Rn, t_brtarget:$target), IIC_Br,
|
||||
def tCBZ : T1I<(outs), (ins tGPR:$Rn, t_cbtarget:$target), IIC_Br,
|
||||
"cbz\t$Rn, $target", []>,
|
||||
T1Misc<{0,0,?,1,?,?,?}> {
|
||||
// A8.6.27
|
||||
@ -529,7 +529,7 @@ let isBranch = 1, isTerminator = 1 in {
|
||||
let Inst{2-0} = Rn;
|
||||
}
|
||||
|
||||
def tCBNZ : T1I<(outs), (ins tGPR:$cmp, t_brtarget:$target), IIC_Br,
|
||||
def tCBNZ : T1I<(outs), (ins tGPR:$cmp, t_cbtarget:$target), IIC_Br,
|
||||
"cbnz\t$cmp, $target", []>,
|
||||
T1Misc<{1,0,?,1,?,?,?}> {
|
||||
// A8.6.27
|
||||
|
@ -587,7 +587,7 @@ static int ARMFlagFromOpName(LiteralConstantEmitter *type,
|
||||
IMM("neon_vcvt_imm32");
|
||||
|
||||
MISC("brtarget", "kOperandTypeARMBranchTarget"); // ?
|
||||
MISC("t_brtarget", "kOperandTypeARMBranchTarget"); // ?
|
||||
MISC("t_cbtarget", "kOperandTypeARMBranchTarget"); // ?
|
||||
MISC("bltarget", "kOperandTypeARMBranchTarget"); // ?
|
||||
MISC("t_bltarget", "kOperandTypeARMBranchTarget"); // ?
|
||||
MISC("t_blxtarget", "kOperandTypeARMBranchTarget"); // ?
|
||||
|
Loading…
Reference in New Issue
Block a user