freenode/#clasp - IRC Chatlog
Search
16:37:52
drmeister
In the BacktraceFrame I added the source line info - we could add that to the backtrace so we know what line and source file each frame represents.
16:53:32
drmeister
Ok - it looks like it's going to take a bit more finesse to get the function-type than my ham first -fisted attempt. I'll leave it to you - ok? If you need anything just ping me.
17:22:01
drmeister
Bike: I'm banging at the cclasp compilation and maybe you already see the problem but with the new entry points the closure passed to closure-call-or-invoke is a #<LOAD-INST...> that we pass to cmp:irc-calculate-entry closure argument) and that returns another #<LOAD-INST...> that has the function-type buried within it.
17:24:42
drmeister
In the future, when we have multiple entry points - this will change depending on the number of arguments - and we have the arguments - so we are future proof.
17:50:02
drmeister
Bike: Another thing I did was I converted all of the structure types that we define in cmpintrinsics.lsp to use define-c++-struct.
17:50:45
drmeister
I'm pretty sure I did everything correctly - but there were downstream changes that needed to be made.
17:51:54
drmeister
The definitions of +rack.stamp-index+ and so on were used downstream to index into the struct.
17:52:35
drmeister
With define-c++-struct the fields are accessed using their field names like :stamp
17:53:04
drmeister
I kept the index definitions but changed them like: (defconstant +rack.stamp-index+ (c++-field-index :stamp info.%rack%))
17:53:46
drmeister
If I made a mistake somewhere, shame on me. cclasp will be more sensitive to problems here because it generates inline accessors.
17:54:15
drmeister
I think those are the major changes from the master branch that I started with a couple of months ago.
18:46:59
drmeister
Yeah - that gets you farther. Now I'm crashing in row-major-aref in compile-file-parallel.lsp
18:47:22
drmeister
I'm working on a proposal - reading about the immune system and immune checkpoints - so I'll pass this to you.
18:49:43
drmeister
The diversity of the T cell receptors is 25 million. We just made about 800,000 - off by a factor of 30.
19:14:12
drmeister
The only thing I did with arrays/vectors was the define-c++-struct thing and I temporarily added a boehm work-done word to object headers. I took out the work-done word.
19:37:58
Bike
in this case it seems like the problem is %intrinsic-call is getting a function name that's not in the primitives list
19:39:07
Bike
ah. it's llvm.frameaddress.p0i8 instead of llvm.frameaddress now? is that an llvm 12 thing? whatever
19:58:51
drmeister
We had this problem with one of the intrinsics before and it seemed pretty arbitrary.
19:59:38
Colleen
frgo: drmeister said at 2021.01.28 17:08:40: Can you check that your boehmgc is installed using homebrew? That's what we use.
20:00:04
Bike
i also put something in so that if another intrinsic is changed i'll get a sensible error.
20:01:32
frgo
boehmgc is via homebrew. Compiled ok. Loading quicklisp via (load "quicklisp/setup.lisp") resulted in segmentation violation. Debugger backtrace says it's in a call to (OPEN #P"/Users/frgo/.cache/common-lisp/clasp-cclasp-boehm-0.4.2-3637-g057b30ba7-cst-macosx-x64/opt/quicklisp/quicklisp/package-tmpPS5HLO8R.fasp" :DIRECTION :IO :ELEMENT-TYPE :DEFAULT :EXTERNAL-FORMAT :UTF-8 :IF-EXISTS NIL :IF-DOES-NOT-EXIST :CREATE)
20:04:17
frgo
But that's not important. I am trying to figure this out myself. You are busy with proposal and stuff.
20:06:33
drmeister
Ok - thanks. What I can tell you is I installed BigSur, upgraded Xcode, cloned clasp 'master' and built it and then loaded quicklisp and it built fine.
20:06:59
drmeister
I can give the laptop to Martin and he could help match up library versions if it's something like that.
20:08:26
frgo
Oh - so once again a busy weekend... Yeah, me too. I actually miss writing proposal now that I no more in consulting but on the client side.
20:11:45
drmeister
Yes - the code-model message is meant to remind me to remove the code-model message.
20:12:38
Bike
it also only took fifteen minutes to build instead of twenty. dunno what's going on there
20:12:51
drmeister
We have up to date llvm-12 support. Now all we need is for llvm-12 to support us (linux/JITLink).
20:13:30
drmeister
The large code model slows down exception handling a lot. That might be part of it.
20:17:12
drmeister
The alternative was to go back to object files/dynamic libraries - but I wanted to really make sure that faso files worked in production.
21:26:15
Bike
drmeister: do you have any idea how we'd end up with characters with negative character codes? maybe we're misinterpreting words somewhere?
21:27:51
Bike
yeah. i mean, the problem is that DISASSEMBLE crashes slime because the string has these impossible characters in it
21:27:52
drmeister
There is a single function that generates character immediates as well as other immediates