Home | History | Annotate | Download | only in ld-arm
      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 	bl	lib_func1
      9 	bl	lib_func2
     10 	ldmia	sp, {r11, sp, lr}
     11 	bx lr
     12 
     13 	.p2align 4
     14 	.globl app_tfunc_close
     15 	.type app_tfunc_close,%function
     16 	.thumb_func
     17 	.code 16
     18 app_tfunc_close:
     19 	push	{lr}
     20 	bl	lib_func2
     21 	pop	{pc}
     22 	bx	lr
     23 
     24 @ We will place the section .far_arm at 0x2100000.
     25 	.section .far_arm, "xa"
     26 
     27 	.arm
     28 	.p2align 4
     29 	.globl app_func
     30 	.type app_func,%function
     31 app_func:
     32 	mov	ip, sp
     33 	stmdb	sp!, {r11, ip, lr, pc}
     34 	bl	lib_func1
     35 	bl	lib_func2
     36 	ldmia	sp, {r11, sp, lr}
     37 	bx lr
     38 
     39 	.arm
     40 	.p2align 4
     41 	.globl app_func2
     42 	.type app_func2,%function
     43 app_func2:
     44 	bx	lr
     45 
     46 @ We will place the section .far_thumb at 0x2200000.
     47 	.section .far_thumb, "xa"
     48 
     49 	.p2align 4
     50 	.globl app_tfunc
     51 	.type app_tfunc,%function
     52 	.thumb_func
     53 	.code 16
     54 app_tfunc:
     55 	push	{lr}
     56 	bl	lib_func2
     57 	pop	{pc}
     58 	bx	lr
     59 
     60 	.data
     61 	.long data_obj
     62