Commit graph

2891 commits

Author SHA1 Message Date
Dale Weiler
3f4659b5d5 oops 2015-12-28 08:00:54 -05:00
Dale Weiler
6024e377ba Fix unary negation (-) 2015-12-28 07:58:54 -05:00
Dale Weiler
e922403aa8 Don't allocate globals for constants that aren't read 2015-01-30 00:40:59 -05:00
Dale Weiler
ff37abb0c7 Constant folding for strings 2015-01-30 00:25:10 -05:00
Dale Weiler
41a76ab91d Fix for loops 2015-01-29 23:33:59 -05:00
Dale Weiler
b640049912 For now 2015-01-29 23:13:55 -05:00
Dale Weiler
783b7b6594 Update license headers 2015-01-09 14:53:35 -05:00
Dale Weiler
114a1d3b14 Fix variable declarations in for-loop initializers 2015-01-08 23:42:46 -05:00
Dale Weiler
6fee3ec363 More comments 2015-01-06 20:39:20 -05:00
Dale Weiler
2b10d588e4 grammar 2015-01-06 20:33:31 -05:00
Dale Weiler
e3577912c8 Fix the soft float implementation. Comment it as well. 2015-01-06 20:30:17 -05:00
Dale Weiler
ac8c7d730a Merge branch 'cooking'
Conflicts:
	test.c
2014-12-10 02:43:42 -05:00
Dale Weiler
5d5b9a379a When storing to a vector member as part of an entity field we must use STOREP 2014-12-10 02:40:35 -05:00
Dale Weiler
8f7242d314 Implement support for #include MACRO and #include __LINE__ 2014-11-07 03:12:34 -05:00
Dale Weiler
103e549615 Don't emit whitespace when stringifying TOKEN_WHITE.
Other aspects of the preprocessor already skip whitespace leading up to a token. The only situation in which a TOKEN_WHITE can
exist as part of the token stream during stringification, is when the whitespace is trailing after a token. This is situation is
really only possible in the context of a macro argument. This behaviour is inconsistent.

Consider the following
FOO( space_before)
FOO(space_after )

The former will reduce to "space_before" since the preprocessor will skip whitespace leading up to the token `space_before', while
the latter will reduce to "space_after ".

The C preprocessor doesn't preserve whitespace, so we won't either. This doesn't break any existing code.
2014-11-07 02:01:17 -05:00
Dale Weiler
ab841b94f7 Allow negation to propagate inexactness in constant folder by using neg(x) = x*-1 2014-11-04 14:32:56 -05:00
Wolfgang Bumiller
624e6201e8 manpage/init: -fsplit-vector-parameters description 2014-10-18 14:39:14 +02:00
Wolfgang Bumiller
8b25e95553 we like to spell things properly - if this commit message contains a typo I don't catch before pushing then that's totally intentional 2014-10-18 14:27:16 +02:00
Wolfgang Bumiller
ddb0b7dd9d ir_builder_imm_float: add IR_FLAG_ERASEABLE 2014-10-18 14:25:28 +02:00
Wolfgang Bumiller
806850e408 ir_builder_imm_float: mark them as const, otherwise they end up getting saved 2014-10-18 13:53:15 +02:00
Wolfgang Bumiller
09109bb176 split-vectors test 2014-10-18 13:51:25 +02:00
Wolfgang Bumiller
3df51c5979 adding -fsplit-vector-parameters, todo: float-lookup should get optimized as commented 2014-10-18 13:49:13 +02:00
Wolfgang Bumiller
2a00b386ba renaming the length operator to _length and fixing the lexing of that operator, generic names for operators is really a bad idea 2014-10-18 13:47:23 +02:00
Dale Weiler
15b31e7dc5 Support text type escape sequences \b and \s. 2014-10-17 19:37:01 -04:00
Dale Weiler
fa7d44e0c7 Converting a literal to null pointer produces a warning 2014-10-16 22:55:16 -04:00
Dale Weiler
859e9fe3da Fix tests 2014-09-29 03:38:08 -04:00
Dale Weiler
de22dec56b Some fixes 2014-09-28 20:28:56 -04:00
Dale Weiler
641136fee3 Make it a function 2014-09-27 04:50:50 -04:00
Dale Weiler
b08195e2da Implemented length operator. This closes #130 2014-09-27 04:15:32 -04:00
Dale Weiler
31cd263e33 Implement ini [includes] area like Trac. This closes #65 2014-09-27 02:32:02 -04:00
Dale Weiler
a502a5453f Make that unsigned 2014-09-27 01:52:33 -04:00
Dale Weiler
2208136403 Implement support for indirect macro expansions in the preprocessor. This closes #36 2014-09-27 01:48:03 -04:00
Dale Weiler
faacfa018a silly clang warning is silly 2014-09-26 19:58:32 -04:00
Dale Weiler
1a8bb31d2a Fix hash strlen properly instead of blindly disabling it 2014-09-26 19:53:50 -04:00
Wolfgang Bumiller
459356a48d accidentally left those in 2014-09-26 15:32:14 +02:00
Wolfgang Bumiller
beaba494b5 For now I'll just disable this 2014-09-26 15:25:33 +02:00
Wolfgang Bumiller
3e576bd1f3 hopefully sanitize field creation logic a bit 2014-09-26 15:08:49 +02:00
Dale Weiler
25caf4b8e8 Fix 2014-08-11 20:59:34 -04:00
Dale Weiler
d5690074e1 Set name for is_varargs too. 2014-07-31 13:13:43 -04:00
Dale Weiler
823b053e60 Fix T...name 2014-07-31 12:37:26 -04:00
Dale Weiler
4c1c1bc051 Remove debug info from parse error. 2014-07-31 00:44:42 -04:00
Dale Weiler
bca1a7143d Merge branch 'cooking' of github.com:graphitemaster/gmqcc into cooking 2014-07-31 00:43:42 -04:00
Dale Weiler
161bbec262 Parameter omitting in fteqcc is disallowed. 2014-07-31 00:43:08 -04:00
Wolfgang Bumiller
3e43056f5f fixing wrong paths in the uninstall target 2014-06-15 11:05:16 +02:00
Dale Weiler
c33755b007 Handle encoding errors for platform_vasprintf 2014-05-28 21:51:29 -04:00
Dale Weiler
e7d81937ae Make it compile as C++ code. 2014-05-26 21:36:13 -04:00
Dale Weiler
53e9ed0d96 Merge branch 'arithmetic_exceptions' into cooking
Conflicts:
	doc/gmqcc.1
	gmqcc.ini.example
	opts.def
	parser.c
2014-05-25 03:01:47 -04:00
Dale Weiler
05b349c72f Merge branch 'cooking' of github.com:graphitemaster/gmqcc into cooking 2014-05-25 02:56:40 -04:00
Dale Weiler
463426ad47 Some fixes 2014-05-25 02:27:02 -04:00
Dale Weiler
655c2482c9 Fix vec3_cross. Added optimization to Makefile since we've been compiling gmqcc without it since forever. 2014-05-25 02:04:10 -04:00