diff options
author | John van Groningen | 2015-10-22 13:08:20 +0000 |
---|---|---|
committer | John van Groningen | 2015-10-22 13:08:20 +0000 |
commit | 90a02f720ece4c6d3163246ce17718d3d4d4b5c8 (patch) | |
tree | 6507b7dca1aa161e8d598f8f8ede89b433186120 /armap.s | |
parent | workaround bugs and limitations of the llvm assembler (diff) |
add position independent code option (PIC) for ARM
Diffstat (limited to 'armap.s')
-rw-r--r-- | armap.s | 444 |
1 files changed, 335 insertions, 109 deletions
@@ -1003,10 +1003,11 @@ add_empty_node_2: subs r5,r5,#3
blo add_empty_node_2_gc
add_empty_node_2_gc_:
- ldr r12,=__cycle__in__spine
+ lao r12,__cycle__in__spine,1
mov r8,r7
mov r7,r6
mov r6,r10
+ otoa r12,__cycle__in__spine,1
str r12,[r10],#12
bx lr
add_empty_node_2_gc:
@@ -1019,8 +1020,9 @@ add_empty_node_3: subs r5,r5,#3
blo add_empty_node_3_gc
add_empty_node_3_gc_:
- ldr r12,=__cycle__in__spine
+ lao r12,__cycle__in__spine,2
str r10,[r9],#4
+ otoa r12,__cycle__in__spine,2
str r12,[r10],#12
bx lr
add_empty_node_3_gc:
@@ -1036,8 +1038,9 @@ add_empty_node_4_gc_: ldr r11,[r9,#-4]
str r11,[r9]
str r10,[r9,#-4]
- ldr r12,=__cycle__in__spine
+ lao r12,__cycle__in__spine,3
add r9,r9,#4
+ otoa r12,__cycle__in__spine,3
str r12,[r10],#12
bx lr
add_empty_node_4_gc:
@@ -1055,8 +1058,9 @@ add_empty_node_5_gc_: ldr r11,[r9,#-8]
str r11,[r9,#-4]
str r10,[r9,#-8]
- ldr r12,=__cycle__in__spine
+ lao r12,__cycle__in__spine,4
add r9,r9,#4
+ otoa r12,__cycle__in__spine,4
str r12,[r10],#12
bx lr
add_empty_node_5_gc:
@@ -1076,8 +1080,9 @@ add_empty_node_6_gc_: ldr r11,[r9,#-12]
str r11,[r9,#-8]
str r10,[r9,#-12]
- ldr r12,=__cycle__in__spine
+ lao r12,__cycle__in__spine,5
add r9,r9,#4
+ otoa r12,__cycle__in__spine,5
str r12,[r10],#12
bx lr
add_empty_node_6_gc:
@@ -1097,8 +1102,9 @@ add_empty_node_7_gc_: ldr r11,[r9,#-16]
str r11,[r9,#-12]
str r10,[r9,#-16]
- ldr r12,=__cycle__in__spine
+ lao r12,__cycle__in__spine,6
add r9,r9,#4
+ otoa r12,__cycle__in__spine,6
str r12,[r10],#12
bx lr
add_empty_node_7_gc:
@@ -1120,8 +1126,9 @@ add_empty_node_8_gc_: ldr r11,[r9,#-20]
str r11,[r9,#-16]
str r10,[r9,#-20]
- ldr r12,=__cycle__in__spine
+ lao r12,__cycle__in__spine,7
add r9,r9,#4
+ otoa r12,__cycle__in__spine,7
str r12,[r10],#12
bx lr
add_empty_node_8_gc:
@@ -1145,8 +1152,9 @@ add_empty_node_9_gc_: ldr r11,[r9,#-24]
str r11,[r9,#-20]
str r10,[r9,#-24]
- ldr r12,=__cycle__in__spine
+ lao r12,__cycle__in__spine,8
add r9,r9,#4
+ otoa r12,__cycle__in__spine,8
str r12,[r10],#12
bx lr
add_empty_node_9_gc:
@@ -1172,8 +1180,9 @@ add_empty_node_10_gc_: ldr r11,[r9,#-28]
str r11,[r9,#-24]
str r10,[r9,#-28]
- ldr r12,=__cycle__in__spine
+ lao r12,__cycle__in__spine,9
add r9,r9,#4
+ otoa r12,__cycle__in__spine,9
str r12,[r10],#12
bx lr
add_empty_node_10_gc:
@@ -1215,8 +1224,9 @@ add_empty_node_11_lp: subs r3,r3,#1
bne add_empty_node_11_lp
str r10,[r4]
- ldr r12,=__cycle__in__spine
+ lao r12,__cycle__in__spine,10
add r9,r9,#4
+ otoa r12,__cycle__in__spine,10
str r12,[r10],#12
bx lr
add_empty_node_11_gc:
@@ -1259,8 +1269,9 @@ add_empty_node_12_lp: subs r3,r3,#1
bne add_empty_node_12_lp
str r10,[r4,#-4]
- ldr r12,=__cycle__in__spine
+ lao r12,__cycle__in__spine,11
add r9,r9,#4
+ otoa r12,__cycle__in__spine,11
str r12,[r10],#12
bx lr
add_empty_node_12_gc:
@@ -1303,8 +1314,9 @@ add_empty_node_13_lp: subs r3,r3,#1
bne add_empty_node_13_lp
str r10,[r4,#-8]
- ldr r12,=__cycle__in__spine
+ lao r12,__cycle__in__spine,12
add r9,r9,#4
+ otoa r12,__cycle__in__spine,12
str r12,[r10],#12
bx lr
add_empty_node_13_gc:
@@ -1350,14 +1362,30 @@ add_empty_node_14_lp: subs r3,r3,#1
bne add_empty_node_14_lp
str r10,[r4,#-12]
- ldr r12,=__cycle__in__spine
+ lao r12,__cycle__in__spine,13
add r9,r9,#4
+ otoa r12,__cycle__in__spine,13
str r12,[r10],#12
bx lr
add_empty_node_14_gc_:
bl collect_3
b add_empty_node_14_gc_
+.ifdef PIC
+ lto __cycle__in__spine,1
+ lto __cycle__in__spine,2
+ lto __cycle__in__spine,3
+ lto __cycle__in__spine,4
+ lto __cycle__in__spine,5
+ lto __cycle__in__spine,6
+ lto __cycle__in__spine,7
+ lto __cycle__in__spine,8
+ lto __cycle__in__spine,9
+ lto __cycle__in__spine,10
+ lto __cycle__in__spine,11
+ lto __cycle__in__spine,12
+ lto __cycle__in__spine,13
+.endif
.ltorg
yet_args_needed_0:
@@ -2009,15 +2037,17 @@ build_node_gc: apupd_1:
ldr r12,[sp]
- ldr r8,=apupd_upd
+ lao r8,apupd_upd,0
+ otoa r8,apupd_upd,0
cmp r12,r8
- ldr r8,=ap_1
+ lao r8,ap_1,0
bne ap_upd
ldr r8,[r9,#-4]
ldr r4,[r9,#-8]
+ lao r12,__indirection,23
subs r9,r9,#4
- ldr r12,=__indirection
+ otoa r12,__indirection,23
str r12,[r8]
str r4,[r8,#4]
ap_1:
@@ -2027,26 +2057,29 @@ ap_1: apupd_2:
ldr r12,[sp]
- ldr r8,=apupd_upd
+ lao r8,apupd_upd,1
+ otoa r8,apupd_upd,1
cmp r12,r8
- ldr r8,=ap_2
+ lao r8,ap_2,0
bne ap_upd
ldr r8,[r9,#-8]
ldr r4,[r9,#-12]
ldr r3,[r9,#-4]
str r3,[r9,#-8]
+ lao r12,__indirection,24
subs r9,r9,#4
- ldr r12,=__indirection
+ otoa r12,__indirection,24
str r12,[r8]
str r4,[r8,#4]
b ap_2
apupd_3:
ldr r12,[sp]
- ldr r8,=apupd_upd
+ lao r8,apupd_upd,2
+ otoa r8,apupd_upd,2
cmp r12,r8
- ldr r8,=ap_3
+ lao r8,ap_3,0
bne ap_upd
ldr r8,[r9,#-12]
@@ -2055,17 +2088,19 @@ apupd_3: str r3,[r9,#-12]
ldr r3,[r9,#-4]
str r3,[r9,#-8]
+ lao r12,__indirection,25
subs r9,r9,#4
- ldr r12,=__indirection
+ otoa r12,__indirection,25
str r12,[r8]
str r4,[r8,#4]
b ap_3
apupd_4:
ldr r12,[sp]
- ldr r8,=apupd_upd
+ lao r8,apupd_upd,3
+ otoa r8,apupd_upd,3
cmp r12,r8
- ldr r8,=ap_4
+ lao r8,ap_4,0
bne ap_upd
ldr r8,[r9,#-16]
@@ -2076,17 +2111,19 @@ apupd_4: str r3,[r9,#-12]
ldr r3,[r9,#-4]
str r3,[r9,#-8]
+ lao r12,__indirection,26
subs r9,r9,#4
- ldr r12,=__indirection
+ otoa r12,__indirection,26
str r12,[r8]
str r4,[r8,#4]
b ap_4
apupd_5:
ldr r12,[sp]
- ldr r8,=apupd_upd
+ lao r8,apupd_upd,4
+ otoa r8,apupd_upd,4
cmp r12,r8
- ldr r8,=ap_5
+ lao r8,ap_5,0
bne ap_upd
ldr r8,[r9,#-20]
@@ -2099,17 +2136,19 @@ apupd_5: str r3,[r9,#-12]
ldr r3,[r9,#-4]
str r3,[r9,#-8]
+ lao r12,__indirection,27
subs r9,r9,#4
- ldr r12,=__indirection
+ otoa r12,__indirection,27
str r12,[r8]
str r4,[r8,#4]
b ap_5
apupd_6:
ldr r12,[sp]
- ldr r8,=apupd_upd
+ lao r8,apupd_upd,5
+ otoa r8,apupd_upd,5
cmp r12,r8
- ldr r8,=ap_6
+ lao r8,ap_6,0
bne ap_upd
ldr r8,[r9,#-24]
@@ -2124,455 +2163,543 @@ apupd_6: str r3,[r9,#-12]
ldr r3,[r9,#-4]
str r3,[r9,#-8]
+ lao r12,__indirection,28
subs r9,r9,#4
- ldr r12,=__indirection
+ otoa r12,__indirection,28
str r12,[r8]
str r4,[r8,#4]
b ap_6
apupd_7:
ldr r12,[sp]
- ldr r8,=apupd_upd
+ lao r8,apupd_upd,6
+ otoa r8,apupd_upd,6
cmp r12,r8
- ldr r8,=ap_7
+ lao r8,ap_7,0
bne ap_upd
ldr r8,[r9,#-28]
ldr r4,[r9,#-32]
str pc,[sp,#-4]!
bl move_8
+ lao r12,__indirection,29
subs r9,r9,#4
- ldr r12,=__indirection
+ otoa r12,__indirection,29
str r12,[r8]
str r4,[r8,#4]
b ap_7
apupd_8:
ldr r12,[sp]
- ldr r8,=apupd_upd
+ lao r8,apupd_upd,7
+ otoa r8,apupd_upd,7
cmp r12,r8
- ldr r8,=ap_8
+ lao r8,ap_8,0
bne ap_upd
ldr r8,[r9,#-32]
ldr r4,[r9,#-36]
str pc,[sp,#-4]!
bl move_9
+ lao r12,__indirection,30
subs r9,r9,#4
- ldr r12,=__indirection
+ otoa r12,__indirection,30
str r12,[r8]
str r4,[r8,#4]
b ap_8
apupd_9:
ldr r12,[sp]
- ldr r8,=apupd_upd
+ lao r8,apupd_upd,8
+ otoa r8,apupd_upd,8
cmp r12,r8
- ldr r8,=ap_9
+ lao r8,ap_9,0
bne ap_upd
ldr r8,[r9,#-36]
ldr r4,[r9,#-40]
str pc,[sp,#-4]!
bl move_10
+ lao r12,__indirection,31
subs r9,r9,#4
- ldr r12,=__indirection
+ otoa r12,__indirection,31
str r12,[r8]
str r4,[r8,#4]
b ap_9
apupd_10:
ldr r12,[sp]
- ldr r8,=apupd_upd
+ lao r8,apupd_upd,9
+ otoa r8,apupd_upd,9
cmp r12,r8
- ldr r8,=ap_10
+ lao r8,ap_10,0
bne ap_upd
ldr r8,[r9,#-40]
ldr r4,[r9,#-44]
str pc,[sp,#-4]!
bl move_11
+ lao r12,__indirection,32
subs r9,r9,#4
- ldr r12,=__indirection
+ otoa r12,__indirection,32
str r12,[r8]
str r4,[r8,#4]
b ap_10
apupd_11:
ldr r12,[sp]
- ldr r8,=apupd_upd
+ lao r8,apupd_upd,10
+ otoa r8,apupd_upd,10
cmp r12,r8
- ldr r8,=ap_11
+ lao r8,ap_11,0
bne ap_upd
ldr r8,[r9,#-44]
ldr r4,[r9,#-48]
str pc,[sp,#-4]!
bl move_12
+ lao r12,__indirection,33
subs r9,r9,#4
- ldr r12,=__indirection
+ otoa r12,__indirection,33
str r12,[r8]
str r4,[r8,#4]
b ap_11
apupd_12:
ldr r12,[sp]
- ldr r8,=apupd_upd
+ lao r8,apupd_upd,11
+ otoa r8,apupd_upd,11
cmp r12,r8
- ldr r8,=ap_12
+ lao r8,ap_12,0
bne ap_upd
ldr r8,[r9,#-48]
ldr r4,[r9,#-52]
str pc,[sp,#-4]!
bl move_13
+ lao r12,__indirection,34
subs r9,r9,#4
- ldr r12,=__indirection
+ otoa r12,__indirection,34
str r12,[r8]
str r4,[r8,#4]
b ap_12
apupd_13:
ldr r12,[sp]
- ldr r8,=apupd_upd
+ lao r8,apupd_upd,12
+ otoa r8,apupd_upd,12
cmp r12,r8
- ldr r8,=ap_13
+ lao r8,ap_13,0
bne ap_upd
ldr r8,[r9,#-52]
ldr r4,[r9,#-56]
str pc,[sp,#-4]!
bl move_14
+ lao r12,__indirection,35
subs r9,r9,#4
- ldr r12,=__indirection
+ otoa r12,__indirection,35
str r12,[r8]
str r4,[r8,#4]
b ap_13
apupd_14:
ldr r12,[sp]
- ldr r8,=apupd_upd
+ lao r8,apupd_upd,13
+ otoa r8,apupd_upd,13
cmp r12,r8
- ldr r8,=ap_14
+ lao r8,ap_14,0
bne ap_upd
ldr r8,[r9,#-56]
ldr r4,[r9,#-60]
str pc,[sp,#-4]!
bl move_15
+ lao r12,__indirection,36
subs r9,r9,#4
- ldr r12,=__indirection
+ otoa r12,__indirection,36
str r12,[r8]
str r4,[r8,#4]
b ap_14
apupd_15:
ldr r12,[sp]
- ldr r8,=apupd_upd
+ lao r8,apupd_upd,14
+ otoa r8,apupd_upd,14
cmp r12,r8
- ldr r8,=ap_15
+ lao r8,ap_15,0
bne ap_upd
ldr r8,[r9,#-60]
ldr r4,[r9,#-64]
str pc,[sp,#-4]!
bl move_16
+ lao r12,__indirection,37
subs r9,r9,#4
- ldr r12,=__indirection
+ otoa r12,__indirection,37
str r12,[r8]
str r4,[r8,#4]
b ap_15
apupd_16:
ldr r12,[sp]
- ldr r8,=apupd_upd
+ lao r8,apupd_upd,15
+ otoa r8,apupd_upd,15
cmp r12,r8
- ldr r8,=ap_16
+ lao r8,ap_16,0
bne ap_upd
ldr r8,[r9,#-64]
ldr r4,[r9,#-68]
str pc,[sp,#-4]!
bl move_17
+ lao r12,__indirection,38
subs r9,r9,#4
- ldr r12,=__indirection
+ otoa r12,__indirection,38
str r12,[r8]
str r4,[r8,#4]
b ap_16
apupd_17:
ldr r12,[sp]
- ldr r8,=apupd_upd
+ lao r8,apupd_upd,16
+ otoa r8,apupd_upd,16
cmp r12,r8
- ldr r8,=ap_17
+ lao r8,ap_17,0
bne ap_upd
ldr r8,[r9,#-68]
ldr r4,[r9,#-72]
str pc,[sp,#-4]!
bl move_18
+ lao r12,__indirection,39
subs r9,r9,#4
- ldr r12,=__indirection
+ otoa r12,__indirection,39
str r12,[r8]
str r4,[r8,#4]
b ap_17
apupd_18:
ldr r12,[sp]
- ldr r8,=apupd_upd
+ lao r8,apupd_upd,17
+ otoa r8,apupd_upd,17
cmp r12,r8
- ldr r8,=ap_18
+ lao r8,ap_18,0
bne ap_upd
ldr r8,[r9,#-72]
ldr r4,[r9,#-76]
str pc,[sp,#-4]!
bl move_19
+ lao r12,__indirection,40
subs r9,r9,#4
- ldr r12,=__indirection
+ otoa r12,__indirection,40
str r12,[r8]
str r4,[r8,#4]
b ap_18
apupd_19:
ldr r12,[sp]
- ldr r8,=apupd_upd
+ lao r8,apupd_upd,18
+ otoa r8,apupd_upd,18
cmp r12,r8
- ldr r8,=ap_19
+ lao r8,ap_19,0
bne ap_upd
ldr r8,[r9,#-76]
ldr r4,[r9,#-80]
str pc,[sp,#-4]!
bl move_20
+ lao r12,__indirection,41
subs r9,r9,#4
- ldr r12,=__indirection
+ otoa r12,__indirection,41
str r12,[r8]
str r4,[r8,#4]
b ap_19
apupd_20:
ldr r12,[sp]
- ldr r8,=apupd_upd
+ lao r8,apupd_upd,19
+ otoa r8,apupd_upd,19
cmp r12,r8
- ldr r8,=ap_20
+ lao r8,ap_20,0
bne ap_upd
ldr r8,[r9,#-80]
ldr r4,[r9,#-84]
str pc,[sp,#-4]!
bl move_21
+ lao r12,__indirection,42
subs r9,r9,#4
- ldr r12,=__indirection
+ otoa r12,__indirection,42
str r12,[r8]
str r4,[r8,#4]
b ap_20
apupd_21:
ldr r12,[sp]
- ldr r8,=apupd_upd
+ lao r8,apupd_upd,20
+ otoa r8,apupd_upd,20
cmp r12,r8
- ldr r8,=ap_21
+ lao r8,ap_21,0
bne ap_upd
ldr r8,[r9,#-84]
ldr r4,[r9,#-88]
str pc,[sp,#-4]!
bl move_22
+ lao r12,__indirection,43
subs r9,r9,#4
- ldr r12,=__indirection
+ otoa r12,__indirection,43
str r12,[r8]
str r4,[r8,#4]
b ap_21
apupd_22:
ldr r12,[sp]
- ldr r8,=apupd_upd
+ lao r8,apupd_upd,21
+ otoa r8,apupd_upd,21
cmp r12,r8
- ldr r8,=ap_22
+ lao r8,ap_22,0
bne ap_upd
ldr r8,[r9,#-88]
ldr r4,[r9,#-92]
str pc,[sp,#-4]!
bl move_23
+ lao r12,__indirection,44
subs r9,r9,#4
- ldr r12,=__indirection
+ otoa r12,__indirection,44
str r12,[r8]
str r4,[r8,#4]
b ap_22
apupd_23:
ldr r12,[sp]
- ldr r8,=apupd_upd
+ lao r8,apupd_upd,22
+ otoa r8,apupd_upd,22
cmp r12,r8
- ldr r8,=ap_23
+ lao r8,ap_23,0
bne ap_upd
ldr r8,[r9,#-92]
ldr r4,[r9,#-96]
str pc,[sp,#-4]!
bl move_24
+ lao r12,__indirection,45
subs r9,r9,#4
- ldr r12,=__indirection
+ otoa r12,__indirection,45
str r12,[r8]
str r4,[r8,#4]
b ap_23
apupd_24:
ldr r12,[sp]
- ldr r8,=apupd_upd
+ lao r8,apupd_upd,23
+ otoa r8,apupd_upd,23
cmp r12,r8
- ldr r8,=ap_24
+ lao r8,ap_24,0
bne ap_upd
ldr r8,[r9,#-96]
ldr r4,[r9,#-100]
str pc,[sp,#-4]!
bl move_25
+ lao r12,__indirection,46
subs r9,r9,#4
- ldr r12,=__indirection
+ otoa r12,__indirection,46
str r12,[r8]
str r4,[r8,#4]
b ap_24
apupd_25:
ldr r12,[sp]
- ldr r8,=apupd_upd
+ lao r8,apupd_upd,24
+ otoa r8,apupd_upd,24
cmp r12,r8
- ldr r8,=ap_25
+ lao r8,ap_25,0
bne ap_upd
ldr r8,[r9,#-100]
ldr r4,[r9,#-104]
str pc,[sp,#-4]!
bl move_26
+ lao r12,__indirection,47
subs r9,r9,#4
- ldr r12,=__indirection
+ otoa r12,__indirection,47
str r12,[r8]
str r4,[r8,#4]
b ap_25
apupd_26:
ldr r12,[sp]
- ldr r8,=apupd_upd
+ lao r8,apupd_upd,25
+ otoa r8,apupd_upd,25
cmp r12,r8
- ldr r8,=ap_26
+ lao r8,ap_26,0
bne ap_upd
ldr r8,[r9,#-104]
ldr r4,[r9,#-108]
str pc,[sp,#-4]!
bl move_27
+ lao r12,__indirection,48
subs r9,r9,#4
- ldr r12,=__indirection
+ otoa r12,__indirection,48
str r12,[r8]
str r4,[r8,#4]
b ap_26
apupd_27:
ldr r12,[sp]
- ldr r8,=apupd_upd
+ lao r8,apupd_upd,26
+ otoa r8,apupd_upd,26
cmp r12,r8
- ldr r8,=ap_27
+ lao r8,ap_27,0
bne ap_upd
ldr r8,[r9,#-108]
ldr r4,[r9,#-112]
str pc,[sp,#-4]!
bl move_28
+ lao r12,__indirection,49
subs r9,r9,#4
- ldr r12,=__indirection
+ otoa r12,__indirection,49
str r12,[r8]
str r4,[r8,#4]
b ap_27
apupd_28:
ldr r12,[sp]
- ldr r8,=apupd_upd
+ lao r8,apupd_upd,27
+ otoa r8,apupd_upd,27
cmp r12,r8
- ldr r8,=ap_28
+ lao r8,ap_28,0
bne ap_upd
ldr r8,[r9,#-112]
ldr r4,[r9,#-116]
str pc,[sp,#-4]!
bl move_29
+ lao r12,__indirection,50
subs r9,r9,#4
- ldr r12,=__indirection
+ otoa r12,__indirection,50
str r12,[r8]
str r4,[r8,#4]
b ap_28
apupd_29:
ldr r12,[sp]
- ldr r8,=apupd_upd
+ lao r8,apupd_upd,28
+ otoa r8,apupd_upd,28
cmp r12,r8
- ldr r8,=ap_29
+ lao r8,ap_29,0
bne ap_upd
ldr r8,[r9,#-116]
ldr r4,[r9,#-120]
str pc,[sp,#-4]!
bl move_30
+ lao r12,__indirection,51
subs r9,r9,#4
- ldr r12,=__indirection
+ otoa r12,__indirection,51
str r12,[r8]
str r4,[r8,#4]
b ap_29
apupd_30:
ldr r12,[sp]
- ldr r8,=apupd_upd
+ lao r8,apupd_upd,29
+ otoa r8,apupd_upd,29
cmp r12,r8
- ldr r8,=ap_30
+ lao r8,ap_30,0
bne ap_upd
ldr r8,[r9,#-120]
ldr r4,[r9,#-124]
str pc,[sp,#-4]!
bl move_31
+ lao r12,__indirection,52
subs r9,r9,#4
- ldr r12,=__indirection
+ otoa r12,__indirection,52
str r12,[r8]
str r4,[r8,#4]
b ap_30
apupd_31:
ldr r12,[sp]
- ldr r8,=apupd_upd
+ lao r8,apupd_upd,30
+ otoa r8,apupd_upd,30
cmp r12,r8
- ldr r8,=ap_31
+ lao r8,ap_31,0
bne ap_upd
ldr r8,[r9,#-124]
ldr r4,[r9,#-128]
str pc,[sp,#-4]!
bl move_32
+ lao r12,__indirection,53
subs r9,r9,#4
- ldr r12,=__indirection
+ otoa r12,__indirection,53
str r12,[r8]
str r4,[r8,#4]
b ap_31
apupd_32:
ldr r12,[sp]
- ldr r8,=apupd_upd
+ lao r8,apupd_upd,31
+ otoa r8,apupd_upd,31
cmp r12,r8
- ldr r8,=ap_32
+ lao r8,ap_32,0
bne ap_upd
ldr r8,[r9,#-128]
ldr r4,[r9,#-132]
str pc,[sp,#-4]!
bl move_33
+ lao r12,__indirection,54
subs r9,r9,#4
- ldr r12,=__indirection
+ otoa r12,__indirection,54
str r12,[r8]
str r4,[r8,#4]
b ap_32
ap_upd:
+.ifdef PIC
+ap_1__u0:
+ap_2__u0:
+ap_3__u0:
+ap_4__u0:
+ap_5__u0:
+ap_6__u0:
+ap_7__u0:
+ap_8__u0:
+ap_9__u0:
+ap_10__u0:
+ap_11__u0:
+ap_12__u0:
+ap_13__u0:
+ap_14__u0:
+ap_15__u0:
+ap_16__u0:
+ap_17__u0:
+ap_18__u0:
+ap_19__u0:
+ap_20__u0:
+ap_21__u0:
+ap_22__u0:
+ap_23__u0:
+ap_24__u0:
+ap_25__u0:
+ap_26__u0:
+ap_27__u0:
+ap_28__u0:
+ap_29__u0:
+ap_30__u0:
+ap_31__u0:
+ap_32__u0:
+ add r8,r8,pc
+.endif
str pc,[sp,#-4]!
blx r8
apupd_upd:
@@ -2677,3 +2804,102 @@ move_7: ldr r3,[r9,#-4]
str r3,[r9,#-8]
ldr pc,[sp],#4
+
+.ifdef PIC
+ lto apupd_upd,0
+ lto ap_1,0
+ lto __indirection,23
+ lto apupd_upd,1
+ lto ap_2,0
+ lto __indirection,24
+ lto apupd_upd,2
+ lto ap_3,0
+ lto __indirection,25
+ lto apupd_upd,3
+ lto ap_4,0
+ lto __indirection,26
+ lto apupd_upd,4
+ lto ap_5,0
+ lto __indirection,27
+ lto apupd_upd,5
+ lto ap_6,0
+ lto __indirection,28
+ lto apupd_upd,6
+ lto ap_7,0
+ lto __indirection,29
+ lto apupd_upd,7
+ lto ap_8,0
+ lto __indirection,30
+ lto apupd_upd,8
+ lto ap_9,0
+ lto __indirection,31
+ lto apupd_upd,9
+ lto ap_10,0
+ lto __indirection,32
+ lto apupd_upd,10
+ lto ap_11,0
+ lto __indirection,33
+ lto apupd_upd,11
+ lto ap_12,0
+ lto __indirection,34
+ lto apupd_upd,12
+ lto ap_13,0
+ lto __indirection,35
+ lto apupd_upd,13
+ lto ap_14,0
+ lto __indirection,36
+ lto apupd_upd,14
+ lto ap_15,0
+ lto __indirection,37
+ lto apupd_upd,15
+ lto ap_16,0
+ lto __indirection,38
+ lto apupd_upd,16
+ lto ap_17,0
+ lto __indirection,39
+ lto apupd_upd,17
+ lto ap_18,0
+ lto __indirection,40
+ lto apupd_upd,18
+ lto ap_19,0
+ lto __indirection,41
+ lto apupd_upd,19
+ lto ap_20,0
+ lto __indirection,42
+ lto apupd_upd,20
+ lto ap_21,0
+ lto __indirection,43
+ lto apupd_upd,21
+ lto ap_22,0
+ lto __indirection,44
+ lto apupd_upd,22
+ lto ap_23,0
+ lto __indirection,45
+ lto apupd_upd,23
+ lto ap_24,0
+ lto __indirection,46
+ lto apupd_upd,24
+ lto ap_25,0
+ lto __indirection,47
+ lto apupd_upd,25
+ lto ap_26,0
+ lto __indirection,48
+ lto apupd_upd,26
+ lto ap_27,0
+ lto __indirection,49
+ lto apupd_upd,27
+ lto ap_28,0
+ lto __indirection,50
+ lto apupd_upd,28
+ lto ap_29,0
+ lto __indirection,51
+ lto apupd_upd,29
+ lto ap_30,0
+ lto __indirection,52
+ lto apupd_upd,30
+ lto ap_31,0
+ lto __indirection,53
+ lto apupd_upd,31
+ lto ap_32,0
+ lto __indirection,54
+.endif
|