ARM: move -march=* and -mtune= options to arch/arm/Makefile
PATCH v2 1/1 ARM: move -march=* and -mtune= options to arch/arm/Makefile
My main motivations for this commit are:
[1] Follow the arch/arm/Makefile style of Linux Kernel
[2] Maintain compiler options systematically
Currently, we give -march=* and -mtune=* options inconsistently:
Only some of the CPUs pass -march=* and -mtune=* options. By collecting such options into the single place arch/arm/Makefile we can tell which options are missing at a glance.
[3] Prepare for deprecating arch/*/cpu/*/config.mk
Note:
This commit just moves the compiler options so as not to change the behavior at all. It does not care about the correctness of the given options. Fox example, "-march=armv5te" might be better than "-march=armv4" for ARM946EJS, but it is beyond the scope this commit. Also, filling the missing -march=* and -tune=* is left to follow-up patches.
---
Changes in v2:
- Rebased onto u-boot-arm/master (commit 419fa9ae)
arch/arm/Makefile | 32 ++++++++++++++++++++++++++++++++ arch/arm/cpu/arm1136/config.mk | 9 --------- arch/arm/cpu/arm1176/config.mk | 9 --------- arch/arm/cpu/arm720t/config.mk | 9 --------- arch/arm/cpu/arm920t/config.mk | 8 -------- arch/arm/cpu/arm926ejs/config.mk | 8 -------- arch/arm/cpu/arm946es/config.mk | 8 -------- arch/arm/cpu/armv7/config.mk | 5 ----- arch/arm/cpu/armv8/config.mk | 2 -- arch/arm/cpu/pxa/config.mk | 2 -- arch/arm/cpu/sa1100/config.mk | 9 --------- 11 files changed, 32 insertions(+), 69 deletions(-) delete mode 100644 arch/arm/cpu/arm1136/config.mk delete mode 100644 arch/arm/cpu/arm1176/config.mk delete mode 100644 arch/arm/cpu/arm720t/config.mk delete mode 100644 arch/arm/cpu/arm920t/config.mk delete mode 100644 arch/arm/cpu/arm926ejs/config.mk delete mode 100644 arch/arm/cpu/arm946es/config.mk delete mode 100644 arch/arm/cpu/sa1100/config.mk
arch/arm/Makefile +32 -0
@@ -2,6 +2,38 @@ # SPDX-License-Identifier: GPL-2.0+ # +# This selects which instruction set is used. +arch-$(CONFIG_CPU_ARM720T) =-march=armv4 +arch-$(CONFIG_CPU_ARM920T) =-march=armv4 +arch-$(CONFIG_CPU_ARM926EJS) =-march=armv5te +arch-$(CONFIG_CPU_ARM946ES) =-march=armv4 +arch-$(CONFIG_CPU_SA1100) =-march=armv4 +arch-$(CONFIG_CPU_PXA) = +arch-$(CONFIG_CPU_ARM1136) =-march=armv5 +arch-$(CONFIG_CPU_ARM1176) =-march=armv5t +arch-$(CONFIG_CPU_V7) =$(call cc-option, -march=armv7-a, -march=armv5) +arch-$(CONFIG_ARM64) =-march=armv8-a + +# Evaluate arch cc-option calls now +arch-y := $(arch-y) + +# This selects how we optimise for the processor. +tune-$(CONFIG_CPU_ARM720T) =-mtune=arm7tdmi +tune-$(CONFIG_CPU_ARM920T) = +tune-$(CONFIG_CPU_ARM926EJS) = +tune-$(CONFIG_CPU_ARM946ES) = +tune-$(CONFIG_CPU_SA1100) =-mtune=strongarm1100 +tune-$(CONFIG_CPU_PXA) =-mcpu=xscale +tune-$(CONFIG_CPU_ARM1136) = +tune-$(CONFIG_CPU_ARM1176) = +tune-$(CONFIG_CPU_V7) = +tune-$(CONFIG_ARM64) = + +# Evaluate tune cc-option calls now +tune-y := $(tune-y) + +PLATFORM_CPPFLAGS += $(arch-y) $(tune-y) + # Machine directory name. This list is sorted alphanumerically # by CONFIG_* macro name. machine-$(CONFIG_ARCH_AT91) += at91
arch/arm/cpu/arm1136/config.mk deleted +0 -9
@@ -1,9 +0,0 @@ -# -# (C) Copyright 2002 -# Gary Jennejohn, DENX Software Engineering, <[email protected]> -# -# SPDX-License-Identifier: GPL-2.0+ -# - -# Make ARMv5 to allow more compilers to work, even though its v6. -PLATFORM_CPPFLAGS += -march=armv5
arch/arm/cpu/arm1176/config.mk deleted +0 -9
@@ -1,9 +0,0 @@ -# -# (C) Copyright 2002 -# Gary Jennejohn, DENX Software Engineering, <[email protected]> -# -# SPDX-License-Identifier: GPL-2.0+ -# - -# Make ARMv5 to allow more compilers to work, even though its v6. -PLATFORM_CPPFLAGS += -march=armv5t
arch/arm/cpu/arm720t/config.mk deleted +0 -9
@@ -1,9 +0,0 @@ -# -# (C) Copyright 2002 -# Sysgo Real-Time Solutions, GmbH <www.elinos.com> -# Marius Groeger <[email protected]> -# -# SPDX-License-Identifier: GPL-2.0+ -# - -PLATFORM_CPPFLAGS += -march=armv4 -mtune=arm7tdmi
arch/arm/cpu/arm920t/config.mk deleted +0 -8
@@ -1,8 +0,0 @@ -# -# (C) Copyright 2002 -# Gary Jennejohn, DENX Software Engineering, <[email protected]> -# -# SPDX-License-Identifier: GPL-2.0+ -# - -PLATFORM_CPPFLAGS += -march=armv4
arch/arm/cpu/arm926ejs/config.mk deleted +0 -8
@@ -1,8 +0,0 @@ -# -# (C) Copyright 2002 -# Gary Jennejohn, DENX Software Engineering, <[email protected]> -# -# SPDX-License-Identifier: GPL-2.0+ -# - -PLATFORM_CPPFLAGS += -march=armv5te
arch/arm/cpu/arm946es/config.mk deleted +0 -8
@@ -1,8 +0,0 @@ -# -# (C) Copyright 2002 -# Gary Jennejohn, DENX Software Engineering, <[email protected]> -# -# SPDX-License-Identifier: GPL-2.0+ -# - -PLATFORM_CPPFLAGS += -march=armv4
arch/arm/cpu/armv7/config.mk +0 -5
@@ -5,11 +5,6 @@ # SPDX-License-Identifier: GPL-2.0+ # -# If armv7-a is not supported by GCC fall-back to armv5, which is -# supported by more tool-chains -PF_CPPFLAGS_ARMV7 := $(call cc-option, -march=armv7-a, -march=armv5) -PLATFORM_CPPFLAGS += $(PF_CPPFLAGS_ARMV7) - # On supported platforms we set the bit which causes us to trap on unaligned # memory access. This is the opposite of what the compiler expects to be # the default so we must pass in -mno-unaligned-access so that it is aware
arch/arm/cpu/armv8/config.mk +0 -2
@@ -6,7 +6,5 @@ # PLATFORM_RELFLAGS += -fno-common -ffixed-x18 -PF_CPPFLAGS_ARMV8 := $(call cc-option, -march=armv8-a) PF_NO_UNALIGNED := $(call cc-option, -mstrict-align) -PLATFORM_CPPFLAGS += $(PF_CPPFLAGS_ARMV8) PLATFORM_CPPFLAGS += $(PF_NO_UNALIGNED)
arch/arm/cpu/pxa/config.mk +0 -2
@@ -6,8 +6,6 @@ # SPDX-License-Identifier: GPL-2.0+ # -PLATFORM_CPPFLAGS += -mcpu=xscale - # # !WARNING! # The PXA's OneNAND SPL uses .text.0 and .text.1 segments to allow booting from
arch/arm/cpu/sa1100/config.mk deleted +0 -9
@@ -1,9 +0,0 @@ -# -# (C) Copyright 2002 -# Sysgo Real-Time Solutions, GmbH <www.elinos.com> -# Marius Groeger <[email protected]> -# -# SPDX-License-Identifier: GPL-2.0+ -# - -PLATFORM_CPPFLAGS += -march=armv4 -mtune=strongarm1100
Signature · 1 line
1.9.1
PATCH v2 1/1 ARM: move -march=* and -mtune= options to arch/arm/Makefile
Hello Masahiro,
Quoted 237 lines · Masahiro Yamada
My main motivations for this commit are:
[1] Follow the
arch/arm/Makefilestyle of Linux Kernel[2] Maintain compiler options systematically
Currently, we give -march=* and -mtune=* options inconsistently:
Only some of the CPUs pass -march=* and -mtune=* options. By collecting such options into the single placearch/arm/Makefilewe can tell which options are missing at a glance.[3] Prepare for deprecating
arch/*/cpu/*/config.mkNote:
This commit just moves the compiler options so as not to change the behavior at all. It does not care about the correctness of the given options. Fox example, "-march=armv5te" might be better than "-march=armv4" for ARM946EJS, but it is beyond the scope this commit. Also, filling the missing -march=* and -tune=* is left to follow-up patches.Signed-off-by Masahiro Yamada <[email protected]>Acked-by Marek Vasut <[email protected]>Acked-by Stefan Roese <[email protected]>---
Changes in v2:
- Rebased onto u-boot-arm/master (commit419fa9ae)arch/arm/Makefile | 32 ++++++++++++++++++++++++++++++++ arch/arm/cpu/arm1136/config.mk | 9 --------- arch/arm/cpu/arm1176/config.mk | 9 --------- arch/arm/cpu/arm720t/config.mk | 9 --------- arch/arm/cpu/arm920t/config.mk | 8 -------- arch/arm/cpu/arm926ejs/config.mk | 8 -------- arch/arm/cpu/arm946es/config.mk | 8 -------- arch/arm/cpu/armv7/config.mk | 5 ----- arch/arm/cpu/armv8/config.mk | 2 -- arch/arm/cpu/pxa/config.mk | 2 -- arch/arm/cpu/sa1100/config.mk | 9 --------- 11 files changed, 32 insertions(+), 69 deletions(-) delete mode 100644 arch/arm/cpu/arm1136/config.mk delete mode 100644 arch/arm/cpu/arm1176/config.mk delete mode 100644 arch/arm/cpu/arm720t/config.mk delete mode 100644 arch/arm/cpu/arm920t/config.mk delete mode 100644 arch/arm/cpu/arm926ejs/config.mk delete mode 100644 arch/arm/cpu/arm946es/config.mk delete mode 100644 arch/arm/cpu/sa1100/config.mkarch/arm/Makefile +32
-0@@ -2,6 +2,38 @@ # SPDX-License-Identifier: GPL-2.0+ # +# This selects which instruction set is used. +arch-$(CONFIG_CPU_ARM720T) =-march=armv4 +arch-$(CONFIG_CPU_ARM920T) =-march=armv4 +arch-$(CONFIG_CPU_ARM926EJS) =-march=armv5te +arch-$(CONFIG_CPU_ARM946ES) =-march=armv4 +arch-$(CONFIG_CPU_SA1100) =-march=armv4 +arch-$(CONFIG_CPU_PXA) = +arch-$(CONFIG_CPU_ARM1136) =-march=armv5 +arch-$(CONFIG_CPU_ARM1176) =-march=armv5t +arch-$(CONFIG_CPU_V7) =$(call cc-option, -march=armv7-a, -march=armv5) +arch-$(CONFIG_ARM64) =-march=armv8-a + +# Evaluate arch cc-option calls now +arch-y := $(arch-y) + +# This selects how we optimise for the processor. +tune-$(CONFIG_CPU_ARM720T) =-mtune=arm7tdmi +tune-$(CONFIG_CPU_ARM920T) = +tune-$(CONFIG_CPU_ARM926EJS) = +tune-$(CONFIG_CPU_ARM946ES) = +tune-$(CONFIG_CPU_SA1100) =-mtune=strongarm1100 +tune-$(CONFIG_CPU_PXA) =-mcpu=xscale +tune-$(CONFIG_CPU_ARM1136) = +tune-$(CONFIG_CPU_ARM1176) = +tune-$(CONFIG_CPU_V7) = +tune-$(CONFIG_ARM64) = + +# Evaluate tune cc-option calls now +tune-y := $(tune-y) + +PLATFORM_CPPFLAGS += $(arch-y) $(tune-y) + # Machine directory name. This list is sorted alphanumerically # by CONFIG_* macro name. machine-$(CONFIG_ARCH_AT91) += at91arch/arm/cpu/arm1136/config.mk deleted +0
-9@@ -1,9 +0,0 @@ -# -# (C) Copyright 2002 -# Gary Jennejohn, DENX Software Engineering, <[email protected]> -# -# SPDX-License-Identifier: GPL-2.0+ -# - -# Make ARMv5 to allow more compilers to work, even though its v6. -PLATFORM_CPPFLAGS += -march=armv5arch/arm/cpu/arm1176/config.mk deleted +0
-9@@ -1,9 +0,0 @@ -# -# (C) Copyright 2002 -# Gary Jennejohn, DENX Software Engineering, <[email protected]> -# -# SPDX-License-Identifier: GPL-2.0+ -# - -# Make ARMv5 to allow more compilers to work, even though its v6. -PLATFORM_CPPFLAGS += -march=armv5tarch/arm/cpu/arm720t/config.mk deleted +0
-9@@ -1,9 +0,0 @@ -# -# (C) Copyright 2002 -# Sysgo Real-Time Solutions, GmbH <www.elinos.com> -# Marius Groeger <[email protected]> -# -# SPDX-License-Identifier: GPL-2.0+ -# - -PLATFORM_CPPFLAGS += -march=armv4 -mtune=arm7tdmiarch/arm/cpu/arm920t/config.mk deleted +0
-8@@ -1,8 +0,0 @@ -# -# (C) Copyright 2002 -# Gary Jennejohn, DENX Software Engineering, <[email protected]> -# -# SPDX-License-Identifier: GPL-2.0+ -# - -PLATFORM_CPPFLAGS += -march=armv4arch/arm/cpu/arm926ejs/config.mk deleted +0
-8@@ -1,8 +0,0 @@ -# -# (C) Copyright 2002 -# Gary Jennejohn, DENX Software Engineering, <[email protected]> -# -# SPDX-License-Identifier: GPL-2.0+ -# - -PLATFORM_CPPFLAGS += -march=armv5tearch/arm/cpu/arm946es/config.mk deleted +0
-8@@ -1,8 +0,0 @@ -# -# (C) Copyright 2002 -# Gary Jennejohn, DENX Software Engineering, <[email protected]> -# -# SPDX-License-Identifier: GPL-2.0+ -# - -PLATFORM_CPPFLAGS += -march=armv4arch/arm/cpu/armv7/config.mk +0
-5@@ -5,11 +5,6 @@ # SPDX-License-Identifier: GPL-2.0+ # -# If armv7-a is not supported by GCC fall-back to armv5, which is -# supported by more tool-chains -PF_CPPFLAGS_ARMV7 := $(call cc-option, -march=armv7-a, -march=armv5) -PLATFORM_CPPFLAGS += $(PF_CPPFLAGS_ARMV7) - # On supported platforms we set the bit which causes us to trap on unaligned # memory access. This is the opposite of what the compiler expects to be # the default so we must pass in -mno-unaligned-access so that it is awarearch/arm/cpu/armv8/config.mk +0
-2@@ -6,7 +6,5 @@ # PLATFORM_RELFLAGS += -fno-common -ffixed-x18 -PF_CPPFLAGS_ARMV8 := $(call cc-option, -march=armv8-a) PF_NO_UNALIGNED := $(call cc-option, -mstrict-align) -PLATFORM_CPPFLAGS += $(PF_CPPFLAGS_ARMV8) PLATFORM_CPPFLAGS += $(PF_NO_UNALIGNED)arch/arm/cpu/pxa/config.mk +0
-2@@ -6,8 +6,6 @@ # SPDX-License-Identifier: GPL-2.0+ # -PLATFORM_CPPFLAGS += -mcpu=xscale - # # !WARNING! # The PXA's OneNAND SPL uses .text.0 and .text.1 segments to allow booting fromarch/arm/cpu/sa1100/config.mk deleted +0
-9@@ -1,9 +0,0 @@ -# -# (C) Copyright 2002 -# Sysgo Real-Time Solutions, GmbH <www.elinos.com> -# Marius Groeger <[email protected]> -# -# SPDX-License-Identifier: GPL-2.0+ -# - -PLATFORM_CPPFLAGS += -march=armv4 -mtune=strongarm1100Signature · 1 line
1.9.1
Applied to u-boot-arm/master, thanks!
Amicalement,
Signature · 1 line
Albert.
PATCH v2 1/1 ARM: move -march=* and -mtune= options to arch/arm/Makefile
Quoted 20 lines · Albert ARIBAUD
Quoted 19 lines · Masahiro Yamada
My main motivations for this commit are:
[1] Follow the
arch/arm/Makefilestyle of Linux Kernel[2] Maintain compiler options systematically
Currently, we give -march=* and -mtune=* options inconsistently:
Only some of the CPUs pass -march=* and -mtune=* options. By collecting such options into the single placearch/arm/Makefilewe can tell which options are missing at a glance.[3] Prepare for deprecating
arch/*/cpu/*/config.mkNote:
This commit just moves the compiler options so as not to change the behavior at all. It does not care about the correctness of the given options. Fox example, "-march=armv5te" might be better than "-march=armv4" for ARM946EJS, but it is beyond the scope this commit. Also, filling the missing -march=* and -tune=* is left to follow-up patches.
...
Quoted 1 line
Applied to u-boot-arm/master, thanks!
This patch breaks Tegra (at least Seaboard, and I'd guess all Tegra boards). Reverting it solves the problem.
It causes the SPL to be build for ARMv7 even though it should be built for an earlier architecture. I added a $(warning) to arch/arm/Makefile, and it prints:
arch/arm/Makefile:37: SPL_BUILD FLAGS -D__ARM__ -marm -mno-thumb-interwork -mabi=aapcs-linux -mword-relocations -mno-unaligned-access -ffunction-sections -fdata-sections -fno-common -ffixed-r9 -msoft-float -pipe -march=armv7-a
arch/arm/Makefile:37: SPL_BUILD y FLAGS -D__ARM__ -marm -mno-thumb-interwork -mabi=aapcs-linux -ffunction-sections -fdata-sections -fno-common -ffixed-r9 -msoft-float -pipe -march=armv7-a
Note the second line says ARMv7, even though CONFIG_SPL_BUILD is set, so it shouldn't.
PATCH v2 1/1 ARM: move -march=* and -mtune= options to arch/arm/Makefile
Quoted 21 lines · Stephen Warren
Quoted 13 lines · Albert ARIBAUD
Quoted 12 lines · Masahiro Yamada
My main motivations for this commit are:
[1] Follow the
arch/arm/Makefilestyle of Linux Kernel[2] Maintain compiler options systematically
Currently, we give -march=* and -mtune=* options inconsistently:
Only some of the CPUs pass -march=* and -mtune=* options. By collecting such options into the single placearch/arm/Makefilewe can tell which options are missing at a glance.[3] Prepare for deprecating
arch/*/cpu/*/config.mkQuoted 7 lines
Quoted 7 lines
Note:
This commit just moves the compiler options so as not to change the behavior at all. It does not care about the correctness of the given options. Fox example, "-march=armv5te" might be better than "-march=armv4" for ARM946EJS, but it is beyond the scope this commit. Also, filling the missing -march=* and -tune=* is left to follow-up patches.
Quoted 5 lines
...
Quoted 1 line
Applied to u-boot-arm/master, thanks!
This patch breaks Tegra (at least Seaboard, and I'd guess all Tegra boards). Reverting it solves the problem.
Yes, just bisected the same problem on the TK1 down to this commit.
Quoted 14 lines
It causes the SPL to be build for ARMv7 even though it should be built for an earlier architecture. I added a $(warning) to
arch/arm/Makefile, and it prints:
arch/arm/Makefile:37:SPL_BUILDFLAGS -D__ARM__ -marm(quoted diff) +0
-3-mno-thumb-interwork -mabi=aapcs-linux -mword-relocations -mno-unaligned-access -ffunction-sections -fdata-sections -fno-common -ffixed-r9 -msoft-float -pipe -march=armv7-a
arch/arm/Makefile:37:SPL_BUILDy FLAGS -D__ARM__ -marm(quoted diff) +0
-2-mno-thumb-interwork -mabi=aapcs-linux -ffunction-sections -fdata-sections -fno-common -ffixed-r9 -msoft-float -pipe -march=armv7-a
Quoted 3 lines
Note the second line says ARMv7, even though
CONFIG_SPL_BUILDis set, so it shouldn't.
Tegra seems to be the only target so far that changes the target CPU for the SPL build:
#config.mk
...
ARCH := $(CONFIG_SYS_ARCH:"%"=%)
CPU := $(CONFIG_SYS_CPU:"%"=%)
ifdef CONFIG_SPL_BUILD
ifdef CONFIG_TEGRA
CPU := arm720t
endif
endif
...
How to model this with that new compiler switch setup?
Jan
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 181 bytes
Desc: OpenPGP digital signature
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20150411/1d7e679c/attachment.sig>
PATCH v2 1/1 ARM: move -march=* and -mtune= options to arch/arm/Makefile
Stephen, Jan,
2015-04-11 15:18 GMT+09:00 Jan Kiszka <[email protected]>:
Quoted 5 lines
Quoted 2 lines
This patch breaks Tegra (at least Seaboard, and I'd guess all Tegra boards). Reverting it solves the problem.
Yes, just bisected the same problem on the TK1 down to this commit.
I will take a look right away.
Signature · 2 lines
Best Regards Masahiro Yamada
PATCH v2 1/1 ARM: move -march=* and -mtune= options to arch/arm/Makefile
Hi, Stephen, Jan,
2015-04-11 21:53 GMT+09:00 Masahiro Yamada <[email protected]>:
Quoted 7 lines
Stephen, Jan,
2015-04-11 15:18 GMT+09:00 Jan Kiszka <[email protected]>:
Quoted 9 lines
Quoted 5 lines
Quoted 2 lines
This patch breaks Tegra (at least Seaboard, and I'd guess all Tegra boards). Reverting it solves the problem.
Yes, just bisected the same problem on the TK1 down to this commit.
I will take a look right away.
Could you check this patch?
http://patchwork.ozlabs.org/patch/460382/
Signature · 2 lines
Best Regards Masahiro Yamada
PATCH v2 1/1 ARM: move -march=* and -mtune= options to arch/arm/Makefile
In reply to Stephen WarrenHi Stephen,
2015-04-11 12:49 GMT+09:00 Stephen Warren <[email protected]>:
Quoted 38 lines · Albert ARIBAUD
Quoted 20 lines · Masahiro Yamada
Quoted 19 lines
My main motivations for this commit are:
[1] Follow the
arch/arm/Makefilestyle of Linux Kernel[2] Maintain compiler options systematically
Currently, we give -march=* and -mtune=* options inconsistently:
Only some of the CPUs pass -march=* and -mtune=* options. By collecting such options into the single placearch/arm/Makefilewe can tell which options are missing at a glance.[3] Prepare for deprecating
arch/*/cpu/*/config.mkNote:
This commit just moves the compiler options so as not to change the behavior at all. It does not care about the correctness of the given options. Fox example, "-march=armv5te" might be better than "-march=armv4" for ARM946EJS, but it is beyond the scope this commit. Also, filling the missing -march=* and -tune=* is left to follow-up patches....
Quoted 1 line
Applied to u-boot-arm/master, thanks!
This patch breaks Tegra (at least Seaboard, and I'd guess all Tegra boards). Reverting it solves the problem.
It causes the SPL to be build for ARMv7 even though it should be built for an earlier architecture. I added a $(warning) to
arch/arm/Makefile, and it prints:
arch/arm/Makefile:37:SPL_BUILDFLAGS -D__ARM__ -marm(quoted diff) +0
-3-mno-thumb-interwork -mabi=aapcs-linux -mword-relocations -mno-unaligned-access -ffunction-sections -fdata-sections -fno-common -ffixed-r9 -msoft-float -pipe -march=armv7-a
arch/arm/Makefile:37:SPL_BUILDy FLAGS -D__ARM__ -marm
Review
Quoted 2 lines
(quoted diff) +0
-2-mno-thumb-interwork -mabi=aapcs-linux -ffunction-sections -fdata-sections -fno-common -ffixed-r9 -msoft-float -pipe -march=armv7-a
Just a tip:
You can also check it by ".*.cmd" files.
After I fixed this problem, I confirmed it as follows:
For U-boot proper, for example,
$ head common/.stdio.o.cmd cmd_common/stdio.o := arm-linux-gnueabi-gcc -Wp,-MD,common/.stdio.o.d -nostdinc -isystem /usr/lib/gcc-cross/arm-linux-gnueabi/4.7/include -Iinclude -I./arch/arm/include -include ./include/linux/kconfig.h -D__KERNEL__ -D__UBOOT__ -DCONFIG_SYS_TEXT_BASE=0x0010E000 -Wall -Wstrict-prototypes -Wno-format-security -fno-builtin -ffreestanding -Os -fno-stack-protector -g -fstack-usage -Wno-format-nonliteral -D__ARM__ -marm -mno-thumb-interwork -mabi=aapcs-linux -mword-relocations -mno-unaligned-access -ffunction-sections -fdata-sections -fno-common -ffixed-r9 -msoft-float -pipe -march=armv7-a -I./arch/arm/mach-tegra/include -D"KBUILD_STR(s)=\#s" -D"KBUILD_BASENAME=KBUILD_STR(stdio)" -D"KBUILD_MODNAME=KBUILD_STR(stdio)" -c -o common/stdio.o common/stdio.c [ snip ]
For SPL,
$ head spl/common/.stdio.o.cmd cmd_spl/common/stdio.o := arm-linux-gnueabi-gcc -Wp,-MD,spl/common/.stdio.o.d -nostdinc -isystem /usr/lib/gcc-cross/arm-linux-gnueabi/4.7/include -Iinclude -I./arch/arm/include -include ./include/linux/kconfig.h -D__KERNEL__ -D__UBOOT__ -DCONFIG_SYS_TEXT_BASE=0x0010E000 -DCONFIG_SPL_BUILD -Wall -Wstrict-prototypes -Wno-format-security -fno-builtin -ffreestanding -Os -fno-stack-protector -g -fstack-usage -Wno-format-nonliteral -ffunction-sections -fdata-sections -D__ARM__ -marm -mno-thumb-interwork -mabi=aapcs-linux -ffunction-sections -fdata-sections -fno-common -ffixed-r9 -msoft-float -pipe -march=armv4 -mtune=arm7tdmi -I./arch/arm/mach-tegra/include -D"KBUILD_STR(s)=\#s" -D"KBUILD_BASENAME=KBUILD_STR(stdio)" -D"KBUILD_MODNAME=KBUILD_STR(stdio)" -c -o spl/common/stdio.o common/stdio.c [ snip ]
Signature · 2 lines
Best Regards Masahiro Yamada