brrt i'll just leave this here: cr.openjdk.java.net/~jrose/pres/201...lenges.pdf 21:52
it's interesting to consider how much the jvm is stealing from moarvm :-P 21:53
or rather, how much overlap there really is between the awesome work that jnthn++ is doing and the jvm teams are doing
jnthn I think we have some things to steal from the JVM also :) 21:54
brrt certainly 21:55
jnthn This *is* an interesting slide deck 21:58
brrt++
"Problem: hot-path customization"...we're grappling with this in spesh too :) 21:59
brrt thanks :-)
yeah... for my information... i have a theory on how tracing works and how it relates to inlining
basically, what you'd do is for each invocation, inline the path you think you'll take, and translate the alternative paths to guards 22:00
but if that's correct, we could do that with relatively minor modifications on inlining 22:02
jnthn Tracing is more like recording the path you *do* take 22:05
brrt right, but i mean compiling the trace :-) 22:06
the path
jnthn Ah
I was wondering about building a spesh graph *as* we trace
brrt hmmm 22:07
that's an interesting thought
jnthn Along with the deopt table.
And inserting guards.
brrt requires a bit of rethinking i think
jnthn Kinda. :)
brrt but i can see how it could be done 22:08
you might not need to build the spesh graph during tracing, but maybe link graphs together
jnthn One paper I read (forget which, grmbl) noted that you can make it SSA as you construct it too.
"trivially"
brrt is that so
brrt ok, i'm curious 22:09
jnthn Well, given a trace has no branches... :)
brrt that's true
can a trace have loops?
how are loops dealt with
jnthn Well, you normally are tracing a loop
Finding loop headers is step 1 for tracing. 22:10
The tricky one is nested loops. There are various strategies for that. I need to do more reading on this bit.
brrt we should have a 'papers' section on moarvm.org
jnthn Yeah 22:11
brrt as in, stuff we read that helped us along
jnthn 6guts.wordpress.com/interesting-papers/ has a handful
I should make a better job of keeping that updated with new ones I discover, maybe :) 22:12
brrt yeah :-) thanks for that link
those are nice
i'll be off now
jnthn o/ 22:13
brrt \o 22:14