From mboxrd@z Thu Jan 1 00:00:00 1970 From: Adam Ford Date: Fri, 5 Mar 2021 21:03:32 -0600 Subject: [RFC PATCH u-boot 00/12] U-Boot LTO (Sandbox + ARM Nokia RX-51) In-Reply-To: References: <20210303041211.26945-1-marek.behun@nic.cz> <20210303161159.GF1310@bill-the-cat> <20210303174157.280e7179@nic.cz> <20210303213605.GR1310@bill-the-cat> <20210304114327.357167d8@nic.cz> <20210304145823.GU1310@bill-the-cat> <20210304165956.1c310300@nic.cz> <20210304233321.589bce49@nic.cz> Message-ID: List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de On Fri, Mar 5, 2021 at 11:10 AM Adam Ford wrote: > > On Fri, Mar 5, 2021 at 6:31 AM Stefan Roese wrote: > > > > On 05.03.21 12:25, Adam Ford wrote: > > > On Thu, Mar 4, 2021 at 4:33 PM Marek Behun wrote: > > >> > > >> On Thu, 4 Mar 2021 16:18:03 -0600 > > >> Adam Ford wrote: > > >> > > >>> diff --git a/arch/arm/mach-omap2/omap3/Makefile > > >>> b/arch/arm/mach-omap2/omap3/Makefile > > >>> index 91ed8ebc9f..a2cc21c6d2 100644 > > >>> --- a/arch/arm/mach-omap2/omap3/Makefile > > >>> +++ b/arch/arm/mach-omap2/omap3/Makefile > > >>> @@ -6,6 +6,8 @@ > > >>> # If clock.c is compiled for Thumb2, then it fails on OMAP3530 > > >>> CFLAGS_clock.o += -marm > > >>> > > >>> +CFLAGS_REMOVE_file.o := $(LTO_CFLAGS) > > >> > > >> Eh? There is no file.c in arch/arm/mach-omap2/omap3/ directory. > > > > > > It must be from something else that had changed when I did a git pull > > > pull on your repo. I guess that's better news. > > > > It might be a misunderstanding. Marek means that you need to replace > > "file" with your real filename, like: > > > > driver_spi.c -> > > > > +CFLAGS_REMOVE_driver_spi.o := $(LTO_CFLAGS) > > I first did a git pull from his git repo, and then blindly copy-pasted > the suggested link to that above directly. I don't play with > Makefiles often, so I didn't really notice that I needed to match the > line to an actual file. When I rebuilt, my initial issue with showing > too much DDR and hanging went away, so I wrongly assumed that this > fixed it. In reality, I think it was a patch that had been applied to > his git repo that got pulled in at the same time. > > On the testing front, > I started testing the da850evm (ARM9) this morning. I ran into an > issue that I apparently caused some time ago, and I'm trying to > resolve that now. I have it working, but I need to clean it up. I'll > push the clean-up to the ML then try the LTO on that board to see if > U-Boot and/or SPL work with LTO enabled. > > As of now, I have one board that seems to fully boot (imx6q_logic) and > a family of boards that work in U-Boot but not SPL (omap3_logic). > > After the da850em, I'll test a 64-bit Renesas board without SPL and a > 64-bit NXP board with SPL to test. > > On the build-testing I have done, I am seeing an average of a 10-20% > reduction in size for SPL, and a ~ 3% reduction in size in U-Boot. > With a patch that I've already sent to the mailing list for the da850evm, it's booting both SPL and U-Boot With the compiler I have, the code went from: SPL 24305 U-Boot 381930 To: SPL 20937 U-Boot 358780 For a Reduction of: SPL -3368 (-13.86%) U-Boot -23150 (-6.06%) I didn't test the NOR or NAND booting versions of the da850evm, but I will try to do that when the time comes. adam > adam > > > > HTH, > > Stefan