quakeforge/tools/qfcc/source
Bill Currie b668759b7d [qfcc] Add a very basic attribute system
Ruamoko passes va_list (@args) through the ... parameter (as such), but
IMP uses ... to defeat parameter type and count checking and doesn't
want va_list. While possibly not the best solution, adding a no_va_list
flag to function types and skipping ex_args entirely does take care of
the problem without hard-coding anything specific to IMP.

The system currently just sets some bits in the type specifier (the
attribute list should probably be carried around with the specifier),
but it gets the job done for now, and at least gets things started.
2022-02-02 23:51:37 +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] Add a very basic attribute system 2022-02-02 23:51:37 +09:00
codespace.c [gamecode] Move progs auxiliary headers into a subdirectory 2022-01-09 00:26:52 +09:00
constfold.c [qfcc] Implement vector scaling for Ruamoko 2022-01-30 14:48:49 +09:00
cpp.c Get QF cross-compiling using MXE/mingw32 2021-03-27 20:09:37 +09:00
dags.c [qfcc] Give lea its own statement type 2022-02-02 18:55:01 +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] Implement dot and cross product for Ruamoko 2022-01-30 14:14: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 [qfcc] Encode the new vector types 2022-01-30 16:00:49 +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] Add a very basic attribute system 2022-02-02 23:51:37 +09:00
expr_assign.c [qfcc] Add support for horizontal vector ops 2022-01-30 10:56:15 +09:00
expr_binary.c [qfcc] Implement vector scaling for Ruamoko 2022-01-30 14:48:49 +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] Give lea its own statement type 2022-02-02 18:55:01 +09:00
function.c [qfcc] Add types for ivec3/4 and vec3/4 2022-01-30 10:54:07 +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] Add a very basic attribute system 2022-02-02 23:51: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 [qfcc] Encode the new vector types 2022-01-30 16:00:49 +09:00
opcodes.c [qfcc] Check load/store operand type before mangling 2022-02-02 19:14:22 +09:00
options.c [qfcc] Define __RUAMOKO__ as 2 for Ruamoko ISA 2022-01-30 14:22:05 +09:00
pragma.c [qfcc] Add pragma to control optimization 2022-02-01 14:57:16 +09:00
qc-lex.l [qfcc] Add a very basic attribute system 2022-02-02 23:51:37 +09:00
qc-parse.y [qfcc] Add a very basic attribute system 2022-02-02 23:51:37 +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] Use a hidden local variable for pascal functions 2022-02-01 16:08:58 +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] Give lea its own statement type 2022-02-02 18:55:01 +09:00
strpool.c [build] Move to non-recursive make 2020-06-25 11:35:37 +09:00
struct.c [qfcc] Add types for ivec3/4 and vec3/4 2022-01-30 10:54:07 +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] Add a very basic attribute system 2022-02-02 23:51:37 +09:00
value.c [qfcc] Shorten type_function and type_pointer names 2022-01-18 22:34:52 +09:00