00:03
AlexDani` joined
00:05
AlexDani` joined
01:48
ilbot3 joined
04:50
lizmat joined
|
|||
nine | I can't believe how fast rakudo is, considering that a simple getattr has to loop so much... | 07:36 | |
moritz | it has? | 07:38 | |
nine | Finding the attribute slot in the object is looping over the inheritance hierarchy to find the requested class, then loop over the attributes to find the one with a matching name | 07:39 | |
moritz | and I thoght we pre-compute the storage layout for each class individually | 07:41 | |
nine | I guess that's what spesh does | ||
09:42
cygx joined
|
|||
cygx | o/ | 09:42 | |
I can no longer build nqp using Strawberry Perl due to a segfault in MVM_nfg_crlf_grapheme() while generating the stage1 nqpmo.moarvm | 09:43 | ||
09:53
Alexdaniel joined
|
|||
jnthn | nine: That's in the most late-bound case; in most cases a hint is provided which allows the whole search to be avoided entirely in favor of a bounds check, and spesh can eliminate the call to get_attribute entirely. | 10:46 | |
(And spesh can do that in cases where the static hint mechanism can't be used too) | 10:48 | ||
11:02
cygx joined
|
|||
jnthn | fwiw, that Strawberry Perl SEGV cygx mentioned happens on Windows under MSVC too | 11:27 | |
I'll take a look tomorrow if nobody beats me to it | |||
nine | jnthn: is it ok to commit this debugging aid? gist.github.com/niner/50a724956cd0...962da2ca23 | 11:30 | |
I got a bit tired of re-discovering how to "what the hell is this obj" in gdb every couple of months... | 11:31 | ||
jnthn | nine: Yes, though perhaps with a #define, and at minimum a comment saying it's not used anywhere in the rest of MoarVM but for debugging, so don't delete it as dead code :) | 11:33 | |
nine | Gives me: (gdb) call MVM_dump_p6opaque(tc, obj, 0) | ||
Stash->new(#`(from Map) $!storage=BOOTHash, #`(from Hash) $!descriptor, #`(from Stash) $!longname='A') | |||
jnthn: ok, can do :) | 11:34 | ||
jnthn | Nite :) | ||
Though, uh, ->new? :) | |||
nine | jnthn: is there any appropriate existing #define ? | ||
Err... I guess 20 years of Perl 5 are hard to ignore ;) | |||
jnthn | nine: I can't think of one; I unified all of the GC debug aids under a single one a while ago | ||
nine | Oh, I could automatically set the #define on Configure.pl --debug | 11:38 | |
jnthn | Or that | ||
nine | Calling it DEBUG_HELPERS for now | ||
jnthn | I think that makes sense | ||
timotimo | i also had a piece of code in moar-gdb that could print out p6opaque stuff, but it's not in master yet | 12:56 | |
13:09
domidumont joined
13:14
domidumont joined
13:28
zakharyas joined
13:42
Alexdaniel joined
16:37
lizmat joined
17:02
domidumont joined
|
|||
Geth | MoarVM: fd869b7a7c | (Stefan Seifert)++ | 2 files Debugging aid for introspecting P6opaque objects When compiling moarvm with --debug, the MVM_dump_p6opaque(tc, obj) function is available for calling from e.g. a debugger session. |
17:28 | |
17:49
MasterDuke joined
18:57
Alexdani` joined
19:13
zakharyas joined
20:00
Alexdani` joined
20:07
ggoebel joined,
zakharyas joined
20:35
d4l3k_ joined,
Zoffix joined
20:40
geekosaur joined
20:54
ilbot3 joined
21:06
ilmari[m] joined
|
|||
samcv | good * everyone | 21:54 |