FreeCalypso > hg > fc-selenite
comparison src/cs/system/main/gcc/irq_twiddle.S @ 78:95ef11e76c5b
src/cs/system/main/gcc: asm code pieced from Citrine
author | Mychaela Falconia <falcon@freecalypso.org> |
---|---|
date | Fri, 20 Jul 2018 06:46:56 +0000 |
parents | |
children |
comparison
equal
deleted
inserted
replaced
77:6b6675a07b70 | 78:95ef11e76c5b |
---|---|
1 /* | |
2 * TI's L1 code (and possibly other parts of the software suite) calls | |
3 * functions named INT_DisableIRQ() and INT_EnableIRQ(); in TI's original | |
4 * fw they are implemented (in a very ugly manner, as usual) in the | |
5 * int.s entry point assembly module. Here we implement the same | |
6 * functions in a cleaner way. | |
7 */ | |
8 | |
9 #include "asm_defs.h" | |
10 | |
11 .code 32 | |
12 .text | |
13 | |
14 .globl INT_DisableIRQ | |
15 INT_DisableIRQ: | |
16 mrs r0, CPSR | |
17 orr r0, r0, #LOCKOUT | |
18 msr CPSR, r0 | |
19 bx lr | |
20 | |
21 .globl INT_EnableIRQ | |
22 INT_EnableIRQ: | |
23 mrs r0, CPSR | |
24 bic r0, r0, #LOCKOUT | |
25 msr CPSR, r0 | |
26 bx lr |