brrt \o 13:16
jnthn: the one below or the one above
brrt uhm, can anybody help me understand what the rules are to spesh facts usage 14:17
is a HOW always a type object? 14:19
m: nqp::say(nqp::istype(nqp::gethow("oh hai')));
camelia rakudo-moar 13d9af: OUTPUT«===SORRY!=== Error while compiling /tmp/dB5DuNNoff␤Unable to parse expression in double quotes; couldn't find final '"' ␤at /tmp/dB5DuNNoff:1␤------> say(nqp::istype(nqp::gethow("oh hai')));⏏<EOL>␤ expectin…»
brrt m: nqp::say(nqp::istype(nqp::gethow("oh hai")));
camelia rakudo-moar 13d9af: OUTPUT«===SORRY!===␤Arg count 1 doesn't equal required operand count 3 for op 'istype'␤»
brrt m: nqp::say(nqp::isconcrete(nqp::gethow("OH HAI"))); 14:20
camelia rakudo-moar 13d9af: OUTPUT«===SORRY!===␤No registered operation handler for 'gethow'␤»
timotimo m: nqp::say(nqp::isconcrete(nqp::how("OH HAI"))) 14:40
camelia rakudo-moar 2aef1f: OUTPUT«1␤»
dalek arVM: aa7ed7b | brrt++ | src/jit/emit_x64.dasc:
Remove unused getwho JIT
20:57
arVM: aa60110 | brrt++ | src/spesh/optimize.c:
Spesh gethow (can be spesh slot lookup)
brrt jnthn, time to advice me? 21:21
hmm
with regards to spesh op devirtualisation 21:22
it seems i can do two thins
things
a): extend c call invocation structure to support getting the STABLE and OBJECT_BODY of an object
b): create a new structure for repr ops 21:23
i was thinking of doing the latter
lizmat brrt: afaik, jnthn is travelling atm 21:24
brrt ah ok :-)
i'd need to say that a would involve having repr special logic as well 21:25
timotimo brrt: do you know where gethow happens usually? 21:47
brrt i have no idea
timotimo i see two occurences of it in BUILDALL 21:52
which is in need of optimization anyway
!alt has two, as well 21:53
brrt: well, the gethow optimization fires a bunch of times :) 22:04
during nqp compilation already
brrt it does. it is a small optimization but still 22:05
timotimo lots and lots and lots during stage parse 22:06
none in the other stages of core setting, though
timotimo spesh_diff.p6 is either wrong again or still wrong :\ 22:28
brrt how do you say wrong? 22:32
i broke it?
timotimo it expects different input 22:36
timotimo i don't think you broke it 22:36
i think i just didn't properly adapt it to the "inserting logging" + "before/after" and then "finished specialization"
the diffs don't look very good
brrt ah ok :-) 22:41