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 theret
instruction may be in a different runops core.ret
will always treat saved addresses as relative tostart_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 ofParrot::Op
. restart_address($address)
-
Returns the C code for
restart ADDRESS($address)
. restart_offset($offset)
-
Returns the C code for
restart OFFSET($offset)
.