aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authoraurel32 <aurel32@c046a42c-6fe2-441c-8c8c-71466251a162>2008-08-28 21:02:00 +0000
committeraurel32 <aurel32@c046a42c-6fe2-441c-8c8c-71466251a162>2008-08-28 21:02:00 +0000
commit988d7eaa7ba97795a55cc5ebf884335afa53b607 (patch)
tree954a65eaa62f7bf362dda6b25e11081f788cf3ff
parent6858571c5a7943ccd260a5c66fde0ab0712e32c0 (diff)
SH4: add support for TCG helpers
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net> git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5096 c046a42c-6fe2-441c-8c8c-71466251a162
-rw-r--r--target-sh4/helper.h4
-rw-r--r--target-sh4/translate.c7
2 files changed, 11 insertions, 0 deletions
diff --git a/target-sh4/helper.h b/target-sh4/helper.h
new file mode 100644
index 0000000000..60addabeb7
--- /dev/null
+++ b/target-sh4/helper.h
@@ -0,0 +1,4 @@
+#ifndef DEF_HELPER
+#define DEF_HELPER(ret, name, params) ret name params;
+#endif
+
diff --git a/target-sh4/translate.c b/target-sh4/translate.c
index 4fef2d82ec..c00f657493 100644
--- a/target-sh4/translate.c
+++ b/target-sh4/translate.c
@@ -31,6 +31,7 @@
#include "cpu.h"
#include "exec-all.h"
#include "disas.h"
+#include "helper.h"
#include "tcg-op.h"
#include "qemu-common.h"
@@ -68,6 +69,12 @@ static void sh4_translate_init(void)
cpu_env = tcg_global_reg_new(TCG_TYPE_PTR, TCG_AREG0, "env");
cpu_T[0] = tcg_global_reg_new(TCG_TYPE_TL, TCG_AREG1, "T0");
cpu_T[1] = tcg_global_reg_new(TCG_TYPE_TL, TCG_AREG2, "T1");
+
+ /* register helpers */
+#undef DEF_HELPER
+#define DEF_HELPER(ret, name, params) tcg_register_helper(name, #name);
+#include "helper.h"
+
done_init = 1;
}