00:26 jnap joined 00:46 lue joined 01:25 cognominal joined 01:27 jnap joined 02:28 jnap joined 03:44 colomon joined 04:29 jnap joined 05:30 jnap joined 08:32 jnap joined 09:33 jnap joined 10:33 tgt joined 10:34 jnap joined 11:35 jnap joined 12:35 jnap joined
dalek arVM: ab3061d | jonathan++ | src/core/bytecodedump.c:
Correct str constant size in bytecode dumper.

Unbusts it in at least some cases.
12:55
jnthn The other case where it's busted is extops 12:57
dalek arVM: c0f8015 | jonathan++ | src/core/bytecodedump.c:
Detect extops or other op resolution failures.

Don't actually resolve extops yet, but at least now we complain with an exception instead of SEGV.
13:16
FROGGS cool 13:17
nwc10 jnthn: please don't go offline for another 15 minutes, as I have you another bug I don't know how to solve 13:22
jnthn nwc10: Ah, was gonna, but... :)
I wait a moment 13:23
nwc10 was trying to write up e-mail
jnthn Given I may not be back again until after Christmas :)
nwc10 OK
will try to do this quickly
jnthn Oh...that mutex one you found is interesting 13:26
And may explain some of the exit hangs...
nwc10 yes, have a diff I think might work
jnthn oh, no it doens't 13:27
But hm, yes, interesting :)
And great find.
yeah, I can see a fix 13:28
Just release the mutex after the lookup, do the allocation not under it, then re-take it.
Taking care to check we didn't lose the race. 13:29
Adding a count is overkill, I think.
nwc10 I *think* so too, but I'm not the expert 13:30
(Would have written e-mail earler, but I was doing lunch)
email sent, hopefulyl cohereny 13:31
gah
hopefully coherent
jnthn lol
nwc10 backlogs #perl6 13:33
jnthn nwc10: src/debug/gc.h has a macro for detecting "is this from formspace"
nwc10 please apologise to your family for delaying you 13:35
jnthn They're currently yelling at pigeons for stealing crab apples from the tree... :)
13:36 jnap joined
nwc10 naughty pigeons 13:37
yes. The SEGV is a read from fromspace, as fromspace is mapped as no access
jnthn Well, I can see two ways it could be going wrong
1) Somehow the frame doesn't get marked. Seems unlikely, though. 13:38
nwc10 For that macro in src/debug/gc.h, it's that I really don't know enough to know the right place or places to be sticking it to spot how I end up with a register containing fromspace 13:39
or, at least, what I think is a register containing fromspace
jnthn 2) An earlier instruction sticks something into a register that is wrong
e.g. the actual not-updated thing comes from elsewhere
nwc10 my suspicion was (2), but I hadn't even thought of (1)
jnthn I suspect 2 also.
nwc10 I don't know how to figure out (2)
jnthn Well, could try and work out which op loads it at least... 13:40
If you rwite something that just looks through all the object and string registers in a frame...
...and applies that macro...
nwc10 I couldn't easily see how to work out where all the object and string registers are - should I be looking at the GC mark code that marks frames?
jnthn Yeah, moment... 13:41
nwc10 OK
jnthn src/gc/roots.c:277
Basically, there's an array (local_types) that you use 13:42
It has an entry for every register.
(register and local are synonyms in Moar)
nwc10 OK. Right, I see. I think I can see how to (ab)use that
most brute force is to scan the locals for each OP, and use that macro on each
jnthn Right :) 13:43
nwc10 will be slow, but will be thorough
I'll try that
but probably not today
thanks for the help.
jnthn Our register allocation is quite decent so there doesn't tend to be all that many
nwc10 OK, cool
jnthn It'll slow things down but it shouldn't be ridiculous.
nwc10 shakes fist in the general direction of pigeons in Yorkshire, not that it will help.
jnthn Especially given you're working on stuff that'll be sat right in cache anyway.
Heh, I'm in Stourbridge actually :)
nwc10 ah OK. 13:44
re-aim :-)
jnthn They seem to have gone away. However, it's now started raining. :)
nwc10 it's murky here
had been fantastic hoar frost for 3 days
jnthn It was sunny earlier.
nwc10 now just mist and gloom
not seen sun since yesterday
jnthn hah, hoar frost :)
I always remember a Yahoo! Answers thread on that
"Why is it called whore frost?" :D 13:45
nwc10 www.flickr.com/photos/34063820@N00/11434073646/
jnthn ooh, pretty
nwc10 more photos, not uploaded anywhere yet
jnthn Anyway, thanks for the continued bug hunting :) 13:47
nwc10 it's still fun. I can't promise I'll keep going once it's not fun 13:48
thanks for the help 13:49
jnthn OK, heading offline again, I think )) 13:57
See y'all later o/
nwc10 have fun
my head is definately too befuddled to take advantage of your insights yet 13:58
timotimo bye jnthn 14:01
i just noticed that the return value of nqp::getpayload of the exception we got is null
or maybe that's just my local patch 14:02
yeah, the payload ends up being null 14:05
14:24 jnap joined 17:27 tgt joined 19:05 FROGGS[mobile] joined 19:13 FROGGS[mobile]2 joined
nwc10 jnthn: thanks. nailed it. 20:48
dalek arVM: 3577a4e | nicholas++ | src/6model/bootstrap.c:
In new_type(), assign the name to a C local variable as late as possible.

Previously the assignment was being made just before a call which could invoke the GC, and hence cause the C local variable to be left pointing to fromspace.
21:26
FROGGS nwc10: this is awesome! 21:27
nwc10++
21:51 cognominal joined
nwc10 we grind onwards. MVM_NURSERY_SIZE is now (1024 * 1557) 22:00
FROGGS how do you do that btw? you apply one of your magic patches that does the work? 22:02
and then you wait until it explodes?
or do you decrease the nursery size yourself?
nwc10 was grinding away with this script paste.scsys.co.uk/286676 22:03
FROGGS ahh
your -j24 sounds nicer than my -j4 :o) 22:04
nwc10 not actually my machine
and it seems that a lot of the NQP build is not that parallel
FROGGS yeah
nwc10 and there are bugs in the parallelism for hte Makefile for rakudo for MoarVM 22:05
FROGGS ohh
that is news to me
nwc10 couple that with the other seeming bugs, and I figured that it was better to grind away at NQP
I think that when I build -j24 it failed
haven't checked that recently
FROGGS have not seen patches in that direction either
nwc10 I didn't try to investigate it 22:06
hoped someone else would get there first
FROGGS I keep it in mind
[Coke] ugh. I fixed all that on parrot years ago, not looking forward to tackling it again. :) 23:01
FROGGS [Coke]: we do that every few years now :o)
[Coke] is anyone actually able to run any spectests at this point? 23:34
FROGGS yes, since a few days 23:40
[Coke]: jnthn++ fudged a few tests which would hang otherwise 23:41
23:58 ssutch joined