freenode/#clasp - IRC Chatlog
Search
19:31:42
drmeister
I've been adding a bulletproof lisp backtrace function - it would help me here if it really were bulletproof.
20:07:26
frgo
I've been adding a #1="bulletproof" lisp backtrace function - it would help me here if it really were #1#. Reader Error.
20:27:26
Bike
the only change i made to the fastgf code which actually runs is eliminating an unused "cur-arg" argument in generate-outcome and below
20:28:50
Bike
https://github.com/clasp-developers/clasp/commit/2d6a567eaa9da3b4d49b316b97ddaf748c8a4be1 just scroll down to codegen-slot-reader
20:29:22
drmeister
Ok - what about moving the fastgf.cc functions around - could that have done this?
21:03:32
drmeister
kpoeck_: I'm using this as an opportunity to debug my dbg_safe_backtrace code. Bear with me for a bit while I sort this out.
21:04:39
drmeister
I'm writing a backtrace generator that displays all function names and arguments but that doesn't use the lisp printer at all because it is very often compromised when I'm in a error state like this.
21:10:33
drmeister
It knows how to introspect into objects like symbols and strings without invoking any lisp code.
21:28:33
Shinmera
kpoeck_: Were there any other changes you had to make to projects other than Definitions?
21:39:41
Shinmera
If CST is suddenly returning structs where it shouldn't, then Clasp is handling the library wrong
21:44:50
Shinmera
It must be overriding or adding a method without specialising an anything implementation defined
21:47:18
Shinmera
If we had package locks and placed one on the eclector packages we could easily catch what it does wrong
21:47:39
Bike
https://github.com/clasp-developers/clasp/blob/master/src/lisp/kernel/cleavir/translate.lisp#L669-L672
4:11:07
beach
drmeister: It looks to me like SBCL uses the ordinary printer for printing backtraces, but then it handles any error and displays "error printing frame" instead.
5:11:58
drmeister
::notify Bike - I pulled cc_dispatch_miss and cc_dispatch_debug out of fastgf.cc and put them into link_intrinsics.cc. It builds again. Doing this drops the boehm-fastgf-cxx.ll file down to 654 lines but with them it is 12153 lines. This shouldn't cause a crash (dunno what's up there) but it's way too large to inline into every discriminating function. I was very careful to check boehm-fastgf-cxx.ll so make sure ...
5:13:42
drmeister
::notify Bike - ... it stayed as small as possible and didn't drag in a lot of other code, which is apparently what happens when we add cc_dispatch_miss and/or cc_dispatch_debug. These are slow path and debugging functions - and one or both cause a LOT of other code to get dragged in to boehm-fastgf-cxx.bc.
5:15:49
drmeister
beach: I can't seem to do anything that allocates memory via the GC when I'm debugging a crash. So I need a printer that doesn't cons at all.