X-Git-Url: http://rtime.felk.cvut.cz/gitweb/lincan.git/blobdiff_plain/cc1afb21bdc089426652f21769164645cae062fd..243fec4450d3a3246f3f0d92751a95daef7c1503:/embedded/arch/arm/mach-lpc21xx/libs/iap/iap_asm.S diff --git a/embedded/arch/arm/mach-lpc21xx/libs/iap/iap_asm.S b/embedded/arch/arm/mach-lpc21xx/libs/iap/iap_asm.S index 8867e32..213d031 100644 --- a/embedded/arch/arm/mach-lpc21xx/libs/iap/iap_asm.S +++ b/embedded/arch/arm/mach-lpc21xx/libs/iap/iap_asm.S @@ -1,6 +1,20 @@ .global iap_asm_entry .func iap_asm_entry + +#if defined(__thumb__) && !defined(__THUMB_INTERWORK__) + .code 16 + .align 0 + .thumb_func + .type iap_asm_entry, %function +iap_asm_entry: + bx pc + nop + .code 32 +#else + .code 32 + .type iap_asm_entry, %function iap_asm_entry: +#endif stmfd sp!,{r1, r2, lr} adr lr,iap_asm_exit ldr r2,=0x7FFFFFF1 @@ -8,6 +22,6 @@ iap_asm_entry: iap_asm_exit: ldmfd sp!,{r1, r2, lr} - mov pc,lr + bx lr .endfunc .end