version 1.7, 2003/06/03 02:56:24 |
version 1.8, 2003/06/19 16:34:53 |
|
|
static int top; |
static int top; |
|
|
void |
void |
lalr() |
lalr(void) |
{ |
{ |
tokensetsize = WORDSIZE(ntokens); |
tokensetsize = WORDSIZE(ntokens); |
|
|
|
|
|
|
|
|
void |
void |
set_state_table() |
set_state_table(void) |
{ |
{ |
core *sp; |
core *sp; |
|
|
|
|
|
|
|
|
void |
void |
set_accessing_symbol() |
set_accessing_symbol(void) |
{ |
{ |
core *sp; |
core *sp; |
|
|
|
|
|
|
|
|
void |
void |
set_shift_table() |
set_shift_table(void) |
{ |
{ |
shifts *sp; |
shifts *sp; |
|
|
|
|
|
|
|
|
void |
void |
set_reduction_table() |
set_reduction_table(void) |
{ |
{ |
reductions *rp; |
reductions *rp; |
|
|
|
|
|
|
|
|
void |
void |
set_maxrhs() |
set_maxrhs(void) |
{ |
{ |
short *itemp; |
short *itemp; |
short *item_end; |
short *item_end; |
|
|
|
|
|
|
void |
void |
initialize_LA() |
initialize_LA(void) |
{ |
{ |
int i, j, k; |
int i, j, k; |
reductions *rp; |
reductions *rp; |
|
|
} |
} |
|
|
void |
void |
set_goto_map() |
set_goto_map(void) |
{ |
{ |
shifts *sp; |
shifts *sp; |
int i; |
int i; |
|
|
/* Map_goto maps a state/symbol pair into its numeric representation. */ |
/* Map_goto maps a state/symbol pair into its numeric representation. */ |
|
|
int |
int |
map_goto(state, symbol) |
map_goto(int state, int symbol) |
int state; |
|
int symbol; |
|
{ |
{ |
int high; |
int high; |
int low; |
int low; |
|
|
|
|
|
|
void |
void |
initialize_F() |
initialize_F(void) |
{ |
{ |
int i; |
int i; |
int j; |
int j; |
|
|
|
|
|
|
void |
void |
build_relations() |
build_relations(void) |
{ |
{ |
int i; |
int i; |
int j; |
int j; |
|
|
} |
} |
|
|
void |
void |
add_lookback_edge(stateno, ruleno, gotono) |
add_lookback_edge(int stateno, int ruleno, int gotono) |
int stateno, ruleno, gotono; |
|
{ |
{ |
int i, k; |
int i, k; |
int found; |
int found; |
|
|
|
|
|
|
short ** |
short ** |
transpose(R, n) |
transpose(short **R, int n) |
short **R; |
|
int n; |
|
{ |
{ |
short **new_R; |
short **new_R; |
short **temp_R; |
short **temp_R; |
|
|
|
|
|
|
void |
void |
compute_FOLLOWS() |
compute_FOLLOWS(void) |
{ |
{ |
digraph(includes); |
digraph(includes); |
} |
} |
|
|
void |
void |
compute_lookaheads() |
compute_lookaheads(void) |
{ |
{ |
int i, n; |
int i, n; |
unsigned *fp1, *fp2, *fp3; |
unsigned *fp1, *fp2, *fp3; |
|
|
} |
} |
|
|
void |
void |
digraph(relation) |
digraph(short **relation) |
short **relation; |
|
{ |
{ |
int i; |
int i; |
|
|
|
|
|
|
|
|
void |
void |
traverse(i) |
traverse(int i) |
int i; |
|
{ |
{ |
unsigned *fp1; |
unsigned *fp1; |
unsigned *fp2; |
unsigned *fp2; |