01:45
FROGGS_ joined
02:19
ventica2 joined
05:29
ventica2 joined
05:54
raiph joined
06:14
brrt joined
|
|||
brrt | \o | 06:15 | |
sergot | hi o/ | 06:16 | |
brrt | hi sergot :-) | 06:23 | |
raiph | www.youtube.com/watch?v=DCdGlxBbKU4 # Disruptor, Hardcore Concurrency - Trisha Gee & Mike Barker | 06:24 | |
brrt | how's things? | ||
raiph | hi guys | ||
brrt | i'll have you all know i don't have known bugs yet | 06:33 | |
sergot | hi brrt: how is your gsoc project? :) | 06:35 | |
brrt | much work yet | 06:36 | |
but, we can JIT compiles some regexes | |||
which is awesome | |||
sergot | nice :) | 06:37 | |
brrt | how's your progress doing? last i saw you were adding openssl suppot, which is very nice | 06:53 | |
sergot | yeah, I write documentation now, tests and then I plan to end up with some cleaning | 06:56 | |
So, it's doing well, almost the end. | |||
:) | |||
brrt | :-) | 07:15 | |
that's a bit further along than i am right now | |||
sergot | I have some optional goals I really want to achieve | 07:18 | |
07:21
Ven joined
|
|||
brrt | do tell :-) | 07:23 | |
sergot | e.g. URI stuff, gzip support | 07:38 | |
or support for async IO | |||
brrt | new bail log: gist.github.com/bdw/5a1f7bbc8e3ec8588a11 | 07:39 | |
hmm, async io seems like it'd be tricky | |||
how do you handle chunked encoding? | |||
sergot | github.com/sergot/http-useragent/b...t.pm6#L110 | 07:40 | |
dalek | Heuristic branch merge: pushed 38 commits to MoarVM/moar-jit by bdw | 07:41 | |
nwc10 | brrt: is your priority now getting it mergable, or are you still aiming to get more features added? | 07:46 | |
brrt | both | ||
:-) | |||
nwc10 | er, that's not strictly possible | ||
you seem to have got it to the point where others can also contribute | 07:47 | ||
brrt | i want / need to do two things befoe i'm ready to sign it of as mergable | ||
nwc10 | and it's certainly better than 90% of the GSoC projects that I'm aware of | ||
brrt | thats' extops and throwish / handlers | ||
yes, i'm glad others can actually contribute | |||
nwc10 | what subsection of code actually wins most from JIT currently - regular expressions? | 07:48 | |
brrt | i have no idea really | ||
i think regexes can benefit, even if only because they don't often do 'funky' stuff like throwning etc | |||
timotimo++ implemented a whole bunch of relevant ops | |||
basically a regex is vey often a very tight loop | 07:49 | ||
nwc10 | also, I suspect (not checked this) that they (mostly) compile to only a small set of ops | ||
and they aren't making many method calls | |||
brrt | but jnthn++'s work on inlining does a lot of good too | ||
nwc10 | mostly string stuff and counting | ||
brrt | well, they make some method calls, and i'd like to see those gone | ||
another thing that i reaaally want is to implement a refactor of the pessimized args handling | 07:50 | ||
i.e. in a lot of cases we get sp_getarg_ stuff, and that runs well, but for a lot of frames that isn't possible yet (it seems) | |||
or rather, it's very easy to make it impossible, and those frames aren't JITtable | 07:51 | ||
while they might make very hot loops | |||
a final cleanup thingy that i'd like to do is import minilua from luajit in the 3rd party sources, that's basically lua in a single c file, and is compatible with dynasm | |||
nwc10 | how many days do you have? | ||
brrt | a week until pencils down, two weeks until firm pencils down | 07:52 | |
nwc10 | also, you can get it into a *mergable* state without merging | ||
brrt | that is true | ||
i supose | |||
nwc10 | to my mind, that seems safer | ||
get it mergeable | |||
and then just have fun, but keep it mergable | |||
and do the actual merge the day before firm pencils down | 07:53 | ||
and then party :-) | |||
brrt | ok, good point :-) | ||
nwc10 | I think that way you still get all the stuff done you could do in the next 2 weeks | ||
but in that order, you ensure that it is mergeable by the end | |||
rather than doing just a bit too much, and missing that | |||
also, merging is not the end | 07:54 | ||
work on trunk is possible :-) | |||
brrt | that is true, as well | 07:55 | |
but in a way, i want the JIT to be maximally useful right from day one | |||
nwc10 | that's understandable | 07:58 | |
brrt | :-o it seems that adding getdynlex created even more calls to die | 08:04 | |
jnthn | morning o/ | 08:19 | |
FROGGS_ | morning jnthn | 08:20 | |
nwc10 | jnthn: you survived your curry? :-) | ||
jnthn | Yes :) | ||
There's more of it left for today too :) | |||
nwc10 | brrt: ASAN builds JIT through to spectests. spectests are in a state of sin. No ASAN errors | 08:23 | |
08:40
brrt joined
|
|||
timotimo | brrt: without actually looking at a full jit log, i suspect most getlexdyn are followed by an error message in the case of the dynamic var missing | 09:05 | |
brrt | yeah, i think that's likely | ||
timotimo | paramnamesused probably has a better chance of giving non-die ops :P | 09:06 | |
what are your next planned steps? work on handlers and exceptions next? | 09:07 | ||
brrt | that's a big one, yes | 09:11 | |
jnthn | brrt: On extops... | 09:12 | |
brrt | what about them | ||
jnthn | brrt: I realized we might make things much easier if we make it so we pass the extop a pointer to where it can find its args. | ||
brrt: It will be trivial to do that from the interpreter | |||
brrt | aye | 09:13 | |
brrt concurs | |||
jnthn | brrt: From the JIT, all extops work in terms of just taking registers, so we can trivially allocate a bit of memory while JITting and just include the pointer. :) | ||
As in, it's just a short array | |||
brrt nods | |||
jnthn | We can always bail if the extop is more complex than that signature wise but...none are today afaik | ||
brrt | are any jumpy / invokish? | 09:14 | |
jnthn | Yeah | ||
But they're not hot path things, iirc | |||
So we could for now flag them as "don't call from jit" | |||
Well, invokish is OK I guess | |||
One of them does some fooling around with the interp cur_op pointer | |||
Anyway, I don't mind doing the extops refactor this evening | 09:16 | ||
brrt | ok, that'd be awesome | ||
jnthn | Which should hopefully make things easier :) | ||
nwc10 | jnthn: today is day job? | ||
brrt | in that case, i'll move towards throw / handlers | ||
brrt thinks it should make it easier, yes | 09:17 | ||
jnthn | nwc10: yes | ||
I even have to do...paperwork o.O :) | |||
dalek | arVM/moar-jit: f16435e | (Bart Wiegmans)++ | src/jit/ (5 files): Add support for getdynlex |
09:21 | |
arVM/moar-jit: 72f84e0 | (Bart Wiegmans)++ | 3rdparty/dynasm: Update dynasm to include minilua source |
|||
arVM/moar-jit: 7c2d752 | (Bart Wiegmans)++ | / (2 files): Use minilua for dynasm by default |
|||
brrt | as in, paper work? | ||
jnthn | uh, yes :) | ||
brrt: oh wow, did you just make the build way easier and not require a lua install? :) | 09:22 | ||
timotimo | brrt: does that include the bitops stuff so we have no external dependencies for building new emit code files? | 09:24 | |
brrt | jnthn: yes, except that it doesn't /quite/ work for windows yet because of @exe@ bs | 09:28 | |
timotimo: yes | |||
jnthn | .oO( execute-a-bull ) |
09:29 | |
nwc10 | jvm spectests are slow | ||
moar++ | 09:30 | ||
jnthn | Moar spectests have got quite a bit snappier over the last week or so too :) | 09:31 | |
nwc10 | JVM jast stage is slow | ||
numbers (this time) have disspeared deep into scrollback, but it seemed to be of the order of the parse time | 09:32 | ||
jnthn | Wow | 09:34 | |
brrt gets stage parse in 30s these days | |||
jnthn | brrt: Yes, me too :) | ||
timotimo | not jvm's stage parse, though :P | ||
jnthn | Whole setting build is under 45s for me these days | ||
Which is still Too Damm High | |||
timotimo | that it is | ||
nwc10 | jnthn: agree, but I suspect in the short term it doesn't matter as much as general rumtime speedups. The build is fast enough compared with Perl 5 (or anything else) | 09:36 | |
jnthn | nwc10: Aye, though some of the recent improvements were to the grammar engine, which means we speed up grammars | 09:37 | |
User ones too. | |||
nwc10 | sorry, should have said what I was thinking "but if they speed up general parsing" | ||
or at least "also speed up user code" | |||
jnthn | Ah, I see | 09:38 | |
Speeding up compile time is also good for getting to runtime faster | |||
And EVAL :P | |||
dalek | arVM/moar-jit: 551b18b | (Bart Wiegmans)++ | Configure.pl: Make minilua compilation work on windows |
||
timotimo | developer turn-around time is also not bad | 09:39 | |
jnthn | Well, yes. Making Rakudo more pleasant to develop is good. | ||
timotimo | moarvm development turn-around time is already excellent | 09:40 | |
we can skip right to the setting build if we change something we want to measure | |||
brrt | the reason this all had to work right now (instead of next week as i had planned) is that i think i've introduced a regression in win32 sp_findmeth | 09:41 | |
jnthn | Ah, and you wanted the development environment to be more sane :) | 09:42 | |
brrt | (i need five arguments for the findmeth_spesh routine, and win32 only supports 4) | ||
in registers | |||
aye | |||
timotimo | d'oh | ||
brrt | jnthn, any idea on how to make the /pdb:$@.pdb flag in Configure.pl | 09:51 | |
jnthn | brrt: Last I looked...I didn't see an elegant way | 09:52 | |
Maybe we should just not care and hack it in somehow :) | |||
brrt | always a good idea | ||
jnthn | Oh... | ||
since /pdb:$@.pdb will work anywhere... | 09:53 | ||
brrt | but i don't know how to detect win32-ish-ness in Configure.pl | ||
jnthn | ...could we not just add it to the link flags? | ||
For when we're passing /debug? | |||
brrt | work anywhere? | ||
jnthn | As in, for the .exe too | ||
brrt | will gcc accept that? | ||
oh, yeah | |||
i see what you mean | |||
jnthn | No, I mean, it doesn't matter if it's in *every* link line we feed MSVC when debugging | ||
Sure we'll get a moar.exe.pdb instead of a moar.pdb but that seems just fine :) | 09:54 | ||
brrt | so it can be inserted into ldflags, is what you mean | ||
jnthn | Right | ||
brrt nods | |||
jnthn | build/setup.pm:320 is likely the place | 09:55 | |
brrt is trying it out as we speak | 09:56 | ||
dalek | arVM/moar-jit: 816a76b | (Bart Wiegmans)++ | build/setup.pm: Add pdb flag to win32 link flags for debug |
10:00 | |
jnthn | \o/ | 10:04 | |
brrt afk for a bit | 10:11 | ||
10:38
cognome joined
|
|||
nwc10 | brrt: ff90a050 "Add sp_findmeth which was big on bail logs" breaks the NQP build | 11:12 | |
Too many positional parameters passed; got 2 but expected 1 at gen/moar/stage1/NQPHLL.nqp:2072 (gen/moar/stage1/NQPHLL.moarvm::107) | 11:13 | ||
etc | |||
this suggests to me that some of the build excercises code paths that none of the regression tests touch | |||
12:12
woolfy1 joined
12:13
FROGGS_ joined
12:15
brrt joined
|
|||
brrt | nwc10: you on windows? | 12:30 | |
jnthn | Highly doubt it :) | ||
nwc10 | no, this was x86_64 Fedora | ||
er, anyway, something in the deadrat familty | 12:31 | ||
oh | |||
CentOS release 6.4 (Final) | |||
brrt | i see that same problem | ||
but only on windows | |||
nwc10 | so the compost heap | ||
see, it's "my" machine. | |||
brrt | oh, now i see it on linux too | 12:32 | |
ok, i'll check it out | |||
nwc10 | anything I actually owned would be on something debian derived | ||
probably real debian | |||
12:33
oetiker joined
|
|||
carlin | 100% real debian, not cheap synthetic debian | 12:34 | |
12:34
jnap joined
|
|||
brrt | this is another one of the 'this only works if you compile it from fresh' things | 12:46 | |
nwc10 | 11:13 < nwc10> this suggests to me that some of the build excercises code paths that none of the regression tests touch | ||
in this case "works" is fails? Because I was doing a full clean build | |||
12:48
cognome joined
|
|||
brrt | no, i mean, this works if you disable JIT from the start, and which crashes if you /do/ disable JIT from the start | 12:49 | |
don't | |||
ught | |||
i.e. undebuggable | 12:50 | ||
:-( | |||
12:54
cognome joined
|
|||
brrt | all decidedly boring code, by the way | 13:01 | |
nwc10 | OK, can you back out your change section by section (or go forward section by section) to narrow down the point at which it kills the NQP build? | 13:02 | |
jnthn | Other tip: look for difference in file size of a working build and a non-working one; may be different. | 13:03 | |
Though may be bogus too | |||
brrt | yes, it's somewhere in the compilation of NQPHLL that goes wrong | 13:04 | |
jnthn | That's the first file with a grammar in it, fwiw. | ||
brrt | yes, sp_findmeth is called really foten in there | 13:05 | |
foten = often | 13:06 | ||
hmm, it's arround newtype() it seems | 13:33 | ||
jnthn | I'm quite sure new_type can't be jitted | 13:34 | |
Givne it's using nqp::newtype | 13:35 | ||
Which I'm sure we don't JIT yet | |||
But we might JIT the thing calling it of course | |||
FROGGS | Do we always have to call it "thing", Jim? | 13:38 | |
jnthn | Well, there could be a better thingy for it... | 13:47 | |
brrt | i really have no idea what causes this | 13:49 | |
grrr | |||
13:50
raiph joined
|
|||
brrt | let's try and see what ASAN gives us | 13:52 | |
nothing! | 13:53 | ||
yay | |||
jnthn | brrt: How did you do sp_findmeth in the end? | 13:57 | |
brrt | basically, treat it as invokish | ||
i.e., do the spesh-slot index in ASM, and if that fails call MVM_6model_find_method_spesh | 13:58 | ||
jnthn | ok | 13:59 | |
brrt | hmm | 14:00 | |
i have /some/ good news, it seems | |||
it doesn't seem to be a problem with the invokish check or even with the spesh variant | 14:01 | ||
of find_method | |||
brrt can't hope to find this bug in the current haystack of ops | 14:28 | ||
new plan | 14:32 | ||
implement a lot of new ops | |||
wait until ASAN or SEGV gives away what the error is | |||
dalek | arVM/moar-jit: 352ce0c | (Bart Wiegmans)++ | src/jit/ (4 files): Add support for isconcrete |
14:38 | |
timotimo | doesn't sound like a terrible idea | 14:46 | |
dalek | arVM/moar-jit: f8bcded | (Bart Wiegmans)++ | src/jit/ (4 files): Add support for indexat (is branching) |
14:53 | |
brrt | :-) | ||
no luch so far, though | |||
carlin | .oO( No lunch!? ) |
14:55 | |
darn human brain, only paying attention to the first and last letter of words | 14:56 | ||
brrt | hmm... a simple script hangs funnily even without JIT | 15:13 | |
or doesn | |||
doesn't | |||
jnthn: any idea why this doesn't work: gist.github.com/bdw/44faa4ab88bb14678d64 | 15:19 | ||
you'd think this ends with something running to 100, right? | 15:20 | ||
not sensitive to JIT or spesh disabling, btw | |||
timotimo | how does it fail? | 15:22 | |
brrt | ehm.. it hangs | ||
or | |||
it used to hang | |||
but | 15:23 | ||
i'm confused now | |||
because it works | |||
(now) | |||
dalek | arVM/moar-jit: 1b461c4 | (Bart Wiegmans)++ | / (5 files): Add lt_n and gt_n |
||
timotimo | huh. | 15:24 | |
it ends prematurely on my nqp | |||
brrt | yeah, it also ends prematurely on my nqp, except not when i add JITting | 15:25 | |
haha confuse! | |||
timotimo | huh, yeah, it also ends prematurely with spesh turned off | 15:27 | |
this is most strange. | |||
brrt | MoarVM used confuse ray | 15:30 | |
it's super effective | |||
brrt was hurt in the confusion! | |||
timotimo | do you also notice it seems to exit before it prints a newline? | ||
could that just be because it didn't flush stdout? | |||
brrt | could be | ||
i don't know | |||
timotimo | ah. | 15:31 | |
yeah | |||
brrt | what's it? | ||
timotimo | flush stdout manually and you'll get the correct output | ||
it *does* run correctly. | |||
brrt | ... | 15:32 | |
timotimo | something i find even more interesting is that even strace will end up with truncated output unless -o file.txt | ||
and strace -e write -o log.txt nqp-m foobar.nqp makes foobar.nqp exit with a flushed stdout | |||
good thing you decided to implement more ops before spending five hours chasing this odd behavior | 15:33 | ||
we may want to force moarvm to flush all open file handles when exiting? | |||
jnthn | brrt: Value of $i is 103.982528359203 is last output I get | 15:40 | |
15:41
brrt joined
|
|||
jnthn | timotimo: I'm...surprised it's managing to lose output there... | 15:41 | |
brrt too | 15:42 | ||
under JIT, it also runs to completion | |||
timotimo | i don't even know if i have a jitted nqp or not | ||
timotimo AFK for a bit | |||
brrt dinner & | 15:43 | ||
15:43
brrt left
16:07
ventica joined
16:52
colomon joined
16:53
FROGGS[mobile] joined
18:09
brrt joined
|
|||
brrt | core.setting under asan is sloooow | 18:20 | |
FROGGS | brrt: tell jnthn++, he can make it faster for ya' :o) | 18:21 | |
jnthn | Hm, seems it's 6time :) | 18:22 | |
brrt | well, ASAN has the nice property of swiftly telling me why something has crashed :-) | ||
stop! | |||
6time | |||
267 s stage parse under asan | |||
:-o | |||
jnthn | wat! | ||
I thought ASAN didn't add so much... :) | |||
brrt | well,, sometimes it does | ||
cannot invoke the null object :-o | 18:27 | ||
we're getting closer it seems | |||
18:30
harrow joined
|
|||
brrt | basically, stuff goes missing | 18:30 | |
jnthn | That's often a marking fail | 18:31 | |
brrt | hmm that.. is a bit unlikey i think | ||
it's possible | 18:32 | ||
but 'brrt did something subtly stupid somewhere' is also really likely | 18:33 | ||
also, changing the nursery size should change the first appearance of our bug, and it doesn't | |||
jnthn | yeah, agree | 18:34 | |
(about the nursery size change :P) | |||
dalek | arVM/moar-jit: 40a2b51 | (Bart Wiegmans)++ | src/ (6 files): Add findmeth and findmeth_s. Program now blows up that much quicker. Which is good, because quicker blowups are much easier to fix. |
18:36 | |
jnthn | Aww crap | 18:42 | |
The annotations thing gets loads further with spesh disabled | |||
brrt | what thing? | 18:43 | |
FROGGS | ewww | ||
QAST annotations | 18:44 | ||
github.com/perl6/nqp/blob/master/s...ode.nqp#L6 | |||
it let's you use QAST thingies as a hash | 18:45 | ||
so every QAST::Node (or stuff that inherits from it like QAST::Op) has to keep that hash, even when is only rarely used | |||
jnthn | optimize_is_reprid is to blame for the latest spesh bug | 18:53 | |
Well, OK, disabling it hides it. | 18:57 | ||
note note, commetning out these lines hides it: | 18:58 | ||
result_facts->flags |= MVM_SPESH_FACT_KNOWN_VALUE; | |||
result_facts->value.i64 = 0; | |||
19:01
zakharyas joined
|
|||
jnthn | if (truthvalue != negated_op) { | 19:02 | |
hmm, wonder how reliable that is | |||
I mean, there may be ways of representing true other than 1... | |||
dalek | arVM/moar-jit: 3257d23 | (Bart Wiegmans)++ | src/jit/ (4 files): Implement isnull and isnonnull as primitives |
19:07 | |
brrt | still no further with bugs, by the way | 19:08 | |
19:13
colomon joined
|
|||
timotimo | brrt: if you want you can implement the reprid comparisons as primitive operations | 19:14 | |
(islist, isstr, ishash, isint, isnum i believe) | 19:15 | ||
brrt | oh, yes, you're quite right | ||
those ought to be easy | |||
nwc10 | brrt: much boom, somewhat faster | ||
gen/moar/stage1/NQPCORE.setting | |||
Cannot invoke null object at gen/moar/stage1/nqpmo.nqp:1459 (gen/moar/stage1/nqpmo.moarvm:new:14) | |||
brrt | yeah, i'm trying to speed up that boom | ||
FROGGS | that's NQPAttribute.new | 19:17 | |
brrt | it doesn't seem my implementation of isnonnull is quite working | ||
nwc10 | I know it's *not* what you are doing, but it is amusing me because I'm thinking of dave.org.uk/klortho/?n=11912 | 19:18 | |
which, I thought we had in the perl 5 linux hints (or a commit message), related to the default optimiser settings for Intel's compiler | |||
brrt | in a way it is what i'm doing, isn't it? :-) | ||
brrt bbiab | |||
nwc10 | yes. | ||
you could just abort early and save a lot of bother :-) | 19:19 | ||
anyway, ICC is not our favourite compiler: | 19:23 | ||
perl5.git.perl.org/perl.git/blame/H...nux.sh#l87 | |||
a flag to make floating point be correct | |||
another flag, "otherwise, icc pretends (poorly) to be gcc" | |||
Klortho #11912 has been mentioned with reference to the first | 19:24 | ||
synopsebot | Link: rt.perl.org/rt3//Public/Bug/Displa...l?id=11912 | ||
jnthn | oh, naughty... | 19:30 | |
nwc10 | whom? me, bitching about their wrong defaults? or them? :-) | 19:32 | |
jnthn | The optimizer, it turns out | 19:33 | |
It was doing a further pass of dead code elimination post-inlining | |||
That may make sense at some point | |||
nwc10 | oh, "none of the above" | 19:34 | |
jnthn | Unfortunately, at present it can lead to it deleting instructions that contain values needed after deopt | ||
Which is a solved problem in general | |||
But seems not in the inline case | 19:35 | ||
In this case it was deleting the instruction that set the name of the annotation to look for | |||
It'd specialized on the assumption we rarely find it | |||
Uh, actually on the assumption there were no annotations | 19:36 | ||
Then when there were it deopt'd and had lost the name of the annotation it was after. | |||
Of course, while I'm talking about it as if it has a clue what our data structures mean, it of course doesn't; it's just collecting information about what usually happens and optimizing the case when it does happen :) | 19:37 | ||
nwc10 | bad code, no cookie | ||
20:06
vendethiel joined
|
|||
dalek | arVM: 5d4882c | jnthn++ | src/spesh/optimize.c: Normalize truth value. We could come across a case where it will not be 1. |
20:18 | |
arVM: e5370df | jnthn++ | src/spesh/optimize.c: Don't redo dead instruction elim on inlinees. For one, they've already had it done. For two, this doesn't quite respect deopt boundaries correctly. |
|||
arVM: c440b85 | jnthn++ | src/spesh/inline.c: Make sure inlined args are always marked as used. |
|||
jnthn wonders if timotimo++ will be doing a p6weekly today :) | 20:24 | ||
FROGGS | jnthn: and I thought all your efforts is to impress the YAPC::EU attendees :o) | 20:27 | |
nwc10 | jnthn: master/master/nom setting build fail | 20:40 | |
Stage parse : This type does not support associative operations | |||
at src/Perl6/World.nqp:238 (blib/Perl6/World.moarvm:push_lexpad:44) | |||
from src/Perl6/Grammar.nqp:936 (blib/Perl6/Grammar.moarvm:comp_unit:809) | |||
jnthn | nwc10: Yes, you need the Rakudo patch that chases the API change :) | ||
Gee, you folks can test faster than I can push :P | |||
nwc10 | I re-checked | 20:41 | |
OK, *now* I have it | |||
jnthn | OK, that's last night's unfinished stuff done :) | 20:46 | |
20:59
ventica joined
|
|||
nwc10 | jnthn: 3 spectests currently fail, but did so 4 hours ago | 21:00 | |
timotimo | japhb: oh! i was distracted by Crypt of the NecroDancer local co-op mode with a friend :) | 21:01 | |
jnthn | Is encode.t one of them? | ||
nwc10 | IIRC yes | ||
jnthn | Seems I can reproduce it here... | ||
nwc10 | (now somwhere off in scrollback) | ||
jnthn | k | 21:02 | |
nwc10 | t/spec/S32-io/IO-Socket-Async.rakudo.moar t/spec/S32-str/encode.rakudo.moar t/spec/integration/advent2010-day21.t | ||
Stage mast : 15.608 | 21:04 | ||
that's a lower number than I remember | |||
but my memory may be faulty | |||
in that, "last week" I think it was 17.2 | 21:05 | ||
and parse was 48s, not 44s | |||
but I'm not yet used to "this week" | |||
21:07
brrt joined
|
|||
lizmat | rebuilding settings: real0m50.447s | 21:10 | |
user0m49.462s | |||
sys0m0.887s | |||
wow! | 21:11 | ||
no time to get a cup of tea anymore! | |||
brrt | :-o | 21:18 | |
what will we do with our lives | |||
apparantly even gt_n and lt_n blow up today :-( | |||
timotimo | :( | 21:19 | |
brrt | something maaay be wrong with not_i | 21:22 | |
just a little bit | 21:25 | ||
jnthn | oh no, not not_i! | 21:32 | |
lizmat: Hey, my evil plan for increasing Rakudo dev productivity is working :D :P | |||
lizmat | yes, it is! | 21:33 | |
carlin | being too fast to make a cup of tea probably decreases productivity :p | ||
dalek | arVM/moar-jit: 678f8c5 | (Bart Wiegmans)++ | src/jit/graph.c: Temporarily comment all progress of today We need a good basis to debug from |
21:34 | |
arVM/moar-jit: c45061d | (Bart Wiegmans)++ | / (5 files): Fix not_i |
|||
arVM/moar-jit: 50ca94b | (Bart Wiegmans)++ | src/jit/graph.c: Indexat and is(non)null are OK |
|||
MoarVM: 2be1131 | jnthn++ | src/core/ (2 files): | |||
MoarVM: Change ext op API to make JITting them easier. | |||
MoarVM: | |||
brrt | problems with not_i are now past us | ||
FROGGS | brrt++ | ||
jnthn | carlin: There's always spectest for tea ;) | ||
timotimo | nice. | ||
jnthn | brrt: gah, commit message got truncated but 2be1131 is for you. Rakudo patch tested and coming momentarily. | 21:35 | |
brrt | i'll merge | ||
jnthn | Cool | 21:36 | |
dalek | arVM/moar-jit: 5d4882c | jnthn++ | src/spesh/optimize.c: Normalize truth value. We could come across a case where it will not be 1. |
||
arVM/moar-jit: e5370df | jnthn++ | src/spesh/optimize.c: Don't redo dead instruction elim on inlinees. For one, they've already had it done. For two, this doesn't quite respect deopt boundaries correctly. |
|||
arVM/moar-jit: c440b85 | jnthn++ | src/spesh/inline.c: Make sure inlined args are always marked as used. |
|||
brrt is afk for tonight, i'll try to work on extops + findmeth bugs | 21:40 | ||
21:40
brrt left,
colomon joined
22:07
ventica joined
|
|||
timotimo | brrt, i'm afraid your // comments may make msvc unhappy | 22:29 | |
i think it only allows /* ... */ |