NAME
Parrot::OpTrans::CGoto - CGoto Transform
DESCRIPTION
Used to generate C code from Parrot operations.
Parrot::OpTrans::CGoto inherits from Parrot::OpTrans to provide a C goto run loop.
Instance Methods
suffix()-
The suffix is
'_cg'. core_prefix()-
The core prefix is
'cg_'. core_type()-
The core type is
PARROT_CGOTO_CORE. defines()-
Returns the C
#definemacros 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. goto_address($address)-
Transforms the
goto ADDRESS($address)macro in an ops file into the relevant C code. expr_offset($offset)-
Transforms the
OFFSET($offset)macro in an ops file into the relevant C code. 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, $num, $op)-
Returns the C code for the specified op argument type (see
Parrot::OpTrans) and value.$opis 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). run_core_func_decl($core)-
Returns the C code for the run core function declaration.
ops_addr_decl($base_suffix)-
Returns the C code for the ops address declaration.
run_core_func_start()-
Returns the C code prior to the run core function.
run_core_after_addr_table($base_suffix)-
Returns the run core C code for section after the address table.
run_core_finish($base)-
Returns the C code following the run core function.
init_func_init1($base)-
Returns the C code for the init function.
init_set_dispatch($base_suffix)-
Returns the C code to initialize the dispatch mechanism within the core's initialization function.