NAME ^

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

DESCRIPTION ^

Parrot::OpTrans::Compiled inherits from Parrot::OpTrans and is used by build_tools/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


parrot