diff options
author | Ali Saidi <Ali.Saidi@ARM.com> | 2010-06-02 12:58:12 -0500 |
---|---|---|
committer | Ali Saidi <Ali.Saidi@ARM.com> | 2010-06-02 12:58:12 -0500 |
commit | f64c8bafd2609ad21535cef3ee9d8a0ac41f1f8c (patch) | |
tree | f9abed96e9e3c333e3122ead11f617b9696d0682 /src/arch/arm/isa/formats | |
parent | 1fcd389fa327493d66767ee11698ccff8fccb7ac (diff) | |
download | gem5-f64c8bafd2609ad21535cef3ee9d8a0ac41f1f8c.tar.xz |
ARM: BXJ should be BX when there is no J support
Diffstat (limited to 'src/arch/arm/isa/formats')
-rw-r--r-- | src/arch/arm/isa/formats/branch.isa | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/src/arch/arm/isa/formats/branch.isa b/src/arch/arm/isa/formats/branch.isa index dbb6f9f9d..055955520 100644 --- a/src/arch/arm/isa/formats/branch.isa +++ b/src/arch/arm/isa/formats/branch.isa @@ -207,7 +207,12 @@ def format Thumb32BranchesAndMiscCtrl() {{ break; } case 0x3c: - return new WarnUnimplemented("bxj", machInst); + { + // On systems that don't support bxj, bxj == bx + return new BxReg(machInst, + (IntRegIndex)(uint32_t)bits(machInst, 19, 16), + COND_UC); + } case 0x3d: { const uint32_t imm32 = bits(machInst, 7, 0); |