Waldek Hebisch wrote:
Adriaan van Os wrote:
The results of the testsuite of gpc-20050331 with gcc-3.3.6 on i686-apple-darwin
The results look bad. However, it looks that Darwin uses -fPIC by default. On i386-linux with gcc-3.3.6 using -fPIC I also get multiple failures. With gcc-3.4.4 using -fPIC only one of those failure remain (asmtest.pas) and it is really problem with test program. So, maybe you should test with gcc-3.4.[34].
I started with gcc-3.4.3, but there are multiple bootstrap problems with gcc-3.4.x on i686-apple-darwin (gcc-4.0 and gcc-3.3.x do bootstrap).
On Linux this is due to binutils (assembler) bug, see:
(I tested with Debian binutils 2.12.90.0.1). According to GCC doc binutils 2.13.1 fixed the problem. I am not sure why gcc-3.4.4 do not have the same problem.
Thanks for the suggestions. I will build more recent cctools and try again.
There may be more than one problem (although possibly there is a common cause).
- (output is long list with real numbers)
emil9.pas
- Assembler fails with "Symbol Lx$pb already defined"
fjf219x.pas goto4.pas knuth3.pas math.pas mir047h.pas nonloc2goto.pas nonloc3goto.pas nonlocgoto.pas waldek8.pas
- Segfault
nlgpp2.pas fproc.pas
- Illegal instruction
goto5.pas fjf558x.pas
You were quite right about -fPIC. All the failures, except emil9.pas disappear with -fno-pic. However, many of the other tests fail with -fno-pic, because the option disables dynamic linking on Mac OS X. The PPC back-end has a workaround (-mdynamic-no-pic) but that doesn't seem to work for i686-apple-darwin.
Updating the linker and assembler to odcctools-20050327 had no effect on testsuite results.
So, I must either - find a backport of i686-apple-darwin PIC fixes - find a solution for gcc-3.4 bootstrap problems - wait for gcc-4.0 support.
Still, I am glad with the results so far.
Regards,
Adriaan van Os