老的arm-elf-gcc使用以下编译标志
CPFLAGS = -Wall -Wstrict-prototypes -Wno-trigraphs -O2 -fno-strict-aliasing -fno-common -fno-common -pipe -fno-builtin -g -mapcs-32 -march=armv4 -mtune=arm7tdmi -mshort-load-bytes -msoft-float
ASFLAGS = -D__ASSEMBLY__ -DNO_MM -g -mapcs-32 -marmv4 -msoft-float -mno-fpu -g
新的gnuarm-elf-gcc2.04使用以下标志
CPFLAGS = -Wall -Wstrict-prototypes -Wno-trigraphs -O2 -fno-strict-aliasing -fno-common -fno-common -pipe -fno-builtin -g -mapcs-32 -march=armv4 -malignment-traps -mtune=arm7tdmi -msoft-float
ASFLAGS = -D__ASSEMBLY__ -DNO_MM -g -mapcs-32 -march=armv4 -msoft-float -mfp=3 -g
主要为CC编译
-mshort-load-bytes改为-malignment-traps
AS编译marmv4 -mno-fpu 改为-march=armv4 -mfp=3