Index of values


A
add [Register]
add r s returns a set containing all elements of s, plus r.
add_color [Coloring]
add_color r s c affects the pseudo-register r to the real register s in c
add_interference [Inter_graph]
add an interference edge between two register
add_preference [Inter_graph]
add a preference edge between two register
add_reg [Inter_graph]
add a register as a node of the graph
add_spill [Coloring]
add_spill r c decides to spill the pseudo-register r in c

C
choose [Inter_graph]
choose g returns some node of g (pseudo or real register)
choose [Register]
Return one element of the given set, or raise Not_found if the set is empty.
copy_color [Coloring]
copy_color r s c copies the decision made for r in c to s

D
degree [Inter_graph]

E
empty [Inter_graph]
empty [Coloring]
empty coloring
empty [Register]
The empty set.

F
find [Coloring]
find r c finds the decision associated to r in the coloring c
find_preference [Inter_graph]
find_preference p g returns a preference edge of g satisfying a predicate p, at least one of the nodes is assumed to be a pseudo-register, not a real register
find_register [Inter_graph]
find_register p g returns a pseudo-register of g satisfying a predicate p
fold [Register]
fold f s a computes (f xN ... (f x2 (f x1 a))...), where x1 ... xN are the elements of s.
from_int [Register]
from_string [Register]

I
is_empty [Inter_graph]
is_empty [Register]
Test whether a set is empty or not.
is_real [Register]
is_real r return true iff r is a real register
iter [Register]
iter f s applies f in turn to all elements of s.

J
join [Register]
join r s takes two pseudo-registers r and s and produces a pseudo-register joining them
join_nodes [Inter_graph]
join_nodes g a b joins the two nodes a and b into a new node a|b

N
nb_regs [Register]
number of available real registers
neighbour [Inter_graph]
neighbour g a b returns true iff there is a interference edge between a and b in g
neighbours [Inter_graph]
neighbours g a returns the list of nodes of g that interfers with a

P
prefer_out [Inter_graph]
prefer_out g r returns true iff there is at least one preference edge comming out r in g
print_coloring [Coloring]
print_dec [Coloring]
print_graph [Inter_graph]
opens a Firefox window with a graphical representation of the graph
print_graph_coloring [Inter_graph]
same as Inter_graph.print_graph, but with a (partial) coloring
print_mips [Mips]
printing function for a MIPS instruction
print_reg [Register]
printing function for registers

R
real [Register]
real r return the real register contained in the join
remove [Register]
remove r s returns a set containing all elements of s, except r.
remove_preferences [Inter_graph]
remove all preference edges comming out a register
remove_reg [Inter_graph]
remove a register of the graph, removing all edges comming out this register

S
s [Mips_parser]
scan [Mips_lexer]
set_nb_regs [Register]
set the number of real registers that can be allocated
sp [Register]
MIPS register $sp

T
temp0 [Register]
reserved register to handle spilled pseudo-registers
temp1 [Register]
reserved register to handle spilled pseudo-registers
to_color [Register]
to_string [Register]