aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-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;
}