AREA |.text|, CODE, READONLY, ALIGN=2 THUMB REQUIRE8 PRESERVE8 ;指针调用会使用LDR指令,通过解析这个指令使用的寄存器 ;可以从这个寄存器得到类的基地址 ;在调用这个函数之前,调用者会压栈,此时LR已经不是之前的值 ;所以只能解析PHSH指令,找到栈中存储的LR值 __self_pointer PROC EXPORT __self_pointer MOV R0,LR LDRH R0,[R0,#-2] BX LR ENDP __interrupt_disable PROC EXPORT __interrupt_disable MRS r0, PRIMASK CPSID I BX LR ENDP __interrupt_enable PROC EXPORT __interrupt_enable MSR PRIMASK, r0 BX LR ENDP __set_msp PROC EXPORT __set_msp MSR msp, r0 BX lr ENDP ALIGN 4 END