diff options
author | Ingo Molnar <mingo@elte.hu> | 2008-08-11 13:27:47 +0200 |
---|---|---|
committer | Ingo Molnar <mingo@elte.hu> | 2008-08-11 13:27:47 +0200 |
commit | c4c0c56a7a85ed5725786219e4fbca7e840b1531 (patch) | |
tree | c9d6b35a571fd5e80ddf5bf4a60142480eaa18d8 /arch/sh/include/asm/entry-macros.S | |
parent | rcu classic: new algorithm for callbacks-processing(v2) (diff) | |
parent | Merge branch 'fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/davej/c... (diff) | |
download | linux-c4c0c56a7a85ed5725786219e4fbca7e840b1531.tar.xz linux-c4c0c56a7a85ed5725786219e4fbca7e840b1531.zip |
Merge branch 'linus' into core/rcu
Diffstat (limited to 'arch/sh/include/asm/entry-macros.S')
-rw-r--r-- | arch/sh/include/asm/entry-macros.S | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/arch/sh/include/asm/entry-macros.S b/arch/sh/include/asm/entry-macros.S new file mode 100644 index 000000000000..2dab0b8d9454 --- /dev/null +++ b/arch/sh/include/asm/entry-macros.S @@ -0,0 +1,33 @@ +! 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_CPU_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_CPU_HAS_SR_RB + stc r7_bank, \ti +#else + mov #((THREAD_SIZE - 1) >> 10) ^ 0xff, \tmp + shll8 \tmp + shll2 \tmp + mov r15, \ti + and \tmp, \ti +#endif + .endm + |