quakeforge/tools/qfcc/source
Bill Currie 54e079ab75 [qfcc] Fold int constants more aggressively
This code now reaches into one level of the expression tree and
rearranges the nodes to allow the constant folder to do its things, but
only for ints, and only when the folding is trivially correct (* and *,
+/- and +/-). There may be more opportunities, but these cover what I
needed for now and anything more will need code generation or smarter
tree manipulation as things are getting out of hand.
2022-01-29 15:38:39 +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] Reduce some alias chaining 2022-01-28 15:29:40 +09:00
expr_assign.c [qfcc] Rework the functionality of address expressions 2022-01-25 23:39:17 +09:00
expr_binary.c [qfcc] Make a field name more clear 2022-01-27 23:29:32 +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] Rewrite assignment destination addressing 2022-01-28 15:50:46 +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