NAME

Parrot::OpTrans::Compiled - Transform Parrot Bytecode To C

DESCRIPTION

Parrot::OpTrans::Compiled inherits from Parrot::OpTrans and is used by tools/build/pbc2c.pl to transform Parrot bytecode to a C code run loop.

Instance Methods

defines()

Returns the C #define macros required by the ops.

pc($pc)
pc()

Sets/gets the current position in Parrot code.

args(@args)
args()

Sets/gets the transform's arguments.

arg($index)

Returns the argument at index $index.

goto_address($address)

Transforms the goto ADDRESS($address) macro in an ops file into the relevant C code.

expr_offset($offset)

An offset expression is always an offset from start_code, because the ret instruction may be in a different runops core. ret will always treat saved addresses as relative to start_code, because that interpretation is global across all runops cores.

goto_offset($offset)

Transforms the goto OFFSET($offset) macro in an ops file into the relevant C code.

goto_pop()

Transforms the goto POP() macro in an ops file into the relevant C code.

access_arg($type, $value, $op)

Returns the C code for the specified op argument type (see Parrot::OpTrans) and value. $op is an instance of Parrot::Op.

restart_address($address)

Returns the C code for restart ADDRESS($address).

restart_offset($offset)

Returns the C code for restart OFFSET($offset).

SEE ALSO

Parrot::OpTrans
Parrot::OpTrans::C
Parrot::OpTrans::CGP
Parrot::OpTrans::CGoto
Parrot::OpTrans::CPrederef
Parrot::OpTrans::CSwitch