- Axe -mpreferred-stack-boundary=2 as -Os turns this on by default.
- Axe -fdata-sections as turning it on or off makes no difference. If it did make a difference it would serve to bloat boot2 even further with extra padding. - Axe -fforce-addr. This gets us 32 bytes so we are down to only being 64-bytes over. We still can't compile this with gcc 3.1. The problem seems to be that the -fno-align-foo options don't actually work. Comparing the new and old output it turns out that gcc is 4-byte padding all the functions and labels and what not despite the passed in arguments thus adding the unfortunate bloat to boot2.
This commit is contained in:
parent
0434bdb78c
commit
88f0d73da4
Notes:
svn2git
2020-12-20 02:59:44 +00:00
svn path=/head/; revision=96327
@ -27,9 +27,9 @@ BTX= ${.CURDIR}/../btx
|
||||
ORG1= 0x7c00
|
||||
ORG2= 0x1000
|
||||
|
||||
CFLAGS= -elf -ffreestanding -Os -fno-builtin -fforce-addr -fdata-sections \
|
||||
CFLAGS= -elf -ffreestanding -Os -fno-builtin \
|
||||
-fno-align-functions -fno-align-jumps -fno-align-loops -fno-align-labels \
|
||||
-mrtd -mpreferred-stack-boundary=2 \
|
||||
-mrtd \
|
||||
-I${.CURDIR}/../btx/lib -I. \
|
||||
-Wall -Waggregate-return -Wbad-function-cast -Wcast-align \
|
||||
-Wmissing-declarations -Wmissing-prototypes -Wnested-externs \
|
||||
|
@ -27,9 +27,9 @@ BTX= ${.CURDIR}/../btx
|
||||
ORG1= 0x7c00
|
||||
ORG2= 0x1000
|
||||
|
||||
CFLAGS= -elf -ffreestanding -Os -fno-builtin -fforce-addr -fdata-sections \
|
||||
CFLAGS= -elf -ffreestanding -Os -fno-builtin \
|
||||
-fno-align-functions -fno-align-jumps -fno-align-loops -fno-align-labels \
|
||||
-mrtd -mpreferred-stack-boundary=2 \
|
||||
-mrtd \
|
||||
-I${.CURDIR}/../btx/lib -I. \
|
||||
-Wall -Waggregate-return -Wbad-function-cast -Wcast-align \
|
||||
-Wmissing-declarations -Wmissing-prototypes -Wnested-externs \
|
||||
|
Loading…
Reference in New Issue
Block a user