summaryrefslogtreecommitdiff
path: root/src/arch
diff options
context:
space:
mode:
authorGabe Black <gblack@eecs.umich.edu>2010-06-02 12:58:13 -0500
committerGabe Black <gblack@eecs.umich.edu>2010-06-02 12:58:13 -0500
commit98fe7b0fbe90867a6b324d48459709a140d60da2 (patch)
treee481e76e775a1d789410d437dba36dae287b492d /src/arch
parent5d9191a428ee28b45a0f56e69e2f453a1fc21e73 (diff)
downloadgem5-98fe7b0fbe90867a6b324d48459709a140d60da2.tar.xz
ARM: Move the CP15 decode block into a function.
Diffstat (limited to 'src/arch')
-rw-r--r--src/arch/arm/isa/formats/misc.isa16
1 files changed, 14 insertions, 2 deletions
diff --git a/src/arch/arm/isa/formats/misc.isa b/src/arch/arm/isa/formats/misc.isa
index 9ce199637..03fb86287 100644
--- a/src/arch/arm/isa/formats/misc.isa
+++ b/src/arch/arm/isa/formats/misc.isa
@@ -78,8 +78,14 @@ def format ArmMsrMrs() {{
'''
}};
-def format McrMrc15() {{
- decode_block = '''
+let {{
+ header_output = '''
+ StaticInstPtr
+ decodeMcrMrc15(ExtMachInst machInst);
+ '''
+ decoder_output = '''
+ StaticInstPtr
+ decodeMcrMrc15(ExtMachInst machInst)
{
const uint32_t opc1 = bits(machInst, 23, 21);
const uint32_t crn = bits(machInst, 19, 16);
@@ -180,3 +186,9 @@ def format McrMrc15() {{
}
'''
}};
+
+def format McrMrc15() {{
+ decode_block = '''
+ return decodeMcrMrc15(machInst);
+ '''
+}};