Commit b36fa58b authored by John van Groningen's avatar John van Groningen
Browse files

add ludivide function on thumb

parent 074e6cad
......@@ -6,8 +6,8 @@ DEFINES = -DUSE_CLIB -DLINUX -DARM -DGNU_C -DELF
all: $(ODIR)_startup.o
$(ODIR)_startup.o: $(ODIR)tstartup.o $(ODIR)tfileIO3.o $(ODIR)scon.o $(ODIR)ufileIO2.o $(ODIR)tdivmod.o $(ODIR)tudiv.o
ld -r -o $(ODIR)_startup.o $(ODIR)tstartup.o $(ODIR)tdivmod.o $(ODIR)tudiv.o $(ODIR)scon.o $(ODIR)tfileIO3.o $(ODIR)ufileIO2.o
$(ODIR)_startup.o: $(ODIR)tstartup.o $(ODIR)tfileIO3.o $(ODIR)scon.o $(ODIR)ufileIO2.o $(ODIR)tdivmod.o $(ODIR)tudiv.o $(ODIR)tludiv.o
ld -r -o $(ODIR)_startup.o $(ODIR)tstartup.o $(ODIR)tdivmod.o $(ODIR)tudiv.o $(ODIR)tludiv.o $(ODIR)scon.o $(ODIR)tfileIO3.o $(ODIR)ufileIO2.o
$(ODIR)scon.o: $(SDIR)scon.c
gcc -mthumb -O $(DEFINES) -ffunction-sections -fdata-sections $(SDIR)scon.c -S -o $(ODIR)scon.s
......@@ -30,4 +30,7 @@ $(ODIR)tdivmod.o: $(SDIR)tdivmod.s
$(ODIR)tudiv.o: $(SDIR)tudiv.s
as $(ODIR)tudiv.s -o $(ODIR)tudiv.o
$(ODIR)tludiv.o: $(SDIR)tludiv.s
as $(ODIR)tludiv.s -o $(ODIR)tludiv.o
.arch armv7-a
.syntax unified
.thumb
.fpu vfpv3-d16
.text
.global ludivide
ludivide:
adds r0,r0,r0
adcs r2,r10,r10
it cc
cmpcc r2,r1
it cs
subcs r2,r2,r1
.rept 31
adcs r0,r0,r0
adcs r2,r2,r2
it cc
cmpcc r2,r1
it cs
subcs r2,r2,r1
.endr
adc r1,r0,r0
mov r0,r2
ldr pc,[sp],#4
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment