libera/#clasp - IRC Chatlog
Search
17:36:24
drmeister
Meanwhile - I can spot the register save area by looking for the 0000000002 or 000000003 - it stands out pretty well.
17:37:45
drmeister
So I'm trying to figure out what the bug is. It's something with logical pathnames screwing with me.
17:41:07
drmeister
frame #11: 0x00007ff04940b6b7 JIT(0xe505000)`COLLECT-SUB*DIRECTORIES^UIOP/FILESYSTEM^FN^^(closure=<unavailable>,
17:44:15
drmeister
I can recover and inspect the four arguments (direcotry collectp recursep collector)
17:51:23
drmeister
Which is a logical pathname - one deeper and I'm in Eclector but logical pathname stuff may turn that into "eclector" and that's my problem?
18:12:16
Bike
trying to rewrite the debug stuff results in presumably an llvm crash, illegal instruction 4. running it under lldb... works fine. debugging does suck
19:02:46
cracauer
What was that name of the meta package manager that somebody recommended here? Something that sits on top of Debian, Redhat etc.
19:45:34
drmeister
This lldb extension is very helpful. I recompiled my code with __attribute__((optnone)) for the two functions between which the problem seems to lie.
19:46:10
drmeister
It appears the "Eclector" is being changed to "eclector" and on linux directories are case sensitive. I don't know if this is the problem but it's all I got right now.
19:46:57
Bike
thas good. i hit another problem trying to teach llvm dwarf about the register save area. makes no sense but what else is new
19:49:27
drmeister
cl__truename is a C++ function and now with __attribute__((optnone)) I get all the lexical variables.
19:50:13
drmeister
Bike: That's reminds me - do we get more lexical variables and essentially __attribute__((optnone)) when we (declare (optimize (debug 3))) in Clasp?
19:52:03
Bike
https://github.com/clasp-developers/clasp/blob/main/src/lisp/kernel/cleavir/translate.lisp#L1324-L1327
19:53:56
Bike
but i can't just turn it back on because usually we don't have dbg attachments set up correctly
20:23:07
Bike
no, ahng on, this doesn't make sense, we do call dbg-set-current-source-pos in with-new-function's expansion
20:31:46
drmeister
I'm zeroing in on my downcase of "Eclector" to "eclector" - it's starting to look like a "how the hell did anything work ever" kind of problem.
20:47:56
drmeister
I've been here before. I'm mixing logical and physical pathnames and that is verboten - correct?
20:48:18
drmeister
I should take a logical pathname -> physical pathname before I combine it with any other physical pathname.
20:49:00
drmeister
Because the CLHS says logical pathnames are case insensitive or conversion to physical pathnames makes them downcase - something like that?
20:49:35
drmeister
I've only recently stopped seeing the CLHS when I close my eyes - I forget where it talks about this.
20:51:05
drmeister
What do you think should happen when I convert #P"SYS:KERNEL;CONTRIB;Eclector;" to a physical pathname?
20:53:10
Colleen
Clhs: section 19.3.1.1.7 http://www.lispworks.com/documentation/HyperSpec/Body/19_caag.htm
20:57:28
drmeister
(translate-logical-pathname "SYS:KERNEL;CONTRIB;Eclector;") -> #P"/home/meister/Development/clasp-main/src/lisp/kernel/contrib/eclector/"
20:59:04
drmeister
I see that as a problem. I've always solved it in the past by doing essentially: (merge-pathnames #P"Eclector/" (translate-logical-pathname "SYS:KERNEL;CONTRIB;"))
21:00:29
drmeister
To paraphrase: "Logical and physical pathnames are natural enemies! Like Englishmen and Scots! Or Welshmen and Scots! Or Japanese and Scots! Or Scots and other Scots! Damn Scots! They ruined Scotland!"
23:30:38
drmeister
Bike: If you can get the register save area to be available as debug info - I bet I could get arguments into the lldb backtraces.
23:39:08
Bike
i did kind of a hack in that commit i reverted to make it work, which is probably why it didn't work
23:53:39
drmeister
I got the buildbot building again. I'm trying to get a docker image built with the sequence analysis built into it. I have to do it over and over and over again.