Commit Graph

1969 Commits

Author SHA1 Message Date
mrg
a9f3ed48cb mknative-gcc for riscv64. 2019-04-16 08:01:36 +00:00
mrg
1b3d5424d9 list a bunch of soft-fp as present in the current risc64 libgcc defs.mk.
this makes mknative-gcc work without breaking maya's manual work.
2019-04-16 07:50:05 +00:00
mrg
04325e9757 regen mknative-gcc for GCC 7 and ppc64. libgcc still has problems. 2019-04-16 07:37:56 +00:00
mrg
b55068e0f5 avoid differences to linux64.h that aren't needed.
merge the rs6000_abi_name check for netbsd into the linux/freebsd section.
2019-04-16 07:36:55 +00:00
mrg
292122e2f9 no clone() on netbsd. 2019-04-16 07:34:54 +00:00
mrg
b543e834b1 regen for mknative-binutils for riscv64. 2019-04-16 06:19:54 +00:00
mrg
1532ab65e0 fix merge botch - remove duplicated case statement (not in configure) 2019-04-16 02:10:09 +00:00
kamil
ac211f1cad Sync gcc.old GetPcSpBp() with GCC9 (and recent LLVM)
Unify all NetBSD ports in a single ifdef.
2019-04-16 01:44:07 +00:00
kamil
ea81bf5e10 Sync GetPcSpBp() with GCC9 (and recent LLVM)
Unify all NetBSD ports in a single ifdef.
2019-04-16 01:40:16 +00:00
maya
172e5eac59 Remove unused definition. 2019-04-15 21:13:36 +00:00
maya
8684462788 Re-do previous:
emulate the addition of NETBSD_SUBTARGET_EXTRA_SPECS usually done by
SUBTARGET_EXTRA_SPECS (not used in risc-v) with EXTRA_SPECS.
Go back to using %(netbsd_link_spec) in our link spec, now that it's
a valid string.

Try to mimic other riscv OSes in our LINK_SPEC. they all start with
"-melf" XLEN_SPEC "lriscv" LD_EMUL_SUFFIX

and a definition of LD_EMUL_SUFFIX,
let's copy the LD_EMUL_SUFFIX linux uses.

Now we can link executables.
2019-04-15 18:49:07 +00:00
maya
dbcdc1e748 Provide riscv implementation.
XXX this is MI, why not use it for everyone?
2019-04-15 15:58:23 +00:00
maya
04b98926d2 more fake mknative 2019-04-15 14:51:23 +00:00
maya
ab65834a8e don't redefine types.
UINTMAX_TYPE / INTMAX_TYPE are mostly not redefined on netbsd.
These choices contradict typical 64bit archs, perhaps we don't want them.

XXX is the SIZE_TYPE default for riscv reasonable?
(long unsigned int for 64bit abi, unsigned int for 32bit abi)
2019-04-15 14:19:20 +00:00
maya
fc3e881944 Fake mknative 2019-04-15 14:02:23 +00:00
christos
213dbbf596 add missing files 2019-04-13 18:04:23 +00:00
christos
6e1bd08549 regen 2019-04-13 18:04:04 +00:00
christos
d02c3a6c2b fix typo, unused variable 2019-04-13 18:02:37 +00:00
christos
c9793efd5f fix core stack traces (missing register 25) 2019-04-13 18:02:05 +00:00
maya
fe5c6b2efc Fake mknative. enough to build libc, with other changes pending 2019-04-13 15:54:07 +00:00
maya
76f8d190e0 use NETBSD_LINK_SPEC_ELF rather than netbsd_link_spec.
My current guess as to why it makes a difference is that riscv, unlike other
targets, doesn't use the macro SUBTARGET_EXTRA_SPECS for anything meaningful

Fixes linking libgcc_s.so, which is now emitted as a dynamic library, not
a static object (which fails, as it has undefined references)

XXX there might be a better way of doing this
2019-04-13 15:53:32 +00:00
mrg
b73d549731 be sure to keep cc1_cpu the CC1*_SPEC.
fixes x86 -mtune=native without killing -cxx-isystem.
2019-04-11 00:17:44 +00:00
maya
7845a6d414 revert previous 2019-04-10 20:06:26 +00:00
maya
d3f779a9e1 Remove lingering references to NETBSD_CC1_AND_CC1PLUS_SPEC.
Not actually tested.
2019-04-10 16:15:11 +00:00
maya
6ad38d9708 remove bogus specs redefinition.
fixes the use of -march=native
2019-04-10 16:11:06 +00:00
maya
575b128d66 Claim ifunc support on a number of architectures.
(Architecture list taken from src/tests/libexec/ld.elf_so/t_ifunc.c)

This is needed for attribute target_clones to work.

Non-functional until a mknative run. Tested by doing a regular GCC build.
2019-04-07 14:26:26 +00:00
maya
b5a049a897 don't append to nbsd_tm_file. This is the sole definition so fine to do.
Only done to reduce diff to upstream.
2019-04-07 14:14:05 +00:00
maya
518582be7b Reduce diff to upstream (in config.gcc):
Make the NETBSD_ENABLE_PTHREADS unconditional (we don't use the else case)
2019-04-07 14:11:23 +00:00
maya
2cea6cc9bf Make the post-netbsd 2.0 case the only case. NFC.
(Reducing diff to upstream)
2019-04-07 14:08:35 +00:00
mrg
36f30ad7ad switch hppa to GCC 7.
note vax atf fails same as GCC 6.  hppa mostly works but has an
atf issue also unrelated to the compiler version

note ia64 mostly builds, but the kernel fails earlier than GCC 6.
2019-04-04 21:31:28 +00:00
mrg
af34d1bb77 - fix missing else in SUBSUBTARGET_OVERRIDE_OPTIONS
- remove obsolete defines, and move stuff to be more like freebsd64.h
- remove common / already correctly defined overrides
2019-04-03 08:31:57 +00:00
mrg
13f13ab7f0 fix error in previous 2019-04-03 02:13:56 +00:00
mrg
5436994bfb make ia64 build with gcc7:
- catch up tmake_file list for ia64-netbsd to gcc 7 standards
- don't build the "tf" extra size version on ia64 like x86.
- regen mknative files
2019-04-02 21:29:46 +00:00
christos
3f8860fbac regen 2019-04-02 14:17:55 +00:00
christos
c3d72cab2c add a missing file 2019-04-02 14:17:36 +00:00
christos
c745dd35cf remove debugging code 2019-04-02 03:47:30 +00:00
christos
b7ade174e0 Compiling some files with -fPIC and -O2 ends up having global
symbols classified as local in pic mode, and that ends up with PC32
relocations "movl *psp, %rx" (/bin/sh parse.c). Treat pic code as
shared libraries to avoid classifying common initialized symbols
as local. Thanks to thorpej@ for his help.
2019-04-02 02:59:50 +00:00
rin
1d1632b562 Fix usage of STACK_ALIGNBYTES in our local change.
Tested on amd64 and i386:
- binaries generated by "gcc -fsanitize=address" work fine
- /usr/tests/usr.bin/{cc,c++}/t_asan_* do not fail
2019-03-24 00:23:59 +00:00
mrg
e5309b49fe bump libstdc++.so.
unfortunately, we attempted to do this for netbsd-8 but we did
not actually end up having any ABI incompatibility with that,
as turning off dual ABI in libstdc++ means *only* enabling the
old ABI.  however, enabling dual ABI with C11 defaults (ie,
a forward looking ABI) *is* an ABI-change for some special
cases and thus we should have bumped this a couple of weeks
ago when we re-enabled dual ABI.

call this "nb3 20190319".

mknative-gcc regen all switched ports and almost all of the
unswitched ports.
2019-03-20 05:09:26 +00:00
mrg
cc64e9ea3d default oabi to strongarm. fixes build.sh -a arm builds. 2019-03-19 23:55:28 +00:00
mrg
44d3eb23e0 enable the workarounds for cortex a53 errata 835769 and 843419 by default. 2019-03-19 05:55:00 +00:00
mrg
7cace13896 update reality on switched ports and commited fixes. 2019-03-04 01:16:33 +00:00
mrg
adef1dae34 #if 0 the x and y symbols in GLIBCXX_3.4 namespace. they cause
duplicate symbols on netbsd.  see PR#54027.

with this disabled, turn on using the symver-config.h for the
gnu.ver processing so that other defines are handled.

fix some depends for gnu.ver processing.
2019-03-01 08:15:23 +00:00
mrg
e97586ab89 basic mknative bootstrap-libgcc for riscv64 2019-02-28 09:49:14 +00:00
mrg
32c963babf rework some commented code so it is easier to enable. 2019-02-28 01:11:04 +00:00
mrg
ee6b12caee partial mknative-gcc for riscv32/64. 2019-02-27 08:22:43 +00:00
mrg
c8240a8d80 avoid hand maintained lists but use values mknative pulls out.
unfortunately, somefiles have hand coded rules.
2019-02-27 08:21:42 +00:00
mrg
2b0e069250 mknative-gcc for most platforms again after recent tools/gcc/Makefile change. 2019-02-27 08:19:49 +00:00
christos
06535a6e22 regen i386 2019-02-26 21:24:44 +00:00
christos
fd53ae5e9e regen 2019-02-26 21:16:03 +00:00