summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--util/m5/m5op_arm_A64.S13
1 files changed, 12 insertions, 1 deletions
diff --git a/util/m5/m5op_arm_A64.S b/util/m5/m5op_arm_A64.S
index b69530db3..f17c803d0 100644
--- a/util/m5/m5op_arm_A64.S
+++ b/util/m5/m5op_arm_A64.S
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2010-2013, 2016 ARM Limited
+ * Copyright (c) 2010-2013, 2016-2017 ARM Limited
* All rights reserved
*
* The license below extends only to copyright in the software and shall
@@ -45,12 +45,23 @@
#include "m5ops.h"
+#ifdef M5OP_ADDR
+.macro m5op_func, name, func, subfunc
+ .globl \name
+ \name:
+ ldr x9, m5_mem
+ movz x10, #((\func << 8) | \subfunc)
+ ldr x0, [ x9, x10 ]
+ ret
+.endm
+#else
.macro m5op_func, name, func, subfunc
.globl \name
\name:
.long 0xff000110 | (\func << 16) | (\subfunc << 12)
ret
.endm
+#endif
.text
#define M5OP(name, func, subfunc) m5op_func name, func, subfunc