Dale Weiler
|
322fbaf389
|
More cleanups
|
2012-12-22 07:54:14 +00:00 |
|
Dale Weiler
|
7753e19ba8
|
Cleanups
|
2012-12-22 07:24:25 +00:00 |
|
Dale Weiler
|
88fee02228
|
Windows stuff for visual studio now offical works with exception to colorized output to cmd (which actually should work). As well as the testsuite which lacks implementations of task_popen/task_pclose.
|
2012-12-21 06:16:08 -05:00 |
|
Dale Weiler
|
3c003bc168
|
Get gmqcc/qcvm compiling on windows again. Plus work in progress support for the testsuite on windows (does not compile yet).
|
2012-12-21 01:00:51 -05:00 |
|
Dale Weiler
|
c7a62970a6
|
Merge branch 'master' of github.com:graphitemaster/gmqcc
|
2012-12-20 23:07:33 +00:00 |
|
Dale Weiler
|
e1f0e40341
|
Implemented roboust compile-time endianess check.
|
2012-12-20 23:07:06 +00:00 |
|
Wolfgang Bumiller
|
e38bdecd21
|
Be more correct with sizes; use a better local-alloc strategy
|
2012-12-20 23:48:41 +01:00 |
|
Wolfgang Bumiller
|
1d3fdea432
|
Fix util_endianswap; and endianswap the LNO data as well
|
2012-12-20 22:03:51 +01:00 |
|
Wolfgang Bumiller
|
6cd821d459
|
-Werror-<warning> should actually use opts_setwerror
|
2012-12-20 16:53:09 +01:00 |
|
Wolfgang Bumiller
|
b360245b45
|
-Werror-<warning>, -Wno-error-<warning>, manpage updated
|
2012-12-20 16:49:10 +01:00 |
|
Dale Weiler
|
2e57a952a7
|
No more hacks
|
2012-12-20 10:20:16 +00:00 |
|
Dale Weiler
|
9f742271b1
|
Another fix
|
2012-12-20 08:19:43 +00:00 |
|
Dale Weiler
|
d7585a810a
|
FTBFS fixes
|
2012-12-20 08:17:04 +00:00 |
|
Wolfgang (Blub) Bumiller
|
afaa162aa1
|
Applying the actual 'Fix FTFBS stuff' part
|
2012-12-19 22:17:22 +01:00 |
|
Wolfgang (Blub) Bumiller
|
57aaf57dfc
|
Revert "Fix FTFBS stuff"
This reverts commit 2cc51b8eb0 .
|
2012-12-19 22:15:38 +01:00 |
|
Dale Weiler
|
2cc51b8eb0
|
Fix FTFBS stuff
|
2012-12-19 21:05:40 +00:00 |
|
Wolfgang (Blub) Bumiller
|
384446316a
|
VINSTR_NRCALL, translated like any other call for now; to be used to mark a call which never returns, ie the error builtin
|
2012-12-19 20:38:32 +01:00 |
|
Rudolf Polzer
|
acf4da9385
|
Fixes for some minor bugs clang-analyzer and cppcheck found
Signed-off-by: Dale Weiler <killfieldengine@gmail.com>
|
2012-12-18 16:54:51 +00:00 |
|
Wolfgang (Blub) Bumiller
|
dccafd65ac
|
More jump removal
|
2012-12-18 14:03:20 +01:00 |
|
Dale Weiler
|
2587aed697
|
Allow setting configuration file via commandline
|
2012-12-18 05:22:23 +00:00 |
|
Dale Weiler
|
4b3e2571af
|
Cleanups of compiler option configuration. Added ini/cfg parser system as well.
|
2012-12-18 04:57:17 +00:00 |
|
Wolfgang (Blub) Bumiller
|
fe344cb5b2
|
vcompile_error, vcompile_warning; fixed: removed opts_ globals from con.c; made the lexer use vcompile_warning
|
2012-12-17 18:22:33 +01:00 |
|
Wolfgang (Blub) Bumiller
|
f7bc1dca08
|
Revert "Not defining GMQCC_VERSION_ in gmqcc.h but checking if they're defiend and #error if not - they're set in the Makefile - please fix windows builds"
This reverts commit a473979cf5 .
-- because visual studio sucks
|
2012-12-17 16:46:03 +01:00 |
|
Wolfgang (Blub) Bumiller
|
a473979cf5
|
Not defining GMQCC_VERSION_ in gmqcc.h but checking if they're defiend and #error if not - they're set in the Makefile - please fix windows builds
|
2012-12-17 16:30:07 +01:00 |
|
Dale Weiler
|
c1c7a93884
|
Implemented -D for preprocessor
|
2012-12-17 14:58:55 +00:00 |
|
Wolfgang (Blub) Bumiller
|
f9b1d057b5
|
Moving all the global opts_ variables into a struct, now there's one global 'opts' struct
|
2012-12-06 13:23:53 +01:00 |
|
Wolfgang (Blub) Bumiller
|
0e4e81d94f
|
Parsing the 'noref' keyword; this also gets rid of some code duplication
|
2012-12-04 12:17:43 +01:00 |
|
Wolfgang (Blub) Bumiller
|
6b575372cc
|
Don't warn about uninitialized stuff in accessors - remove the liferanges calculated when finalizing accessors, this would add invalid liferanges to function-local arrays and thus suppress warnings randomly
|
2012-12-02 18:09:59 +01:00 |
|
Dale Weiler
|
37ccf19769
|
added __STD_VERSION_[MINOR/MAJOR]__, and vec_upload
|
2012-12-02 04:30:46 +00:00 |
|
Wolfgang (Blub) Bumiller
|
e0a7f8a484
|
qcvm -printfuns; prog_section_function.nargs is now signed as fteqcc sets builtins with varargs to have -1 params
|
2012-11-30 20:20:13 +01:00 |
|
Wolfgang (Blub) Bumiller
|
6fc00e523d
|
All ir_instrs now get their lex-context, so that we can create an LNO file with -flno
|
2012-11-30 18:20:02 +01:00 |
|
Wolfgang (Blub) Bumiller
|
5e23e8296d
|
don't just store a 'bool constant' in the ast/ir, store the complete qualifier: 'int cvq', moved CV_ defines into gmqcc.h
|
2012-11-30 13:47:28 +01:00 |
|
Wolfgang (Blub) Bumiller
|
03cb670096
|
don't use vec_size but _vec_end in _vec_remove, since using it on an empty vector is an error anyway; this causes a warning about vec_pop doing an effect-less memmove so vec_pop now doesn't use vec_remove anymore actually
|
2012-11-30 11:55:32 +01:00 |
|
Wolfgang (Blub) Bumiller
|
e1fe6cff54
|
Importing tail-recursion optimization
|
2012-11-30 11:12:53 +01:00 |
|
Wolfgang (Blub) Bumiller
|
a890589031
|
-O now, additionally to taking a number, can work like -W and -f to take an actual optimization name
|
2012-11-30 11:05:58 +01:00 |
|
Wolfgang (Blub) Bumiller
|
8e1ce2ab5e
|
generic compile_error/compile_warning functions in con.c, issuing end-of-non-void warning from within the ast now
|
2012-11-26 16:12:40 +01:00 |
|
Dale Weiler
|
ca52ecc20a
|
Remove trailing whitespace for Blub.
|
2012-11-26 11:12:06 +00:00 |
|
Wolfgang (Blub) Bumiller
|
7b56ad9405
|
Revert "Fix type punning warnings"
it's a gcc version issue...
This reverts commit 3e6d173e31 .
|
2012-11-25 14:05:10 +01:00 |
|
Dale Weiler
|
3e6d173e31
|
Fix type punning warnings
|
2012-11-25 12:57:28 +00:00 |
|
Wolfgang (Blub) Bumiller
|
613e1e7247
|
Change the parser to use the hashtable functions
|
2012-11-25 13:23:37 +01:00 |
|
Dale Weiler
|
5c0a62be96
|
Add respective license headers + some cleanups
|
2012-11-24 21:22:35 +00:00 |
|
Dale Weiler
|
9d677bab7c
|
Added comment about hashtable
|
2012-11-23 20:05:53 +00:00 |
|
Dale Weiler
|
6e047ec65b
|
No copy, just store pointer for hash table
|
2012-11-23 20:01:58 +00:00 |
|
Wolfgang (Blub) Bumiller
|
4a3921fcb9
|
Let's #define GMQCC by default
|
2012-11-23 19:13:09 +01:00 |
|
Dale Weiler
|
e25e83b14c
|
Visual studio __forceinline can be used for GMQCC_INLINE
|
2012-11-23 06:48:54 +00:00 |
|
Dale Weiler
|
9e3399df19
|
Implemented hashtable as-per Blubs request
|
2012-11-23 06:12:01 +00:00 |
|
Wolfgang (Blub) Bumiller
|
968397da61
|
Fixing clang-warnings about vectors
|
2012-11-22 20:42:32 +01:00 |
|
Wolfgang (Blub) Bumiller
|
6983142c4d
|
-dump vs -dumpfin; to see the IR before and after finalizing functions
|
2012-11-21 21:53:38 +01:00 |
|
Dale Weiler
|
2e3d572b53
|
Bump version
|
2012-11-21 20:33:52 +00:00 |
|
Wolfgang (Blub) Bumiller
|
ebc6954bf5
|
casting explicitly to boolean values in early out logic
|
2012-11-21 19:36:28 +01:00 |
|
Dale Weiler
|
61fa54318c
|
Merge branch 'master' into test-suite
Conflicts:
Makefile
ir.c
|
2012-11-19 02:13:46 +00:00 |
|
Wolfgang (Blub) Bumiller
|
0330b082a2
|
The ftepp now always outputs into a string buffer, with -E the buffer will be dumped to stdout or the via -o specified file, without -E it'll be passed to the parser to be compiled
|
2012-11-18 13:33:53 +01:00 |
|
Wolfgang (Blub) Bumiller
|
d1373af7fc
|
Make -E print to stdout by default and honor -o, changed handling of source list a bit
|
2012-11-18 12:51:38 +01:00 |
|
Wolfgang (Blub) Bumiller
|
366557bbab
|
Since like with parsing, the preprocessor state has to be preserved across files for macros, we do that now, and with that introduce a new warning: -Wmultifile-if in case an #if spans over several command-line-provided source files (or progs.src file provided for that matter)
|
2012-11-18 11:54:11 +01:00 |
|
Dale Weiler
|
0dc4febb91
|
New test-suite initial implementation. Just need to write some tests.
|
2012-11-17 02:54:30 +00:00 |
|
Wolfgang (Blub) Bumiller
|
07ca2e6407
|
importing initial ftepp.c; -E option now executes the preprocessor
|
2012-11-16 16:57:59 +01:00 |
|
Wolfgang (Blub) Bumiller
|
3bd75546ec
|
moving _vec_remove above the 'exposed interface' comment
|
2012-11-15 21:24:31 +01:00 |
|
Wolfgang (Blub) Bumiller
|
df61f3c182
|
Fix a typo causing NOTRACK to fail
|
2012-11-15 21:18:31 +01:00 |
|
Wolfgang (Blub) Bumiller
|
c583ae24f2
|
Replacing lexer's vectors and getting rid of the macros
|
2012-11-15 18:48:38 +01:00 |
|
Wolfgang (Blub) Bumiller
|
906f319673
|
Replaced it all...
|
2012-11-15 18:32:09 +01:00 |
|
Dale Weiler
|
2e84cc0b41
|
Use new console system everywhere.
|
2012-11-15 00:28:46 +00:00 |
|
Wolfgang (Blub) Bumiller
|
84088cb5f0
|
Merging in new-syntax
|
2012-11-14 21:39:16 +01:00 |
|
Dale Weiler
|
f0750209b7
|
preliminary segregated console subsystem
|
2012-11-14 19:17:43 +00:00 |
|
Wolfgang (Blub) Bumiller
|
9a42dd1c3a
|
qcvm -trace now shows the current function name and nest-depth
|
2012-11-11 23:57:42 +01:00 |
|
Wolfgang (Blub) Bumiller
|
a7d3a2d6ea
|
adding opts_max_array_size with a default of 1024, adding some TODO errors for arrays in the AST
|
2012-11-11 11:09:36 +01:00 |
|
Wolfgang (Blub) Bumiller
|
cf1ea01de3
|
parser_compile_file vs parser_compile_string
|
2012-11-11 10:33:29 +01:00 |
|
Wolfgang (Blub) Bumiller
|
1869440fd9
|
Preparing to parse arrays: adding TYPE_ARRAY and union/struct TYPE_ constants to be consistent with fteqcc, filled type-arrays with their data, attempting to parse an array variable and added some error messages to the IR in case of unhandled types
|
2012-11-11 10:13:01 +01:00 |
|
Wolfgang (Blub) Bumiller
|
a27750966f
|
globals of type .vector will now properly generate 3 globals
|
2012-11-11 10:13:00 +01:00 |
|
Dale Weiler
|
6b12f4435c
|
Make warns.def and flags.def into a single opts.def.
|
2012-11-10 21:13:09 +00:00 |
|
Wolfgang (Blub) Bumiller
|
09e18e1bbf
|
mem_r to realloc
|
2012-11-10 11:16:19 +01:00 |
|
Wolfgang (Blub) Bumiller
|
a195e296a9
|
-E switch to set opt_pp_only
|
2012-11-02 18:33:51 +01:00 |
|
Wolfgang (Blub) Bumiller
|
5adc3fd9c1
|
Don't forget to set the _alloc in vector resize, also set _alloc back in _append if mem_a had failed
|
2012-10-09 20:56:54 +02:00 |
|
Wolfgang (Blub) Bumiller
|
5dd8e23dfd
|
Cleaner crc implementation
|
2012-10-02 17:51:03 +02:00 |
|
Wolfgang (Blub) Bumiller
|
354dd94b95
|
Generating checksums
|
2012-10-02 17:09:49 +02:00 |
|
Wolfgang (Blub) Bumiller
|
b2cb612c70
|
Adding DEF_SAVEGLOBAL, marking globals as to-be-saved now, for real support of quicksaving
|
2012-08-23 18:28:05 +02:00 |
|
Wolfgang (Blub) Bumiller
|
fe2f9d79c5
|
fixing mem-vector resize function
|
2012-08-23 13:21:14 +02:00 |
|
Wolfgang (Blub) Bumiller
|
8b90fcf482
|
commenting on the quirks of MUL_VF and MUL_FV in gmqcc.h's instruction list
|
2012-08-22 18:34:48 +02:00 |
|
Wolfgang (Blub) Bumiller
|
ab714862d6
|
committing gmqcc.h for previous exec.c commit: qc_program gets .xflags
|
2012-08-22 17:49:25 +02:00 |
|
Wolfgang (Blub) Bumiller
|
ef3e7231bd
|
it's SUB_V not DUB_V
|
2012-08-22 17:32:42 +02:00 |
|
Wolfgang (Blub) Bumiller
|
77e5807a83
|
memvector resize needs to set _count as well
|
2012-08-22 15:24:24 +02:00 |
|
Wolfgang (Blub) Bumiller
|
93e13c3cb1
|
option: -force-crc=number, added -info to executor to just show some file info like the crc, and -printfields to print a list of fields along with their type and position
|
2012-08-22 14:00:57 +02:00 |
|
Wolfgang (Blub) Bumiller
|
0674457c51
|
Fix some comment styles...
|
2012-08-21 10:33:37 +02:00 |
|
Wolfgang (Blub) Bumiller
|
b421c42d4b
|
replacing WARN_ERROR with opts_werror
|
2012-08-18 14:36:33 +02:00 |
|
Wolfgang (Blub) Bumiller
|
0d9435d326
|
util_fopen...
|
2012-08-16 14:01:47 +02:00 |
|
Wolfgang (Blub) Bumiller
|
2c020837ea
|
fopen -> fopen_s on windows
|
2012-08-16 13:45:45 +02:00 |
|
Wolfgang (Blub) Bumiller
|
0c74f8fdb9
|
make the 'vector' type use qcfloat instead of float
|
2012-08-16 12:58:54 +02:00 |
|
Dale Weiler
|
d73100ad1b
|
gmqcc now builds on visual studio
|
2012-08-14 19:06:53 -04:00 |
|
Wolfgang (Blub) Bumiller
|
b8d92dfa01
|
constant folding for +, - and *
|
2012-08-14 22:51:05 +02:00 |
|
Wolfgang (Blub) Bumiller
|
37c4644d85
|
progs.src mode added
|
2012-08-14 19:30:03 +02:00 |
|
Wolfgang (Blub) Bumiller
|
107100c666
|
-dump option, by default the IR is not dumped anymore
|
2012-08-14 16:19:23 +02:00 |
|
Wolfgang (Blub) Bumiller
|
d824645019
|
error-print functions which take lex_ctx
|
2012-08-14 12:06:28 +02:00 |
|
Wolfgang (Blub) Bumiller
|
579ac3dd5d
|
Working towards a saner error-output system, adding -Werror
|
2012-08-14 11:34:07 +02:00 |
|
Wolfgang (Blub) Bumiller
|
e3b3c2efe3
|
Merge branch 'master' into blub/parser
|
2012-08-13 15:25:40 +02:00 |
|
Wolfgang (Blub) Bumiller
|
633561a730
|
type_eq_instr[], type_ne_instr[]
|
2012-08-13 15:25:14 +02:00 |
|
Wolfgang (Blub) Bumiller
|
7e3edea621
|
fixing the messup of MUL_FV and _VF being swapped - getting rid of additions that really have no place here (YET) (matrix/quaternion types)
|
2012-08-12 11:34:55 +02:00 |
|
Wolfgang (Blub) Bumiller
|
d68d19dbfd
|
Merging master to handle vector members, fields, and members of vector fields
|
2012-08-12 10:08:41 +02:00 |
|
Wolfgang (Blub) Bumiller
|
919d73b0a0
|
experimental support for spawn() in the executor
|
2012-08-11 17:31:08 +02:00 |
|
Wolfgang (Blub) Bumiller
|
0bee759406
|
Merge branch 'master' into blub/bc3
|
2012-08-08 12:25:31 +02:00 |
|
Wolfgang (Blub) Bumiller
|
babc6d209e
|
Add WARN_ prefix to warnings enum
|
2012-08-08 12:25:19 +02:00 |
|
Wolfgang (Blub) Bumiller
|
ae251d3914
|
Merge branch 'master' into blub/bc3
|
2012-08-08 12:05:08 +02:00 |
|