On 5/31/10 6:51 AM, Peter Lobsinger wrote:
To address this, the constant_unfolding branch adds a step to IMCC
instruction selection to check for non-const variants of an
as-of-yet-unfound op. If found, this op is used and constant arguments
are handled by assignments to temporary registers. This is the
opposite direction of constant folding, so I have named it constant
unfolding. Anyone familiar with what this is actually called, please
chime in.

Sounds like a good idea.

The closest term I can think of is "boxing", but that tends to be used for creating an object wrapper for a variable/constant value. It still might be appropriate, though, if we extend the idea to include being able to call PMC variants of ops with int/num/string constant or register arguments. (Which would even further drop the number of op variants we need, at the cost of additional PMC headers being created for ops where we consider the int/num/string variants to be rare.)

Allison
_______________________________________________
http://lists.parrot.org/mailman/listinfo/parrot-dev

Reply via email to