NetBSD/external/gpl3/gcc
joerg 4df4cd4e92 Fix encoding of LSDA entries. .eh_frame references in non-PIC mode can
use plain pointers. For PIC, any references to global objects must be
indirect, but the .eh_frame entries themselve should be pcrel.
2017-07-18 18:02:37 +00:00
..
dist Fix encoding of LSDA entries. .eh_frame references in non-PIC mode can 2017-07-18 18:02:37 +00:00
lib Implement __cxa_thread_atexit and __cxa_thread_atexit_impl. This 2017-07-11 15:21:31 +00:00
usr.bin Honor HOST_CXX. 2017-06-26 17:38:10 +00:00
gcc2gcc.old fix some paths. 2014-02-27 09:08:49 +00:00
gcc2netbsd minor updates for GCC 5. 2016-03-12 21:51:02 +00:00
Makefile fix MKGCCCMDS=no, and turn it on by default for sun2. 2015-01-05 01:52:23 +00:00
Makefile.gcc_path remove remaining makefile support for GCC < 45 that i found. 2014-06-14 20:49:36 +00:00
Makefile.hooks merge GCC 4.8 build. 2014-03-01 10:00:31 +00:00
README.gcc53 update powerpc64 info 2016-06-09 23:36:53 +00:00

$NetBSD: README.gcc53,v 1.21 2016/06/09 23:36:53 mrg Exp $

lib:
	libasan is disabled currently (haven't tried yet)

new stuff:
	cc1objcplus
	collect2 -- need to re-introduce?
	libcilkrts
	libmpx
	liboffloadmic
	libvtv
	libitm

other changes to look at:

Index: gcc/targhooks.c
	vs new binutils

+           doc/gcov-tool.1


arch/feature list.  anything not here has been switched already:

tools:		does build.sh tools work?
kernels:	does a kernel run?
libgcc:		does libgcc build?
native-gcc:	does a full mknative-gcc complete?
make release:	does build.sh release complete? 
runs:		does the system boot with a full world?
atf:		does atf run / compare well


architecture	tools	kernels	libgcc	native-gcc	make release	runs	atf
------------	-----	-------	------	----------	------------	----	---
arm		y	?	y	y		n[3]
armeb		y	?	y	y		n[3]
coldfire	y	N/A	y	y		?		N/A	N/A
earm		y	?	y	y		y[3,13]
earmeb		y	?	y	y		y[3,13]
earmhf		y	?	y	y		y[3]
earmhfeb	y	?	y	y		y[3]
earmv4		y	y	y	y		y[3]		y	y
earmv4eb	y	?	y	y		y[3]
earmv6		y	?	y	y		y[3]
earmv6eb	y	?	y	y		y[3]
earmv6hf	y	?	y	y		y[3]
earmv6hfeb	y	?	y	y		y[3]
earmv7		y	?	y	y		y[3]
earmv7eb	y	?	y	y		y[3]
earmv7hf	y	?	y	y		y[3]
earmv7hfeb	y	?	y	y		y[3]
m68000		y	?	y	y		y
m68k		y	y[16]	y	y		y[13]
mipseb		y	y	y	y		y		y
mipsel		y	y	y	y		y		y	y
mips64eb	y	y	y	y		y[8]		y	y
mips64el	y	?	y	y		y		y	y
powerpc		y	y	y	y		y		y[6]	
powerpc64	y	?	y	y		y
sh3eb		y	?	y	y		y[5]
sh3el		y	?	y	y		y
sparc		y	y	y	y		y		y[6]
sparc64		y	y	y	y		y		y[6,2]	y
vax		y	y	y	y		y		y[15]	n
--
or1k		n[10]
riscv32		n[10]
riscv64		n[10]
ia64
------------	-----	-------	------	----------	------------	----	---
architecture	tools	kernels	libgcc	native-gcc	make release	runs	atf


[2] - -O2 and -Os kernels hang, -O1 SIR reset
	-- may be a SMP issue; ultra10 works, ultra45 SMP does not
		-- try sb2000 (particularly with UP kernel.  u45 UP is shitty.)
[3] - MKCOMPAT=no enabled currently, infact OABI seems to be broken.  the docs say it was only deprecated, but the options make broken stuff.
[5] - sh3eb tries to use sh specific atomic config which doesn't work, has hand edited mknative output
[6] - crtbeginS.o builds incorrectly with GCC 5.3 and -O2.  a hack for -O1 has been added.
[8] - sgimips64 release build fails, mdsetimage'd gz'd kernels don't get built?
[10] - needs to be re-merged with GCC 5.3 versions of these not-merged-to-mainline-gcc ports.
[13] - builds tested:
       - m68k: mvm68k amiga atari
       - earm : shark evbarm*
       - mipseb: sgimips evbmips
       - mipsel: evbmips
       - mips64eb: sgimips[fail] evbmips
       - mips64el: evbmips
[14] - machines tested:
       - sparc ss20 (OK)
       - sparc64 ultra45 (FAIL), ultra10 (OK), sb2000 (OK UP, FAIL SMP.)
       - powerpc pegasosII (OK)
       - alpha UP1000 (OK)
       - arm shark (OK)
       - evbmips gxemul MALTA
		- had to implement some MIPS32 in gxemul to make this work
       - pmax gxemul (OK)
       - sgimips O2 (OK kernel -- but my O2 is not stable)
       - i386/amd64 (OK)
       - hppa (OK)
       - amiga (OK)
[15] - vax -- switched to GCC 5.3 already as it is less broken
	- ssh is broken, was broken with 4.8
	- there are too many -O0's we added because of mis-handled rtl
	- the eh_frame stuff is probably busted, but it never worked?
[16] - kernels tested:
	- m68k: amiga