Commit Graph

22 Commits

Author SHA1 Message Date
Wolfgang Thaller
2999ed8613 change the way gcc's collect2 works to fix #74
GCC's AIX port, which RetroPPC is based on, uses a different method
from most other platforms to collect the list of all global constructors
and the list of all exception handling tables.
The "standard" method does not work on AIX because IBM's linker will
discard those symbols too early for GCC's liking if they are not
directly referenced.

Unfortunately, the workaround seems to keep too much, so PPC C++
exececutables were at least 1.1MB big.

We don't need to be compatible with IBM's linker. Instead, hack binutils
to keep the symbols that we need kept, and allow GCC to use the
"standard" method for the collect2 pass.

PowerPC application sizes are now down to a reasonable size.
2019-01-13 22:33:07 +01:00
Wolfgang Thaller
ee5a3b13ca binutils: display file auxentries 2019-01-09 20:12:26 +01:00
Wolfgang Thaller
bade105326 fix permissions when extracting from powerpc library archives - upstream bug at https://sourceware.org/bugzilla/show_bug.cgi?id=24061 2019-01-04 01:37:18 +01:00
Wolfgang Thaller
12485f7276 Prevent stack overrun in binutils (issue #69) 2019-01-02 20:50:24 +01:00
Wolfgang Thaller
3f05837f3f Merge branch 'upstream' into gcc-8.2
# Conflicts:
#	binutils/bfd/config.bfd
#	binutils/gas/configure.tgt
#	binutils/intl/ChangeLog
#	binutils/intl/aclocal.m4
#	binutils/intl/config.h.in
#	binutils/intl/configure
#	binutils/intl/configure.ac
#	binutils/ld/configure.tgt
#	gcc/gcc/c/c-decl.c
#	gcc/gcc/c/c-parser.c
#	gcc/gcc/calls.c
#	gcc/gcc/combine.c
#	gcc/gcc/config/m68k/m68k-protos.h
#	gcc/gcc/config/m68k/m68k.c
#	gcc/gcc/config/rs6000/rs6000.opt
#	gcc/gcc/cp/parser.c
#	gcc/gcc/expr.c
#	gcc/intl/ChangeLog
#	gcc/intl/configure
#	gcc/intl/configure.ac
#	gcc/newlib/configure.host
2018-12-28 17:02:51 +01:00
Wolfgang Thaller
1cc92c1e99 update to binutils 2.31.1 2018-12-28 16:25:28 +01:00
Wolfgang Thaller
19ab4d99ae Merge branch 'upstream' into gcc-7.2
# Conflicts:
#	binutils/bfd/config.bfd
#	binutils/ld/configure.tgt
#	gcc/gcc/c-family/c-common.c
#	gcc/gcc/c/c-parser.c
#	gcc/gcc/calls.c
#	gcc/gcc/config/m68k/m68k.c
#	gcc/gcc/config/rs6000/rs6000.c
#	gcc/gcc/config/rs6000/rs6000.opt
#	hfsutils/COPYING
#	hfsutils/install-sh
2017-10-07 02:46:50 +02:00
Wolfgang Thaller
65c83606fb Update gcc to 7.2.0, binutils to 2.29, newlib to 2.5.0 2017-10-07 02:16:47 +02:00
Wolfgang Thaller
70be98cb62 put macsbug name in separate section so it can be stripped out - and hack ld so that it won't be stripped out by -gc-sections 2017-09-29 22:02:21 +02:00
Wolfgang Thaller
71f78cceb8 Merge branch 'upstream' into gcc-6.3
# Conflicts:
#	binutils/bfd/coff-rs6000.c
#	gcc/gcc/calls.c
#	gcc/gcc/config/m68k/m68k.c
#	gcc/gcc/config/rs6000/rs6000.opt
#	gcc/gcc/cp/cfns.gperf
#	gcc/gcc/cp/cfns.h
#	gcc/gcc/cp/parser.c
2017-04-11 23:25:51 +02:00
Wolfgang Thaller
0a883ac4aa upgrade gcc to 6.3.0, binutils to 2.28 2017-04-10 13:32:00 +02:00
Wolfgang Thaller
06b8cf62eb binutils: don't lose entry point when linking with -bnogc 2015-09-08 10:13:10 +02:00
Wolfgang Thaller
9f7a6ac3a9 binutils: try to make ppc XCOFF weak symbols behave more like ELF 2015-09-08 10:12:37 +02:00
Wolfgang Thaller
65ffde8261 binutils: enable AIX_WEAK_SUPPORT for powerpc-*-macos 2015-09-08 10:11:52 +02:00
Wolfgang Thaller
04621f8a01 work around a crash in powerpc-apple-ld 2015-09-01 00:06:10 +02:00
Wolfgang Thaller
6513c4a117 Revert "hacks to prevent ld crashes"
This reverts commit c58b44596a.
2015-08-31 16:45:25 +02:00
Wolfgang Thaller
c58b44596a hacks to prevent ld crashes 2015-08-31 16:45:02 +02:00
Wolfgang Thaller
fa0afdce72 ppc: initial powerpc-apple-macos target 2015-08-30 10:46:39 +02:00
Wolfgang Thaller
b3dcb7f981 Time to stop lying: binutils/gcc now configured as m68k-apple-macos instead of m68k-unknown-elf 2015-08-29 19:51:21 +02:00
Wolfgang Thaller
da4dfe30c9 Update binutils to 2.25.1 2015-08-28 17:32:19 +02:00
Wolfgang Thaller
2ce044c327 Update binutils to version 2.24 to work around a build problem 2015-08-28 17:31:26 +02:00
Wolfgang Thaller
5d96d8025a add binutils-2.20.1 2012-03-26 21:18:29 +02:00