#include "parm.h"
#include <stdio.h>
#include "stree/ststructs.mh"
#include "pass3/is_local.h"
#include "codegen.h"
Go to the source code of this file.
Data Structures | |
struct | constr_list |
struct | adj_list |
Defines | |
#define | DEBUG |
#define | TRACE |
#define | cl_nil ((struct constr_list *)0) |
#define | adj_nil ((struct adj_list *)0) |
#define | HSIZE 317 |
#define | hash(p) (((int)p) % HSIZE) |
Functions | |
void | adj_free (struct adj_list *p) |
struct adj_list * | find_adj (NODE *i) |
void | sl_dep_add (NODE *i, NODE *j) |
sl_mark_reachable (NODE *i) | |
void | sl_solve () |
void | process_global (int i) |
void | cond_process_global (int i, NODE *fc) |
sl_analyze (NODE *p) | |
cond_sl_analyze1 (NODE *p, boolean needed) | |
sl_analyze1 (NODE *p) | |
Variables | |
FILE * | unparse_file |
boolean | Vflag |
static int | nestlevel |
static NODE * | current_blk |
static NODE * | current_fc |
struct adj_list * | sl_deps [HSIZE] |
#define adj_nil ((struct adj_list *)0) |
#define cl_nil ((struct constr_list *)0) |
Definition at line 37 of file sl_analyze.c.
Referenced by adj_free(), find_adj(), and sl_mark_reachable().
#define DEBUG |
Definition at line 1 of file sl_analyze.c.
#define hash | ( | p | ) | (((int)p) % HSIZE) |
Definition at line 50 of file sl_analyze.c.
#define HSIZE 317 |
#define TRACE |
Definition at line 3 of file sl_analyze.c.
void adj_free | ( | struct adj_list * | p | ) |
Definition at line 55 of file sl_analyze.c.
References constr_list::cl_next, cl_nil, and free.
Referenced by sl_solve().
void cond_process_global | ( | int | i, | |
NODE * | fc | |||
) |
Definition at line 188 of file sl_analyze.c.
References current_blk, current_fc, nestlevel, process_global(), and sl_dep_add().
Definition at line 68 of file sl_analyze.c.
References adj_list::adj_dests, adj_list::adj_next, adj_nil, adj_list::adj_source, cl_nil, hash, and malloc.
Referenced by sl_dep_add(), and sl_mark_reachable().
void process_global | ( | int | i | ) |
Definition at line 159 of file sl_analyze.c.
References current_blk, dbgmsg, and nestlevel.
Referenced by cond_process_global(), and sl_analyze1().
sl_analyze | ( | NODE * | p | ) |
Definition at line 214 of file sl_analyze.c.
References sl_analyze1(), and sl_solve().
Referenced by Ggeneratecode(), Ggeneratepcode(), and GgenerateXcode().
sl_analyze1 | ( | NODE * | p | ) |
Definition at line 234 of file sl_analyze.c.
References ASSERT, current_blk, nestlevel, NIL, process_global(), unparse(), unparse_file, and v.
Referenced by cond_sl_analyze1(), and sl_analyze().
Definition at line 87 of file sl_analyze.c.
References constr_list::cl_constr, constr_list::cl_next, find_adj(), and malloc.
Referenced by cond_process_global().
sl_mark_reachable | ( | NODE * | i | ) |
Definition at line 99 of file sl_analyze.c.
References constr_list::cl_constr, constr_list::cl_next, cl_nil, dbgmsg, and find_adj().
Referenced by sl_solve().
void sl_solve | ( | ) |
Definition at line 131 of file sl_analyze.c.
References adj_free(), adj_nil, HSIZE, and sl_mark_reachable().
Referenced by sl_analyze().
NODE* current_blk [static] |
Definition at line 22 of file sl_analyze.c.
Referenced by cond_process_global(), process_global(), and sl_analyze1().
NODE* current_fc [static] |
Definition at line 26 of file sl_analyze.c.
int nestlevel [static] |
Definition at line 20 of file sl_analyze.c.
Definition at line 52 of file sl_analyze.c.
FILE* unparse_file |
Definition at line 6 of file extract_sig.c.