| __ocaml_lex_in_comment_rec [Lexer] | |
| __ocaml_lex_tables [Lexer] | |
| __ocaml_lex_token_rec [Lexer] | |
A | |
| add [Instr_sparc] |
integer addition
|
| add_def [Pascal_ir] |
Add a definition to an environment.
|
| allocate_registers [Sparc] |
Do the registers allocation.
|
| allocate_registers [I386] |
Do the registers allocation.
|
| allocate_registers [I386_echec] |
Do the registers allocation.
|
| asm_of_proc [Pascal_ir] |
Get an asm-like AST corresponding to a pascal-like AST.
|
| asm_of_prog [Pascal_ir] |
Get the asm IR of a program.
|
| asm_type [Pascal_ir] |
Get the asm type corresponding to a pascal type.
|
C | |
| call [Instr_sparc] |
function call
|
| check [Pascal_ir] |
Check that the program is syntaxically and lexically correct.
|
| check_block [Pascal_ir] |
Do several checks on a block: check that called variables, check data types
|
| comment_depth [Lexer] | |
| commute_flag [Asm_ir] |
Find the flag with arguments swapped (e.g.
|
| commute_instr [Asm_ir] |
Use commutativity on an instruction.
|
| concat_env [Pascal_ir] |
Concatenate two environments.
|
| copy_var [Asm_ir] |
Get a copy of a variable.
|
| copy_var_def [Asm_ir] |
Get a copy of a variable definition.
|
| create_environment [Pascal_ir] |
Create a new empty environment.
|
D | |
| debug [Log] |
Print a debug message.
|
| define_glibb [Pascal_ir] |
Add the definitions of the our external glibb procedures.
|
| div [Instr_sparc] | |
E | |
| eax [I386] | |
| eax [I386_echec] | |
| ebp [I386] | |
| ebp [I386_echec] | |
| ebx [I386] | |
| ebx [I386_echec] | |
| ecx [I386] | |
| ecx [I386_echec] | |
| edi [I386] | |
| edi [I386_echec] | |
| edx [I386] | |
| edx [I386_echec] | |
| env_of_def_list [Pascal_ir] |
Get the environment corresponding to a list of variable definitions.
|
| error [Log] |
Print an error message.
|
| esi [I386] | |
| esi [I386_echec] | |
| esp [I386] | |
| esp [I386_echec] | |
| eval_expr [Pascal_ir] |
Compute the value of a constant expression.
|
| eval_expr_bool [Pascal_ir] |
Compute the value of a constant boolean expression.
|
| eval_expr_int [Pascal_ir] |
Compute the value of a constant integer expression.
|
F | |
| fold_env [Pascal_ir] |
Fold a function throughout an environment.
|
| fp [Sparc] | |
G | |
| generate_code [Sparc] | |
| generate_code [I386] |
Generate the target asm.
|
| generate_code [I386_echec] |
Generate the target asm.
|
| get_def [Pascal_ir] |
Get a the value associated to a name in an environment.
|
| get_reg_var [Sparc] | |
| get_reg_var [I386] |
Get a variable allocated in a specific register.
|
| get_reg_var [I386_echec] |
Get a variable allocated in a specific register.
|
| get_some [Pascal_ir] |
Get the value
v in a value equal to Some v.
|
| get_stack_pos_var [Sparc] |
Get a variable containing the address of the top of the stack.
|
| get_stack_pos_var [I386] |
Get a variable containing the address of the top of the stack.
|
| get_stack_pos_var [I386_echec] |
Get a variable containing the address of the top of the stack.
|
| get_var_lex [Asm_ir] |
Get the lexical depth of a variable.
|
| get_var_ots [Asm_ir] |
Is a variable on the stack?
|
| get_var_pos [Asm_ir] |
Get the position of a variable on the stack.
|
| get_var_reg [Asm_ir] |
Get the register in which a variable is stored.
|
| get_var_type [Asm_ir] | |
| get_var_value [Asm_ir] | |
| get_vd_lex [Asm_ir] |
Get the lexical depth of a variable definition.
|
| get_vd_ots [Asm_ir] |
Is a variable definition on the stack?
|
| get_vd_pos [Asm_ir] |
Get the position of a variable definition on the stack.
|
| get_vd_type [Asm_ir] | |
| get_vd_value [Asm_ir] | |
I | |
| in_comment [Lexer] | |
| information [Log] |
Print an information message.
|
| is_constant [Pascal_ir] |
Is an expression a constant?
|
| is_constant [Asm_ir] |
Is a variable a constant?
|
| is_some [Pascal_ir] |
Is a value equal to Some _?
|
| iter_env [Pascal_ir] |
Iter a function on all elements of an environment.
|
J | |
| jmp [Instr_sparc] |
unconditional jump at a label
|
L | |
| list_assoc' [Sparc] | |
| list_assoc' [I386] | |
| list_assoc' [I386_echec] | |
| list_assoc_id [Sparc] | |
| list_assoc_id [I386] | |
| list_assoc_id [I386_echec] | |
| list_itern [Sparc] | |
| list_itern [I386] | |
| list_itern [I386_echec] | |
| list_mem_assoc' [Sparc] | |
| list_mem_assoc' [I386] | |
| list_mem_assoc' [I386_echec] | |
| list_mem_assoc_id [Sparc] | |
| list_mem_assoc_id [I386] | |
| list_mem_assoc_id [I386_echec] | |
| load [Instr_sparc] |
load rs rd loads the value at rs in rd
|
| local_opt_base_block [I386] |
Do some local opimizations on a base block.
|
| local_opt_base_block [I386_echec] |
Do some local opimizations on a base block.
|
| local_opts [Params] |
Do some local optimizations on the generated code.
|
M | |
| minimize_spills [Params] |
Try to minimize variable spills.
|
| move [Instr_sparc] |
register copy
|
| mult [Instr_sparc] | |
N | |
| nb_registers [Sparc] |
Total number of available registers (warning: register numbers are zero-based).
|
| nb_registers [I386] |
Total number of available registers (warning: register numbers are zero-based).
|
| nb_registers [I386_echec] |
Total number of available registers (warning: register numbers are zero-based).
|
| neg_flag [Asm_ir] |
Get the negated version of a flag.
|
| new_base_block [Asm_ir] |
Create a new base block.
|
| new_const_int_var [Asm_ir] | new_const_int_var n depth creates a new variable which is a constant integer equal to n.
|
| new_function [Pascal_ir] |
Create a new function.
|
| new_var [Asm_ir] |
Create a new variable.
|
| new_var_def [Asm_ir] | new_var_def type depth generates a new variable definition.
|
| nop [Instr_sparc] |
nop does nothing ;)
|
O | |
| on_newline [Lexer] | |
| opt_useless [Pascal_ir] |
Mark
def_used of used procedures.
|
P | |
| pretty_print [Pascal_ir] |
Get a nice human-readable representation of a pascal ast.
|
| proc_stub [Asm_ir] |
Create a stub for a procedure, given its name, arguments and lexical depth.
|
| program [Parser] | |
| push [Instr_sparc] | |
R | |
| rdy [Instr_sparc] | |
| registers_nb [Params] |
Maximum number of registers.
|
| remove_useless_functions [Params] |
Remove functions which are not referenced by nobody.
|
S | |
| save [Instr_sparc] | |
| set_var_ots [Asm_ir] | |
| set_var_reg [Asm_ir] | |
| set_vd_ots [Asm_ir] | |
| sizeof [Pascal_ir] |
Get the size needed by a type (in bytes).
|
| sizeof [Asm_ir] |
Get the size in memory, in bytes, needed by a type.
|
| sp [Sparc] | |
| store [Instr_sparc] |
store rs rd stores the content of rs at rd
|
| string_of_char [Sparc] | |
| string_of_char [I386] | |
| string_of_char [I386_echec] | |
| string_of_expression [Pascal_ir] |
Get a human readable representation of an expression.
|
| string_of_register [I386] |
Get a as-like string representation of a register.
|
| string_of_register [I386_echec] |
Get a as-like string representation of a register.
|
| string_of_type [Pascal_ir] |
Get a human readable representation of a type.
|
| sub [Instr_sparc] |
integer substraction
|
| subcc [Instr_sparc] | |
T | |
| token [Lexer] | |
U | |
| use_flags [Params] |
Try to use flags instead of 32bits booleans when it's possible.
|
V | |
| vd_counter [Asm_ir] |
Fresh identifiers generator.
|
W | |
| warning [Log] |
Print a warning message.
|
| wry [Instr_sparc] |