1 .text 2 .p2align 4 3 .globl _start 4 _start: 5 mov ip, sp 6 stmdb sp!, {r11, ip, lr, pc} 7 bl app_func 8 ldmia sp, {r11, sp, lr} 9 bx lr 10 11 .p2align 4 12 .globl app_func 13 .type app_func,%function 14 app_func: 15 mov ip, sp 16 stmdb sp!, {r11, ip, lr, pc} 17 bl lib_func1 18 ldmia sp, {r11, sp, lr} 19 bx lr 20 21 .p2align 4 22 .globl app_func2 23 .type app_func2,%function 24 app_func2: 25 bx lr 26 27 .p2align 4 28 .globl app_tfunc 29 .type app_tfunc,%function 30 .thumb_func 31 .code 16 32 app_tfunc: 33 push {lr} 34 bl lib_func2 35 pop {pc} 36 bx lr 37 38 .data 39 .long data_obj 40