<LarstiQ>
Dejan: cheers, I hadn't heard yet. Copy-and-patch!
pbsds has quit [*.net *.split]
[Arfrever] has quit [*.net *.split]
rb has quit [*.net *.split]
Techcable has quit [*.net *.split]
atomizer has quit [*.net *.split]
pjenvey has quit [*.net *.split]
arigato has quit [*.net *.split]
agronholm has quit [*.net *.split]
dmalcolm has quit [*.net *.split]
graingert has quit [*.net *.split]
sam_ has quit [*.net *.split]
andrewsmedina has quit [*.net *.split]
Hodgestar has quit [*.net *.split]
ammar2 has quit [*.net *.split]
lazka has quit [*.net *.split]
epony has quit [*.net *.split]
habnabit_ has quit [*.net *.split]
LarstiQ has quit [*.net *.split]
marvin has quit [*.net *.split]
tazle has quit [*.net *.split]
hexology has quit [*.net *.split]
tumbleweed has quit [*.net *.split]
mwhudson has quit [*.net *.split]
eamanu has quit [*.net *.split]
krono has quit [*.net *.split]
alice has quit [*.net *.split]
MiguelX413 has quit [*.net *.split]
samth has quit [*.net *.split]
glyph has quit [*.net *.split]
sugarbeet has quit [*.net *.split]
fish1 has quit [*.net *.split]
cfbolz has quit [*.net *.split]
jerith has quit [*.net *.split]
antocuni_ has quit [*.net *.split]
fijal has quit [*.net *.split]
pvital has quit [*.net *.split]
luckydonald has quit [*.net *.split]
energizer has quit [*.net *.split]
mgorny has quit [*.net *.split]
Alex_Gaynor has quit [*.net *.split]
ronan has quit [*.net *.split]
Lightsword has quit [*.net *.split]
nimaje has quit [*.net *.split]
shodan45 has quit [*.net *.split]
commandoline has quit [*.net *.split]
hpk has quit [*.net *.split]
jryans has quit [*.net *.split]
the_rat has quit [*.net *.split]
idnar has quit [*.net *.split]
sam_ has joined #pypy
pbsds has joined #pypy
fish1 has joined #pypy
mwhudson has joined #pypy
pvital has joined #pypy
tumbleweed has joined #pypy
nimaje has joined #pypy
dmalcolm has joined #pypy
habnabit_ has joined #pypy
sugarbeet has joined #pypy
eamanu has joined #pypy
graingert has joined #pypy
LarstiQ has joined #pypy
shodan45 has joined #pypy
marvin has joined #pypy
commandoline has joined #pypy
krono has joined #pypy
pjenvey has joined #pypy
arigato has joined #pypy
Hodgestar has joined #pypy
lazka has joined #pypy
ammar2 has joined #pypy
agronholm has joined #pypy
tazle has joined #pypy
mgorny has joined #pypy
rb has joined #pypy
atomizer has joined #pypy
[Arfrever] has joined #pypy
MiguelX413 has joined #pypy
Techcable has joined #pypy
alice has joined #pypy
hexology has joined #pypy
andrewsmedina has joined #pypy
epony has joined #pypy
samth has joined #pypy
jerith has joined #pypy
jryans has joined #pypy
fijal has joined #pypy
idnar has joined #pypy
the_rat has joined #pypy
luckydonald has joined #pypy
ronan has joined #pypy
energizer has joined #pypy
Alex_Gaynor has joined #pypy
hpk has joined #pypy
cfbolz has joined #pypy
antocuni_ has joined #pypy
glyph has joined #pypy
Techcable has quit [Ping timeout: 240 seconds]
xcm has quit [Remote host closed the connection]
xcm_ has joined #pypy
Lightsword has joined #pypy
Techcable has joined #pypy
vext01 has joined #pypy
<vext01>
hey folks
<vext01>
am i right in thinking that rpython/jit/metainterp/resoperation.py is where the trace IR language is defined?
<vext01>
(the IR you'd see when inspecting a trace)
<cfbolz>
vext01: yes
<cfbolz>
vext01: the tracer doesn't really create these objects though, it writes a kind of bytecode into a buffer though
<cfbolz>
the objects are mainly used when optimizing and in the backend
<vext01>
hi cfbolz
<vext01>
do you do any clever bit-packing or zero copy tricks for the binary representation of trace IR?
<cfbolz>
not particularly clever, no
<cfbolz>
just not objects with pointers
<vext01>
because you want to be able to serialise them, right?
<cfbolz>
no
<cfbolz>
because it's much faster to stream into a char* buffer
<cfbolz>
when tracing
<vext01>
ok, thanks
<cfbolz>
lukas told me that you're designing your ir right now?
<cfbolz>
any specific decisions that are difficult?
<vext01>
well, we have a preliminary JIT IR, but it's quite dynamically typed, and we are seeing if we can get help from the static type system without it being too painful
<cfbolz>
like what?
<vext01>
e.g. how do represent an arbitrary number of arguments without heap allocations in the common case
<cfbolz>
right
<vext01>
and having a separate type for each kind of instruction (which you guys do have it seems)
<cfbolz>
most ops have a static number of arguments
<vext01>
what about `call`?
<cfbolz>
yeah, that's one of the few exceptions
<cfbolz>
so for the objects, we have special cases for 0?/1/2/3 arguments, I think
<cfbolz>
and then "arbitrarily many"
<vext01>
right
shodan45 has quit [Ping timeout: 246 seconds]
shodan45 has joined #pypy
jcea has joined #pypy
Julian has joined #pypy
andrewsm1dina has joined #pypy
andrewsmedina has quit [Ping timeout: 255 seconds]
ruth2345345 has joined #pypy
Dejan has joined #pypy
Julian has quit [Ping timeout: 268 seconds]
Julian has joined #pypy
tos9_ has joined #pypy
tos9_ has quit [Client Quit]
ruth2345345 has quit [Ping timeout: 252 seconds]
andrewsmedina has joined #pypy
andrewsm1dina has quit [Ping timeout: 240 seconds]