summaryrefslogtreecommitdiffstats
path: root/include/asm-sh/entry-macros.S
diff options
context:
space:
mode:
authorYoshinori Sato <ysato@users.sourceforge.jp>2006-11-05 16:18:08 +0900
committerPaul Mundt <lethal@linux-sh.org>2006-12-06 10:45:36 +0900
commitb229632abd451ab2c797010b9788e48c9314db4f (patch)
treebe097331d66985376057ff3ffbab742d60ac55ed /include/asm-sh/entry-macros.S
parentde39840646a223ae13a346048c280b7c871bf56e (diff)
sh: Add SH-2A platform headers.
Mostly SH-2 wrappers.. Signed-off-by: Yoshinori Sato <ysato@users.sourceforge.jp> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
Diffstat (limited to 'include/asm-sh/entry-macros.S')
-rw-r--r--include/asm-sh/entry-macros.S32
1 files changed, 32 insertions, 0 deletions
diff --git a/include/asm-sh/entry-macros.S b/include/asm-sh/entry-macros.S
new file mode 100644
index 00000000000..099fe8189bb
--- /dev/null
+++ b/include/asm-sh/entry-macros.S
@@ -0,0 +1,32 @@
+! entry.S macro define
+
+ .macro cli
+ stc sr, r0
+ or #0xf0, r0
+ ldc r0, sr
+ .endm
+
+ .macro sti
+ mov #0xf0, r11
+ extu.b r11, r11
+ not r11, r11
+ stc sr, r10
+ and r11, r10
+#ifdef CONFIG_HAS_SR_RB
+ stc k_g_imask, r11
+ or r11, r10
+#endif
+ ldc r10, sr
+ .endm
+
+ .macro get_current_thread_info, ti, tmp
+#ifdef CONFIG_HAS_SR_RB
+ stc r7_bank, \ti
+#else
+ mov #((THREAD_SIZE - 1)>> 8) ^ 0xff, \tmp
+ shll8 \tmp
+ mov r15, \ti
+ and \tmp, \ti
+#endif
+ .endm
+