Well, 160 Kbytes are my diffs now against Parrot svn HEAD. And still no chance to check it in, without blocking $others, because too much still is failing.
Done:
r = foo(a, b)
translates now to new call scheme opcodes, as well as .param
and .returns()
stuff. Just tossed 460 lines in imcc/pcc.c and added 20 new. Works fine.Overall it looks like that calling PASM/PASM is by far simpler now, but PASM/C (NCI) and C/PASM (runops_fromc_*) interfaces use slightly more code lines. OTOH we get now strict type checking and conversions to and from PMCs, which wasn't in the old scheme. I can very well imagine that we don't want to call C code w/o argument verification anyway.
Re:no chance to check it in?
leo on 2005-07-06T06:45:19
Yep, I considered checking in a branch, but as of yesterday it was too early to to commit the half done work.