Commit Graph

1155 Commits

Author SHA1 Message Date
christos
b23b258258 import new gdb 2015-08-15 09:56:15 +00:00
christos
9d2109275e import new gdb 2015-08-15 09:46:14 +00:00
christos
8986534fbd switch everyone to gdb.old 2015-08-15 09:34:17 +00:00
christos
0ab5b34041 import the head of gdb in gdb.old in preparation for the new gdb import. 2015-08-15 09:27:49 +00:00
jakllsch
23d6404318 Correct temporary directory preference order in libiberty's choose_tmpdir().
Because it is intended to be persistent, /var/tmp is about the worst possible
choice for temporary files for most users of libiberty.  /tmp works better,
because the the defined semantics of /tmp allow for a non-persistent tmpfs
to be used.  This should improve performance when /tmp is a tmpfs and it is
difficult or impossible to have an environment variable or command line -pipe
flag passed to every piece of the toolchain.
2015-08-10 15:45:40 +00:00
christos
dcdbe6c789 td_close() needs to be able to write to the process image, so call sooner,
before we detach from it.
2015-07-02 14:54:42 +00:00
mrg
5b544a3657 regen mknative files for GCC 4.8.5. 2015-06-25 09:53:25 +00:00
mrg
3008502ee0 merge GCC 4.8.5 (final round) 2015-06-24 14:51:17 +00:00
mrg
11d0566779 merge GCC 4.8.5 (round two) 2015-06-24 14:29:51 +00:00
mrg
788f3c6afe merge GCC 4.8.5 cornflakes (round one). 2015-06-24 14:28:27 +00:00
mrg
7e9e220a26 initial import of GCC 4.8.5 sources. these GCC PRs (at least) are
fixed in this release:

64882 46102 58123 65409 59626 61058 65680 64487 65721 65727
52306 64768 56273 57653 59990 60656 61634 63844 64199 64493
64495 65549 57059 57569 57748 58369 62642 63608 64037 65550
65693 65220 45187 64409 61977 64513 64634 65368 66233 66470
65072 65327 65543 65279 63593 65063 65518 66123 66140 59016
64479 64557 64979 66215 66275 66481 39423 64766 63733 52714
60898 61138 63744 57023 39722 45402 52579 52664 60718 62044
59513 35330 37440 43701

see:
  https://gcc.gnu.org/bugzilla/buglist.cgi?bug_status=RESOLVED&resolution=FIXED&target_milestone=4.8.5
for more details.
2015-06-24 14:02:39 +00:00
matt
b766b2b592 Change CC1_SPEC andd CC1PLUS_SPEC to supply -fPIC by default if none of
m32 mrelocatable fpie fPIE fpic fPIC fno-pie fno-pic are supplied.
2015-06-24 01:29:33 +00:00
matt
7593e659ff By changing rs6000_elf_reloc_rw_mask to return 3 if using a powerpc64 ABI
on NetBSD, we basicly eliminate the only difference between have -fPIC or
not.  This enables us to turn on MKPICLIB for powerpc64.
2015-06-23 01:37:13 +00:00
matt
bd8986bbe0 Fix a bug where the octeon+ saa/saad instructions think they are using the AT
register when they actually aren't.
2015-05-29 22:18:51 +00:00
matt
6b8427896d Add the historical __OCTEON__ builtin_define along with __mips_popcount which
is defined if the platform has the dpop/pop instructions.
2015-05-29 19:37:27 +00:00
mrg
35d2346c62 generate after oabi/eabi fixes. 2015-05-28 17:31:38 +00:00
matt
e3b08ce148 Make MULTILIBS work for oabi 2015-05-27 15:33:41 +00:00
skrll
640e856ca3 Fix up TARGET_ENDIAN_DEFAULT for BE oabi 2015-05-25 21:18:29 +00:00
matt
2bfd904e26 regenerated for N32 support. 2015-05-23 22:14:20 +00:00
matt
62bd03ee9c Regen for N32 target vectors. 2015-05-23 01:45:08 +00:00
matt
3a9ce77d41 Add the mips n32 target vectors. 2015-05-23 01:41:02 +00:00
skrll
65b0d3bfdb Make sure mips_elf_n32_is_local_label_name is used. 2015-05-13 06:24:18 +00:00
matt
fd2293f463 Fix TEXTREL message to print out the section name 2015-05-09 17:43:23 +00:00
skrll
47d8d0b280 Define bfd_elf64_bfd_is_local_label_name so that local symbols really
get stripped, etc.
2015-05-08 15:13:53 +00:00
christos
fce62f0d34 regen 2015-05-07 14:43:30 +00:00
christos
ac4fc9a0ef generalize the mips test to match mips64. 2015-05-07 14:43:22 +00:00
prlw1
9521ae7bfd Fix typos 2015-04-28 09:48:30 +00:00
joerg
66e8846b8d Redo __aeabi_atexit by shuffling the arguments and dropping the code in
libstdc++.
2015-04-19 18:15:26 +00:00
martin
0c1ee2bf17 Results of an mknative run for ia64 2015-04-17 12:41:46 +00:00
martin
b40e9b5326 Add evil hack to help mknative untill we finish userland 2015-04-17 12:29:49 +00:00
martin
4ae85d6ddd Add missing cast 2015-04-17 12:29:00 +00:00
mrg
2603e0673f remove various HAVE_GCC=45 fragments. 2015-04-15 19:13:46 +00:00
mrg
cc09a3cba1 delete GCC 4.5. 2015-04-07 21:19:28 +00:00
bouyer
8bc54b22df Use the same TRY_EMPTY_VM_SPACE as mips and vax for arm, which also
has VM_MAXUSER_ADDRESS set to 2GB. Fixes "fatal error: had to relocate PCH"
from g++ building wxGTK28 or wxGTK30.
For details see https://gcc.gnu.org/bugzilla/show_bug.cgi?id=58379

thanks to Martin Husemann for the hint.
2015-04-03 17:25:42 +00:00
dennis
f334ce9265 Make the small [U]INT_LEAST?_TYPE definitions match the 32 bit compiler 2015-04-02 16:49:09 +00:00
matt
6d5bd4db35 Update to latest gcc changes. Default NetBSD to the medany cmodel. 2015-04-01 06:35:01 +00:00
matt
019155557a Add RISCV bits 2015-03-31 17:58:30 +00:00
matt
9e7510ab24 Update RISCV tls assembly tests 2015-03-31 17:57:40 +00:00
matt
163496bc0e Deal with NetBSD using dwarf EH 2015-03-31 17:18:35 +00:00
matt
11b22aab18 Make gcc emit the CPP macros for integer types. 2015-03-29 00:42:51 +00:00
matt
98ace65d41 Deal with GNU IFUNCs properly. 2015-03-28 07:51:20 +00:00
matt
3b7a9d4fbb Regen for new RISCV binutils.
Add elfnn-riscv.c -> elf{32,64}-riscv.c rules
2015-03-28 07:03:23 +00:00
matt
9b59c19e65 Make sure the RISCV compiler defaults to FDIV enabled. 2015-03-28 00:47:17 +00:00
matt
3a607a33f7 Update our in-tree binutils for RISCV to the latest. 2015-03-27 06:34:31 +00:00
matt
1523fd3ab8 Update gcc to use new ABI for RISCV 2015-03-27 01:51:34 +00:00
joerg
3dea93ea59 Apply elf32.em r1.8 to the corresponding sections of armelf.em and
aarch64elf.em. Original commit message:

Recursively add DT_NEEDED entries from shared libraries if symbols are
used indirectly. This is more in line with the old GNU ld behavior, but
not exactly the desired semantic.

Patch from Martin Husemann.
2015-02-18 15:05:43 +00:00
chs
80bb74da59 update m68k gcc bug workarounds for gcc 4.8. fixes PR 49609. 2015-02-01 17:47:00 +00:00
mrg
39898ff989 regenerate with recent mknative-gcc (1.80 and 1.81) updates. 2015-01-31 12:15:24 +00:00
joerg
80d5023792 libgcc_s is linked in the specs already, don't do it explicitly. 2015-01-29 21:12:10 +00:00
christos
4fc6ba4368 fix for PIC code. 2015-01-25 20:06:46 +00:00
matt
2eb84c7288 Make sure POWERPC_NETBSD is defined. 2015-01-22 08:35:05 +00:00
matt
9a22733cae Don't enable string instructions on NetBSD if -Os is used. 2015-01-20 07:12:41 +00:00
joerg
7056ba0e78 There is no such thing as void volatile. 2015-01-16 10:08:52 +00:00
joerg
eebd9ebe9d Uses free 2015-01-16 10:08:37 +00:00
mrg
68c85a9f21 regen. 2015-01-15 22:29:52 +00:00
skrll
b4b886e5d8 Fix gcc PR target/64479 [SH] wrong optimization delayed-branch 2015-01-15 08:42:14 +00:00
tron
00203d2bfc Fix build with "USE_SSP" set to "yes". 2015-01-14 20:26:41 +00:00
mrg
5c10ef7e83 rerun mknative for GCC 4.8.4 and all platforms.
m68000 needs -fPIC removed (again), and hppa c++config.h turned off
several things present in -lm, fixed by hand.
2015-01-10 22:59:34 +00:00
mrg
6bad6bfaf1 update for more reality. 2015-01-10 22:58:38 +00:00
mrg
94b9bff57a merge GCC 4.8.4. 2015-01-10 01:06:41 +00:00
mrg
6012017c82 import GCC 4.8.4 release. this fixes at least these GCC PRs:
fortran/61407
	sanitizer/64265
	tree-optimization/64269
	middle-end/64225
	tree-optimization/61686
	bootstrap/64213
	rtl-optimization/64037
	target/50751
	rtl-optimization/64037
	target/59593
	target/59593
	c++/56493
	target/64115
	middle-end/64111
	middle-end/64067
	rtl-optimization/63659
	libgomp/61200
	tree-optimization/61969
	tree-optimization/62031
	tree-optimization/63379
	tree-optimization/63605
	middle-end/63665
	target/60111
	target/63673
	target/63947
	tree-optimization/62167
	tree-optimization/63841
	ipa/63838
	c++/63455
	c++/63415
	c++/56710
	c++/58624
	preprocessor/60436
	target/55351
	fortran/63938
	libgomp/61200
	libstdc++/63840
	libstdc++/61947
	libstdc++/59603
	target/56846
	libstdc++/57440
2015-01-10 00:47:09 +00:00
christos
7f4dbbddd0 fix library name; add shared library version 2015-01-07 03:49:13 +00:00
christos
c2c9c6ba4c it is lto1 2015-01-07 02:18:10 +00:00
christos
b065c82840 regen 2015-01-07 02:08:06 +00:00
christos
62254aa965 regen; backtrace support is complete 2015-01-07 02:06:59 +00:00
christos
2c904ef7c1 fix build 2015-01-07 02:06:23 +00:00
christos
7f61831388 enable lto 2015-01-07 02:06:03 +00:00
christos
0c2e46cd4b enable the rest of the languages 2015-01-07 02:05:41 +00:00
christos
d5e8e308ec build lto 2015-01-07 02:02:44 +00:00
mrg
a4ee9f7109 fix MKGCCCMDS=no, and turn it on by default for sun2. 2015-01-05 01:52:23 +00:00
christos
88c1089d96 Bring in 2 patches from binutils:
From Alan Modra: Wed, 3 Jul 2013 11:51:56 +0930: powerpc64 call stubs:
    This brings powerpc64 ld in line with gold regarding calls allowed to
    go via a plt call stub or toc-adjusting stub without a following nop.
    A long time ago ld allowed tail calls, but this is wrong because we'll
    return to the caller's caller with the wrong toc pointer.  I fixed
    that for shared libraries but allowed tail calls in an executable for
    some reason.  Probably just muddy thinking on my part, because there's
    no difference between an executable and a shared library regarding the
    need to restore the toc pointer.  Perhaps it was because some testcase
    failed, most likely due to the g++ issue I comment on in the patch.

From Alan Modra: 29 Aug 2014 01:22:29 +0000: PowerPC64 call lacks nop error:
    Enough people accidentally or otherwise use -mcmodel=small then wonder
    why a call that is local is behaving as if it is going via the PLT.

	* elf64-ppc.c (ppc64_elf_relocate_section): Report a different
	error for calls via a toc adjusting stub without a nop.
2015-01-02 19:50:02 +00:00
dennis
298eb8b514 Apply a fix, extracted from the UCB RISC-V gcc sources, for the (known)
problems with compiling atomics for the riscv64 target with gcc.  Remove
the now-unneeded workarounds for the 2 files in libasan that were formerly
failing to compile with the optimizer turned on.
2014-12-22 21:15:48 +00:00
skrll
6948cee7e0 Allow i386 binary debugging on amd64 hosts. 2014-12-15 13:43:24 +00:00
christos
0c6a515324 Allow i386 binary debugging on amd64 hosts.
XXX: This should be done in mknative but how? Matt?
2014-12-14 19:59:52 +00:00
christos
977e434ff6 When debugging 32 bit binaries on a 64 bit arch in NetBSD the dynamic
linker magically converts the dynamic linker name to ld.elf_so-<32bitarch>
like ld.elf_so-i386. We do the same magic here.
2014-12-14 19:58:06 +00:00
christos
f890372b86 - Add -f to allow processing non-plain files.
- Align NetBSD note printing properly
- Add handling of "PaX" notes correctly. Perhaps we should rename them
  to "NetBSD" now.
2014-12-13 18:32:59 +00:00
martin
41f1cccf8f Fix byte order selection for breakpoints: on arm the byte order for code
might differ from the generic BFD endianess.
Fixes PR toolchain/49445.
2014-12-12 20:25:35 +00:00
aymeric
426034c57f . do not abort() if we read a zero cs or rip, or if we can't read them
. end the backtrace when encountering a soft interrupt, since they live in
  their own lwp
2014-12-02 10:34:27 +00:00
dennis
937de38ba9 Work around RISC-V compiler bug in gcc 4.8.3 (at least).
Should be reconsidered if the compiler is updated.
PR toolchain/49425
2014-12-02 03:20:39 +00:00
mrg
eea473d2a5 regenerate mknative files for m68000 now that the build actually completes.
this includes a hack matt@ found -- remove -fPIC from libgcc's defs.mk, i
have not yet figured out how to stop confgiure adding it.
2014-11-22 19:42:11 +00:00
joerg
06da94bf06 Merge upstream d840c081f8082e8b9e63fead5306643975a97bb3 to fix
UB as seen by a clang compiled as.
2014-11-20 21:44:56 +00:00
matt
549cefa5e6 Avoid using ld -x. Instead use ${OBJCOPY} ${OBJCOPYLIBFLAGS} to string
local symbols.
2014-11-02 14:54:27 +00:00
christos
fed776c55d one more search path. 2014-10-23 23:31:26 +00:00
christos
6eb7640629 make alpha compile 2014-10-23 19:03:38 +00:00
christos
3ce54f1012 use the appropriate unwind.h header 2014-10-23 17:50:24 +00:00
christos
a62fb610ef stop playing type games, and use the proper type for the placement new operator 2014-10-23 17:50:08 +00:00
christos
37db287df0 Use libdplibs 2014-10-23 12:16:25 +00:00
christos
9512ff2aab simplify and add more architectures. 2014-10-23 00:25:54 +00:00
christos
9b7e305c80 set the proper asan variable 2014-10-22 23:17:24 +00:00
christos
c589879b35 Add build glue 2014-10-22 21:22:06 +00:00
christos
877f27642f add libasan to the build 2014-10-22 21:21:02 +00:00
christos
f4169a524f more portability fixes. 2014-10-22 21:19:59 +00:00
christos
152b237a9f add undef first 2014-10-22 20:50:20 +00:00
christos
38f6727a61 Do the mcontext stuff differently so that we don't fail compilation. 2014-10-22 16:53:16 +00:00
christos
df8aa0850e NetBSD supports -lasan 2014-10-22 16:52:47 +00:00
christos
ff64bca229 Add libraries the statically linked address sanitizer library needs. 2014-10-22 16:52:23 +00:00
christos
0b7d23047d No need to -I execinfo now that unwind.h is installed. 2014-10-22 16:31:57 +00:00
christos
496a0216ed reduce diffs with upstream. 2014-10-22 16:29:47 +00:00
christos
8bb734fd0d Go back to use the linux version which can be used for our stuff too now. 2014-10-22 03:07:11 +00:00
christos
9017a279de install a shared library version, now that we know how to do it. 2014-10-22 00:16:29 +00:00
christos
9d5ff525cf the interceptors don't know about __RENAME() so add a kludge. 2014-10-22 00:15:16 +00:00
christos
d37ef571ab remove default debugging code. 2014-10-22 00:14:52 +00:00
mrg
f8d24b5299 regen for netbsd version fix. (actually, this seems to not
actually be necessary, it only fixes local comments to be
correct..)
2014-10-20 23:49:14 +00:00
christos
0cfc64bcab add some missing sources. 2014-10-17 21:48:17 +00:00
christos
e92bf7695e more fixes: builds and runs now, but coredumps after stackgap mprotect (mmap) 2014-10-17 21:44:47 +00:00
christos
aa4e64f22b NB this does not work yet, it is a work in progress. 2014-10-15 19:20:29 +00:00
christos
abf6d4b3bf make this compile, pretending a lot that we are linux. 2014-10-15 18:44:49 +00:00
mrg
6ec53c318c regen mknative for gcc 4.8-2014-10-09. 2014-10-12 19:55:21 +00:00
mrg
5a5404318c more regen for complex etc, fixes. 2014-10-12 08:17:35 +00:00
mrg
2f7e65f195 merge GCC 4.8 2014-10-09, part 1. 2014-10-12 07:11:58 +00:00
mrg
cd5ea10d63 initial import of GCC 4.8 snapshot 2014-10-09. this fixes at
least the below GCC PRs, among many other changes.

it also makes sh3 reasonably useful again.

	c++/60731
	c/61271
	c/61271
	c/61271
	debug/55794
	debug/60655
	debug/61923
	debug/63284
	debug/63342
	inline-asm/63282
	ipa/61986
	ipa/62015
	libobjc/61920
	libobjc/61920
	libstdc++/58962
	libstdc++/60734
	libstdc++/60966
	libstdc++/61946
	libstdc++/63449
	middle-end/61010
	middle-end/61045
	middle-end/62103
	rtl-optimization/57003
	rtl-optimization/60866
	rtl-optimization/60901
	rtl-optimization/61801
	rtl-optimization/62004
	rtl-optimization/62030
	target/49423
	target/52941
	target/61044
	target/61202
	target/61208
	target/61231
	target/61239
	target/61249
	target/61300
	target/61423
	target/61431
	target/61443
	target/61483
	target/61542
	target/61545
	target/61570
	target/61586
	target/61996
	target/62195
	target/62218
	target/63428
	tree-optimization/60196
	tree-optimization/61375
	tree-optimization/61383
	tree-optimization/61452
	tree-optimization/61684
	tree-optimization/61964
	tree-optimization/62073
	tree-optimization/62075
	tree-optimization/63189
	tree-optimization/63341
	tree-optimization/63375
2014-10-12 06:58:16 +00:00
mrg
d00e30dba8 more regen for complex and more. only sun2 and ia64 missing now. 2014-10-11 21:28:43 +00:00
mrg
d0e58b2d00 this doesn't need <execinfo.h>, which doesn't exist on older hosts. 2014-10-11 20:50:59 +00:00
mrg
db518126d4 more regen for complex and more. 2014-10-11 19:55:59 +00:00
mrg
251814c8d8 more regen after complex and other fixes. 2014-10-11 09:15:04 +00:00
mrg
958e616745 bump libstdc++ minor due to new complex etc functions enabled. 2014-10-10 10:10:40 +00:00
mrg
d1eae5409b regen gcc mknative files for new complex and more. 2014-10-10 10:05:34 +00:00
apb
db3976795f Add space before "]" in "if [ ... ]" to fix usage error
and test for existence of the correct file.
2014-10-03 12:41:41 +00:00
joerg
652ca0d126 When building with clang, use the C++11 feature for explicit template
specialisation.
2014-10-01 22:44:03 +00:00
joerg
fa6ce9bf24 Explicitly request using the libstdc++ header path for clang, C++11 for
everything and disable the unsupported ABI tagging.
2014-10-01 22:27:33 +00:00
joerg
e706f69c23 Building random.cc with clang requires -mrdrnd on x86. 2014-10-01 22:26:05 +00:00
joerg
840b578a49 Attribute target is not supported by clang, so don't use it.
Explicitly mark this function as non-inline to not defeat the feature
tests.
2014-10-01 22:18:19 +00:00
matt
9113203c75 Really back the RISC-V changes to these files. 2014-09-24 01:16:04 +00:00
matt
180b02fefb Back-out recent inadverdent changes. 2014-09-23 20:35:11 +00:00
matt
f23c31b5a7 When disassembling an auipc/jalr pair, print the address eventually being
called:
	auipc   t0,0x2b3
	jalr    t0,-616 # ffffffff802b2e98 <memset>
2014-09-20 04:53:19 +00:00
matt
1d163c8d1a RISC-V configury 2014-09-19 17:23:23 +00:00
matt
2db0c478e6 RISC-V (riscv32 & riscv64) binutils configury stuff. 2014-09-19 17:22:21 +00:00
matt
41b40da6f6 Add RISC-V support. 2014-09-19 17:19:52 +00:00
matt
2d5fc5945d Simplify or1k config.gcc configury bits. use gcc_cv_initfini_array=yes
to enable initfini.  remove hacked initfini support and use the common gcc
implementation.  Rerun native-gcc.
2014-09-19 00:24:28 +00:00
joerg
a1f9624941 Apply r1.2 from our GCC 4.8 version of the same file:
Kill the "throw()" on a forward declaration for posix_memalign (it does
not match our base declaration and may cause warnings).
2014-09-15 16:29:18 +00:00
matt
2137a61433 OR1K configury support for NetBSD 2014-09-03 19:10:36 +00:00
matt
230b95665b OR1K configury for NetBSD 2014-09-03 19:05:12 +00:00
matt
711e42594e Merge OR1K support from OR1K GCC 4.9 git tree and extend it to support NetBSD. 2014-09-03 19:02:53 +00:00
matt
a45653d102 Merge in OR1K support from top of binutils-gdb GIT repository. This replaces
the existing support and most imporantly adds support for shared libraries.
2014-09-03 19:01:15 +00:00
jmcneill
8c205f85ed cygwin64 support 2014-08-30 22:05:30 +00:00
christos
addbc7f884 Cleanup the confusion with getting the pid of a sparc debugged process.
If the comments were correct, then this should be factored out to the
OS-specific native code, and the general code should remain sane.
2014-08-30 07:55:44 +00:00
matt
7c92a4b3cd Allow STT_GNU_IFUNC to be dynamic symbols 2014-08-26 17:03:51 +00:00
matt
d885ef237f Allow STT_GNU_IFUNC to be a dynamic symbol. 2014-08-26 16:39:49 +00:00
matt
15c3780af4 Make sure we default to ELFv1. 2014-08-26 15:53:04 +00:00
joerg
2d09463d91 Allow creation of indirection functions on all platforms, not just GNU
and FreeBSD.
2014-08-25 20:34:36 +00:00
christos
d09cee68fb use the same dynamic sources trick to make sure that the first dependency
is the c source file so that IMPSRC gets set correctly.
2014-08-25 16:27:25 +00:00
matt
dfb3f06a5c Make -mabi=elfv2 work for powerpc64 2014-08-23 06:50:18 +00:00
matt
7532f48a67 Fix powerpc64 support for NetBSD.
Add __PPC_ISEL__ to indicate cpu support the isel instruction
2014-08-23 02:17:47 +00:00
matt
9205e77af0 add powerpc64 support 2014-08-22 15:27:50 +00:00
matt
9e064c8f61 Check the variable for RELOCATABLE_NEEDS_FIXUP 2014-08-22 06:52:37 +00:00
matt
80f59eea37 Simplify a little (avoid indirection) 2014-08-22 06:51:34 +00:00
mrg
975cc27cdd rerun mknative for hppa, m68k, sparc*, and vax. 2014-08-22 05:39:20 +00:00
martin
3b1bddb922 Restore ABI for fast_{u,}int_*_t to what we have used for thirteen years. 2014-08-21 15:25:41 +00:00
christos
2e03efc64b PR/49087: Jarmo Jaakkola: Make sure that the first dependency is the C source
file so ${.IMPSRC} gets set correctly.
2014-08-21 08:52:23 +00:00
matt
9e2fe0aaa3 i386 doesn't use subint fast{8,16} 2014-08-20 20:15:55 +00:00