From mboxrd@z Thu Jan 1 00:00:00 1970 From: Albert ARIBAUD Date: Thu, 2 Jul 2015 14:43:11 +0200 Subject: [U-Boot] [PATCH] ARM: enable CONFIG_USE_PRIVATE_LIBGCC by default In-Reply-To: References: <1423571865-8579-1-git-send-email-yamada.m@jp.panasonic.com> <20150416112144.3a6b4813@lilith> <20150701232144.600ee35a@lilith> Message-ID: <20150702144311.3858447c@lilith> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de Hello Masahiro, On Thu, 2 Jul 2015 21:21:12 +0900, Masahiro Yamada wrote: > Hi Albert, > > > 2015-07-02 6:21 GMT+09:00 Albert ARIBAUD : > > On Thu, 16 Apr 2015 11:21:44 +0200, Albert ARIBAUD > > wrote: > >> Hello Masahiro, > >> > >> Your patch clashes with Pavel's already committed > >> break-if-private-libgcc-and-thumb, causing many boards to fail building. > >> > >> I am putting your patch in 'under review' state until I can have a look > >> at what happens with private libgcc and thumb. > > > > Hmm, even with the libgcc+thumb thing fixed, this patch still causes > > quite a few target to fail: > > > > - without the patch, buildman yields 503 1 12 / 516. > > - With the patch, buildman yields 488 1 27 / 516. > > > > Of these, 10 are aarch64 boards which now try to build a private libgcc > > with some hardwired 32-bit mnemonics : > > > > | arch/arm/lib/_ashldi3.S:21: Error: operand 1 should be an integer > > register -- `subs r3,r2,#32' | arch/arm/lib/_ashldi3.S:22: Error: unknown mnemonic `rsb' -- `rsb ip,r2,#32' > > | arch/arm/lib/_ashldi3.S:23: Error: unknown mnemonic `movmi' -- `movmi r1,r1,lsl r2' > > | arch/arm/lib/_ashldi3.S:24: Error: unknown mnemonic `movpl' -- `movpl r1,r0,lsl r3' > > | arch/arm/lib/_ashldi3.S:25: Error: unknown mnemonic `orrmi' -- `orrmi r1,r1,r0,lsr ip' > > | arch/arm/lib/_ashldi3.S:26: Error: operand 1 should be an integer register -- `mov r0,r0,lsl r2' > > | arch/arm/lib/_ashldi3.S:27: Error: operand 1 should be an integer register -- `mov pc,lr' > > > > This should be fairly easy to fix by > > defaulting CONFIG_USE_PRIVATE_LIBGCC to > > > > The other 5 failures are snow, smdk5250, peach-pi, smdk5420, and > > peach-pit, all of which show the same error: > > > >> arch/arm/lib/lib.a(div0.o): In function `__div0': > >> arch/arm/lib/div0.c:13: undefined reference to `hang' > >> make[2]: *** [spl/u-boot-spl] Error 1 > >> make[1]: *** [spl/u-boot-spl] Error 2 > > > > That one is be a dependency on hang(). This function... hangs out... in > > lib/hang.c, which according to lib/Makefile should be included in any > > build, SPL or otherwise; but it appears lib/ is not built at all for > > SPL, at least for these five targets. > > > > Masahiro, can you have a look at e.g. snow (arm) and ls2085ardb > > (aarch64) and see if you can update your patch to make sure these two > > targets build? The other 13 should follow then. > > OK. > I will take a look. Ok -- don't rush, though. Seeing as there are contrary opinions on whether we should use a private libgcc or not, I won't decide on committing the patch right away. > -- > Best Regards > Masahiro Yamada Amicalement, -- Albert.