Message ID | 1479653838-3574-4-git-send-email-andre.przywara@arm.com |
---|---|
State | Accepted |
Commit | ebda0cc5090d758b5f2a99b4ea116d27e4402255 |
Delegated to: | Jagannadha Sutradharudu Teki |
Headers | show |
On 20/11/2016 15:56, Andre Przywara wrote: > The predominantely 32-bit ARM targets try to compile the SPL in Thumb > mode to reduce code size. > The 64-bit AArch64 instruction set does not know an alternative, concise > encoding, so the Thumb build option should only be set for 32-bit > targets. > Likewise -marm machine options are only valid for ARMv7 targets. > > Signed-off-by: Andre Przywara <andre.przywara@arm.com> Reviewed-by: Alexander Graf <agraf@suse.de> Alex
diff --git a/arch/arm/lib/Makefile b/arch/arm/lib/Makefile index a812306..8dc6787 100644 --- a/arch/arm/lib/Makefile +++ b/arch/arm/lib/Makefile @@ -77,8 +77,10 @@ ifndef CONFIG_HAS_THUMB2 # for C files, just apend -marm, which will override previous -mthumb* +ifndef CONFIG_ARM64 CFLAGS_cache.o := -marm CFLAGS_cache-cp15.o := -marm +endif # For .S, drop -mthumb* and other thumb-related options. # CFLAGS_REMOVE_* would not have an effet, so AFLAGS_REMOVE_* diff --git a/include/configs/sunxi-common.h b/include/configs/sunxi-common.h index 8363414..86b4104 100644 --- a/include/configs/sunxi-common.h +++ b/include/configs/sunxi-common.h @@ -35,7 +35,7 @@ /* * High Level Configuration Options */ -#ifdef CONFIG_SPL_BUILD +#if defined(CONFIG_SPL_BUILD) && !defined(CONFIG_ARM64) #define CONFIG_SYS_THUMB_BUILD /* Thumbs mode to save space in SPL */ #endif
The predominantely 32-bit ARM targets try to compile the SPL in Thumb mode to reduce code size. The 64-bit AArch64 instruction set does not know an alternative, concise encoding, so the Thumb build option should only be set for 32-bit targets. Likewise -marm machine options are only valid for ARMv7 targets. Signed-off-by: Andre Przywara <andre.przywara@arm.com> --- arch/arm/lib/Makefile | 2 ++ include/configs/sunxi-common.h | 2 +- 2 files changed, 3 insertions(+), 1 deletion(-)