quakeforge/tools/qfcc/source
Bill Currie ef9960c6f9 [qfcc] Implement support for the swizzle operator
The destination operand must be a full four component vector, but the
source can be smaller and small sources do not need to be aligned: the
offset of the source operand and the swizzle indices are adjusted. The
adjustments are done during final statement emission in order to avoid
confusing the data flow analyser (and that's when def offsets are known).
2022-05-01 14:35:24 +09:00
..
.indent.pro indent whitespace cleanup. not perfect, but a bit more consistent now 2001-12-06 19:49:40 +00:00
attribute.c [qfcc] Add a very basic attribute system 2022-02-02 23:51:37 +09:00
class.c [qfcc] Use a union to manage function attributes 2022-02-05 19:30:08 +09:00
codespace.c [gamecode] Move progs auxiliary headers into a subdirectory 2022-01-09 00:26:52 +09:00
constfold.c [qfcc] Clean up handling of value expressions 2022-04-29 16:59:55 +09:00
cpp.c Get QF cross-compiling using MXE/mingw32 2021-03-27 20:09:37 +09:00
dags.c [qfcc] Ensure ops on globals occur before return 2022-02-03 16:33:42 +09:00
debug.c [gamecode] Rename ev_integer to ev_int 2022-01-18 13:27:19 +09:00
def.c Revert "Don't bother creating an alias for a def of the same type." 2022-05-01 14:35:24 +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] Implement support for the swizzle operator 2022-05-01 14:35:24 +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] Clean up progs data access 2022-04-29 16:59:15 +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] Implement support for the swizzle operator 2022-05-01 14:35:24 +09:00
expr.c [qfcc] Implement support for the swizzle operator 2022-05-01 14:35:24 +09:00
expr_assign.c [qfcc] Implement support for the swizzle operator 2022-05-01 14:35:24 +09:00
expr_binary.c [qfcc] Implement support for the swizzle operator 2022-05-01 14:35:24 +09:00
expr_bool.c [qfcc] Always test float against 0 for Ruamoko 2022-02-06 21:20:00 +09:00
expr_cast.c [qfcc] Clean up handling of value expressions 2022-04-29 16:59:55 +09:00
expr_compound.c [qfcc] Implement some basics for the vector types 2022-02-04 00:25:31 +09:00
expr_obj.c [qfcc] Make is_function_call a little more useful 2022-02-05 19:30:08 +09:00
expr_vector.c [qfcc] Implement automatic casting between same-width vectors 2022-04-29 18:12:47 +09:00
flow.c [qfcc] Give lea its own statement type 2022-02-02 18:55:01 +09:00
function.c [qfcc] Unify temp def, return value and parameter sizes 2022-02-15 08:39:20 +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 [qfcc] Implement constant casts for the new vector types 2022-04-29 16:59:55 +09:00
method.c [gamecode] Rename MAX_PARMS to PR_MAXPARAMS 2022-01-23 14:17:25 +09:00
obj_file.c [gamecode] Clean up progs data access 2022-04-29 16:59:15 +09:00
obj_type.c [qfcc] Encode the new vector types 2022-01-30 16:00:49 +09:00
opcodes.c [qfcc] Implement support for the swizzle operator 2022-05-01 14:35:24 +09:00
options.c [qfcc] Make the meaning of vec * vec selectable 2022-02-06 21:20:00 +09:00
pragma.c [qfcc] Make the meaning of vec * vec selectable 2022-02-06 21:20:00 +09:00
qc-lex.l [qfcc] Implement ulong, long and uint constants 2022-04-29 18:12:47 +09:00
qc-parse.y [qfcc] Implement ulong, long and uint constants 2022-04-29 18:12:47 +09:00
qfcc.c [gamecode] Clean up progs data access 2022-04-29 16:59:15 +09:00
qfpreqcc Better handling of progs.dat and line numbers. 2012-11-15 15:04:51 +09:00
qfprogs.c [cvar] Make cvars properly typed 2022-04-24 19:15:22 +09:00
qp-lex.l [gamecode] Rename ev_integer to ev_int 2022-01-18 13:27:19 +09:00
qp-parse.y [qfcc] Use a hidden local variable for pascal functions 2022-02-01 16:08:58 +09:00
reloc.c [gamecode] Clean up progs data access 2022-04-29 16:59:15 +09:00
shared.c [gamecode] Rename ev_integer to ev_int 2022-01-18 13:27:19 +09:00
statements.c [qfcc] Implement support for the swizzle operator 2022-05-01 14:35:24 +09:00
strpool.c [build] Move to non-recursive make 2020-06-25 11:35:37 +09:00
struct.c [gamecode] Clean up progs data access 2022-04-29 16:59:15 +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 [qfcc] Implement support for the swizzle operator 2022-05-01 14:35:24 +09:00
value.c [qfcc] Implement ulong, long and uint constants 2022-04-29 18:12:47 +09:00