Sam Steingold wrote:
> Raymond Toy wrote:
>> That was quick. stream.o was ok. But io.o causes an error:
>> ;; Loading file
>> /apps/public/src/lisp/clisp-2.47/build-sol10-gcc-3.3.3/compiler.fas ...
>> *** - READ from #<INPUT BUFFERED FILE-STREAM CHARACTER
>> @4>: illegal syntax of closure code vector after #77Y
>> make: *** [halfcompiled.mem] Error 1
>> I was expecting a segfault, but maybe this is a good starting point.
>> What do you want me to do now?
> first, make sure compiler.fas is really OK :-)
How do I do that?
> second, do "make io.s" in the gcc3 and gcc4 directories and compare the
> the files will be huge, but the diffs might not be all that humongous.
> if they are, I am afraid the sequence is:
$ wc io.s ../build-sol10-gcc-3.3.3/io.s
154749 315555 2390170 io.s
53485 116942 1425733 ../build-sol10-gcc-3.3.3/io.s
I'm sorry, but I think this is where I draw the line: the plain diff -u
has 201788 lines.
I can provide the files to anyone who wants to look, though. If he
provides an updated io.s, I'm willing to run it. Or I can give access
to a Solaris 8 box for anyone who wants to play with this (but it will
take some time to get gcc 3 and gcc 4 on it.)
> 1. take the working io.s generated by gcc3.
> 2. replace a function there from the io.s generated by gcc4.
> 3. compile io.s into io.o and link lisp.run
> 4. try make.
> 5. if it works, repeat 1.
> if it does not - you now have the function which is miscompiled.
> this can be optimized by using a binary search.
> Bruno, please step in!