On Thu, Apr 26, 2001 at 12:26:13PM +0200, Martin Atzmueller wrote:
> I propose a change to *COMPILER-TRACE-OUTPUT*
> Since the :TRACE-FILE argument to COMPILE-FILE has been removed, IMHO
> it would be very handy for the user/developer to still have access to
> that information, i.e. for diagnostic output.
> So, I'd like to have *COMPILER-TRACE-OUTPUT* available, not
> only if SB-SHOW is in *FEATURES*.
> The attached patch, enables this. *COMPILER-TRACE-OUTPUT* is now
> exported from package SB-EXT.
> Besides that, the patch should fix some not yet rewritten stuff,
> especially in compiler/target-disassem (and I hope I got that right!),
> which I stumbled upon.
> [There is also a cosmetic change to the output of the time-macro,
> e.g. output is now prefixed by "; ", too.]
Thank you for the patch. As I said in an earlier message, I preferred
to restore the :TRACE-FILE keyword argument for COMPILE-FILE rather
than adding another special variable to the interface. Otherwise, I
basically followed your patch.
I didn't notice any problems with your "CMU CL used SAP but SBCL uses
VECTOR" changes. Thanks for taking care of that. I hadn't realized how
much would be required to get the compiler trace to work again, and I
remember those kinds of changes as being pretty tedious back when I
was doing conversions like that in order to make the assembler and
genesis work at cross-compilation time.
For basically stupid reasons, I ended up merging your patch by hand
(instead merging it automatically with /usr/bin/patch). I hope I
didn't introduce any bugs that way.
> So, a trace-file can now be generated by a simple:
> (with-open-file ( *compiler-trace-output* "zut1-trace"
> :direction :output
> :if-does-not-exist :create)
With the interface I put in, one uses the CMU-CL-style
(compile-file "/tmp/foo.lisp" :trace-file t)
instead. I tried it, and it looked OK. I've never used trace files
myself, so I didn't really know what to look for, but superficial
inspection and superficial comparison with a cmucl-18c trace file both
The result is in sbcl-0.6.12.11. Any feedback, especially from anyone
who has more experience with CMU CL trace files than I do, would be
William Harold Newman <william.newman@...>
"As a simple example, a method named isValid(x) should as a
side effect convert x to binary and store the result in a
database." -- http://mindprod.com/unmain.html
PGP key fingerprint 85 CE 1C BA 79 8D 51 8C B9 25 FB EE E0 C3 E5 7C