NAME ^

compilers/imcc/main.c

DESCRIPTION ^

IMCC helpers.

Functions ^

static void usage
Outputs usage error message.
static void help_debug
Print out list of debugging flag values.
static void help
Print out "help" list of options.
static void Parrot_version
Print out parrot version number.
static int is_all_hex_digits
Tests all characters in a string are hexadecimal digits. Returns 1 if true, 0 as soon as a non-hex found
const char *parseflags
Parse Parrot's command line for options and set appropriate flags.
static void do_pre_process
Pre-processor step. Turn parser's output codes into Parrot instructions.
static void imcc_get_optimization_description
Create list (opt_desc[]) describing optimisation flags.
void imcc_initialize
Initialise interpreter and set optimisation level.
static void imcc_run_pbc
Write out or run Parrot bytecode. RT#46149 no return value :-(
static void imcc_write_pbc
Output packed bytecode file.
static void determine_input_file_type
Read in the source and determine whether it's Parrot bytecode or PASM
static void determine_output_file_type
Decide what kind of file we are to output.
static void compile_to_bytecode
Compile source code into bytecode (or die trying).
int imcc_run
Entry point of IMCC, as invoked by Parrot's main function. Compile source code (if required), write bytecode file (if required) and run. This function always returns 0.


parrot