xonotic/gmqcc.git
9 years agosqrt and normalize builtins
Wolfgang Bumiller [Tue, 8 Jan 2013 18:21:24 +0000 (19:21 +0100)]
sqrt and normalize builtins

9 years agobetter solution to blockstart pointlife issues
Wolfgang Bumiller [Tue, 8 Jan 2013 14:22:24 +0000 (15:22 +0100)]
better solution to blockstart pointlife issues

9 years agoSeems like there's still a problem with it - -Olocal-temps back up to -O4
Wolfgang Bumiller [Mon, 7 Jan 2013 19:27:50 +0000 (20:27 +0100)]
Seems like there's still a problem with it - -Olocal-temps back up to -O4

9 years agoadded a testcase for -Olocal-temps
Wolfgang Bumiller [Mon, 7 Jan 2013 18:09:15 +0000 (19:09 +0100)]
added a testcase for -Olocal-temps

9 years agoerror when trying to break/continue outside of loops/switches instead of segfaulting...
Wolfgang Bumiller [Mon, 7 Jan 2013 14:19:53 +0000 (15:19 +0100)]
error when trying to break/continue outside of loops/switches instead of segfaulting at codegen

9 years agoMoving -Olocal-temps back to -O3
Wolfgang Bumiller [Mon, 7 Jan 2013 13:55:42 +0000 (14:55 +0100)]
Moving -Olocal-temps back to -O3

9 years agoThis should fix the -Olocal-temps issue; set v->unique_life for any v with a point...
Wolfgang Bumiller [Mon, 7 Jan 2013 13:55:01 +0000 (14:55 +0100)]
This should fix the -Olocal-temps issue; set v->unique_life for any v with a point-life - this is a bad solution: proper dead code elimination should be done instead

9 years agomore info in the IR dump
Wolfgang Bumiller [Mon, 7 Jan 2013 13:25:01 +0000 (14:25 +0100)]
more info in the IR dump

9 years agoclose #76 implemented -Werror-some-warning section [errors] for the ini system.
Dale Weiler [Mon, 7 Jan 2013 12:46:50 +0000 (12:46 +0000)]
close #76 implemented -Werror-some-warning section [errors] for the ini system.

9 years agoMerge branch 'master' of github.com:graphitemaster/gmqcc
Dale Weiler [Mon, 7 Jan 2013 12:40:03 +0000 (12:40 +0000)]
Merge branch 'master' of github.com:graphitemaster/gmqcc

9 years agoMove splint.sh into the Makefile
Dale Weiler [Mon, 7 Jan 2013 12:39:33 +0000 (12:39 +0000)]
Move splint.sh into the Makefile

9 years agomoving -Olocal-temps to -O4 until the issues are solved
Wolfgang Bumiller [Mon, 7 Jan 2013 11:58:56 +0000 (12:58 +0100)]
moving -Olocal-temps to -O4 until the issues are solved

9 years agoGuard 2 peephole optimizations which should only work on the currently-last instructi...
Wolfgang Bumiller [Sun, 6 Jan 2013 23:22:54 +0000 (00:22 +0100)]
Guard 2 peephole optimizations which should only work on the currently-last instruction by a check if it's actually really at the end...

9 years agoFix some possible NULL access in an error case
Wolfgang Bumiller [Sun, 6 Jan 2013 23:22:16 +0000 (00:22 +0100)]
Fix some possible NULL access in an error case

9 years ago__STD_QCCX__ on -std=qccx - I have no idea about what qccx does/can do but at least...
Wolfgang Bumiller [Sun, 6 Jan 2013 19:52:12 +0000 (20:52 +0100)]
__STD_QCCX__ on -std=qccx - I have no idea about what qccx does/can do but at least now -fftepp includes the macros...

9 years agomanpage: bring the list of included -f and -W flags for each described -std up to...
Wolfgang Bumiller [Sun, 6 Jan 2013 19:50:18 +0000 (20:50 +0100)]
manpage: bring the list of included -f and -W flags for each described -std up to date

9 years agoAdding -ftranslatable-strings to -std=gmqcc
Wolfgang Bumiller [Sun, 6 Jan 2013 19:49:57 +0000 (20:49 +0100)]
Adding -ftranslatable-strings to -std=gmqcc

9 years agomake the LNOF header compiler friendlier
Wolfgang Bumiller [Sun, 6 Jan 2013 15:40:38 +0000 (16:40 +0100)]
make the LNOF header compiler friendlier

9 years agoMerge branch 'master' of git://github.com/graphitemaster/gmqcc
Wolfgang Bumiller [Sun, 6 Jan 2013 15:37:05 +0000 (16:37 +0100)]
Merge branch 'master' of git://github.com/graphitemaster/gmqcc

9 years agofixup qcvm parameter handling, now progs.dat can be specified anywhere not just at...
Wolfgang Bumiller [Sun, 6 Jan 2013 15:37:02 +0000 (16:37 +0100)]
fixup qcvm parameter handling, now progs.dat can be specified anywhere not just at the end

9 years agoPipe stderr from makedepend for depend rule in makefile to /dev/null
Dale Weiler [Sun, 6 Jan 2013 15:27:39 +0000 (15:27 +0000)]
Pipe stderr from makedepend for depend rule in makefile to /dev/null

9 years agoAdd test alias to check for make file
Dale Weiler [Sun, 6 Jan 2013 15:12:46 +0000 (15:12 +0000)]
Add test alias to check for make file

9 years agoAdd splint rule to makefile
Dale Weiler [Sun, 6 Jan 2013 12:43:46 +0000 (12:43 +0000)]
Add splint rule to makefile

9 years agoremove never reached return
Dale Weiler [Sun, 6 Jan 2013 12:39:37 +0000 (12:39 +0000)]
remove never reached return

9 years agoEnable corrector by default
Dale Weiler [Sun, 6 Jan 2013 12:29:25 +0000 (12:29 +0000)]
Enable corrector by default

9 years agoMerge branch 'screwaround'
Dale Weiler [Sun, 6 Jan 2013 12:29:07 +0000 (12:29 +0000)]
Merge branch 'screwaround'

9 years agoremove a the
Dale Weiler [Sun, 6 Jan 2013 12:28:27 +0000 (12:28 +0000)]
remove a the

9 years agoDocument the awesome hack
Dale Weiler [Sun, 6 Jan 2013 12:24:05 +0000 (12:24 +0000)]
Document the awesome hack

9 years agoAn evil optimization to the trie, now has a fixed amount of branches and uses a char...
Wolfgang Bumiller [Sun, 6 Jan 2013 12:07:28 +0000 (13:07 +0100)]
An evil optimization to the trie, now has a fixed amount of branches and uses a char-to-index map to index into the branches...

9 years agoCleaner transformation calls (one less size_t for agruments). We can coalesce it...
Dale Weiler [Sun, 6 Jan 2013 11:02:39 +0000 (11:02 +0000)]
Cleaner transformation calls (one less size_t for agruments). We can coalesce it in correct_edit.

9 years agoLeave a space here for makedepend
Dale Weiler [Sun, 6 Jan 2013 10:56:25 +0000 (10:56 +0000)]
Leave a space here for makedepend

9 years agoAdd a "depend" rule for the makefile. It uses makedepend to generate dependinces...
Dale Weiler [Sun, 6 Jan 2013 10:55:22 +0000 (10:55 +0000)]
Add a "depend" rule for the makefile.  It uses makedepend to generate dependinces that are catted to the current Makefile.

9 years agoNo need to +1 for comparision in correct_known_resize
Dale Weiler [Sun, 6 Jan 2013 10:37:09 +0000 (10:37 +0000)]
No need to +1 for comparision in correct_known_resize

9 years agoFix comments
Dale Weiler [Sun, 6 Jan 2013 10:35:43 +0000 (10:35 +0000)]
Fix comments

9 years agoRemove trailing shitspace
Dale Weiler [Sun, 6 Jan 2013 10:33:09 +0000 (10:33 +0000)]
Remove trailing shitspace

9 years agoUse -O2 by default
Dale Weiler [Sun, 6 Jan 2013 10:29:29 +0000 (10:29 +0000)]
Use -O2 by default

9 years agoLess pointer dereferences
Dale Weiler [Sun, 6 Jan 2013 05:17:30 +0000 (05:17 +0000)]
Less pointer dereferences

9 years agoScrew you clang :-)
Dale Weiler [Sun, 6 Jan 2013 05:14:57 +0000 (05:14 +0000)]
Screw you clang :-)

9 years agoA little faster, plus some more research
Dale Weiler [Sun, 6 Jan 2013 05:13:19 +0000 (05:13 +0000)]
A little faster, plus some more research

9 years agoThis is a work of art, it deserve nice comments :)
Dale Weiler [Sun, 6 Jan 2013 04:09:12 +0000 (04:09 +0000)]
This is a work of art, it deserve nice comments :)

9 years agoFixes and more documentation
Dale Weiler [Sun, 6 Jan 2013 04:06:38 +0000 (04:06 +0000)]
Fixes and more documentation

9 years agoAdd a notice
Dale Weiler [Sun, 6 Jan 2013 03:52:37 +0000 (03:52 +0000)]
Add a notice

9 years agoUse memcmp with strlen for correct_exists (it's a hell of a lot faster)
Dale Weiler [Sun, 6 Jan 2013 03:34:56 +0000 (03:34 +0000)]
Use memcmp with strlen for correct_exists (it's a hell of a lot faster)

9 years agoNo more uninitialized
Dale Weiler [Sun, 6 Jan 2013 03:33:21 +0000 (03:33 +0000)]
No more uninitialized

9 years agoSome more nicer loops
Dale Weiler [Sun, 6 Jan 2013 03:29:55 +0000 (03:29 +0000)]
Some more nicer loops

9 years agoNicer loops
Dale Weiler [Sun, 6 Jan 2013 03:26:09 +0000 (03:26 +0000)]
Nicer loops

9 years agoCleanups and documentation
Dale Weiler [Sun, 6 Jan 2013 03:06:56 +0000 (03:06 +0000)]
Cleanups and documentation

9 years agoRemove override macros
Dale Weiler [Sun, 6 Jan 2013 02:41:15 +0000 (02:41 +0000)]
Remove override macros

9 years agoRemove an illegal mem_d
Dale Weiler [Sun, 6 Jan 2013 02:40:36 +0000 (02:40 +0000)]
Remove an illegal mem_d

9 years agoCleanup the pool system for correct.c. Use blubs correct_resize stuff.
Dale Weiler [Sun, 6 Jan 2013 02:39:07 +0000 (02:39 +0000)]
Cleanup the pool system for correct.c.  Use blubs correct_resize stuff.

9 years agoDon't use notices
Dale Weiler [Sat, 5 Jan 2013 20:44:53 +0000 (20:44 +0000)]
Don't use notices

9 years agoBetter IRC hook
Dale Weiler [Sat, 5 Jan 2013 20:43:47 +0000 (20:43 +0000)]
Better IRC hook

9 years agonotifications
Dale Weiler [Sat, 5 Jan 2013 20:39:50 +0000 (20:39 +0000)]
notifications

9 years agoAdd irc to travis
Dale Weiler [Sat, 5 Jan 2013 20:39:17 +0000 (20:39 +0000)]
Add irc to travis

9 years agoAdd travis.yml
Dale Weiler [Sat, 5 Jan 2013 20:31:17 +0000 (20:31 +0000)]
Add travis.yml

9 years agoCommitting an evil allocator and a trie to speed up the correction stuff
Wolfgang Bumiller [Sat, 5 Jan 2013 18:09:36 +0000 (19:09 +0100)]
Committing an evil allocator and a trie to speed up the correction stuff

9 years agoMerge branch 'master' of git://github.com/graphitemaster/gmqcc
Wolfgang Bumiller [Fri, 4 Jan 2013 13:52:00 +0000 (14:52 +0100)]
Merge branch 'master' of git://github.com/graphitemaster/gmqcc

9 years agoGet rid of correct_strndup and correct_concat altogether, reduces each generated...
Wolfgang Bumiller [Fri, 4 Jan 2013 13:50:50 +0000 (14:50 +0100)]
Get rid of correct_strndup and correct_concat altogether, reduces each generated edit to a single alloc

9 years agoDisable enhanced diagnostics as they're too slow.
Dale Weiler [Fri, 4 Jan 2013 12:26:44 +0000 (12:26 +0000)]
Disable enhanced diagnostics as they're too slow.

9 years agoImplemented -f[no]enhanced-diagnostics, to enable/disable the usage of enhanced diagn...
Dale Weiler [Fri, 4 Jan 2013 12:07:42 +0000 (12:07 +0000)]
Implemented -f[no]enhanced-diagnostics, to enable/disable the usage of enhanced diagnostics.

9 years agoRemove constant string literal for correction check, use parse_tokval of the current...
Dale Weiler [Fri, 4 Jan 2013 11:58:27 +0000 (11:58 +0000)]
Remove constant string literal for correction check, use parse_tokval of the current parser state instead. Accidently left it behind from debugging.

9 years agoMerge branch 'correct'
Dale Weiler [Fri, 4 Jan 2013 11:56:07 +0000 (11:56 +0000)]
Merge branch 'correct'

9 years agoGot rid of all the memleaks. We can now merge with master.
Dale Weiler [Fri, 4 Jan 2013 11:53:40 +0000 (11:53 +0000)]
Got rid of all the memleaks.  We can now merge with 

9 years agoItegration of corrector. Seems to be some leaks in the score keeping for the probabi...
Dale Weiler [Fri, 4 Jan 2013 11:44:25 +0000 (11:44 +0000)]
Itegration of corrector.  Seems to be some leaks in the score keeping for the probability system.

9 years agoCleanups and add the corrector to the makefile. Starting integration with the parser.
Dale Weiler [Fri, 4 Jan 2013 10:05:41 +0000 (10:05 +0000)]
Cleanups and add the corrector to the makefile.  Starting integration with the parser.

9 years agoFix all the memleaks in the corrector. Holy shit, the amount of hours I wasted trying...
Dale Weiler [Fri, 4 Jan 2013 09:46:22 +0000 (09:46 +0000)]
Fix all the memleaks in the corrector. Holy shit, the amount of hours I wasted trying to find out where I left out ONE little free.

9 years agoFix another two leaks
Dale Weiler [Thu, 3 Jan 2013 21:38:07 +0000 (21:38 +0000)]
Fix another two leaks

9 years agoRemove some memory leaks in the corrector. There is still some memory leaks that...
Dale Weiler [Thu, 3 Jan 2013 21:25:35 +0000 (21:25 +0000)]
Remove some memory leaks in the corrector.  There is still some memory leaks that are proving impossible to fix.

9 years agoWork on "did you mean? <ident>" support for errors. Using a three-part Bayes Theorem...
Dale Weiler [Thu, 3 Jan 2013 19:39:41 +0000 (19:39 +0000)]
Work on "did you mean? <ident>" support for errors.  Using a three-part Bayes Theorem expression (language model, error model and control mechanisim).

9 years agoMerge remote-tracking branch 'origin/pp-unary-numbers'
Wolfgang Bumiller [Thu, 3 Jan 2013 13:58:02 +0000 (14:58 +0100)]
Merge remote-tracking branch 'origin/pp-unary-numbers'

9 years agohandling the ast-destruction in computed goto
Wolfgang Bumiller [Thu, 3 Jan 2013 12:20:57 +0000 (13:20 +0100)]
handling the ast-destruction in computed goto

9 years agoMerge branch 'master' of github.com:graphitemaster/gmqcc
Dale Weiler [Thu, 3 Jan 2013 12:05:02 +0000 (12:05 +0000)]
Merge branch 'master' of github.com:graphitemaster/gmqcc

9 years agoAdd specialized diagnostics for when predefined macros are used and ftepp predefined...
Dale Weiler [Thu, 3 Jan 2013 12:04:32 +0000 (12:04 +0000)]
Add specialized diagnostics for when predefined macros are used and ftepp predefined macros are not enabled.

9 years agocheck for TYPE_NOEXPR in general when applying an operator
Wolfgang Bumiller [Thu, 3 Jan 2013 11:56:26 +0000 (12:56 +0100)]
check for TYPE_NOEXPR in general when applying an operator

9 years agoIntroducing TYPE_NOEXPR so that these undefined labels cannot be used on the expressi...
Wolfgang Bumiller [Thu, 3 Jan 2013 11:49:21 +0000 (12:49 +0100)]
Introducing TYPE_NOEXPR so that these undefined labels cannot be used on the expression side of goto ternary expressions; ast_label now is TYPE_NOEXPR; we may consider setting ast_ifthen to that too unless we want ifthen to return a value...

9 years agoparse_expression now takes a boolean flag on whether or not it should be creating...
Wolfgang Bumiller [Thu, 3 Jan 2013 11:46:33 +0000 (12:46 +0100)]
parse_expression now takes a boolean flag on whether or not it should be creating ast_labels for undefined identifiers; creating the label later will pick it up and set its undefined flag to false

9 years agoFix argument padding for win_fputs and alike.
Dale Weiler [Thu, 3 Jan 2013 10:33:35 +0000 (10:33 +0000)]
Fix argument padding for win_fputs and alike.

9 years agoMore error checking and proper unreferencing of ast nodes if expressions for computed...
Dale Weiler [Wed, 2 Jan 2013 22:39:24 +0000 (22:39 +0000)]
More error checking and proper unreferencing of ast nodes if expressions for computed goto fails.

9 years agoSome error checking for computed goto.
Dale Weiler [Wed, 2 Jan 2013 22:28:26 +0000 (22:28 +0000)]
Some error checking for computed goto.

9 years agoFix the testsuite bug, and implemented QCFLAGS enviroment variable support for settin...
Dale Weiler [Wed, 2 Jan 2013 22:16:02 +0000 (22:16 +0000)]
Fix the testsuite bug, and implemented QCFLAGS enviroment variable support for setting the compile flags (the .tmpl rules takes precedence).

9 years agoImplemented __TIME__ for ftepp
Dale Weiler [Wed, 2 Jan 2013 21:53:46 +0000 (21:53 +0000)]
Implemented __TIME__ for ftepp

9 years agoImplemented __DATE__ for ftepp
Dale Weiler [Wed, 2 Jan 2013 21:51:22 +0000 (21:51 +0000)]
Implemented __DATE__ for ftepp

9 years agoRemove "got" left behind from debugging.
Dale Weiler [Wed, 2 Jan 2013 21:35:18 +0000 (21:35 +0000)]
Remove "got" left behind from debugging.

9 years agoImplemented computed goto + added goto test for testsuite (tests both normal and...
Dale Weiler [Wed, 2 Jan 2013 21:32:57 +0000 (21:32 +0000)]
Implemented computed goto + added goto test for testsuite (tests both normal and computed goto statements).

9 years agolex->flags.preprocessing causes the lexer to parse the unary number if it is one
Wolfgang Bumiller [Wed, 2 Jan 2013 16:38:24 +0000 (17:38 +0100)]
lex->flags.preprocessing causes the lexer to parse the unary number if it is one

9 years agoFix some issues
Dale Weiler [Wed, 2 Jan 2013 16:34:55 +0000 (16:34 +0000)]
Fix some issues

9 years agoAllow unary minus in ftepp_if_value
Wolfgang Bumiller [Wed, 2 Jan 2013 16:23:49 +0000 (17:23 +0100)]
Allow unary minus in ftepp_if_value

9 years agopragma code: signed correctness
Wolfgang Bumiller [Wed, 2 Jan 2013 14:20:07 +0000 (15:20 +0100)]
pragma code: signed correctness

9 years agoremove ast.h-include from lexer.h to parser.c...
Wolfgang Bumiller [Wed, 2 Jan 2013 14:08:02 +0000 (15:08 +0100)]
remove ast.h-include from lexer.h to parser.c...

9 years agoMakefile: ftepp.o: lexer.h
Wolfgang Bumiller [Wed, 2 Jan 2013 14:05:52 +0000 (15:05 +0100)]
Makefile: ftepp.o: lexer.h

9 years agolex.peek char->int
Wolfgang Bumiller [Wed, 2 Jan 2013 14:03:20 +0000 (15:03 +0100)]
lex.peek char->int

9 years agotests for __VA_ARGS__
Wolfgang Bumiller [Wed, 2 Jan 2013 13:16:42 +0000 (14:16 +0100)]
tests for __VA_ARGS__

9 years ago__VA_ARGS__ support
Wolfgang Bumiller [Wed, 2 Jan 2013 13:15:16 +0000 (14:15 +0100)]
__VA_ARGS__ support

9 years agofix a leak: delete the output string of macro calls
Wolfgang Bumiller [Wed, 2 Jan 2013 09:45:55 +0000 (10:45 +0100)]
fix a leak: delete the output string of macro calls

9 years agoupdate old_string on failure in ftepp_macro_expand to not segfault on a preprocessor...
Wolfgang Bumiller [Wed, 2 Jan 2013 09:44:39 +0000 (10:44 +0100)]
update old_string on failure in ftepp_macro_expand to not segfault on a preprocessor-error inside recursive preprocessor calls

9 years agowhen recursinve into macros copy the previous line number; fixes macros showing line...
Wolfgang Bumiller [Wed, 2 Jan 2013 09:35:00 +0000 (10:35 +0100)]
when recursinve into macros copy the previous line number; fixes macros showing line 1 for each error

9 years agoImplemented a optimized hash-set that can be used in various parts of the compiler...
Dale Weiler [Tue, 1 Jan 2013 07:59:04 +0000 (07:59 +0000)]
Implemented a optimized hash-set that can be used in various parts of the compiler (to get a little more speed). I intend this to replace the hackery that is code_genstring, and code_util_str_htgeth.

9 years agoHappy new years!
Dale Weiler [Tue, 1 Jan 2013 05:08:55 +0000 (05:08 +0000)]
Happy new years!

9 years agoFix util_vasprintf.
Dale Weiler [Mon, 31 Dec 2012 18:50:57 +0000 (18:50 +0000)]
Fix util_vasprintf.

9 years agoAdd todo about util_vasprintf (too lazy to fix right now)
Dale Weiler [Mon, 31 Dec 2012 18:34:13 +0000 (18:34 +0000)]
Add todo about util_vasprintf (too lazy to fix right now)