[01:48] *** ilbot3 joined
[06:56] *** domidumont joined
[07:01] *** domidumont joined
[08:50] *** FROGGS joined
[08:52] *** pyrimidine joined
[09:46] *** ggoebel joined
[10:00] *** domidumont joined
[10:10] *** zakharyas joined
[10:44] *** pyrimidi_ joined
[11:17] *** zakharyas joined
[13:03] *** zakharyas joined
[14:07] *** domidumont joined
[14:25] *** domidumont joined
[15:02] <timotimo> seems like all of Grammar.nqp only has 4 occurences of the unipropcode + unipvalcode + hasuniprop pattern at all

[15:37] * nwc10 isn't quite sure if there's some more context to this that he's missed

[15:38] <timotimo> two of these three can be constant-folded

[15:38] <nwc10> aha OK

[15:41] <timotimo> but it's not worth a lot, i don't think

[15:41] <timotimo> well, if someone uses <:Blah> a bunch in their grammars they could notice a different

[15:44] *** domidumont joined
[15:47] *** domidumont joined
[15:59] <timotimo> oops, turns out that made stage parse 2x faster! just kidding ;(

[16:03] <timotimo> well, at least these two ops would always do an ascii encoding of the string in question

[16:03] <timotimo> those are pretty much always short and ascii-only, but still. that mallocs and immediately frees

[16:05] <timotimo> const_s          r35(3), lits(No)

[16:05] <timotimo> const_i64        r31(3), liti64(17)

[16:05] <timotimo> const_i64        r29(3), liti64(11)

[16:05] <timotimo> hasuniprop       r37(4),   r3(1),   r4(4),  r31(3),  r29(3)

[16:05] <timotimo> something's not killing the unnecessary ops, but this ought to be a *bit* faster than before :P

[16:07] <timotimo> er, i mean, only the const_s would be able to get thrown out

[16:10] <dalek> MoarVM/line_based_coverage_4: 8de44bb | timotimo++ | src/spesh/optimize.c:

[16:10] <dalek> MoarVM/line_based_coverage_4: constantfold unipropcode and unipvalcode

[16:10] <dalek> MoarVM/line_based_coverage_4:

[16:10] <dalek> MoarVM/line_based_coverage_4: those are rather rare, but at least mildly expensive.

[16:10] <dalek> MoarVM/line_based_coverage_4: among other things we don't have to ascii-encode and malloc/free

[16:10] <dalek> MoarVM/line_based_coverage_4: the string for the code twice in a row.

[16:10] <dalek> MoarVM/line_based_coverage_4: review: https://github.com/MoarVM/MoarVM/commit/8de44bbcb9

[16:11] <timotimo> oops, that's the wrong branch

[16:11] <dalek> MoarVM: a1f79f8 | timotimo++ | src/spesh/optimize.c:

[16:11] <dalek> MoarVM: constantfold unipropcode and unipvalcode

[16:11] <dalek> MoarVM:

[16:11] <dalek> MoarVM: those are rather rare, but at least mildly expensive.

[16:11] <dalek> MoarVM: among other things we don't have to ascii-encode and malloc/free

[16:11] <dalek> MoarVM: the string for the code twice in a row.

[16:11] <dalek> MoarVM: review: https://github.com/MoarVM/MoarVM/commit/a1f79f81ea

[16:12] *** Ven_ joined
[20:21] *** Ven_ joined
[20:38] *** Ven_ joined
