xonotic/gmqcc.git
6 years agoSome cleanups
Dale Weiler [Fri, 11 Oct 2013 13:32:46 +0000 (09:32 -0400)]
Some cleanups

6 years agoUpdate README
Dale Weiler [Fri, 11 Oct 2013 12:14:37 +0000 (08:14 -0400)]
Update README

6 years agoMerge branch 'cooking' of git://github.com/graphitemaster/gmqcc into cooking
Wolfgang Bumiller [Fri, 11 Oct 2013 12:11:40 +0000 (14:11 +0200)]
Merge branch 'cooking' of git://github.com/graphitemaster/gmqcc into cooking

6 years agoMerge branch 'cooking' of git://github.com/graphitemaster/gmqcc into cooking
Wolfgang Bumiller [Fri, 11 Oct 2013 12:10:57 +0000 (14:10 +0200)]
Merge branch 'cooking' of git://github.com/graphitemaster/gmqcc into cooking

6 years agofirst part of parsing TOKEN_DOTS as part of a type when needed; allows declarations...
Wolfgang Bumiller [Fri, 11 Oct 2013 12:10:47 +0000 (14:10 +0200)]
first part of parsing TOKEN_DOTS as part of a type when needed; allows declarations like: ...float x;

6 years agoUpdate dependencies
Dale Weiler [Fri, 11 Oct 2013 12:10:32 +0000 (08:10 -0400)]
Update dependencies

6 years agoI need to test this code on msvc now.
Dale Weiler [Fri, 11 Oct 2013 12:08:36 +0000 (08:08 -0400)]
I need to test this code on msvc now.

6 years agoFix that (newer clang will fail on it)
Dale Weiler [Fri, 11 Oct 2013 12:06:10 +0000 (08:06 -0400)]
Fix that (newer clang will fail on it)

6 years agoMerge branch 'cleanup' into cooking
Dale Weiler [Fri, 11 Oct 2013 12:04:02 +0000 (08:04 -0400)]
Merge branch 'cleanup' into cooking

6 years agoLast piece of documentation for platform.h
Dale Weiler [Fri, 11 Oct 2013 12:02:28 +0000 (08:02 -0400)]
Last piece of documentation for platform.h

6 years agoMore documentation for platform.h
Dale Weiler [Fri, 11 Oct 2013 11:40:31 +0000 (07:40 -0400)]
More documentation for platform.h

6 years agoSome documentation
Dale Weiler [Fri, 11 Oct 2013 11:16:48 +0000 (07:16 -0400)]
Some documentation

6 years agoSome more cleanup
Dale Weiler [Fri, 11 Oct 2013 10:36:05 +0000 (06:36 -0400)]
Some more cleanup

6 years agoRefactor some util/platform usage and extend file system file interface to accept...
Dale Weiler [Fri, 11 Oct 2013 10:12:56 +0000 (06:12 -0400)]
Refactor some util/platform usage and extend file system file interface to accept its own flags and EOF

6 years agodistro/archlinux/this/Makefile: TARCOMP variable contains the compression flag, rathe...
Wolfgang Bumiller [Fri, 11 Oct 2013 09:17:03 +0000 (11:17 +0200)]
distro/archlinux/this/Makefile: TARCOMP variable contains the compression flag, rather than using -J in the makerule but provide the .xz extension in a variable

6 years agodistro/archlinux/this/Makefile: tar -> bsdtar
Wolfgang Bumiller [Fri, 11 Oct 2013 09:14:46 +0000 (11:14 +0200)]
distro/archlinux/this/Makefile: tar -> bsdtar

6 years agoAdd back the correct directory handling for msvc
Dale Weiler [Fri, 11 Oct 2013 09:09:55 +0000 (05:09 -0400)]
Add back the correct directory handling for msvc

6 years agoMake it compile with mingw32 again
Dale Weiler [Fri, 11 Oct 2013 08:58:49 +0000 (04:58 -0400)]
Make it compile with mingw32 again

6 years agoAdd a porting guide
Dale Weiler [Fri, 11 Oct 2013 08:55:26 +0000 (04:55 -0400)]
Add a porting guide

6 years agoMore cleanups, gmqcc.h doesn't need to include stdio.h now!
Dale Weiler [Fri, 11 Oct 2013 08:06:52 +0000 (04:06 -0400)]
More cleanups, gmqcc.h doesn't need to include stdio.h now!

6 years agoMore cleanups
Dale Weiler [Fri, 11 Oct 2013 07:59:25 +0000 (03:59 -0400)]
More cleanups

6 years agoMore cleanup
Dale Weiler [Fri, 11 Oct 2013 07:21:44 +0000 (03:21 -0400)]
More cleanup

6 years agoSome more platform / compiler specific code refactoring.
Dale Weiler [Fri, 11 Oct 2013 07:02:38 +0000 (03:02 -0400)]
Some more platform / compiler specific code refactoring.

6 years agoInitial platform / compiler specific code refactoring.
Dale Weiler [Fri, 11 Oct 2013 06:39:30 +0000 (02:39 -0400)]
Initial platform / compiler specific code refactoring.

6 years agoThis can actually be much smaller, 204 bytes!
Dale Weiler [Fri, 11 Oct 2013 04:22:27 +0000 (00:22 -0400)]
This can actually be much smaller, 204 bytes!

6 years agoMore typos
Dale Weiler [Fri, 11 Oct 2013 02:12:03 +0000 (22:12 -0400)]
More typos

6 years agotypo
Dale Weiler [Fri, 11 Oct 2013 02:11:03 +0000 (22:11 -0400)]
typo

6 years agoDocument what the utf8 table actually is
Dale Weiler [Fri, 11 Oct 2013 02:10:36 +0000 (22:10 -0400)]
Document what the utf8 table actually is

6 years agoWrong operand order it's 0xf4u-0xc2u i.e 0x32.
Dale Weiler [Fri, 11 Oct 2013 02:03:13 +0000 (22:03 -0400)]
Wrong operand order it's 0xf4u-0xc2u i.e 0x32.

6 years agoLess flexible more economical utf8 decoder.
Dale Weiler [Fri, 11 Oct 2013 01:44:40 +0000 (21:44 -0400)]
Less flexible more economical utf8 decoder.

6 years agoDon't echo it
Dale Weiler [Sun, 6 Oct 2013 03:39:05 +0000 (23:39 -0400)]
Don't echo it

6 years agoFix some things: get all the Quake mods to compile again (I broke binary expressions...
Dale Weiler [Sun, 6 Oct 2013 03:36:48 +0000 (23:36 -0400)]
Fix some things: get all the Quake mods to compile again (I broke binary expressions .. oops) Fix the check-proj script, using $? for status was invalid because of pipes. The ir now properly considers negation virtual instruction to be operations (as it should).

6 years agoUpdate CHANGES files
Dale Weiler [Sun, 6 Oct 2013 02:34:55 +0000 (22:34 -0400)]
Update CHANGES files

6 years agoFix fold_superfluous
Dale Weiler [Fri, 4 Oct 2013 11:10:58 +0000 (07:10 -0400)]
Fix fold_superfluous

6 years agoOnly when peephole optimization is on
Dale Weiler [Fri, 4 Oct 2013 11:02:06 +0000 (07:02 -0400)]
Only when peephole optimization is on

6 years agoHandle proper expression type assignment
Dale Weiler [Fri, 4 Oct 2013 10:53:09 +0000 (06:53 -0400)]
Handle proper expression type assignment

6 years agoAnother peephole optimization which removes superfluous expressions such as (A +...
Dale Weiler [Fri, 4 Oct 2013 10:46:54 +0000 (06:46 -0400)]
Another peephole optimization which removes superfluous expressions such as (A + 0), (A - 0), (A * 1) and (A / 1).

6 years agoRefactor intrinsic stuff
Dale Weiler [Wed, 2 Oct 2013 17:00:34 +0000 (13:00 -0400)]
Refactor intrinsic stuff

6 years agoUpdate documentation
Dale Weiler [Mon, 30 Sep 2013 20:03:22 +0000 (16:03 -0400)]
Update documentation

6 years agoAdd seperate warning flag for directive in macro.
Dale Weiler [Mon, 30 Sep 2013 19:59:36 +0000 (15:59 -0400)]
Add seperate warning flag for directive in macro.

6 years agoWarn when preprocessor directive is found inside a macro body.
Dale Weiler [Mon, 30 Sep 2013 19:57:01 +0000 (15:57 -0400)]
Warn when preprocessor directive is found inside a macro body.

6 years agoMerge branch 'cooking' of github.com:graphitemaster/gmqcc into cooking
Dale Weiler [Mon, 30 Sep 2013 18:33:57 +0000 (14:33 -0400)]
Merge branch 'cooking' of github.com:graphitemaster/gmqcc into cooking

6 years agoFix negation type for VINSTR_NEG_V. Source operand for optimization instead of the...
Dale Weiler [Mon, 30 Sep 2013 18:32:21 +0000 (14:32 -0400)]
Fix negation type for VINSTR_NEG_V. Source operand for optimization instead of the expression (to handle double negation elision properly.)

6 years agoMerge branch 'master' into cooking
Wolfgang Bumiller [Mon, 30 Sep 2013 13:02:03 +0000 (15:02 +0200)]
Merge branch 'master' into cooking

6 years agoMerge pull request #134 from Sicness/hyphen
Wolfgang Bumiller [Mon, 30 Sep 2013 13:01:22 +0000 (06:01 -0700)]
Merge pull request #134 from Sicness/hyphen

Fixed hyphen-used-as-minus-sign in gmqcc.1

6 years agoFixed hyphen-used-as-minus-sign in gmqcc.1
Anton Balashov [Mon, 30 Sep 2013 12:43:57 +0000 (16:43 +0400)]
Fixed hyphen-used-as-minus-sign in gmqcc.1

Accortding to lintian report:
I: gmqcc: hyphen-used-as-minus-sign usr/share/man/man1/gmqcc.1.gz:156
N:
N:    This manual page seems to contain a hyphen where a minus sign was
N:    intended. By default, "-" chars are interpreted as hyphens (U+2010) by
N:    groff, not as minus signs (U+002D). Since options to programs use minus
N:    signs (U+002D), this means for example in UTF-8 locales that you cannot
N:    cut and paste options, nor search for them easily. The Debian groff
N:    package currently forces "-" to be interpreted as a minus sign due to
N:    the number of manual pages with this problem, but this is a
N:    Debian-specific modification and hopefully eventually can be removed.
N:
N:    "-" must be escaped ("\-") to be interpreted as minus. If you really
N:    intend a hyphen (normally you don't), write it as "\(hy" to emphasise
N:    that fact. See groff(7) and especially groff_char(7) for details, and
N:    also the thread starting with
N:    http://lists.debian.org/debian-devel/2003/debian-devel-200303/msg01481.html
N:
N:    If you use some tool that converts your documentation to groff format,
N:    this tag may indicate a bug in the tool. Some tools convert dashes of
N:    any kind to hyphens. The safe way of converting dashes is to convert
N:    them to "\-".
N:
N:    Because this error can occur very often, Lintian shows only the first 10
N:    occurrences for each man page and give the number of suppressed
N:    occurrences. If you want to see all warnings, run Lintian with the
N:    -d/--debug option.
N:
N:    Refer to /usr/share/doc/groff-base/README.Debian and the groff_char(7)
N:    manual page for details.
N:
N:    Severity: wishlist, Certainty: possible
N:
N:    Check: manpages, Type: binary
N:
I: gmqcc: hyphen-used-as-minus-sign usr/share/man/man1/gmqcc.1.gz:354
I: gmqcc: hyphen-used-as-minus-sign usr/share/man/man1/gmqcc.1.gz:676

6 years agoHandle double negation case specially. Update TODO
Dale Weiler [Mon, 30 Sep 2013 09:12:28 +0000 (05:12 -0400)]
Handle double negation case specially. Update TODO

6 years agoSimplify parse stage for unary - operator.
Dale Weiler [Mon, 30 Sep 2013 02:08:09 +0000 (22:08 -0400)]
Simplify parse stage for unary - operator.

6 years agoRemove pointless thinking comment, fix builds for clang.
Dale Weiler [Mon, 30 Sep 2013 02:06:26 +0000 (22:06 -0400)]
Remove pointless thinking comment, fix builds for clang.

6 years agoMake unary - operator act as an ast_unary node. This allows for consistency (no sense...
Dale Weiler [Mon, 30 Sep 2013 02:01:46 +0000 (22:01 -0400)]
Make unary - operator act as an ast_unary node. This allows for consistency (no sense in making unary use binstore nodes, it doesn't make much sense). It also allows for the peephole optimization on unary chains that cancel each other to take place; i.e code like "-(-a)" simplifies to "a", thus eliminating instructions.

6 years agoEh, only if peephole optimizations are turned on.
Dale Weiler [Sat, 28 Sep 2013 10:41:40 +0000 (06:41 -0400)]
Eh, only if peephole optimizations are turned on.

6 years agoLess casts.
Dale Weiler [Sat, 28 Sep 2013 10:36:00 +0000 (06:36 -0400)]
Less casts.

6 years agoIt was much easier in the AST, really.
Dale Weiler [Sat, 28 Sep 2013 10:33:15 +0000 (06:33 -0400)]
It was much easier in the AST, really.

6 years agoRemove the rest of it.
Dale Weiler [Sat, 28 Sep 2013 10:10:02 +0000 (06:10 -0400)]
Remove the rest of it.

6 years agoRemove it, maybe it can be done in the AST instead.
Dale Weiler [Sat, 28 Sep 2013 10:09:24 +0000 (06:09 -0400)]
Remove it, maybe it can be done in the AST instead.

6 years agoEh.
Dale Weiler [Sat, 28 Sep 2013 09:36:09 +0000 (05:36 -0400)]
Eh.

6 years agoOptimize for superfluous cases of NOT, i.e !!!!x can be simplified to !!x.
Dale Weiler [Sat, 28 Sep 2013 09:34:53 +0000 (05:34 -0400)]
Optimize for superfluous cases of NOT, i.e !!!!x can be simplified to !!x.

6 years agoMove it over
Dale Weiler [Sat, 28 Sep 2013 07:41:18 +0000 (03:41 -0400)]
Move it over

6 years agoOptimizng compile flags
Igor Gnatenko [Wed, 25 Sep 2013 21:57:07 +0000 (01:57 +0400)]
Optimizng compile flags

Signed-off-by: Igor Gnatenko <i.gnatenko.brain@gmail.com>
6 years agoUpdate to 0.3.0 (improved new package: gmqpak)
Igor Gnatenko [Fri, 20 Sep 2013 19:21:39 +0000 (23:21 +0400)]
Update to 0.3.0 (improved new package: gmqpak)

Signed-off-by: Igor Gnatenko <i.gnatenko.brain@gmail.com>
6 years agoInitial release
Igor Gnatenko [Sat, 27 Jul 2013 18:44:42 +0000 (22:44 +0400)]
Initial release

Add spec and patch

Signed-off-by: Igor Gnatenko <i.gnatenko.brain@gmail.com>
6 years agoFix alias type check
Dale Weiler [Thu, 26 Sep 2013 12:09:55 +0000 (08:09 -0400)]
Fix alias type check

6 years agoImplement constant folding on ternary operations via fold_cond.
Dale Weiler [Thu, 26 Sep 2013 10:51:49 +0000 (06:51 -0400)]
Implement constant folding on ternary operations via fold_cond.

6 years agoConsistency
Dale Weiler [Wed, 25 Sep 2013 20:19:33 +0000 (16:19 -0400)]
Consistency

6 years agoCheap quick hack for ignoring #pragma to EOL
Dale Weiler [Wed, 25 Sep 2013 19:35:18 +0000 (15:35 -0400)]
Cheap quick hack for ignoring #pragma to EOL

6 years agoremove -printf option from find; remove the misplaced 'local's
Wolfgang Bumiller [Wed, 25 Sep 2013 09:16:15 +0000 (11:16 +0200)]
remove -printf option from find; remove the misplaced 'local's

6 years agothere's no pushd/popd in my sh
Wolfgang Bumiller [Wed, 25 Sep 2013 09:14:59 +0000 (11:14 +0200)]
there's no pushd/popd in my sh

6 years agoSome grammar
Dale Weiler [Wed, 25 Sep 2013 08:24:09 +0000 (04:24 -0400)]
Some grammar

6 years agoFix some stuff for xonotic and make check-proj actually use the options line correctly.
Dale Weiler [Wed, 25 Sep 2013 08:23:06 +0000 (04:23 -0400)]
Fix some stuff for xonotic and make check-proj actually use the options line correctly.

6 years agoAdd export utility for Nexuiz, now check-proj handles it.
Dale Weiler [Wed, 25 Sep 2013 08:03:37 +0000 (04:03 -0400)]
Add export utility for Nexuiz, now check-proj handles it.

6 years agoGot Xonotic stuff for check-proj to function.
Dale Weiler [Wed, 25 Sep 2013 07:52:48 +0000 (03:52 -0400)]
Got Xonotic stuff for check-proj to function.

6 years agoFix the xonotic export script for check-proj.sh
Dale Weiler [Tue, 24 Sep 2013 11:53:51 +0000 (07:53 -0400)]
Fix the xonotic export script for check-proj.sh

6 years agoMerge branch 'cooking' of github.com:graphitemaster/gmqcc into cooking
Dale Weiler [Tue, 24 Sep 2013 11:32:23 +0000 (07:32 -0400)]
Merge branch 'cooking' of github.com:graphitemaster/gmqcc into cooking

6 years agoFix QuakeWorld compilation by treating assignment to constants as a warning when...
Dale Weiler [Tue, 24 Sep 2013 11:31:53 +0000 (07:31 -0400)]
Fix QuakeWorld compilation by treating assignment to constants as a warning when -std=qcc.

6 years agoUpdate .travis.yml
Dale Weiler [Sun, 22 Sep 2013 12:43:47 +0000 (08:43 -0400)]
Update .travis.yml

6 years agoUpdate .travis.yml
Dale Weiler [Sun, 22 Sep 2013 12:43:24 +0000 (08:43 -0400)]
Update .travis.yml

6 years agothis is still there twice...
Wolfgang Bumiller [Thu, 19 Sep 2013 18:55:41 +0000 (20:55 +0200)]
this is still there twice...

6 years agomoving the QCVM_EXECUTOR ifdef in conout.c - these are used in the executor
Wolfgang Bumiller [Thu, 19 Sep 2013 18:55:32 +0000 (20:55 +0200)]
moving the QCVM_EXECUTOR ifdef in conout.c - these are used in the executor

6 years agoRemove debug printfs
Dale Weiler [Wed, 18 Sep 2013 23:18:10 +0000 (19:18 -0400)]
Remove debug printfs

6 years agoGenerate (non_const_float * (1.0 / constant_float)) for (non_const_float / constant_f...
Dale Weiler [Wed, 18 Sep 2013 23:15:24 +0000 (19:15 -0400)]
Generate (non_const_float * (1.0 / constant_float)) for (non_const_float / constant_float) expressions.

6 years agosince we don't bail on some of the warnings right away, (that is, with -Werror),...
Wolfgang Bumiller [Wed, 18 Sep 2013 14:20:07 +0000 (16:20 +0200)]
since we don't bail on some of the warnings right away, (that is, with -Werror), also check the compile_errors count in main rather than just the return values

6 years agomaking irwarning warn on an unused result
Wolfgang Bumiller [Wed, 18 Sep 2013 14:18:29 +0000 (16:18 +0200)]
making irwarning warn on an unused result

6 years agoDon't need that, each directory already has its own progs.src
Dale Weiler [Thu, 12 Sep 2013 21:18:47 +0000 (17:18 -0400)]
Don't need that, each directory already has its own progs.src

6 years agoOutput the dat name for xonotic export tool (first line of prog.src)
Dale Weiler [Thu, 12 Sep 2013 21:08:40 +0000 (17:08 -0400)]
Output the dat name for xonotic export tool (first line of prog.src)

6 years agoAdded -progsrc commandline switch to specify progs.src files of different names....
Dale Weiler [Thu, 12 Sep 2013 21:06:20 +0000 (17:06 -0400)]
Added -progsrc commandline switch to specify progs.src files of different names. Cleaned up xonotic export script, fixed check-doc on linux systems by disabling mandoc check.

6 years agoAdded xonotic_export.sh utility that when run from a xonotic-data.pk3dir will elimina...
Dale Weiler [Thu, 12 Sep 2013 19:06:36 +0000 (15:06 -0400)]
Added xonotic_export.sh utility that when run from a xonotic-data.pk3dir will eliminate redundant files and create prog.src files for csprogs, progs(server) and menu. This tool will be used for check-proj.sh for exporting xonotic changes to our server.

6 years agoSupport options for check-proj now
Dale Weiler [Wed, 11 Sep 2013 21:09:03 +0000 (17:09 -0400)]
Support options for check-proj now

6 years agoAllow running from root of gmqcc repo as well.
Dale Weiler [Wed, 11 Sep 2013 20:50:33 +0000 (16:50 -0400)]
Allow running from root of gmqcc repo as well.

6 years agoProper gmqcc sourcing for check-proj
Dale Weiler [Wed, 11 Sep 2013 20:48:01 +0000 (16:48 -0400)]
Proper gmqcc sourcing for check-proj

6 years agoTest for gmqcc in check-proj
Dale Weiler [Wed, 11 Sep 2013 20:38:18 +0000 (16:38 -0400)]
Test for gmqcc in check-proj

6 years agofix: declaring locals with the name of a parameter now treats the parameter as the...
Wolfgang Bumiller [Wed, 11 Sep 2013 09:25:44 +0000 (11:25 +0200)]
fix: declaring locals with the name of a parameter now treats the parameter as the local's prototype to avoid it being double-freed later

6 years agoMerge branch 'cooking' of github.com:graphitemaster/gmqcc into cooking
Dale Weiler [Tue, 10 Sep 2013 23:16:14 +0000 (19:16 -0400)]
Merge branch 'cooking' of github.com:graphitemaster/gmqcc into cooking

6 years agoAdded check-proj misc tool that downloads various QuakeC projects and tries to compil...
Dale Weiler [Tue, 10 Sep 2013 23:15:28 +0000 (19:15 -0400)]
Added check-proj misc tool that downloads various QuakeC projects and tries to compile them with gmqcc, sort of like an additional test.

6 years agodistro/archbsd/this - as we don't depend on glibc there, just libc; also changed...
Wolfgang Bumiller [Mon, 9 Sep 2013 10:18:30 +0000 (12:18 +0200)]
distro/archbsd/this - as we don't depend on glibc there, just libc; also changed DESTDIR in archlinux/this/Makefile so it can be easily changed from the bsd Makefile

6 years agodistro/archlinux/this: generate the .MTREE file
Wolfgang Bumiller [Mon, 9 Sep 2013 10:08:57 +0000 (12:08 +0200)]
distro/archlinux/this: generate the .MTREE file

6 years agoqcvm: exit on error
Wolfgang Bumiller [Sun, 8 Sep 2013 19:31:56 +0000 (21:31 +0200)]
qcvm: exit on error

6 years agoMerge branch 'master' into cooking
Dale Weiler [Sun, 8 Sep 2013 17:05:20 +0000 (13:05 -0400)]
Merge branch 'master' into cooking

6 years agoFix dependincies
Dale Weiler [Sun, 8 Sep 2013 17:04:07 +0000 (13:04 -0400)]
Fix dependincies

6 years agoAlways print the char the lexer fails on for a token.
Dale Weiler [Sat, 31 Aug 2013 20:52:46 +0000 (16:52 -0400)]
Always print the char the lexer fails on for a token.

6 years agoVector cross product virtual instruction, now >< operator works for non-constant...
Dale Weiler [Sat, 31 Aug 2013 18:49:06 +0000 (14:49 -0400)]
Vector cross product virtual instruction, now >< operator works for non-constant vectors. Thanks divVerent for the help.