quakeforge/tools/qfcc/source
Bill Currie 4bf6ce45d4 [qfcc] Convert chained scales to scale by product
That is, scale(scale(A,b),c) becomes scale(A,b*c), thus giving the
expression dag more opportunities to find common sub-expressions. My
fancy zero test is down to 20 total instructions (including overhead, or
16 for the actual algebra).
2023-09-29 10:16:00 +09:00
..
.indent.pro indent whitespace cleanup. not perfect, but a bit more consistent now 2001-12-06 19:49:40 +00:00
algebra.c [qfcc] Make expressions const-correct 2023-09-29 10:15:59 +09:00
attribute.c [qfcc] Make expressions const-correct 2023-09-29 10:15:59 +09:00
class.c [qfcc] Make expressions const-correct 2023-09-29 10:15:59 +09:00
codespace.c [gamecode] Move progs auxiliary headers into a subdirectory 2022-01-09 00:26:52 +09:00
constfold.c [qfcc] Make expressions const-correct 2023-09-29 10:15:59 +09:00
cpp.c Get QF cross-compiling using MXE/mingw32 2021-03-27 20:09:37 +09:00
dags.c [qfcc] Make expressions const-correct 2023-09-29 10:15:59 +09:00
debug.c [util] Record allocated blocs for ALLOC 2023-03-05 18:31:30 +09:00
def.c [qfcc] Make expressions const-correct 2023-09-29 10:15:59 +09:00
defspace.c [qfcc] Ensure progs defs are sorted by address 2023-09-12 22:26:30 +09:00
diagnostic.c [qfcc] Make expressions const-correct 2023-09-29 10:15:59 +09:00
disassemble.c [qfprogs] Create a stack for disassembly of locals 2023-09-12 22:21:55 +09:00
dot.c [qfcc] Make expressions const-correct 2023-09-29 10:15:59 +09:00
dot_dag.c [qfcc] Skip dag dependency lines for leaf nodes 2023-09-19 11:47:28 +09:00
dot_expr.c [qfcc] Use ex_list_t for multivec components 2023-09-29 10:16:00 +09:00
dot_flow.c [qfcc] Make expressions const-correct 2023-09-29 10:15:59 +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 [qfcc] Start work on implementing geometric algebra 2023-08-21 17:58:20 +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 [qfprogs] Dump hex for non-ascii chars 2022-12-10 21:53:00 +09:00
emit.c [qfcc] Make expressions const-correct 2023-09-29 10:15:59 +09:00
evaluate.c [qfcc] Make expressions const-correct 2023-09-29 10:15:59 +09:00
expr.c [qfcc] Use ex_list_t for multivec components 2023-09-29 10:16:00 +09:00
expr_algebra.c [qfcc] Convert chained scales to scale by product 2023-09-29 10:16:00 +09:00
expr_assign.c [qfcc] Make expressions const-correct 2023-09-29 10:15:59 +09:00
expr_binary.c [qfcc] Make expressions const-correct 2023-09-29 10:15:59 +09:00
expr_bool.c [qfcc] Make expressions const-correct 2023-09-29 10:15:59 +09:00
expr_cast.c [qfcc] Make expressions const-correct 2023-09-29 10:15:59 +09:00
expr_compound.c [qfcc] Make expressions const-correct 2023-09-29 10:15:59 +09:00
expr_dag.c [qfcc] Make expressions const-correct 2023-09-29 10:15:59 +09:00
expr_obj.c [qfcc] Make expression lists more generally usable 2023-09-29 10:16:00 +09:00
expr_vector.c [qfcc] Make expressions const-correct 2023-09-29 10:15:59 +09:00
flow.c [qfcc] Set a flowvar's minimum size based on usage 2023-09-11 22:59:40 +09:00
function.c [qfcc] Make expressions const-correct 2023-09-29 10:15:59 +09:00
grab.c [util] Record allocated blocs for ALLOC 2023-03-05 18:31:30 +09:00
idstuff.c [gamecode] Use a struct for offset/count pairs 2022-01-26 19:30:25 +09:00
linker.c [qfcc] Ensure progs defs are sorted by address 2023-09-12 22:26:30 +09:00
Makemodule.am [qfcc] Use dags for many expressions 2023-09-25 16:57:15 +09:00
method.c [qfcc] Make expressions const-correct 2023-09-29 10:15:59 +09:00
obj_file.c [qfcc] Ensure progs defs are sorted by address 2023-09-12 22:26:30 +09:00
obj_type.c [qfcc] Start work on implementing geometric algebra 2023-08-21 17:58:20 +09:00
opcodes.c [qfcc] Always initialize Ruamoko opcodes 2023-09-01 14:40:05 +09:00
options.c [qfcc] Clean up default option handling 2023-09-01 14:18:54 +09:00
pragma.c [qfcc] Add pragma control of code options 2023-09-25 16:57:15 +09:00
qc-lex.l [qfcc] Make expressions const-correct 2023-09-29 10:15:59 +09:00
qc-parse.y [qfcc] Make expression lists more generally usable 2023-09-29 10:16:00 +09:00
qfcc.c [qfcc] Clean up default option handling 2023-09-01 14:18:54 +09:00
qfpreqcc Better handling of progs.dat and line numbers. 2012-11-15 15:04:51 +09:00
qfprogs.c [qfprogs] Create a stack for disassembly of locals 2023-09-12 22:21:55 +09:00
qp-lex.l [gamecode] Rename ev_integer to ev_int 2022-01-18 13:27:19 +09:00
qp-parse.y [qfcc] Make expression lists more generally usable 2023-09-29 10:16:00 +09:00
reloc.c [util] Record allocated blocs for ALLOC 2023-03-05 18:31:30 +09:00
shared.c [qfcc] Use dags for many expressions 2023-09-25 16:57:15 +09:00
statements.c [qfcc] Make expressions const-correct 2023-09-29 10:15:59 +09:00
strpool.c [qfcc] Ensure non-unicode char string is terminated 2022-12-10 21:53:45 +09:00
struct.c [qfcc] Make expressions const-correct 2023-09-29 10:15:59 +09:00
stub.c [qfcc] Make expressions const-correct 2023-09-29 10:15:59 +09:00
switch.c [qfcc] Make expressions const-correct 2023-09-29 10:15:59 +09:00
symtab.c [qfcc] Make expressions const-correct 2023-09-29 10:15:59 +09:00
type.c [qfcc] Make expressions const-correct 2023-09-29 10:15:59 +09:00
value.c [qfcc] Make the expression union anonymous 2023-09-23 18:01:49 +09:00