Wolfgang Bumiller
|
3ef30e850d
|
Don't store off CALL results if they're never read
|
2012-12-23 21:11:56 +01:00 |
|
Wolfgang Bumiller
|
cff74493a7
|
Even safer vector macros
|
2012-12-23 20:55:15 +01:00 |
|
Wolfgang Bumiller
|
fb5a65c51a
|
Life Ranges: First deal with all writes, then with all reads, since writes will remove values from the Living set
|
2012-12-23 20:50:21 +01:00 |
|
Wolfgang Bumiller
|
46c2fe2443
|
Fixing vector macros
|
2012-12-23 20:49:50 +01:00 |
|
Wolfgang Bumiller
|
890ca3c782
|
added -disasm-func to the qcvm
|
2012-12-23 20:45:43 +01:00 |
|
Wolfgang Bumiller
|
ee7051c5a4
|
strcmp and strncmp builtins
|
2012-12-23 19:22:38 +01:00 |
|
Wolfgang Bumiller
|
275b6f777a
|
Adding strcat builtin to qcvm
|
2012-12-23 19:06:29 +01:00 |
|
Wolfgang Bumiller
|
3c9283cc41
|
don't optimize out NOT_S instructions for COND
|
2012-12-23 17:51:01 +01:00 |
|
Wolfgang Bumiller
|
2967dba7ad
|
manpage: remove the MUL_FV/VF section, it wouldn't be legal code anyway
|
2012-12-23 17:50:44 +01:00 |
|
Wolfgang Bumiller
|
4f06daf7d0
|
manpage: optimization section
|
2012-12-23 17:46:40 +01:00 |
|
Wolfgang Bumiller
|
c91b457054
|
Mask overlap-locals by -Ooverlap-locals, and count (the amount of overlapped functions)
|
2012-12-23 17:40:56 +01:00 |
|
Wolfgang Bumiller
|
b8c61f2f88
|
Try generating the function-locals in a later pass; with the option to overlap them.
|
2012-12-23 17:32:39 +01:00 |
|
Wolfgang Bumiller
|
67bc99223d
|
Fix a nasty bug in the executor; and make null-strings be shown as (null) in the trace output
|
2012-12-23 17:32:14 +01:00 |
|
Wolfgang Bumiller
|
eabe23cc24
|
Add -Ooverlap-locals to -O3
|
2012-12-23 16:31:21 +01:00 |
|
Wolfgang Bumiller
|
88a6437840
|
remember the maximum amount of required function-locals
|
2012-12-23 16:31:01 +01:00 |
|
Wolfgang Bumiller
|
7998a98818
|
ir_function now has a flags field - flags are: IR_FLAG_HAS_{ARRAYS,UNINITIALIZED,GOTO}
|
2012-12-23 16:21:38 +01:00 |
|
Wolfgang Bumiller
|
2382fdee50
|
util_swa_* + GMQCC_INLINE
|
2012-12-23 13:11:20 +01:00 |
|
Wolfgang Bumiller
|
1731a29c51
|
Don't generate defs for locals or parameters unless using -g
|
2012-12-23 12:22:27 +01:00 |
|
Wolfgang Bumiller
|
84fcd95d4e
|
utf8lib.c -> utf8.c - I hope windows 8 allows this filename :P
|
2012-12-23 10:44:03 +01:00 |
|
Wolfgang Bumiller
|
95965e9ff6
|
license header
|
2012-12-23 10:35:21 +01:00 |
|
Wolfgang Bumiller
|
e72d141ec4
|
Uchar -> uchar_t for consistency
|
2012-12-23 10:34:29 +01:00 |
|
Wolfgang Bumiller
|
3e6c98d65d
|
manpage: -futf8
|
2012-12-23 10:23:42 +01:00 |
|
Wolfgang Bumiller
|
041f8a86d7
|
utf8 tests
|
2012-12-23 10:23:42 +01:00 |
|
Wolfgang Bumiller
|
2164afb8cf
|
Better error message for -futf8
|
2012-12-23 10:23:42 +01:00 |
|
Wolfgang Bumiller
|
ac0ca3de81
|
fix and speed up u8_analyze for our purposes
|
2012-12-23 10:23:42 +01:00 |
|
Wolfgang Bumiller
|
a707440e52
|
-futf8 implementation
|
2012-12-23 10:23:42 +01:00 |
|
Wolfgang Bumiller
|
aec2284f45
|
u8_analyze: return false on any invalid character, we do not allow invalid/overlong characters in code at all
|
2012-12-23 10:23:41 +01:00 |
|
Wolfgang Bumiller
|
fe3d8e44e6
|
Importing utf8lib
|
2012-12-23 10:23:41 +01:00 |
|
Dale Weiler
|
da49a40b96
|
Bump 0.2 -> 0.3
|
2012-12-23 09:18:17 +00:00 |
|
Wolfgang Bumiller
|
55117912ab
|
Don't generate vector defs if the vector's name starts with a # because that's an 'IMMEDIATE'
|
2012-12-23 10:14:25 +01:00 |
|
Dale Weiler
|
d51a6ab3db
|
Whitespace
|
2012-12-23 09:10:31 +00:00 |
|
Dale Weiler
|
5bc815c63f
|
Revert "Whitespace fixes"
This reverts commit 4580dcf1ea .
|
2012-12-23 09:10:07 +00:00 |
|
Dale Weiler
|
4580dcf1ea
|
Whitespace fixes
|
2012-12-23 08:42:53 +00:00 |
|
Dale Weiler
|
e0ea101838
|
Lies ... damned lies, all lies I tell you ... copy-pasta lies!
|
2012-12-23 08:17:05 +00:00 |
|
Dale Weiler
|
f598fbeaea
|
Actually fix the segfault this time
|
2012-12-23 08:08:05 +00:00 |
|
Dale Weiler
|
3b27107676
|
con_default_out for opts.pp_only (removes recently added TODO .. and fixes a segfault)
|
2012-12-23 07:57:06 +00:00 |
|
Dale Weiler
|
c3964cf29d
|
Make compiler and virtual-machine compile as C++ code, also removed gmqcc_voidptr hack.
|
2012-12-23 07:51:19 +00:00 |
|
Dale Weiler
|
d35d953a91
|
Remove parser_compile_string_len, and make parser_compiler_string take an additional length argument.
|
2012-12-23 07:22:15 +00:00 |
|
Dale Weiler
|
6951f3dfcc
|
fix comments
|
2012-12-23 07:19:49 +00:00 |
|
Dale Weiler
|
4224ac5ca0
|
fixes, and removed a #pragma warning(disable ...) in MSVC .. thanks to the FILE wrapping interface.
|
2012-12-23 07:18:00 +00:00 |
|
Dale Weiler
|
d18656c2dc
|
Cleanup flexible array / vector system
|
2012-12-23 07:14:16 +00:00 |
|
Dale Weiler
|
6bc29a1601
|
Merge branch 'master' of github.com:graphitemaster/gmqcc
|
2012-12-23 06:06:57 +00:00 |
|
Dale Weiler
|
13003bf6af
|
Wrapper around FILE to take advantage of MSVC "secure" CRT. We don't actually defend bounds checks (we just hack in the few ones to silent MSVC .. and to pass WinRT "native code" rules)
|
2012-12-23 06:05:22 +00:00 |
|
Wolfgang Bumiller
|
9d54ea6b0c
|
More stuff for qcvm -info
|
2012-12-22 23:30:52 +01:00 |
|
Wolfgang Bumiller
|
aef7ff87fc
|
Makefile: lexer.o depends on lexer.h
|
2012-12-22 20:43:59 +01:00 |
|
Wolfgang Bumiller
|
77639bb21d
|
guard ]] with lex->flags.noops
|
2012-12-22 20:41:02 +01:00 |
|
Wolfgang Bumiller
|
eb952f1199
|
fix -fshort-logic to cast to true boolean values
|
2012-12-22 20:05:15 +01:00 |
|
Wolfgang Bumiller
|
96ddc217da
|
manpage: capital section headings, updated -fcorrect-logic description, added -Wunknown-attribute
|
2012-12-22 18:19:51 +01:00 |
|
Wolfgang Bumiller
|
e8cd9411b0
|
-Wunknown-attribute; and don't error on unknown attributes
|
2012-12-22 18:16:41 +01:00 |
|
Wolfgang Bumiller
|
7cf0ba5aa8
|
'noreturn' is now an attribute and parsed as [[noreturn]]
|
2012-12-22 18:09:56 +01:00 |
|