Commit Graph

75 Commits

Author SHA1 Message Date
Wolfgang Thaller
a135f0b196 libretro: use separate library file names for Carbon and Classic PPC 2018-05-16 02:08:25 +02:00
Wolfgang Thaller
b09ecaf30b fix macsbug symbols again - why didn't I know about .pushsection from the beginning? 2018-05-14 21:36:17 +02:00
Wolfgang Thaller
1ae9256e9c Fix compilation for PowerPC - see #57 2018-05-14 00:01:59 +02:00
Wolfgang Thaller
9d304134f2 Fix interaction between pascal and pragma parameter (pascal should be ignored) 2018-05-07 22:41:29 +02:00
Wolfgang Thaller
bb894a87c5 make --mac-strip-macsbug (mostly) work again, see #32 2018-05-01 19:42:14 +02:00
Wolfgang Thaller
d7976cae6b add __PPC__ to list of predefined symbols for powerpc-macos 2017-12-04 22:11:33 +01:00
Anthony Super
1c1604fbcc Windows/Cygwin fixes and documentation 2017-10-18 08:28:14 +11:00
Wolfgang Thaller
c47772e62f make functions return pointers in D0 on 68K. See issue #35. *RECOMPILE STRONGLY RECOMMENDED*
This is compatible with MPW and incompatible with Codewarrior.
2017-10-15 14:24:25 +02:00
Wolfgang Thaller
bc200ad489 For *-apple-macos-gcc, -Wno-trigraphs is now the default.
('????' is a common four character code on Classic MacOS, we don't want warnings)
2017-10-08 20:55:04 +02:00
Wolfgang Thaller
e8063b8cf6 C library/system calls: clean up, implement open, read, write, close, lseek; clean up the command line gcc passes to ld 2017-10-08 19:28:10 +02:00
Wolfgang Thaller
b30c823f2b gcc m68k: put macsbug symbols in the same section as the function again, because gcc7 sometimes puts two functions in one section. --mac-strip-macsbug has no effect for now. 2017-10-07 16:07:53 +02:00
Wolfgang Thaller
46c502e5da fix merge problem: struct field alignment in powerpc-macos gcc 2017-10-07 16:04:54 +02: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
33a2744643 Take responsibility: don't use standard crtbegin/end anymore, now that we control the linker script 2017-09-24 20:04:11 +02:00
Wolfgang Thaller
a6bc7b5de6 elf2flt is no longer the right name 2017-09-24 14:10:37 +02:00
Wolfgang Thaller
4d0f9e202c m68k: uppercase pascal functions for linking 2017-04-25 02:14:56 +02:00
Wolfgang Thaller
301994c27d restore -carbon option, lost during merge 2017-04-15 10:09:07 +02:00
Wolfgang Thaller
431390d872 brutally use absolute addresses in exception handling tables and stick them in .data (for now) 2017-04-12 11:55:14 +02:00
Wolfgang Thaller
17d92f98a3 work around a mysterious compiler crash 2017-04-12 11:54:30 +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
26c2330aae patch gcc to compile with gcc 6.2 (long since fixed in the official gcc) 2017-04-11 18:55:40 +02:00
Wolfgang Thaller
21ec187812 68K: get -mpcrel to work (for tiny programs) 2017-04-11 18:55:39 +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
79d23218a9 Clean up Carbon build 2015-10-07 00:03:28 +02:00
Wolfgang Thaller
8bd1a20557 ppc: yes, we need GCC's COLLECT_EXPORT_LIST hack. Constructors/Destructors and exceptions now work. 2015-09-16 00:38:12 +02:00
Wolfgang Thaller
05d5067e33 Implement a -carbon option for gcc: link with CarbonLib instead of InterfaceLib 2015-09-13 00:42:48 +02:00
Wolfgang Thaller
3ae6b24cca setup libs for powerpc 2015-09-08 18:04:15 +02:00
Wolfgang Thaller
899546720e ppc: link to libretrocrt by default 2015-09-01 00:05:31 +02:00
Wolfgang Thaller
8ffcbfe2d4 ppc: make ptrdiff_t be long, for compatibility with 68K 2015-08-31 16:43:08 +02:00
Wolfgang Thaller
1434a0dbae ppc: add to build script 2015-08-31 01:17:52 +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
90e056166b Finally make ASFilter unnecessary. 2015-08-29 03:33:14 +02:00
Wolfgang Thaller
1f0c52573c fix "= { 0x1234 }" syntax to no longer interfere with C++11 "= default" syntax 2015-08-29 02:21:04 +02:00
Wolfgang Thaller
715265c205 Fix some merge problems 2015-08-29 02:06:29 +02:00
Wolfgang Thaller
aebd1e06ff Merge branch 'upstream'
Conflicts:
	gcc/gcc/calls.c
	gcc/gcc/config/m68k/m68k-protos.h
	gcc/gcc/config/m68k/m68k.c
2015-08-28 17:48:55 +02:00
Wolfgang Thaller
41040e16f5 Update gcc to 5.2.0 2015-08-28 17:33:40 +02:00
Wolfgang Thaller
ee736a689c Support "pascal void foo() = { 0x1234 };" syntax in gcc. 2015-08-27 21:53:51 +02:00
Wolfgang Thaller
e004916be5 Make pascal strings work in initializers 2014-11-08 00:32:00 +01:00
Wolfgang Thaller
3f2a63ff40 configure gcc to pass the right linker flags & simplify CMakeLists
It is no longer necessary to pass special compiler options in order to compile an application.
2014-09-30 16:25:27 +02:00
Wolfgang Thaller
073047e119 fix pascal functions returning void 2014-09-28 02:31:31 +02:00
Wolfgang Thaller
cd842777c9 Some fixes to make it work again on Mac OS X 2014-09-25 22:50:22 +02:00
Wolfgang Thaller
5648c5be94 consider instructions of the form move.x (%ax)+, -(%ax) as no-op instructions.
They really don't do anything, and they confuse the rest of the
compiler when they are generated as a result of passing the result of one
pascal function to another function.
2014-09-25 18:56:56 +02:00
Wolfgang Thaller
025ebb6397 remove one more assert from expr.c:fixup_args_size_notes which got tripped by earlier hacks. 2014-09-25 11:21:13 +02:00
Wolfgang Thaller
aa1c71d17e move pragma code to a separate file 2014-09-25 02:47:19 +02:00
Wolfgang Thaller
05f4c57615 support #pragma parameter 2014-09-25 01:45:15 +02:00
Wolfgang Thaller
07451171d1 make sure that output_call is actually called 2014-09-24 22:39:18 +02:00
Wolfgang Thaller
03501ca622 silence some debug output 2014-09-24 22:38:31 +02:00