Commit graph

2934 commits

Author SHA1 Message Date
Dale Weiler
0695ad1659 Merge branch 'cooking' of github.com:graphitemaster/gmqcc into cooking 2013-10-19 02:53:46 -04:00
Dale Weiler
b5b9559d6f Make preprocessor predefs use their own context opposed to the lexer context. 2013-10-19 02:52:47 -04:00
Wolfgang Bumiller
3988aae73e type and argument parsing improved to handle the field/vararg ambiguity; tests added 2013-10-18 16:28:28 +02:00
Dale Weiler
0f6c44d671 We're doing it this way. 2013-10-18 05:37:26 -04:00
Wolfgang Bumiller
8d5e719026 replacing the current [[accumulate]] implementation: shorter and simpler, and also supports non-void return types 2013-10-18 11:26:41 +02:00
Dale Weiler
0cfc275f82 Fix 2013-10-17 20:35:56 -04:00
Dale Weiler
c210340081 Undo fix and actually use a macro in the accumulation test .. just incase. 2013-10-17 20:34:16 -04:00
Dale Weiler
c675ba8086 Does this fix it? 2013-10-17 20:25:02 -04:00
Dale Weiler
9f54610fbd Implement support for octal constants, this closes #97. 2013-10-17 05:17:30 -04:00
Dale Weiler
02a1d9f4a1 Fix 'declaration does not declare anything' regression i.e this closes #132. 2013-10-17 05:06:09 -04:00
Dale Weiler
97217b55d1 Ignore generating a return instruction in accumulated functions, eventually we'll have a way to merge these into one function but for now the RETURN is a waste. 2013-10-17 04:45:24 -04:00
Dale Weiler
dd33f4e498 Update deps 2013-10-17 04:27:34 -04:00
Dale Weiler
f8949e17c8 Cleaner traces 2013-10-17 04:23:53 -04:00
Dale Weiler
d6f020fd6a Fix memory dump console printing alignment and also trace expressions for allocations. 2013-10-17 04:21:25 -04:00
Dale Weiler
05ac126d6f Use "##" to ensure the names of the accumulated functions are striped by the IR. 2013-10-17 03:47:26 -04:00
Dale Weiler
cfea900afd Update changes 2013-10-17 03:44:33 -04:00
Dale Weiler
8a9c4edce8 Add a test for function accumulation attribute 2013-10-17 03:43:05 -04:00
Dale Weiler
4da820ef61 Enforce void type on accumulatable functions. 2013-10-17 03:39:14 -04:00
Dale Weiler
2c975bb344 Implemented [[accumulate]] attribute. This will hopefully be used by Xonotic to replace it's ACCUMULATE_FUNCTION stuff. 2013-10-17 03:21:30 -04:00
Dale Weiler
1b14c49815 Use .dat extension on generated binaries in testsuite to prevent them from being sourced as task template files. This will fix the async builds on travis.ci 2013-10-17 00:18:07 -04:00
Dale Weiler
8699053887 Fix handling on intrinsic folding, this closes #118. 2013-10-17 00:14:42 -04:00
Dale Weiler
003bb9dfb4 Prevent aliasing functions through forward declared prototypes. This closes #125 2013-10-16 23:37:39 -04:00
Dale Weiler
0f479f3e88 Another one 2013-10-16 21:47:12 -04:00
Dale Weiler
c63bebd7d8 float and double shouldn't be used here, this is what qcfloat_t is for. This fixes the memcmp bug in the folder. 2013-10-16 21:32:31 -04:00
Dale Weiler
b147602d78 Fix option string allocated/non allocated storage. 2013-10-16 20:14:49 -04:00
Dale Weiler
f53502c9ca Make it valid C++ code, such that it can compile as C++ code. 2013-10-16 19:54:21 -04:00
Dale Weiler
50d165e173 Some intrinsic code cleanup. The args check is handled anyways in the parser. We use a generated array alongside to prevent generating the intrinsic multiple times instead of using static storage. Other various cleanups as well. 2013-10-16 00:04:39 -04:00
Dale Weiler
eca82511c6 divVerent suggestion to use memcmp here 2013-10-14 22:40:36 -04:00
Dale Weiler
6d8d7ee923 Make divVerent happy about handling divison by zero/inf/nan and negitive versions. This code now assumes IEEE 754. 2013-10-14 22:31:37 -04:00
Dale Weiler
c8413a9a04 Clang is so anal 2013-10-14 21:03:24 -04:00
Dale Weiler
8e8b3608fb Cleanups 2013-10-14 20:58:36 -04:00
Dale Weiler
65a2b83abd Cleanup for builds 2013-10-14 02:17:45 -04:00
Wolfgang Bumiller
19331ee385 who let the cat out? 2013-10-11 15:53:59 +02:00
Dale Weiler
ef51b30387 Fix windows builds, add strip target for makefiles, update distro build makefiles to use it for release builds. 2013-10-11 09:51:08 -04:00
Dale Weiler
f008cc257d Some cleanups 2013-10-11 09:32:46 -04:00
Dale Weiler
ccb46d7e3b Update README 2013-10-11 08:14:37 -04:00
Wolfgang Bumiller
42a9784804 Merge branch 'cooking' of git://github.com/graphitemaster/gmqcc into cooking 2013-10-11 14:11:40 +02:00
Wolfgang Bumiller
82afdb1e2c Merge branch 'cooking' of git://github.com/graphitemaster/gmqcc into cooking 2013-10-11 14:10:57 +02:00
Wolfgang Bumiller
62ac7e9966 first part of parsing TOKEN_DOTS as part of a type when needed; allows declarations like: ...float x; 2013-10-11 14:10:47 +02:00
Dale Weiler
6da151eba1 Update dependencies 2013-10-11 08:10:32 -04:00
Dale Weiler
856949a5f9 I need to test this code on msvc now. 2013-10-11 08:08:36 -04:00
Dale Weiler
d8b3faa871 Fix that (newer clang will fail on it) 2013-10-11 08:06:10 -04:00
Dale Weiler
92c0d6157c Merge branch 'cleanup' into cooking 2013-10-11 08:04:02 -04:00
Dale Weiler
fa14550d38 Last piece of documentation for platform.h 2013-10-11 08:02:28 -04:00
Dale Weiler
604c9d25bf More documentation for platform.h 2013-10-11 07:40:31 -04:00
Dale Weiler
4d0bf1607a Some documentation 2013-10-11 07:16:48 -04:00
Dale Weiler
63fdab8422 Some more cleanup 2013-10-11 06:36:05 -04:00
Dale Weiler
87d9371a5c Refactor some util/platform usage and extend file system file interface to accept its own flags and EOF 2013-10-11 06:12:56 -04:00
Wolfgang Bumiller
3d5fedcf39 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 2013-10-11 11:17:03 +02:00
Wolfgang Bumiller
637651f4e1 distro/archlinux/this/Makefile: tar -> bsdtar 2013-10-11 11:14:46 +02:00