Yoshinori Sato | b229632 | 2006-11-05 16:18:08 +0900 | [diff] [blame^] | 1 | ! 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 | ||||
15 | #ifdef CONFIG_HAS_SR_RB | ||||
16 | 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 | ||||
23 | #ifdef CONFIG_HAS_SR_RB | ||||
24 | stc r7_bank, \ti | ||||
25 | #else | ||||
26 | mov #((THREAD_SIZE - 1)>> 8) ^ 0xff, \tmp | ||||
27 | shll8 \tmp | ||||
28 | mov r15, \ti | ||||
29 | and \tmp, \ti | ||||
30 | #endif | ||||
31 | .endm | ||||
32 |