Le 22/10/2011 02:19, Marek Vasut a écrit : > On Saturday, October 22, 2011 02:04:52 AM Tom Rini wrote: >> On Fri, Oct 21, 2011 at 4:45 PM, Marek Vasut<marek.va...@gmail.com> wrote: >>> On Saturday, October 22, 2011 01:08:43 AM Albert ARIBAUD wrote: >>>> Le 22/10/2011 00:46, Marek Vasut a écrit : >>>>> On Saturday, October 22, 2011 12:44:06 AM Albert ARIBAUD wrote: >>>>>> Le 22/10/2011 00:00, Marek Vasut a écrit : >>>>>>> On Friday, October 21, 2011 11:52:23 PM Albert ARIBAUD wrote: >>>>>>>> Hi Marek, >>>>>>>> >>>>>>>> Le 21/10/2011 22:44, Marek Vasut a écrit : >>>>>>>>> On Thursday, October 06, 2011 02:13:26 AM Marek Vasut wrote: >>>>>>>>>> This allows the SPL to avoid compiling in the CPU support code. >>>>>>>>>> >>>>>>>>>> Signed-off-by: Marek Vasut<marek.va...@gmail.com> >>>>>>>>>> Cc: Stefano Babic<sba...@denx.de> >>>>>>>>>> Cc: Wolfgang Denk<w...@denx.de> >>>>>>>>>> Cc: Detlev Zundel<d...@denx.de> >>>>>>>>>> Cc: Scott Wood<scottw...@freescale.com> >>>>>>>>>> --- >>>>>>>>>> >>>>>>>>>> arch/arm/cpu/arm926ejs/Makefile | 7 +++++++ >>>>>>>>>> 1 files changed, 7 insertions(+), 0 deletions(-) >>>>>>>>>> >>>>>>>>>> diff --git a/arch/arm/cpu/arm926ejs/Makefile >>>>>>>>>> b/arch/arm/cpu/arm926ejs/Makefile index 930e0d1..3f9b0f1 100644 >>>>>>>>>> --- a/arch/arm/cpu/arm926ejs/Makefile >>>>>>>>>> +++ b/arch/arm/cpu/arm926ejs/Makefile >>>>>>>>>> @@ -28,6 +28,13 @@ LIB = $(obj)lib$(CPU).o >>>>>>>>>> >>>>>>>>>> START = start.o >>>>>>>>>> COBJS = cpu.o >>>>>>>>>> >>>>>>>>>> +ifdef CONFIG_SPL_BUILD >>>>>>>>>> +ifdef CONFIG_SPL_NO_CPU_SUPPORT_CODE >>>>>>>>>> +START := >>>>>>>>>> +COBJS := >>>>>>>>>> +endif >>>>>>>>>> +endif >>>>>>>>>> + >>>>>>>>>> >>>>>>>>>> SRCS := $(START:.o=.S) $(SOBJS:.o=.S) $(COBJS:.o=.c) >>>>>>>>>> OBJS := $(addprefix $(obj),$(COBJS) $(SOBJS)) >>>>>>>>>> START := $(addprefix $(obj),$(START)) >>>>>>>>> >>>>>>>>> Hi Albert, >>>>>>>>> >>>>>>>>> can we get this applied please? >>>>>>>> >>>>>>>> I still don't understand what this is supposed to do -- why not >>>>>>>> linking this code is required. >>>>>>>> >>>>>>>> Amicalement, >>>>>>> >>>>>>> Hi Albert, >>>>>>> >>>>>>> I use very different start.S in SPL. And I don't need cpu.o at all. >>>>>> >>>>>> That I understand; but is there a /problem/ in linking cpu.o in? >>>>> >>>>> I suppose it'll be optimized out at link time ? >>>> >>>> That indirectly answers my question: what you want to achieve is >>>> removing dead code. >>> >>> The code IS USED in U-Boot, but IS NOT USED in SPL ! >> >> Right, but linked and unused code in SPL is (or should be!) thrown >> away, is what's >> trying to be driven home right now. If the file is going to go away, >> and it's compiled >> thrown away at final link of SPL, lets just ignore that it exists for >> a little longer, and >> then it won't. > > My distrust towards compiler abilities to optimize such stuff out tells me > it's > better to avoid it even to be compiled in at all.
Optimizing unused functions is a rather simple and reliable ability in tolchains. The issue is not really whether the toolchain is able to do the removal (it is); rather, the issue is whether the linker command line will cause the removal (it will IMO as long as -gc-sections is specified). Amicalement, -- Albert. _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot