freenode/#sbcl - IRC Chatlog
Search
6:59:17
White_Flame
does sbcl's compiler use a global lock or can multiple runtime compiler calls be run simultaneously?
7:28:32
Krystof
White_Flame: relatively newly, there is no compiler global lock. (It's possible that the file compiler still takes a lock)
10:43:29
karlosz
the return address is destroyed since calling into c destroys the first 3 words above the csp = cfp
10:44:01
karlosz
i can't figure out how this possibly works on other backends because the allocated frame size doesnt take into account spilling return addresses right?
10:57:56
karlosz
i have a scenario where the lra gets spilled on the frame but the csp is still the same as cfp
10:59:22
karlosz
okay, so then my problem lies in copy more arg, right? since i think the only vops which handle increassing csp are copy-more-arg and the normal xep-setup-sp
11:05:48
karlosz
just to make sure, copy-more-arg is supposed to subsume the responsibility of xep-setup-sp, right?
11:07:24
karlosz
what i dont understand is how copy-more-arg knows how much it needs on a backend like mips without even calling sb-alloacted size
11:09:28
stassats
there's (inst add result cfp-tn (add-sub-immediate (* n-word-bytes (sb-allocated-size 'control-stack))))
11:09:36
stassats
and then (inst add dest result (lsl nargs-tn (- word-shift n-fixnum-tag-bits))) (move csp-tn dest)
14:12:54
pfdietz
No failures over the weekend. New build, tests kicked off again. Let's see if ir-copy problems are gone.
14:15:15
stassats
i may try attempting actually performing ir copying, for what, third or fourth time?
14:15:32
pfdietz
Sometimes the random tester is like spending hours polishing the underside of a table that no one will ever see. Other times it's missing bugs because it's not looking in the right place.
14:16:28
stassats
but ir-copy is the right approach for inlining anyway, there's another problem where it doesn't fail but can't inline
14:17:05
stassats
(defun f (z) (labels ((m (a) a) (f (y) (m y))) (declare (inline f)) (when (eq z 'funcall) (funcall z (the function #'f) 1) (funcall z (the function #'f) 1))))
14:21:01
pfdietz
Is there a ticket explicitly for ir-copy? That would be a good place to record these ruminations.