summaryrefslogtreecommitdiff
path: root/util/m5/m5op_arm.S
diff options
context:
space:
mode:
authorAli Saidi <Ali.Saidi@ARM.com>2013-10-31 13:41:13 -0500
committerAli Saidi <Ali.Saidi@ARM.com>2013-10-31 13:41:13 -0500
commit68dee58c38a6f861829522d47510c294459e7494 (patch)
tree28f5157f6c5cf6255585416cf0e90e2a6ac93fbd /util/m5/m5op_arm.S
parent79f81e26416d99104beda28f4d8af333cccc0048 (diff)
downloadgem5-68dee58c38a6f861829522d47510c294459e7494.tar.xz
arm: fix m5ops binary for ARM and add m5fail.
Changes to make m5ops work under virtualization seemed to break them working with non-virtualized systems and the recently added m5 fail command makes the m5op binary not compile. For now remove the code for virtualization.
Diffstat (limited to 'util/m5/m5op_arm.S')
-rw-r--r--util/m5/m5op_arm.S20
1 files changed, 2 insertions, 18 deletions
diff --git a/util/m5/m5op_arm.S b/util/m5/m5op_arm.S
index 3a43913f7..988abd76e 100644
--- a/util/m5/m5op_arm.S
+++ b/util/m5/m5op_arm.S
@@ -55,29 +55,13 @@
.align 2
.globl \name
\name:
- /* First, try to trap into m5 using the m5-kvm hypercall
- * hack. The bxj will become a branch to the fallback code
- * if it is executed in the normal m5 environment.
- */
- push {lr}
-#ifdef __thumb__
- adr lr, 1f+1
-#else
- adr lr, 1f
-#endif
- ldr ip, =((((\func) & 0xFF) << 8) | ((\subfunc) & 0xFF))
- bxj lr
- pop {pc}
-
- /* Old-style m5 pseudo instruction using CP1 accesses */
-1:
#ifdef __thumb__
.short 0xEE00 | \func
.short 0x0110 | (\subfunc << 12)
#else
- .long (0xEE000110 | (\func << 16) | (\subfunc << 12))
+ .long 0xEE000110 | (\func << 16) | (\subfunc << 12)
#endif
- pop {pc}
+ mov pc,lr
.endm
#define SIMPLE_OP(name, func, subfunc) simple_op name, func, subfunc