Dale Weiler
ffdd6df828
Only when peephole optimization is on
2013-10-04 07:02:06 -04:00
Dale Weiler
2cf5046d38
Handle proper expression type assignment
2013-10-04 06:53:09 -04:00
Dale Weiler
cc69370575
Another peephole optimization which removes superfluous expressions such as (A + 0), (A - 0), (A * 1) and (A / 1).
2013-10-04 06:46:54 -04:00
Dale Weiler
263fcfbc2f
Refactor intrinsic stuff
2013-10-02 13:00:34 -04:00
Dale Weiler
2ebf571129
Update documentation
2013-09-30 16:03:22 -04:00
Dale Weiler
90824c2093
Add seperate warning flag for directive in macro.
2013-09-30 15:59:36 -04:00
Dale Weiler
8f359f3849
Warn when preprocessor directive is found inside a macro body.
2013-09-30 15:57:01 -04:00
Dale Weiler
08891068c8
Merge branch 'cooking' of github.com:graphitemaster/gmqcc into cooking
2013-09-30 14:33:57 -04:00
Dale Weiler
b6f08e7fb1
Fix negation type for VINSTR_NEG_V. Source operand for optimization instead of the expression (to handle double negation elision properly.)
2013-09-30 14:32:21 -04:00
Wolfgang Bumiller
fa14ca93d2
Merge branch 'master' into cooking
2013-09-30 15:02:03 +02:00
Wolfgang Bumiller
dfbd093348
Merge pull request #134 from Sicness/hyphen
...
Fixed hyphen-used-as-minus-sign in gmqcc.1
2013-09-30 06:01:22 -07:00
Anton Balashov
e928cabfb2
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
2013-09-30 16:43:57 +04:00
Dale Weiler
03b56bd41f
Handle double negation case specially. Update TODO
2013-09-30 05:12:28 -04:00
Dale Weiler
7249c2ec18
Simplify parse stage for unary - operator.
2013-09-29 22:08:09 -04:00
Dale Weiler
353455e1ad
Remove pointless thinking comment, fix builds for clang.
2013-09-29 22:06:26 -04:00
Dale Weiler
b10de1b240
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.
2013-09-29 22:01:46 -04:00
Dale Weiler
3c931ecbf1
Eh, only if peephole optimizations are turned on.
2013-09-28 06:41:40 -04:00
Dale Weiler
c6056d441b
Less casts.
2013-09-28 06:36:00 -04:00
Dale Weiler
7c25af973c
It was much easier in the AST, really.
2013-09-28 06:33:15 -04:00
Dale Weiler
81df8fa139
Remove the rest of it.
2013-09-28 06:10:02 -04:00
Dale Weiler
8a294683bb
Remove it, maybe it can be done in the AST instead.
2013-09-28 06:09:24 -04:00
Dale Weiler
c4e92df106
Eh.
2013-09-28 05:36:09 -04:00
Dale Weiler
2b3663e18d
Optimize for superfluous cases of NOT, i.e !!!!x can be simplified to !!x.
2013-09-28 05:34:53 -04:00
Dale Weiler
0d1f20fea3
Move it over
2013-09-28 03:41:18 -04:00
Igor Gnatenko
95b7056427
Optimizng compile flags
...
Signed-off-by: Igor Gnatenko <i.gnatenko.brain@gmail.com>
2013-09-28 03:37:58 -04:00
Igor Gnatenko
c8a1b6563e
Update to 0.3.0 (improved new package: gmqpak)
...
Signed-off-by: Igor Gnatenko <i.gnatenko.brain@gmail.com>
2013-09-28 03:37:58 -04:00
Igor Gnatenko
48211572e5
Initial release
...
Add spec and patch
Signed-off-by: Igor Gnatenko <i.gnatenko.brain@gmail.com>
2013-09-28 03:37:58 -04:00
Dale Weiler
d61c5d3b16
Fix alias type check
2013-09-26 08:09:55 -04:00
Dale Weiler
15b0555546
Implement constant folding on ternary operations via fold_cond.
2013-09-26 06:51:49 -04:00
Dale Weiler
cf2352893f
Consistency
2013-09-25 16:19:33 -04:00
Dale Weiler
894e1976e3
Cheap quick hack for ignoring #pragma to EOL
2013-09-25 15:35:18 -04:00
Wolfgang Bumiller
904c45060b
remove -printf option from find; remove the misplaced 'local's
2013-09-25 11:16:15 +02:00
Wolfgang Bumiller
87fcf8d8e8
there's no pushd/popd in my sh
2013-09-25 11:14:59 +02:00
Dale Weiler
d2405a9ad8
Some grammar
2013-09-25 04:24:09 -04:00
Dale Weiler
d664b9f607
Fix some stuff for xonotic and make check-proj actually use the options line correctly.
2013-09-25 04:23:06 -04:00
Dale Weiler
13ef558fff
Add export utility for Nexuiz, now check-proj handles it.
2013-09-25 04:03:37 -04:00
Dale Weiler
3968dc84fd
Got Xonotic stuff for check-proj to function.
2013-09-25 03:52:48 -04:00
Dale Weiler
330111d5fc
Fix the xonotic export script for check-proj.sh
2013-09-24 07:53:51 -04:00
Dale Weiler
fac4e411bf
Merge branch 'cooking' of github.com:graphitemaster/gmqcc into cooking
2013-09-24 07:32:23 -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
Dale Weiler
37a4265e06
Update .travis.yml
2013-09-22 08:43:47 -04:00
Dale Weiler
69efb404bf
Update .travis.yml
2013-09-22 08:43:24 -04:00
Wolfgang Bumiller
99422d0cf4
this is still there twice...
2013-09-19 21:05:40 +02:00
Wolfgang Bumiller
8d2a6ca419
moving the QCVM_EXECUTOR ifdef in conout.c - these are used in the executor
2013-09-19 21:05:39 +02:00
Dale Weiler
f25fff1e3d
Remove debug printfs
2013-09-18 19:18:10 -04:00
Dale Weiler
e18849fa42
Generate (non_const_float * (1.0 / constant_float)) for (non_const_float / constant_float) expressions.
2013-09-18 19:15:24 -04:00
Wolfgang Bumiller
5a47dd5e62
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
2013-09-18 16:20:25 +02:00
Wolfgang Bumiller
b6da3613ac
making irwarning warn on an unused result
2013-09-18 16:20:24 +02:00
Dale Weiler
241637a980
Don't need that, each directory already has its own progs.src
2013-09-12 17:18:47 -04:00
Dale Weiler
9726d80e05
Output the dat name for xonotic export tool (first line of prog.src)
2013-09-12 17:08:40 -04:00