]> git.rm.cloudns.org Git - xonotic/gmqcc.git/log
xonotic/gmqcc.git
11 years agoalso warn about mixing logical and/or operations without parenthesis
Wolfgang Bumiller [Thu, 29 Aug 2013 06:26:17 +0000 (08:26 +0200)]
also warn about mixing logical and/or operations without parenthesis

11 years agowarn when mixing different bitops without parenthesis around them
Wolfgang Bumiller [Thu, 29 Aug 2013 06:18:06 +0000 (08:18 +0200)]
warn when mixing different bitops without parenthesis around them

11 years agoFix folding logic for conditions.
Dale Weiler [Thu, 29 Aug 2013 04:18:48 +0000 (00:18 -0400)]
Fix folding logic for conditions.

11 years agoImplement [[eraseable]] attribute. When used with a function it instructs the AST...
Dale Weiler [Thu, 29 Aug 2013 04:05:37 +0000 (00:05 -0400)]
Implement [[eraseable]] attribute. When used with a function it instructs the AST (which than transfers logic to the IR) that the function (or variable) is potentially unused (verified by checking the read count). This than propogates through the IR and prevents the IR from generating both the definition and global/function. The intrinsics system uses this as well to prevent intrinsic functions from being generated unless they're used.

11 years agoFix build on clang
Dale Weiler [Wed, 28 Aug 2013 17:01:46 +0000 (13:01 -0400)]
Fix build on clang

11 years agoConstant fold intrinsics if their arguments are constant. TODO: reference count intri...
Dale Weiler [Wed, 28 Aug 2013 16:46:22 +0000 (12:46 -0400)]
Constant fold intrinsics if their arguments are constant. TODO: reference count intrinsics such that they're not generated unless they're used, currently when an intrinsic can be folded-away it's marked for generation and makes it to the final output binary even though it isn't used.

11 years agoImplemented a __builtin_fabs intrinsic.
Dale Weiler [Wed, 28 Aug 2013 15:28:27 +0000 (11:28 -0400)]
Implemented a __builtin_fabs intrinsic.

11 years agoFix fold-dce for if(0)
Dale Weiler [Wed, 28 Aug 2013 14:39:48 +0000 (10:39 -0400)]
Fix fold-dce for if(0)

11 years agoAdd missing -width to .Bl in doc/gmqpak.1
Wolfgang Bumiller [Wed, 28 Aug 2013 12:40:23 +0000 (14:40 +0200)]
Add missing -width to .Bl in doc/gmqpak.1

11 years agoFix bad use of .D1 in doc/qcvm.1
Wolfgang Bumiller [Wed, 28 Aug 2013 12:38:51 +0000 (14:38 +0200)]
Fix bad use of .D1 in doc/qcvm.1

11 years agomisc/check-doc.sh: run mandoc -Tlint -Wall on the manpages
Wolfgang Bumiller [Wed, 28 Aug 2013 12:33:09 +0000 (14:33 +0200)]
misc/check-doc.sh: run mandoc -Tlint -Wall on the manpages

11 years agoallow initializing shadowed locals outside of -std=gmqcc - in this case it becomes...
Wolfgang Bumiller [Wed, 28 Aug 2013 12:20:33 +0000 (14:20 +0200)]
allow initializing shadowed locals outside of -std=gmqcc - in this case it becomes a regular assignment to the old declaration which is consistent with fteqcc

11 years agoCleanups
Dale Weiler [Wed, 28 Aug 2013 07:45:40 +0000 (03:45 -0400)]
Cleanups

11 years agoHandle return status from compiler, this fixes false positivies in the testsuite...
Dale Weiler [Wed, 28 Aug 2013 07:40:35 +0000 (03:40 -0400)]
Handle return status from compiler, this fixes false positivies in the testsuite when the compiler segfaults and the testsuite still reports succeeded, now it won't hopefully.

11 years agoDon't ignore empty newlines when match in the testsuite, instead only ignore when...
Dale Weiler [Wed, 28 Aug 2013 07:34:05 +0000 (03:34 -0400)]
Don't ignore empty newlines when match in the testsuite, instead only ignore when procedure type is -pp (i.e preprocessing).

11 years agoSome style fixes for tests
Dale Weiler [Tue, 27 Aug 2013 10:41:03 +0000 (06:41 -0400)]
Some style fixes for tests

11 years agoForgot this one
Dale Weiler [Tue, 27 Aug 2013 10:39:51 +0000 (06:39 -0400)]
Forgot this one

11 years agoA test for that xor stuff (the same one I used to cause the bug to manifest in the...
Dale Weiler [Tue, 27 Aug 2013 10:35:58 +0000 (06:35 -0400)]
A test for that xor stuff (the same one I used to cause the bug to manifest in the first place).

11 years agoFix XOR maths for overlapping inputs by setting the lifetimes correctly.
Rudolf Polzer [Tue, 27 Aug 2013 10:27:20 +0000 (12:27 +0200)]
Fix XOR maths for overlapping inputs by setting the lifetimes correctly.

Signed-off-by: Rudolf Polzer <divverent@xonotic.org>
11 years agoast_binary->right_first and an execution order check
Wolfgang Bumiller [Tue, 27 Aug 2013 08:42:09 +0000 (10:42 +0200)]
ast_binary->right_first and an execution order check

11 years agoMerge divVerent/ftypeless-stores, but rid of the macro abuse.
Dale Weiler [Tue, 27 Aug 2013 08:28:22 +0000 (04:28 -0400)]
Merge divVerent/ftypeless-stores, but rid of the macro abuse.

11 years agoMerge branch 'cooking' of github.com:graphitemaster/gmqcc into cooking
Dale Weiler [Tue, 27 Aug 2013 08:28:11 +0000 (04:28 -0400)]
Merge branch 'cooking' of github.com:graphitemaster/gmqcc into cooking

11 years agoerror on uninitialized arrays of unspecified size; otherwise it errors about a size...
Wolfgang Bumiller [Tue, 27 Aug 2013 08:19:05 +0000 (10:19 +0200)]
error on uninitialized arrays of unspecified size; otherwise it errors about a size overflow

11 years agobail out when encountering an invalid array size in the ast as it's likely to cause...
Wolfgang Bumiller [Tue, 27 Aug 2013 08:09:31 +0000 (10:09 +0200)]
bail out when encountering an invalid array size in the ast as it's likely to cause breakage when trying to generate them anyway

11 years agoMerge branch 'divVerent/ftypeless-stores' of git://git.xonotic.org/xonotic/gmqcc...
Dale Weiler [Tue, 27 Aug 2013 08:07:17 +0000 (04:07 -0400)]
Merge branch 'divVerent/ftypeless-stores' of git://git.xonotic.org/xonotic/gmqcc into cooking

11 years agofix testcase workarounds
Wolfgang Bumiller [Tue, 27 Aug 2013 08:00:24 +0000 (10:00 +0200)]
fix testcase workarounds

11 years agoAnd there she goes, them space swallowing whores.
Dale Weiler [Tue, 27 Aug 2013 07:57:09 +0000 (03:57 -0400)]
And there she goes, them space swallowing whores.

11 years agoNew options: -ftypeless-stores and -fsort-operands
Rudolf Polzer [Tue, 27 Aug 2013 07:46:58 +0000 (09:46 +0200)]
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>
11 years agoAdd support for columns to LNOF files.
Dale Weiler [Mon, 26 Aug 2013 18:14:33 +0000 (14:14 -0400)]
Add support for columns to LNOF files.

11 years agoFix testsuite for when a process crashes (do not consider it a success)
Dale Weiler [Mon, 26 Aug 2013 17:10:38 +0000 (13:10 -0400)]
Fix testsuite for when a process crashes (do not consider it a success)

11 years agoFix testsuite
Dale Weiler [Mon, 26 Aug 2013 17:05:54 +0000 (13:05 -0400)]
Fix testsuite

11 years agoreset the column counter on a newline
Wolfgang Bumiller [Mon, 26 Aug 2013 16:53:09 +0000 (18:53 +0200)]
reset the column counter on a newline

11 years agoMerge branch 'divVerent/submit/vector-bitops' of git://git.xonotic.org/xonotic/gmqcc...
Dale Weiler [Mon, 26 Aug 2013 16:36:17 +0000 (12:36 -0400)]
Merge branch 'divVerent/submit/vector-bitops' of git://git.xonotic.org/xonotic/gmqcc into cooking

11 years agoSupport vector bitor/bitand/bitxor. divVerent/submit/vector-bitops
Rudolf Polzer [Mon, 26 Aug 2013 08:25:29 +0000 (10:25 +0200)]
Support vector bitor/bitand/bitxor.

Signed-off-by: Rudolf Polzer <divverent@xonotic.org>
11 years agoerror when trying to pass a TYPE_NOEXPR value to ir_instr_op
Wolfgang Bumiller [Mon, 26 Aug 2013 08:23:20 +0000 (10:23 +0200)]
error when trying to pass a TYPE_NOEXPR value to ir_instr_op

11 years agoir_builder now has a vinstr_temp array, a bunch of temps (currently 1) which can...
Wolfgang Bumiller [Mon, 26 Aug 2013 08:23:03 +0000 (10:23 +0200)]
ir_builder now has a vinstr_temp array, a bunch of temps (currently 1) which can be used for virtual instruction translation

11 years agoSome typos
Dale Weiler [Thu, 22 Aug 2013 03:28:49 +0000 (23:28 -0400)]
Some typos

11 years agoMake makes output consistent with BSD makes output for make
Dale Weiler [Wed, 21 Aug 2013 13:49:26 +0000 (09:49 -0400)]
Make makes output consistent with BSD makes output for make

11 years agoarchlinux PKGBUILDs: don't use install's -D switch - now they should work for both...
Wolfgang Bumiller [Wed, 21 Aug 2013 08:45:28 +0000 (10:45 +0200)]
archlinux PKGBUILDs: don't use install's -D switch - now they should work for both ArchLinux and ArchBSD

11 years agoGenerate PDF documentation from man pages for windows releases.
Dale Weiler [Wed, 21 Aug 2013 04:29:33 +0000 (04:29 +0000)]
Generate PDF documentation from man pages for windows releases.

11 years agoMark the beginning of the next release, master is now stable.
Dale Weiler [Mon, 19 Aug 2013 23:31:57 +0000 (23:31 +0000)]
Mark the beginning of the next release, master is now stable.

11 years agoFix that
Dale Weiler [Mon, 19 Aug 2013 23:18:03 +0000 (23:18 +0000)]
Fix that

11 years agoSlackware support to website generation.
Dale Weiler [Mon, 19 Aug 2013 23:15:41 +0000 (23:15 +0000)]
Slackware support to website generation.

11 years agoMerge pull request #117 from matthiaskrgr/master_PKGBUILD 0.3.0
Dale Weiler [Mon, 19 Aug 2013 23:06:03 +0000 (16:06 -0700)]
Merge pull request #117 from matthiaskrgr/master_PKGBUILD

Master pkgbuild

11 years agoMerge remote-tracking branch 'upstream/master' into master_PKGBUILD
Matthias Krüger [Mon, 19 Aug 2013 22:06:01 +0000 (00:06 +0200)]
Merge remote-tracking branch 'upstream/master' into master_PKGBUILD

11 years agoPKGBUILD: release: update
Matthias Krüger [Mon, 19 Aug 2013 22:04:55 +0000 (00:04 +0200)]
PKGBUILD: release: update

11 years agoPKGBUILD: git: update
Matthias Krüger [Mon, 19 Aug 2013 21:50:10 +0000 (23:50 +0200)]
PKGBUILD: git: update

11 years agoThis should be the tag
Dale Weiler [Mon, 19 Aug 2013 21:38:18 +0000 (21:38 +0000)]
This should be the tag

11 years agoMark release, ready to tag it and bag it. v0.3.0
Dale Weiler [Mon, 19 Aug 2013 21:34:49 +0000 (21:34 +0000)]
Mark release, ready to tag it and bag it.

11 years agoAdded style + indent rule, fixed some indenting as well
Dale Weiler [Mon, 19 Aug 2013 02:16:16 +0000 (02:16 +0000)]
Added style + indent rule, fixed some indenting as well

11 years agoNewline rule
Dale Weiler [Mon, 19 Aug 2013 00:59:41 +0000 (00:59 +0000)]
Newline rule

11 years agoPlease the Samual
Dale Weiler [Sun, 18 Aug 2013 23:44:23 +0000 (23:44 +0000)]
Please the Samual

11 years agoFix that rule
Dale Weiler [Sat, 17 Aug 2013 23:50:21 +0000 (23:50 +0000)]
Fix that rule

11 years agoAdded whitespace fix rule to include.mk
Dale Weiler [Sat, 17 Aug 2013 23:49:47 +0000 (23:49 +0000)]
Added whitespace fix rule to include.mk

11 years agoRemove some trailing whitespace
Dale Weiler [Sat, 17 Aug 2013 23:43:41 +0000 (23:43 +0000)]
Remove some trailing whitespace

11 years agoRemove that idiom, and use GMQCC_ARRAY_COUNT.
Dale Weiler [Sat, 17 Aug 2013 23:39:06 +0000 (23:39 +0000)]
Remove that idiom, and use GMQCC_ARRAY_COUNT.

11 years agoForgot about this one
Dale Weiler [Sat, 17 Aug 2013 22:19:40 +0000 (22:19 +0000)]
Forgot about this one

11 years agoThey don't go there, fuck you grep.
Dale Weiler [Sat, 17 Aug 2013 22:17:14 +0000 (22:17 +0000)]
They don't go there, fuck you grep.

11 years agoCleanups and update CHANGES
Dale Weiler [Sat, 17 Aug 2013 22:16:40 +0000 (22:16 +0000)]
Cleanups and update CHANGES

11 years agoFix the build
Dale Weiler [Fri, 16 Aug 2013 09:09:56 +0000 (09:09 +0000)]
Fix the build

11 years agoMake it compile in visual studio again, without warnings.
Dale Weiler [Fri, 16 Aug 2013 09:03:36 +0000 (09:03 +0000)]
Make it compile in visual studio again, without warnings.

11 years agoUpdate documentation
Dale Weiler [Fri, 16 Aug 2013 08:16:03 +0000 (08:16 +0000)]
Update documentation

11 years agoSome testing for valgrind in the makefile
Dale Weiler [Fri, 16 Aug 2013 07:33:57 +0000 (07:33 +0000)]
Some testing for valgrind in the makefile

11 years agoValgrind integration for our memory allocator.
Dale Weiler [Fri, 16 Aug 2013 07:22:01 +0000 (07:22 +0000)]
Valgrind integration for our memory allocator.

11 years agoUpdate the ini example, holy hell we have more options than I imagined.
Dale Weiler [Fri, 16 Aug 2013 04:22:53 +0000 (04:22 +0000)]
Update the ini example, holy hell we have more options than I imagined.

11 years agoRework some build stuff for better output and to enable strict prototypes
Dale Weiler [Fri, 16 Aug 2013 03:28:02 +0000 (03:28 +0000)]
Rework some build stuff for better output and to enable strict prototypes

11 years agoMake our allocator slightly faster with branch hinting.
Dale Weiler [Thu, 15 Aug 2013 06:09:28 +0000 (06:09 +0000)]
Make our allocator slightly faster with branch hinting.

11 years agoTrack constant folds in opts_optimization list .. this could be handled better I...
Dale Weiler [Thu, 15 Aug 2013 03:45:50 +0000 (03:45 +0000)]
Track constant folds in opts_optimization list .. this could be handled better I assume.

11 years agoPerform some strict aliasing all over this biatch. We ain't trippin on code that...
Dale Weiler [Wed, 14 Aug 2013 10:16:04 +0000 (10:16 +0000)]
Perform some strict aliasing all over this biatch. We ain't trippin on code that breaks it.

11 years agoremove the 'opts' global from test.c and exec.c as opts.c defines it and is linked...
Wolfgang Bumiller [Wed, 14 Aug 2013 10:09:26 +0000 (12:09 +0200)]
remove the 'opts' global from test.c and exec.c as opts.c defines it and is linked into both the testsuite and qcvm

11 years agoHandle some more errors
Dale Weiler [Wed, 14 Aug 2013 07:41:09 +0000 (07:41 +0000)]
Handle some more errors

11 years agoSome bug fixes
Dale Weiler [Wed, 14 Aug 2013 07:19:49 +0000 (07:19 +0000)]
Some bug fixes

11 years agoRemove my MT impl for PRNG, it's full of buffer overflows that I don't want to fix...
Dale Weiler [Wed, 14 Aug 2013 06:22:32 +0000 (06:22 +0000)]
Remove my MT impl for PRNG, it's full of buffer overflows that I don't want to fix. Just fallback to using srand/rand

11 years agoRemove vec_upload
Dale Weiler [Wed, 14 Aug 2013 06:19:48 +0000 (06:19 +0000)]
Remove vec_upload

11 years agoUpdate deps
Dale Weiler [Wed, 14 Aug 2013 06:12:43 +0000 (06:12 +0000)]
Update deps

11 years agoMade intrinsics seperate from the parser.
Dale Weiler [Wed, 14 Aug 2013 06:02:15 +0000 (06:02 +0000)]
Made intrinsics seperate from the parser.

11 years agoFix
Dale Weiler [Wed, 14 Aug 2013 04:27:11 +0000 (04:27 +0000)]
Fix

11 years agoCleanups
Dale Weiler [Wed, 14 Aug 2013 04:24:06 +0000 (04:24 +0000)]
Cleanups

11 years agoSome statistics as Samual wanted.
Dale Weiler [Wed, 14 Aug 2013 04:08:00 +0000 (04:08 +0000)]
Some statistics as Samual wanted.

11 years agoDisable statistics that are irrelevant to QuakeC coders
Dale Weiler [Wed, 14 Aug 2013 03:24:00 +0000 (03:24 +0000)]
Disable statistics that are irrelevant to QuakeC coders

11 years agoRemove the attempt at ast_intrinsic node
Dale Weiler [Wed, 14 Aug 2013 03:05:14 +0000 (03:05 +0000)]
Remove the attempt at ast_intrinsic node

11 years agoSome intrinsic cleanups
Dale Weiler [Wed, 14 Aug 2013 03:03:49 +0000 (03:03 +0000)]
Some intrinsic cleanups

11 years agoSome typos
Dale Weiler [Wed, 14 Aug 2013 02:07:12 +0000 (02:07 +0000)]
Some typos

11 years agoincrement the optimization counter for DCE'd folds, also enable -O3 for compilation.
Dale Weiler [Thu, 1 Aug 2013 14:24:10 +0000 (14:24 +0000)]
increment the optimization counter for DCE'd folds, also enable -O3 for compilation.

11 years agoTestsuite now returns the correct value on test failures (also prints how many tests...
Dale Weiler [Thu, 1 Aug 2013 07:20:02 +0000 (07:20 +0000)]
Testsuite now returns the correct value on test failures (also prints how many tests failed .. if any fail)

11 years agoDisable the macros to keep clang happy (just uncomment them for when more constant...
Dale Weiler [Thu, 1 Aug 2013 07:12:21 +0000 (07:12 +0000)]
Disable the macros to keep clang happy (just uncomment them for when more constant folding optimizations need them)

11 years agoAdded -Oconst-fold-dce (dead code elimination optimization for when constant expressi...
Dale Weiler [Thu, 1 Aug 2013 07:07:59 +0000 (07:07 +0000)]
Added -Oconst-fold-dce (dead code elimination optimization for when constant expressions form the basis of the dead code, i.e if else with constant expression). Fixed deps and added documentation. Cleaned up folds for ir_value (can now use the same macros as the ast_value ones).

11 years agoFix that typecast
Dale Weiler [Wed, 31 Jul 2013 19:36:09 +0000 (19:36 +0000)]
Fix that typecast

11 years agoMove const-branch-elision into fold.c
Dale Weiler [Wed, 31 Jul 2013 19:34:38 +0000 (19:34 +0000)]
Move const-branch-elision into fold.c

11 years agoRemove debugging aid and left over cruft.
Dale Weiler [Wed, 31 Jul 2013 18:54:38 +0000 (18:54 +0000)]
Remove debugging aid and left over cruft.

11 years agoThe problem was so subtle
Dale Weiler [Wed, 31 Jul 2013 18:53:00 +0000 (18:53 +0000)]
The problem was so subtle

11 years agoFixes
Dale Weiler [Wed, 31 Jul 2013 17:24:32 +0000 (17:24 +0000)]
Fixes

11 years agofixed vector ops constant folding.
Dale Weiler [Wed, 31 Jul 2013 17:05:43 +0000 (17:05 +0000)]
fixed vector ops constant folding.

11 years agomore fixes
Dale Weiler [Wed, 31 Jul 2013 16:31:45 +0000 (16:31 +0000)]
more fixes

11 years agoFixes
Dale Weiler [Wed, 31 Jul 2013 15:56:56 +0000 (15:56 +0000)]
Fixes

11 years agoOperator constant folding rewrite almost complete, just need to track down why two...
Dale Weiler [Wed, 31 Jul 2013 15:49:45 +0000 (15:49 +0000)]
Operator constant folding rewrite almost complete, just need to track down why two tests are failing.

11 years agofolding for lteqgt (less than equal to or greater than) operator a.k.a <=> which...
Dale Weiler [Wed, 31 Jul 2013 12:59:34 +0000 (12:59 +0000)]
folding for lteqgt (less than equal to or greater than) operator a.k.a <=> which maps values to -1,0,1 depending on the result (think of the result as a troolan) .. it's a perl thing :P

11 years agoFeed clang demon
Dale Weiler [Wed, 31 Jul 2013 12:17:52 +0000 (12:17 +0000)]
Feed clang demon

11 years ago&& and || op folding
Dale Weiler [Wed, 31 Jul 2013 12:11:03 +0000 (12:11 +0000)]
&& and || op folding

11 years agoFold for div op
Dale Weiler [Wed, 31 Jul 2013 11:48:43 +0000 (11:48 +0000)]
Fold for div op