github.com/moarvm/moarvm | IRC logs at colabti.org/irclogger/irclogger_logs/moarvm
Set by AlexDaniel on 12 June 2018.
timotimo made some progress today for more detailed deopt 00:54
MasterDuke something for the profiler? 01:06
timotimo aye 01:07
the current profiler gives you "how often did which frames deopt_one or deopt_all"
i want the new one to display what expectations were violated, and by what.
timotimo getting a strange segfault 01:30
nine: if you could remove sp_* and prof_* and similar ops from the functions that write ops in MAST/Ops.nqp that'd be good 02:09
among other things because if you write any of these ops to your own code, the bytecode validator will yell at you 02:11
only spesh is allowed to build these
i wonder if perhaps a few of these functions should be re-used, i.e. whenever two opcodes have the exact same signature, which probably happens a bunch with the mathy ones 02:13
also, i wonder if $*MAST_FRAME is a major performance drain 02:18
rr replay being extremely slow right now :| 02:24
nine timotimo: aye, $*MAST_FRAME cannot be good for performance. Alas adding a :$bytecode = $*MAST_FRAME.bytecode arg and passing it in in any place that already had access did not produce any measurable performance benefit :/ 06:52
timotimo OK! 12:01
maybe the dynamic var cache is really hot for this one
dogbert2_ ok, so there seems to be one bug left in nine++ recent work 14:13
nine just one? :) 14:36
dogbert2_ :) one I 'know' 14:54
nine: take a look at this: gist.github.com/dogbert17/f57316a4...e1e3b9f465 14:55
timotimo ugh, could this please finally crash properly under rr thanks 15:07
nine dogbert2_: timotimo may have been on the right track but in the wrong place. Look at lib/MAST/Nodes.nqp:853. Here's also a + but this time the operands are not guaranteed to be int32
No idea though why this would fail only sometimes 15:08
dogbert2_ nine: cool I'll try it out using timotimo's add_i suggestion 15:19
nine, timotimo: I changed line 853 to '%!labels{nqp::iterkey_s($_)} := nqp::add_i(nqp::iterval($_), $insert_offset);' and now I get this instead ... 15:33
Duplicate label at 341678 at /home/dogbert/repos/rakudo/install/bin/../share/nqp/lib/MAST/Nodes.nqp:1088 (/home/dogbert/repos/rakudo/install/share/nqp/lib/MASTNodes.moarvm:add-label)
the number given for the duplicate label changes with each run 15:34
timotimo what the heck ... 15:35
nine the number is just the objectid 15:37
timotimo so maybe it gets further after something borked earlier ... 15:38
grrr 15:41
now i'm trying to debugprint something and gdb believes that MVMP6int doesn't exist
lizmat and another Perl 6 Weekly hits the Net: p6weekly.wordpress.com/2018/11/12/...st-diwali/ 22:02