quakeforge/tools/qfcc/source
Bill Currie fbaf1456fe [qfcc] Use auxiliary operands for move instructions
Since Ruamoko progs must use lea to get the address of a local variable,
add use/def/kill references to the move instruction in order to inform
flow analysis of the variable since it is otherwise lost via the
resulting pointer (not an issue when direct var reference move can be
used).

The test and digging for the def can probably do with being more
aggressive, but this did nicely as a proof of concept.
2022-01-29 18:26:54 +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 [qfcc] Rework the functionality of address expressions 2022-01-25 23:39:17 +09:00
codespace.c [gamecode] Move progs auxiliary headers into a subdirectory 2022-01-09 00:26:52 +09:00
constfold.c [qfcc] Fold int constants more aggressively 2022-01-29 15:38:39 +09:00
cpp.c Get QF cross-compiling using MXE/mingw32 2021-03-27 20:09:37 +09:00
dags.c [qfcc] Improve dags handling of auxiliary use ops 2022-01-24 16:55:55 +09:00
debug.c [gamecode] Rename ev_integer to ev_int 2022-01-18 13:27:19 +09:00
def.c [qfcc] Copy def reg into alias def 2022-01-24 18:31:53 +09:00
defspace.c [qfcc] Allow 0 sized highwater allocations in defspaces 2022-01-21 10:16:54 +09:00
diagnostic.c [gamecode] Clean up string_t and pointer_t 2022-01-18 12:11:14 +09:00
disassemble.c [gamecode] Rename parm to param 2022-01-27 10:55:06 +09:00
dot.c [build] Move to non-recursive make 2020-06-25 11:35:37 +09:00
dot_dag.c [qfcc] Keep track of reachable dag nodes 2021-06-29 09:41:03 +09:00
dot_expr.c [qfcc] Print children of uexpr and return expressions 2022-01-25 12:29:15 +09:00
dot_flow.c [util] Make va thread-safe 2021-01-31 16:05:48 +09:00
dot_sblock.c [qfcc] Make it a little easier to see extra info 2021-12-27 14:15:51 +09:00
dot_type.c [gamecode] Rename ev_pointer to ev_ptr 2022-01-18 14:36:06 +09:00
dump_globals.c [gamecode] Rename parm to param 2022-01-27 10:55:06 +09:00
dump_lines.c [gamecode] Use a struct for offset/count pairs 2022-01-26 19:30:25 +09:00
dump_modules.c [gamecode] Use a struct for offset/count pairs 2022-01-26 19:30:25 +09:00
dump_strings.c [gamecode] Use a struct for offset/count pairs 2022-01-26 19:30:25 +09:00
emit.c [qfcc] "Use" the correct operands 2022-01-23 00:59:38 +09:00
expr.c [qfcc] Use auxiliary operands for move instructions 2022-01-29 18:26:54 +09:00
expr_assign.c [qfcc] Rework the functionality of address expressions 2022-01-25 23:39:17 +09:00
expr_binary.c [qfcc] Cast pointers to ints for comparison 2022-01-29 18:23:07 +09:00
expr_bool.c [gamecode] Add ev_ushort and partial support 2022-01-18 22:08:37 +09:00
expr_compound.c [build] Move to non-recursive make 2020-06-25 11:35:37 +09:00
expr_obj.c [qfcc] Rework the functionality of address expressions 2022-01-25 23:39:17 +09:00
flow.c [qfcc] Rework the functionality of address expressions 2022-01-25 23:39:17 +09:00
function.c [qfcc] Use locals and params_start to describe stack frame 2022-01-27 11:37:37 +09:00
grab.c [build] Move to non-recursive make 2020-06-25 11:35:37 +09:00
idstuff.c [gamecode] Use a struct for offset/count pairs 2022-01-26 19:30:25 +09:00
linker.c [gamecode] Clean up string_t and pointer_t 2022-01-18 12:11:14 +09:00
Makemodule.am Get QF cross-compiling using MXE/mingw32 2021-03-27 20:09:37 +09:00
method.c [gamecode] Rename MAX_PARMS to PR_MAXPARAMS 2022-01-23 14:17:25 +09:00
obj_file.c [qfcc] Remove the def sorting (reverts 9a08a51ebd) 2022-01-27 16:43:43 +09:00
obj_type.c [gamecode] Rename ev_pointer to ev_ptr 2022-01-18 14:36:06 +09:00
opcodes.c [qfcc] Mask off base register bits when printing statements 2022-01-26 12:26:50 +09:00
options.c [gamecode] Move progs auxiliary headers into a subdirectory 2022-01-09 00:26:52 +09:00
pragma.c [qfcc] Add pragma to control warning promotion 2022-01-25 22:15:28 +09:00
qc-lex.l [qfcc] Improve handling of type names as variables 2022-01-19 23:17:49 +09:00
qc-parse.y [qfcc] Rework the functionality of address expressions 2022-01-25 23:39:17 +09:00
qfcc.c [gamecode] Rename parm to param 2022-01-27 10:55:06 +09:00
qfpreqcc Better handling of progs.dat and line numbers. 2012-11-15 15:04:51 +09:00
qfprogs.c [gamecode] Use a struct for offset/count pairs 2022-01-26 19:30:25 +09:00
qp-lex.l [gamecode] Rename ev_integer to ev_int 2022-01-18 13:27:19 +09:00
qp-parse.y [qfcc] Pass initialize_def the symtab to use as a parameter 2022-01-24 12:48:02 +09:00
reloc.c [gamecode] Rename ev_integer to ev_int 2022-01-18 13:27:19 +09:00
shared.c [gamecode] Rename ev_integer to ev_int 2022-01-18 13:27:19 +09:00
statements.c [qfcc] Use auxiliary operands for move instructions 2022-01-29 18:26:54 +09:00
strpool.c [build] Move to non-recursive make 2020-06-25 11:35:37 +09:00
struct.c [gamecode] Rename ev_integer to ev_int 2022-01-18 13:27:19 +09:00
stub.c [gamecode] Clean up string_t and pointer_t 2022-01-18 12:11:14 +09:00
switch.c [qfcc] Rework the functionality of address expressions 2022-01-25 23:39:17 +09:00
symtab.c [qfcc] Improve handling of type names as variables 2022-01-19 23:17:49 +09:00
type.c [gamecode] Create macros for progs sizeof and alignof 2022-01-23 14:29:33 +09:00
value.c [qfcc] Shorten type_function and type_pointer names 2022-01-18 22:34:52 +09:00