blob: 2dab0b8d9454f8d8b67afa46016b2924b6b9b28f [file] [log] [blame]
Yoshinori Satob2296322006-11-05 16:18:08 +09001! entry.S macro define
2
3 .macro cli
4 stc sr, r0
5 or #0xf0, r0
6 ldc r0, sr
7 .endm
8
9 .macro sti
10 mov #0xf0, r11
11 extu.b r11, r11
12 not r11, r11
13 stc sr, r10
14 and r11, r10
Hideo Saito8b1d1652008-02-26 14:28:48 +090015#ifdef CONFIG_CPU_HAS_SR_RB
Yoshinori Satob2296322006-11-05 16:18:08 +090016 stc k_g_imask, r11
17 or r11, r10
18#endif
19 ldc r10, sr
20 .endm
21
22 .macro get_current_thread_info, ti, tmp
Hideo Saito8b1d1652008-02-26 14:28:48 +090023#ifdef CONFIG_CPU_HAS_SR_RB
Yoshinori Satob2296322006-11-05 16:18:08 +090024 stc r7_bank, \ti
25#else
Paul Mundt510c72ad2006-11-27 12:06:26 +090026 mov #((THREAD_SIZE - 1) >> 10) ^ 0xff, \tmp
Yoshinori Satob2296322006-11-05 16:18:08 +090027 shll8 \tmp
Paul Mundt510c72ad2006-11-27 12:06:26 +090028 shll2 \tmp
Yoshinori Satob2296322006-11-05 16:18:08 +090029 mov r15, \ti
30 and \tmp, \ti
31#endif
32 .endm
33