Dale Weiler
2208136403
Implement support for indirect macro expansions in the preprocessor. This closes #36
2014-09-27 01:48:03 -04:00
Dale Weiler
53e9ed0d96
Merge branch 'arithmetic_exceptions' into cooking
...
Conflicts:
doc/gmqcc.1
gmqcc.ini.example
opts.def
parser.c
2014-05-25 03:01:47 -04:00
Dale Weiler
bbeb2517c0
Arithmetic exception flag and a plethora of tests.
2014-05-24 10:38:02 -04:00
Dale Weiler
6424ebaf98
Perliminary work on arithmetic exception handling in the constant evaluator. We can safely check for arithmetic underflow, overflow, divison by zero and inexactness now. Inexactness of expressions are propagated through the AST such that using an inexact value in a comparison will trigger a warning with -Winexact-compares.
2014-05-24 09:53:38 -04:00
Wolfgang Bumiller
8dafdfc5e2
use INSTR_STATE by default, add -femulate-state to switch to emulation, and -state-fps=NUM to set its emulation FPS
2014-04-08 14:34:55 +02:00
Dale Weiler
6a44b72db3
Mask ftepp math constants with a compiler flag
2013-12-01 10:45:43 -05:00
Dale Weiler
292c8150b4
Resolve undefined functions to compiler builtins if they exist.
2013-11-23 06:57:40 -05:00
Dale Weiler
2ebf571129
Update documentation
2013-09-30 16:03:22 -04:00
Dale Weiler
cf2352893f
Consistency
2013-09-25 16:19:33 -04:00
Dale Weiler
73eca0848c
Fix QuakeWorld compilation by treating assignment to constants as a warning when -std=qcc.
2013-09-24 07:31:53 -04:00
Rudolf Polzer
f4f805f4c9
New options: -ftypeless-stores and -fsort-operands
...
These flags reduce entropy, but not size, of the generated assembly
code. This helps compressability of the files.
Additionally, -ftypeless-stores might SLIGHTLY improve engine
performance due to less instructions being used (so branch prediction
might work better). Probably cannot be measured though.
Signed-off-by: Rudolf Polzer <divverent@xonotic.org>
2013-08-27 09:55:00 +02:00
Dale Weiler
079ed491a9
Update the ini example, holy hell we have more options than I imagined.
2013-08-16 04:22:53 +00:00
Dale Weiler
84ad8ec37a
Update gmqcc.ini.example
2013-07-04 15:24:55 -04:00
Wolfgang Bumiller
b9fb29d740
manpage and ini update
2013-04-25 19:17:58 +02:00
Wolfgang Bumiller
bfbbe0c771
gmqcc.ini.example: LEGACY_VECTOR_MATHS
2013-01-14 11:17:25 +01:00
Wolfgang Bumiller
3652a122ed
Removed -fenhanced-diagnostics - it's now --correct, which makes sense since it doesn't affect the compilation process itself
2013-01-12 17:10:07 +01:00
Wolfgang Bumiller
f440c3c614
gmqcc.ini.example: VARIADIC_ARGS
2013-01-12 16:32:36 +01:00
Dale Weiler
793547a132
Implemented -f[no]enhanced-diagnostics, to enable/disable the usage of enhanced diagnostics.
2013-01-04 12:07:42 +00:00
Wolfgang Bumiller
d47da25b82
Changing -Wtoo-few-parameters to -Winvalid-parameter-count; removing hardcoded COMPILER_GMQCC code which makes invalid parameter counts an error and instead make -std=gmqcc imply -Werror-invalid-parameter-count
2012-12-31 12:29:25 +01:00
Wolfgang Bumiller
2637f6f824
gmqcc.ini.example: -Wparenthesis
2012-12-31 11:14:43 +01:00
Dale Weiler
921877e8a4
Implement [[deprecated]] general attribute, will mark functions as deprecated. Making calls to functions marked as such will trigger a compiler warning. Enabled by default.
2012-12-30 06:43:07 +00:00
Wolfgang Bumiller
d961cfb855
gmqcc.ini.example: DIFFERENT_QUALIFIERS, DIFFERENT_ATTRIBUTES
2012-12-29 17:41:20 +01:00
Wolfgang Bumiller
fda4f4d027
gmqcc.ini.example: VECTOR_COMPONENTS
2012-12-29 15:13:28 +01:00
Wolfgang Bumiller
ded1ab3da1
Typo...
2012-12-28 21:05:04 +01:00
Wolfgang Bumiller
2ac2827256
Updating gmqcc.ini.example
2012-12-28 21:04:14 +01:00
Dale Weiler
0e40ef172a
Document ini.example
2012-12-21 04:01:47 +00:00
Dale Weiler
bf53f82d16
Update ini.example (added UNREACHABLE_CODE, and CPP) as warning options
2012-12-21 03:14:31 +00:00
Wolfgang (Blub) Bumiller
26f3370ea6
Renaming gmqcc.init since it's used by default if it exists and it makes the testsuite fail
2012-12-18 11:48:03 +01:00