summaryrefslogtreecommitdiff
path: root/thumb2fileIO3.s
diff options
context:
space:
mode:
Diffstat (limited to 'thumb2fileIO3.s')
-rw-r--r--thumb2fileIO3.s128
1 files changed, 96 insertions, 32 deletions
diff --git a/thumb2fileIO3.s b/thumb2fileIO3.s
index da498ae..9981e61 100644
--- a/thumb2fileIO3.s
+++ b/thumb2fileIO3.s
@@ -99,7 +99,9 @@ stdioF:
mov r3,r0
mov r4,#-1
- ldr pc,[sp],#4
+ ldr lr,[sp],#4
+ orr lr,lr,#1
+ mov pc,lr
@ .d 0 0
@ jsr stderrF
@@ -114,7 +116,9 @@ stderrF:
mov r3,r0
mov r4,#-1
- ldr pc,[sp],#4
+ ldr lr,[sp],#4
+ orr lr,lr,#1
+ mov pc,lr
@ .d 1 1 i
@ jsr openF
@@ -136,7 +140,9 @@ openF:
movmi r2,#0
it pl
movpl r2,#1
- ldr pc,[sp],#4
+ ldr lr,[sp],#4
+ orr lr,lr,#1
+ mov pc,lr
@ .d 0 2 f
@ jsr closeF
@@ -150,7 +156,9 @@ closeF:
bl close_file
mov sp,r4
mov r4,r0
- ldr pc,[sp],#4
+ ldr lr,[sp],#4
+ orr lr,lr,#1
+ mov pc,lr
@ .d 0 3 f i
@ jsr reopenF
@@ -169,7 +177,9 @@ reopenF:
neg r2,r0
mov r3,r6
mov r4,#-1
- ldr pc,[sp],#4
+ ldr lr,[sp],#4
+ orr lr,lr,#1
+ mov pc,lr
@ .d 0 2 f
@ jsr readFC
@@ -191,12 +201,16 @@ readFC:
mov r2,r0
mov r1,#1
- ldr pc,[sp],#4
+ ldr lr,[sp],#4
+ orr lr,lr,#1
+ mov pc,lr
readFC_eof:
mov r2,#0
mov r3,#0
- ldr pc,[sp],#4
+ ldr lr,[sp],#4
+ orr lr,lr,#1
+ mov pc,lr
@ .d 0 2 f
@ jsr readFI
@@ -218,7 +232,9 @@ readFI:
mov r3,r6
mov r4,#-1
neg r1,r0
- ldr pc,[sp],#4
+ ldr lr,[sp],#4
+ orr lr,lr,#1
+ mov pc,lr
@ .d 0 2 f
@ jsr readFR
@@ -238,7 +254,9 @@ readFR:
mov r3,r6
mov r4,#-1
neg r2,r0
- ldr pc,[sp],#4
+ ldr lr,[sp],#4
+ orr lr,lr,#1
+ mov pc,lr
@ .d 0 3 f i
@ jsr readFS
@@ -272,7 +290,9 @@ readFS_end:
add r10,r10,r2
sub r5,r5,r2,lsr #2
mov r4,#-1
- ldr pc,[sp],#4
+ ldr lr,[sp],#4
+ orr lr,lr,#1
+ mov pc,lr
readFS_gc:
mov r5,r1
@@ -311,7 +331,9 @@ readFString:
ldr r2,[sp],#4
mov r4,#-1
- ldr pc,[sp],#4
+ ldr lr,[sp],#4
+ orr lr,lr,#1
+ mov pc,lr
readFString_error:
lao r8,freadstring_error,0
@@ -411,7 +433,9 @@ st_copy_string1:
add r12,r4,#8+3
sub r5,r5,r12,lsr #2
mov r4,#-1
- ldr pc,[sp],#4
+ ldr lr,[sp],#4
+ orr lr,lr,#1
+ mov pc,lr
readLineF_gc:
mov r5,r2
@@ -436,7 +460,9 @@ writeFC:
mov r3,r6
mov r4,#-1
- ldr pc,[sp],#4
+ ldr lr,[sp],#4
+ orr lr,lr,#1
+ mov pc,lr
@ .d 0 3 i f
@ jsr writeFI
@@ -455,7 +481,9 @@ writeFI:
mov r3,r6
mov r4,#-1
- ldr pc,[sp],#4
+ ldr lr,[sp],#4
+ orr lr,lr,#1
+ mov pc,lr
@ .d 0 4 r f
@ jsr writeFR
@@ -473,7 +501,9 @@ writeFR:
mov r3,r6
mov r4,#-1
- ldr pc,[sp],#4
+ ldr lr,[sp],#4
+ orr lr,lr,#1
+ mov pc,lr
@ .d 1 2 f
@ jsr writeFS
@@ -493,7 +523,9 @@ writeFS:
mov r3,r6
mov r4,#-1
- ldr pc,[sp],#4
+ ldr lr,[sp],#4
+ orr lr,lr,#1
+ mov pc,lr
@ .d 1 4 i i f
@ jsr writeFString
@@ -522,7 +554,9 @@ writeFString:
mov r3,r6
mov r4,#-1
- ldr pc,[sp],#4
+ ldr lr,[sp],#4
+ orr lr,lr,#1
+ mov pc,lr
writeFString_error:
lao r8,fwritestring_error,0
@@ -546,7 +580,9 @@ endF:
neg r2,r0
mov r3,r6
mov r4,#-1
- ldr pc,[sp],#4
+ ldr lr,[sp],#4
+ orr lr,lr,#1
+ mov pc,lr
@ .d 0 2 f
@ jsr errorF
@@ -565,7 +601,9 @@ errorF:
neg r2,r0
mov r3,r6
mov r4,#-1
- ldr pc,[sp],#4
+ ldr lr,[sp],#4
+ orr lr,lr,#1
+ mov pc,lr
@ .d 0 2 f
@ jsr positionF
@@ -584,7 +622,9 @@ positionF:
mov r2,r0
mov r3,r6
mov r4,#-1
- ldr pc,[sp],#4
+ ldr lr,[sp],#4
+ orr lr,lr,#1
+ mov pc,lr
@ .d 0 4 f i i
@ jsr seekF
@@ -605,7 +645,9 @@ seekF:
neg r2,r0
mov r3,r6
mov r4,#-1
- ldr pc,[sp],#4
+ ldr lr,[sp],#4
+ orr lr,lr,#1
+ mov pc,lr
@ .d 0 2 f
@ jsr shareF
@@ -623,7 +665,9 @@ shareF:
mov r3,r6
mov r4,#-1
- ldr pc,[sp],#4
+ ldr lr,[sp],#4
+ orr lr,lr,#1
+ mov pc,lr
@ .d 1 1 i
@ jsr openSF
@@ -648,7 +692,9 @@ openSF:
mov r3,r6
mov r4,#0
- ldr pc,[sp],#4
+ ldr lr,[sp],#4
+ orr lr,lr,#1
+ mov pc,lr
@ .d 0 2 f
@ jsr readSFC
@@ -674,12 +720,16 @@ readSFC:
beq readSFC_eof
mov r1,#1
- ldr pc,[sp],#4
+ ldr lr,[sp],#4
+ orr lr,lr,#1
+ mov pc,lr
readSFC_eof:
mov r2,#0
mov r1,#0
- ldr pc,[sp],#4
+ ldr lr,[sp],#4
+ orr lr,lr,#1
+ mov pc,lr
@ .d 0 2 f
@ jsr readSFI
@@ -703,7 +753,9 @@ readSFI:
ldr r2,[sp],#4
mov r3,r6
ldr r4,[sp],#4
- ldr pc,[sp],#4
+ ldr lr,[sp],#4
+ orr lr,lr,#1
+ mov pc,lr
@ .d 0 2 f
@ jsr readSFR
@@ -727,7 +779,9 @@ readSFR:
mov r3,r6
ldr r4,[sp],#4
neg r2,r0
- ldr pc,[sp],#4
+ ldr lr,[sp],#4
+ orr lr,lr,#1
+ mov pc,lr
@ .d 0 3 f i
@ jsr readSFS
@@ -764,7 +818,9 @@ readSFS_end:
and r2,r2,#-4
add r10,r10,r2
sub r5,r5,r2,lsr #2
- ldr pc,[sp],#4
+ ldr lr,[sp],#4
+ orr lr,lr,#1
+ mov pc,lr
readSFS_gc:
mov r5,r2
@@ -871,7 +927,9 @@ st_copy_string2:
add r10,r10,r12
add r12,r2,#8+3
sub r5,r5,r12,lsr #2
- ldr pc,[sp],#4
+ ldr lr,[sp],#4
+ orr lr,lr,#1
+ mov pc,lr
readLineSF_gc:
mov r5,r2
@@ -894,7 +952,9 @@ endSF:
mov sp,r4
neg r4,r0
- ldr pc,[sp],#4
+ ldr lr,[sp],#4
+ orr lr,lr,#1
+ mov pc,lr
@ .d 0 2 f
@ jsr positionSF
@@ -911,7 +971,9 @@ positionSF:
mov sp,r4
mov r4,r0
- ldr pc,[sp],#4
+ ldr lr,[sp],#4
+ orr lr,lr,#1
+ mov pc,lr
@ .d 0 4 f i i
@ jsr seekSF
@@ -934,7 +996,9 @@ seekSF:
neg r2,r0
ldr r4,[sp],#4
mov r3,r6
- ldr pc,[sp],#4
+ ldr lr,[sp],#4
+ orr lr,lr,#1
+ mov pc,lr
.ifdef PIC
lto freadstring_error,0