An Improved Quake C Compiler
Find a file
2013-09-29 22:01:46 -04:00
distro Move it over 2013-09-28 03:41:18 -04:00
doc Fix QuakeWorld compilation by treating assignment to constants as a warning when -std=qcc. 2013-09-24 07:31:53 -04:00
misc remove -printf option from find; remove the misplaced 'local's 2013-09-25 11:16:15 +02:00
msvc Make it compile in visual studio again, without warnings. 2013-08-16 09:03:36 +00:00
syntax Add jedit syntax highlighting support, thanks to LordHavoc (made some changes to reflect gmqcc syntax more) 2013-04-21 08:13:39 +00:00
tests Vector cross product virtual instruction, now >< operator works for non-constant vectors. Thanks divVerent for the help. 2013-08-31 14:49:06 -04:00
.gitattributes gitattributes for whitespace 2012-04-28 16:40:03 -04:00
.gitignore .gitignore: add binarys 2013-05-05 12:53:58 +02:00
.travis.yml Update .travis.yml 2013-09-22 08:43:47 -04:00
ast.c 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
ast.h 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. 2013-08-29 00:05:37 -04:00
AUTHORS Fedora spec files (0.2.9 and 0.3.0) + INSTALL documentation, thanks Igor Gnatenko. 2013-07-27 16:33:33 +00:00
BSDmakefile Some testing for valgrind in the makefile 2013-08-16 07:33:57 +00:00
CHANGES Some changes changes 2013-08-29 07:07:43 -04:00
code.c Rid of util_debug 2013-08-30 06:49:24 -04:00
conout.c moving the QCVM_EXECUTOR ifdef in conout.c - these are used in the executor 2013-09-19 21:05:39 +02:00
correct.c Major header reworking, this respects the namespaces properly. Makes object dependency more obvious, allows for better make caches, and prevents misuse of library features, i.e use con_* instead of printf. 2013-06-04 02:47:07 +00:00
exec.c this is still there twice... 2013-09-19 21:05:40 +02:00
fold.c Implement constant folding on ternary operations via fold_cond. 2013-09-26 06:51:49 -04:00
fs.c Grrrr 2013-04-24 17:47:42 +02:00
ftepp.c Added style + indent rule, fixed some indenting as well 2013-08-19 02:16:16 +00:00
gmqcc.h 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
gmqcc.ini.example Consistency 2013-09-25 16:19:33 -04:00
include.mk Some style fixes for tests 2013-08-27 06:41:03 -04:00
INSTALL Fedora spec files (0.2.9 and 0.3.0) + INSTALL documentation, thanks Igor Gnatenko. 2013-07-27 16:33:33 +00:00
intrin.c Logic elsewhere handles this (no need to duplicate) 2013-08-30 07:23:15 -04:00
ir.c 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
ir.h 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. 2013-08-29 00:05:37 -04:00
lexer.c Always print the char the lexer fails on for a token. 2013-08-31 16:52:46 -04:00
lexer.h Implemented >< (vector cross product operator). Currently support for constants only. 2013-08-31 13:41:25 -04:00
LICENSE This file seems to live in the past. Let's pull it over 2013-01-10 15:55:58 +01:00
main.c 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
Makefile Fix dependincies 2013-09-08 13:04:07 -04:00
opts.c Fix QuakeWorld compilation by treating assignment to constants as a warning when -std=qcc. 2013-09-24 07:31:53 -04:00
opts.def Fix QuakeWorld compilation by treating assignment to constants as a warning when -std=qcc. 2013-09-24 07:31:53 -04:00
pak.c Remove some trailing whitespace 2013-08-17 23:43:41 +00:00
parser.c 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
parser.h Implement constant folding on ternary operations via fold_cond. 2013-09-26 06:51:49 -04:00
README update README to reflect syntax highlighting stuff. 2013-04-21 09:44:08 +00:00
stat.c Remove some trailing whitespace 2013-08-17 23:43:41 +00:00
test.c Rid of util_debug 2013-08-30 06:49:24 -04:00
TODO TODO: fix typos 2012-12-26 19:15:40 +01:00
utf8.c Grrrr 2013-04-24 17:47:42 +02:00
util.c Rid of util_debug 2013-08-30 06:49:24 -04:00

GMQCC: An improved Quake C compiler

For licensing:           see the LICENSE file.
For installation notes:  see the INSTALL file.
For a list of authors:   see the AUTHORS file.
For a list of changes:   see the CHANGES file.

For documentation:
    See the manpages, or visit the documentation online at
    http://graphitemaster.github.com/gmqcc/doc.html

For syntax highlighting description files, or information
regarding how to install them:
    See the README in syntax directory