Search
Monday, 10th of February 2020, 22:22:56 UTC
0:30:40
drmeister
So what's the poop - does the verifier work or not?
0:30:51
drmeister
It looks like.... soooorta?
0:38:10
Bike
the module verifier works
0:38:20
Bike
the function verifier rejects us immediately
0:38:23
Bike
dunno if that's our fault or not
0:38:55
drmeister
Doesn't one call the other?
0:41:05
drmeister
I'd expect the module verifier to call the function verifier - but probably not given what you see.
0:41:18
Bike
well it's us calling both
0:41:26
Bike
there's one place that calls verifyFunction and one that calls verifyModule
0:41:28
Bike
or something like that
0:41:57
drmeister
The function verifier might be reacting to a dangling pointer maybe?
0:43:10
drmeister
Wild speculation - maybe the instructions are connected together as a linked list and the first or last instruction isn't pointing to NULL.
0:43:22
drmeister
I'm trying to think of something we can't see but the verifier might check.
0:43:38
drmeister
!13 = <temporary!> sounds wacky.
0:43:55
drmeister
Are there !13 defined in the functions?
0:44:21
Bike
it didn't dump the function, i don't think
0:44:59
Bike
https://github.com/clasp-developers/clasp/blob/dev/src/lisp/kernel/cmp/jit-setup.lsp#L70-L71 mhm.
2:24:25
drmeister
Bike: Are you online?
2:24:42
drmeister
I hit a little problem with what I think is a change you made cleaning up some code.
2:24:52
drmeister
Removing a process can go into an infinite loop.
2:25:47
drmeister
https://github.com/clasp-developers/clasp/blob/dev-chris/src/core/lisp.cc#L759
2:26:05
Bike
oh, yeah, that ended up being a little weird
2:26:23
drmeister
That was a tricky one to rewrite.
2:26:31
drmeister
It's going into an infinite loop starting on line 770
2:26:51
drmeister
'next' never advances.
2:27:20
Bike
the next = cons_cdr(cur) should be at the head of the loop as well i think?
2:27:27
drmeister
is cons_car(x) and cons_cdr(x) non-reference taking versions of CONS_CAR(x) and CONS_CDR(x)?
2:28:00
Bike
you're actually the one who wrote them, i just used them because they're convenient and I like inline functions more than macros.
2:28:18
drmeister
Ok, then can you make sure they don't type check?
2:28:32
drmeister
I don't know if they do. I do know CONS_CAR and CONS_CDR don't
2:28:50
Bike
https://github.com/clasp-developers/clasp/blob/dev-chris/include/clasp/core/cons.h#L443-L448
2:28:56
drmeister
Aaaaand they don't.
2:29:16
Bike
well, they do have those assertions
2:29:20
drmeister
They should only be used in the context if (x.consp()) { cons_car(x); ... cons_cdr(x);}
2:29:30
drmeister
Assertions are fine - they can be turned off.
2:30:08
drmeister
So can you check this for me?
2:30:09
drmeister
https://www.irccloud.com/pastebin/hM8vf6qz/
2:30:31
drmeister
I think that will do the job.
2:31:35
Bike
so it's the same but with the next = cons_cdr(next) line added, right? I think that's right
2:33:29
drmeister
Whew - good - ok. It was hanging right at the end of building ASDF.
2:33:42
drmeister
I was starting to reconsider my life choices.
2:33:44
drmeister
https://usercontent.irccloud-cdn.com/file/Tk37mHnm/image.png
2:48:57
drmeister
I'm too old to get new jokes. So I'm going to get new people to subject them to them.
2:49:26
drmeister
That fixed the problem.
2:54:17
drmeister
All better on linux and macos
3:39:51
drmeister
On linux the bottleneck looks like stack unwinding
4:38:47
drmeister
The dev branch has been updated.
4:40:26
drmeister
::notify kpoeck I've updated the 'dev' branch and compilation has now switched to using faso files and compile-file-parallel. Your wscript.config may be out of date and you may run into trouble. Comment out the CLASP_BUILD_MODE flag and USE_COMPILE_FILE_PARALLEL - if you have those defined.
4:40:27
Colleen
drmeister: Got it. I'll let kpoeck know as soon as possible.
5:24:33
beach
Good morning everyone!
Tuesday, 11th of February 2020, 10:22:56 UTC