diff options
author | Camil Staps | 2017-01-19 16:54:43 +0000 |
---|---|---|
committer | Camil Staps | 2017-01-19 16:54:43 +0000 |
commit | 5d3acf862bdaa6c5cfb1a57050b4def3976d79da (patch) | |
tree | b31cd4e1314f6c53b857241059376540666ac665 | |
parent | Swap r1 and r10 (BSTACK_3 and HEAP_PTR) (diff) |
-rw-r--r-- | Makefile.linux_arm | 14 | ||||
-rw-r--r-- | Makefile.linux_thumb2 | 6 | ||||
-rw-r--r-- | thumb2regs.s | 4 | ||||
-rw-r--r-- | thumb2startup.s | 8 |
4 files changed, 17 insertions, 15 deletions
diff --git a/Makefile.linux_arm b/Makefile.linux_arm index 1edb990..82741a4 100644 --- a/Makefile.linux_arm +++ b/Makefile.linux_arm @@ -3,6 +3,8 @@ SDIR = ./ ODIR = ./ DEFINES = -DUSE_CLIB -DLINUX -DARM -DGNU_C -DELF +ASFLAGS=-g +CFLAGS=-g all: $(ODIR)_startup.o @@ -11,20 +13,20 @@ $(ODIR)_startup.o: $(ODIR)armstartup.o $(ODIR)armfileIO3.o $(ODIR)scon.o $(ODIR) $(ODIR)scon.o: $(SDIR)scon.c # gcc -c -O $(DEFINES) -o $(ODIR)scon.o $(SDIR)scon.c - $(CC) -O $(DEFINES) -ffunction-sections -fdata-sections $(SDIR)scon.c -S -o $(ODIR)scon.s + $(CC) $(CFLAGS) -O $(DEFINES) -ffunction-sections -fdata-sections $(SDIR)scon.c -S -o $(ODIR)scon.s mv $(ODIR)scon.s $(ODIR)scon.s.copy grep -v -w ___main $(ODIR)scon.s.copy > $(ODIR)scon.s - as $(DEFINES_A) $(ODIR)scon.s -o $(ODIR)scon.o + as $(ASFLAGS) $(DEFINES_A) $(ODIR)scon.s -o $(ODIR)scon.o $(ODIR)ufileIO2.o: $(SDIR)ufileIO2.c - gcc -c -O $(DEFINES) -ffunction-sections -fdata-sections -o $(ODIR)ufileIO2.o $(SDIR)ufileIO2.c + gcc $(CFLAGS) -c -O $(DEFINES) -ffunction-sections -fdata-sections -o $(ODIR)ufileIO2.o $(SDIR)ufileIO2.c $(ODIR)armstartup.o: $(SDIR)armstartup.s - as $(ODIR)armstartup.s -o $(ODIR)armstartup.o + as $(ASFLAGS) $(ODIR)armstartup.s -o $(ODIR)armstartup.o $(ODIR)armfileIO3.o: $(SDIR)armfileIO3.s - as $(ODIR)armfileIO3.s -o $(ODIR)armfileIO3.o + as $(ASFLAGS) $(ODIR)armfileIO3.s -o $(ODIR)armfileIO3.o $(ODIR)armdivmod.o: $(SDIR)armdivmod.s - as $(ODIR)armdivmod.s -o $(ODIR)armdivmod.o + as $(ASFLAGS) $(ODIR)armdivmod.s -o $(ODIR)armdivmod.o diff --git a/Makefile.linux_thumb2 b/Makefile.linux_thumb2 index 32751af..59eedbf 100644 --- a/Makefile.linux_thumb2 +++ b/Makefile.linux_thumb2 @@ -22,11 +22,11 @@ $(ODIR)scon.o: $(SDIR)scon.c $(ODIR)ufileIO2.o: $(SDIR)ufileIO2.c gcc -c -O $(DEFINES) $(CFLAGS) -ffunction-sections -fdata-sections -o $(ODIR)ufileIO2.o $(SDIR)ufileIO2.c -$(ODIR)thumb2startup.o: $(SDIR)thumb2startup.s $(SDIR)thumb2copy.s $(SDIR)armmacros.s $(SDIR)thumb2mark.s $(SDIR)thumb2compact.s $(SDIR)thumb2ap.s +$(ODIR)thumb2startup.o: $(SDIR)thumb2startup.s $(SDIR)thumb2copy.s $(SDIR)armmacros.s $(SDIR)thumb2mark.s $(SDIR)thumb2compact.s $(SDIR)thumb2compact_rmark.s $(SDIR)thumb2compact_rmarkr.s $(SDIR)thumb2ap.s $(SDIR)thumb2regs.s $(AS) $(ODIR)thumb2startup.s -o $(ODIR)thumb2startup.o $(ASFLAGS) -$(ODIR)thumb2fileIO3.o: $(SDIR)thumb2fileIO3.s +$(ODIR)thumb2fileIO3.o: $(SDIR)thumb2fileIO3.s $(SDIR)thumb2regs.s $(AS) $(ODIR)thumb2fileIO3.s -o $(ODIR)thumb2fileIO3.o $(ASFLAGS) -$(ODIR)thumb2divmod.o: $(SDIR)thumb2divmod.s +$(ODIR)thumb2divmod.o: $(SDIR)thumb2divmod.s $(SDIR)thumb2regs.s $(AS) $(ODIR)thumb2divmod.s -o $(ODIR)thumb2divmod.o $(ASFLAGS) diff --git a/thumb2regs.s b/thumb2regs.s index c5cb467..9b2a4db 100644 --- a/thumb2regs.s +++ b/thumb2regs.s @@ -34,14 +34,14 @@ LINK_REG .req r14 @ Thumb-2 optimised allocation BSTACK_0 .req r4 BSTACK_1 .req r3 -BSTACK_2 .req r2 +BSTACK_2 .req r8 BSTACK_3 .req r11 BSTACK_4 .req r10 BSTACK_PTR .req r13 ASTACK_0 .req r6 ASTACK_1 .req r7 -ASTACK_2 .req r8 +ASTACK_2 .req r2 ASTACK_3 .req r12 ASTACK_PTR .req r5 diff --git a/thumb2startup.s b/thumb2startup.s index e7e1440..6ac8844 100644 --- a/thumb2startup.s +++ b/thumb2startup.s @@ -2315,7 +2315,7 @@ end_zero_bit_vector: ldo SCRATCH_REG,SCRATCH_REG,n_allocated_words,2 subs ASTACK_2,ASTACK_2,SCRATCH_REG mov HEAP_FREE,ASTACK_2 - bls switch_to_mark_scan + @bls switch_to_mark_scan add BSTACK_0,ASTACK_2,ASTACK_2,lsl #2 lsl BSTACK_0,BSTACK_0,#5 @@ -2328,7 +2328,7 @@ end_zero_bit_vector: add BSTACK_1,BSTACK_1,ASTACK_0 cmp BSTACK_0,BSTACK_1 bhs no_mark_scan -@ b no_mark_scan + b no_mark_scan .thumb_func switch_to_mark_scan: @@ -4232,9 +4232,9 @@ string_to_string_node_4: .thumb_func string_to_string_node_gc: - stmdb BSTACK_PTR!,{ASTACK_0,ASTACK_2} + stmdb BSTACK_PTR!,{ASTACK_2,ASTACK_0} bl collect_0 - ldmia BSTACK_PTR!,{ASTACK_0,ASTACK_2} + ldmia BSTACK_PTR!,{ASTACK_2,ASTACK_0} b string_to_string_node_r .ifdef PIC |