David Brownlee | 26 Apr 2012 22:17
Picon

Re: port-vax/46098 gcc-4.5.3 breaks at least boot blocks

(This is cc'ed to gnats-admin <at> netbsd.org to record the patch - please
drop that CC if this thread wanders off :)

Had a little play to determine which specific feature of -O2 was
causing issues with the boot blocks.

There are 31 different -f options enabled by -O2, and it took the full
five build passes to binary chop it down to -freorder-blocks :)

Thanks to Martin's existing patch it was easy to retest & the minimal
patch would now be:

diff -u -2 -r1.38 Makefile
--- sys/arch/vax/boot/boot/Makefile     22 Jan 2011 19:19:24 -0000      1.38
+++ sys/arch/vax/boot/boot/Makefile     26 Apr 2012 20:04:51 -0000
 <at>  <at>  -5,4 +5,7  <at>  <at> 
 .include <bsd.own.mk>

+COPTS.boot.c = -O2 -fno-reorder-blocks
+COPTS.devopen.c = -O2 -fno-reorder-blocks
+
 PROG=  boot
 DEVS=  hp.c ctu.c ra.c mfm.c if_qe.c if_le.c if_ze.c if_de.c if_ni.c

Working on the assumption that -freorder-blocks might be generally
toxic I've just started a netbsd-6 build with the following patch and
will give it a test tomorrow:

diff -u -2 -r1.108 sys.mk
--- share/mk/sys.mk     10 Feb 2012 05:57:42 -0000      1.108
(Continue reading)


Gmane