mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-08-05 13:26:55 +00:00
In Thumb2, direct branches can be encoded as either a "short" conditional branch with a null predicate, or
as a "long" direct branch. While the mnemonics are the same, they encode the branch offset differently, and the Darwin assembler appears to prefer the "long" form for direct branches. Thus, in the name of bitwise equivalence, provide encoding and fixup support for it. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121710 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
@@ -36,9 +36,12 @@ enum Fixups {
|
||||
// fixup_arm_branch - 24-bit PC relative relocation for direct branch
|
||||
// instructions.
|
||||
fixup_arm_branch,
|
||||
// fixup_t2_branch - 20-bit PC relative relocation for Thumb2 direct branch
|
||||
// instructions.
|
||||
fixup_t2_branch,
|
||||
// fixup_t2_condbranch - 20-bit PC relative relocation for Thumb2 direct
|
||||
// uconditional branch instructions.
|
||||
fixup_t2_condbranch,
|
||||
// fixup_t2_uncondbranch - 20-bit PC relative relocation for Thumb2 direct
|
||||
// branch unconditional branch instructions.
|
||||
fixup_t2_uncondbranch,
|
||||
|
||||
// fixup_arm_thumb_br - 12-bit fixup for Thumb B instructions.
|
||||
fixup_arm_thumb_br,
|
||||
|
Reference in New Issue
Block a user