Index of values


__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]