1
2
3
4#ifndef __NDS32_ASSEMBLER_H__
5#define __NDS32_ASSEMBLER_H__
6
7.macro gie_disable
8 setgie.d
9 dsb
10.endm
11
12.macro gie_enable
13 setgie.e
14 dsb
15.endm
16
17.macro gie_save oldpsw
18 mfsr \oldpsw, $ir0
19 setgie.d
20 dsb
21.endm
22
23.macro gie_restore oldpsw
24 andi \oldpsw, \oldpsw, #0x1
25 beqz \oldpsw, 7001f
26 setgie.e
27 dsb
287001:
29.endm
30
31
32#define USER(insn, reg, addr, opr) \
339999: insn reg, addr, opr; \
34 .section __ex_table,"a"; \
35 .align 3; \
36 .long 9999b, 9001f; \
37 .previous
38
39#endif
40