[gambit-list] Could use hackers to try gambit with development version of gcc

Bradley Lucier lucier at math.purdue.edu
Wed Oct 31 21:41:40 EDT 2007


Over the years I've spent some time building gambit with development  
versions of gcc; the gcc developers have been quite helpful in fixing  
bugs and removing inefficiencies uncovered by this testing before the  
official releases of gcc.  There is some interest in using  
automatically-generated C code, like the code that gsc produces, as  
"extreme" test cases for gcc's internal algorithms.

Because of the timing of future linux releases, gcc-4.3.0, the next  
major release of gcc, will likely go into fedora, Open Suse, and a  
few other linux releases.  I've started using it to compile gambit  
just to see what happens.  For example, I found one important loop  
that was compiled to significantly slower code by development 4.3.0  
than by the released 4.2.2 on x64-64, and I think that this will  
likely be fixed before release.  Problems that arise in the  
development version of gcc that used to work in previous versions are  
quite likely to be fixed before release.

I just tried development gcc-4.3.0 on powerpc-apple-darwin8.10.0  
(i.e, MacOS X 10.4.10 on powerpc) in 64-bit code and I got a segfault  
in the garbage collector when trying to calculate (expt 3 10000000).   
(I just tried it in 32-bit code and got segfault in a different place  
in the garbage collector.)

Perhaps I'm just feeling older and more tired than usual, but I sure  
would feel better if some other people downloaded the svn sources of  
gcc, built it, and tried building and testing gambit with it.  (I  
looked at that GC segfault and the wind just went out of me.)

Instructions for downloading the svn development version of gcc are at

http://gcc.gnu.org/svn.html

under "Using the SVN repository".  You'll need to install a  
relatively recent version of gmp and mpfr.  I build and configure gcc  
for the purposes of gcc testing with

../../mainline/configure --prefix=/pkgs/gcc-mainline --enable- 
languages=c --enable-checking=release --with-gmp=/pkgs/gmp-4.2.2 -- 
with-mpfr=/pkgs/gmp-4.2.2

and then

make bootstrap

It's not entirely trivial, but it may be of interest to some people  
who are into this kind of thing.

Brad



More information about the Gambit-list mailing list