summaryrefslogtreecommitdiff
path: root/src/arch/arm/isa/decoder/thumb.isa
diff options
context:
space:
mode:
authorGabe Black <gblack@eecs.umich.edu>2010-06-02 12:58:01 -0500
committerGabe Black <gblack@eecs.umich.edu>2010-06-02 12:58:01 -0500
commitfde3c8f41d08500e13d94227b52a642111043414 (patch)
tree7ee9529c31fc8fbf379f7546fb60d52a2f7f8ea5 /src/arch/arm/isa/decoder/thumb.isa
parent3b93015304382f669a74ba21d65588a1d2235468 (diff)
downloadgem5-fde3c8f41d08500e13d94227b52a642111043414.tar.xz
ARM: Make 32 bit thumb use the new, external load instructions.
Diffstat (limited to 'src/arch/arm/isa/decoder/thumb.isa')
-rw-r--r--src/arch/arm/isa/decoder/thumb.isa53
1 files changed, 1 insertions, 52 deletions
diff --git a/src/arch/arm/isa/decoder/thumb.isa b/src/arch/arm/isa/decoder/thumb.isa
index 7aba61b57..ba29d9fec 100644
--- a/src/arch/arm/isa/decoder/thumb.isa
+++ b/src/arch/arm/isa/decoder/thumb.isa
@@ -419,58 +419,7 @@
0x1: decode HTOPCODE_6_5 {
0x0: WarnUnimpl::Load_byte_memory_hints();
0x1: WarnUnimpl::Load_halfword_memory_hints();
- 0x2: decode HTOPCODE_8 {
- 0x0: decode HTRN {
- 0xf: ArmLoadMemory::ldr1(
- {{ Rd.uw = Mem.uw }},
- {{ EA = roundUp(PC, 4) +
- (UP ? IMMED_11_0 : -IMMED_11_0); }});
- default: decode HTOPCODE_7 {
- 0x0: decode LTOPCODE_11_8 {
- 0x0: decode LTOPCODE_7_6 {
- 0x0: ArmLoadMemory::ldr2(
- {{ Rd = Mem; }},
- {{ EA = Rn +
- (Rm <<
- bits(machInst, 5, 4)); }}
- );
- }
- 0x9: ArmLoadMemory::ldr3(
- {{ Rd = Mem;
- Rn = Rn - IMMED_11_0; }},
- {{ EA = Rn; }}
- );
- 0xb: ArmLoadMemory::ldr4(
- {{ Rd = Mem;
- Rn = Rn + IMMED_11_0; }},
- {{ EA = Rn; }}
- );
- 0xc: ArmLoadMemory::ldr5(
- {{ Rd = Mem; }},
- {{ EA = Rn - IMMED_11_0; }}
- );
- 0xd: ArmLoadMemory::ldr6(
- {{ Rd = Mem;
- Rn = Rn - IMMED_11_0; }},
- {{ EA = Rn - IMMED_11_0; }}
- );
- 0xf: ArmLoadMemory::ldr7(
- {{ Rd = Mem;
- Rn = Rn + IMMED_11_0; }},
- {{ EA = Rn + IMMED_11_0; }}
- );
- 0xe: ArmLoadMemory::ldrt(
- {{ Rd = Mem; }},
- {{ EA = Rn + IMMED_11_0; }}
- ); // This should force user level access
- }
- 0x1: ArmLoadMemory::ldr8(
- {{ Rd = Mem; }},
- {{ EA = Rn + IMMED_11_0; }}
- );
- }
- }
- }
+ 0x2: Thumb32LoadWord::thumb32LoadWord();
0x3: WarnUnimpl::undefined();
}
}