quakeforge/tools/qfcc/source
Bill Currie 1100efba54 Nuke find_operands in favor of flow_analyze_statement.
flow_analyze_statement uses the statement type to quickly determin which
operands are inputs and which are outputs. It takes (optional) sets for
used variables, defined variables and killed variables (only partially
working, but I don't actually use kill sets yet). It also takes an optional
array for storing the operands: index 0 is the output, 1-3 are the inputs.
flow_analyze_statement clears any given sets on entry.

Live variable analysis now uses the sets rather than individual vars. Much
cleaner code :).

Dags are completely broken.
2012-11-16 19:33:37 +09:00
..
.indent.pro indent whitespace cleanup. not perfect, but a bit more consistent now 2001-12-06 19:49:40 +00:00
class.c Fix class type encoding. 2012-11-12 12:46:15 +09:00
codespace.c Nuke the rcsid stuff. 2012-04-22 10:56:32 +09:00
constfold.c Make values independent objects. 2012-11-15 13:44:06 +09:00
cpp.c Fall back to execve/wait when execvp and waitpid are unavailable. 2012-08-19 13:18:38 +09:00
dags.c Nuke find_operands in favor of flow_analyze_statement. 2012-11-16 19:33:37 +09:00
debug.c Nuke the rcsid stuff. 2012-04-22 10:56:32 +09:00
def.c Store the initializer expression in the def. 2012-11-15 13:44:07 +09:00
defspace.c Massive whitespace cleanup. 2012-05-22 08:23:22 +09:00
diagnostic.c Add a non-error diagnostic that can't be silenced. 2012-05-03 13:24:24 +09:00
disassemble.c Nuke the rcsid stuff. 2012-04-22 10:56:32 +09:00
dot.c Create a function to generalize dot dumping. 2012-11-15 13:44:08 +09:00
dot_dag.c Make the dags in flow graphs a little easier to read. 2012-11-16 12:42:57 +09:00
dot_expr.c Make values independent objects. 2012-11-15 13:44:06 +09:00
dot_flow.c Make the dags in flow graphs a little easier to read. 2012-11-16 12:42:57 +09:00
dot_sblock.c Compute dags as part of data flow analysis. 2012-11-15 13:44:08 +09:00
dump_globals.c Support progs.dat when dumping type encodings. 2012-11-15 11:58:13 +09:00
dump_lines.c Nuke the rcsid stuff. 2012-04-22 10:56:32 +09:00
dump_modules.c Nuke the rcsid stuff. 2012-04-22 10:56:32 +09:00
dump_strings.c Nuke the rcsid stuff. 2012-04-22 10:56:32 +09:00
emit.c Ensure alias operands are never nested. 2012-11-15 15:18:00 +09:00
expr.c Fix a bunch of mis-uses of an expressions's value. 2012-11-15 13:44:06 +09:00
flow.c Nuke find_operands in favor of flow_analyze_statement. 2012-11-16 19:33:37 +09:00
function.c Make a start on regenerating code from dags. 2012-11-15 13:44:09 +09:00
grab.c Make hash tables more const correct. 2012-10-27 11:44:31 +09:00
idstuff.c Use dstring for progdefs.h writing. 2012-05-02 23:39:49 +09:00
linker.c Relocate the data in the type encodings space. 2012-11-14 20:37:19 +09:00
Makefile.am Create a function to generalize dot dumping. 2012-11-15 13:44:08 +09:00
method.c A bit of a cleanup before fixing class type defs. 2012-11-12 11:12:33 +09:00
obj_file.c Make .type_encodings more useful. 2012-11-15 11:57:16 +09:00
obj_type.c Make values independent objects. 2012-11-15 13:44:06 +09:00
opcodes.c Make hash tables more const correct. 2012-10-27 11:44:31 +09:00
options.c Calculate a node's successors and predecessors. 2012-11-15 13:44:06 +09:00
qc-lex.l A bit of a cleanup before fixing class type defs. 2012-11-12 11:12:33 +09:00
qc-parse.y Rework the unary_expr grammar to allow ++*foo. 2012-11-09 12:32:38 +09:00
qfcc.c Make .type_encodings more useful. 2012-11-15 11:57:16 +09:00
qfpreqcc Better handling of progs.dat and line numbers. 2012-11-15 14:53:09 +09:00
qfprogs.c Support progs.dat when dumping type encodings. 2012-11-15 11:58:13 +09:00
qp-lex.l Make hash tables more const correct. 2012-10-27 11:44:31 +09:00
qp-parse.y Rework the unary_expr grammar to allow ++*foo. 2012-11-09 12:32:38 +09:00
reloc.c Take care of relocs when defining external defs. 2012-11-12 16:14:09 +09:00
set.c Fix an out-by-one error in the set operators. 2012-11-15 13:44:08 +09:00
shared.c Merge qfpc into qfcc. 2012-10-26 16:01:41 +09:00
statements.c Nuke find_operands in favor of flow_analyze_statement. 2012-11-16 19:33:37 +09:00
strpool.c Separate out C and html quoting into separate functions. 2012-10-30 12:31:22 +09:00
struct.c Make values independent objects. 2012-11-15 13:44:06 +09:00
stub.c Quote string values when dumping globals. 2012-11-08 21:13:24 +09:00
switch.c Make values independent objects. 2012-11-15 13:44:06 +09:00
symtab.c Take care of relocs when defining external defs. 2012-11-12 16:14:09 +09:00
type.c Make .type_encodings more useful. 2012-11-15 11:57:16 +09:00
value.c Fix a slew of uninitialized data problems. 2012-11-15 13:44:06 +09:00