freenode/#clasp - IRC Chatlog
Search
12:51:31
scymtym
::notify charles323 that is/will be possible with https://github.com/scymtym/language.c
15:42:43
Bike
well, the only place swank actually uses locks directly outside of implementation code is gray streams
16:18:36
Bike
drmeister: so i can get lisp frames in lldb, right? i don't think i'm getting any right now?
17:26:59
Bike
and i think i have... a little insight into the recursive lock thing? i don't really get it though, it has call-with-lock-held calling call-with-lock-held, which is not reflected in the source
18:02:18
drmeister
No - calling clasp functions from lldb is screwed up - it's a constant source of frustration.
18:13:52
drmeister
clasp/src/profiler/symbolicate.lisp is an sbcl script that you can run a backtrace from 'bt' through and provide the /tmp/perf-<pid>.map file and it SHOULD generate symbol names.
18:14:56
drmeister
It worked when we used dynamic libraries. Object files and faso-files don't work with the operating system backtrace_strings(...) facility.
18:16:06
drmeister
Getting access to function arguments is trickier. They are spilled into the stack frame - we have to find them using stackmap information that we need to write out to /tmp/perf-<pid>.map and then use the new Python object introspection tool I developed to get arguments.
18:16:29
drmeister
Once we get all this working we will have a way to generate backtraces from lldb that are absolutely independent of clasp code working.
18:16:49
drmeister
I have a plan - I just need time to implement it or to show you how to implement it.
18:22:51
Bike
putting the lambda lists in for anonymous functions works but it keeps stuff like default values for &optional that we don't really care about
18:36:31
drmeister
But I won't get very far because I need the value slot - and the thread-local symbol value stuff. Ugh.