]> git.rm.cloudns.org Git - xonotic/gmqcc.git/log
xonotic/gmqcc.git
7 years agoClassy Tokens
TimePath [Sat, 2 Sep 2017 12:38:52 +0000 (22:38 +1000)]
Classy Tokens

7 years agoMinor cosmetic enhancements before the rewrite
TimePath [Sat, 2 Sep 2017 10:40:18 +0000 (20:40 +1000)]
Minor cosmetic enhancements before the rewrite

7 years agoUse references where possible
TimePath [Sat, 2 Sep 2017 08:12:07 +0000 (18:12 +1000)]
Use references where possible

7 years agocleanup: 'move of a temporary object prevents copy elision'
Wolfgang Bumiller [Sun, 23 Jul 2017 08:10:15 +0000 (10:10 +0200)]
cleanup: 'move of a temporary object prevents copy elision'

7 years agomove more parser code to c++, fix crashes with gcc
Wolfgang Bumiller [Sun, 23 Jul 2017 08:06:51 +0000 (10:06 +0200)]
move more parser code to c++, fix crashes with gcc

we initialized the parser with malloc -> memset to zero ->
placement new. With gcc the latter caused the memset to be
optimized out, causing uninitialized value accesses.

7 years agocleanup some silly more warnings
Wolfgang Bumiller [Sun, 23 Jul 2017 08:05:34 +0000 (10:05 +0200)]
cleanup some silly more warnings

7 years agocleanup: silence fallthrough warnings
Wolfgang Bumiller [Sun, 23 Jul 2017 07:33:19 +0000 (09:33 +0200)]
cleanup: silence fallthrough warnings

7 years agotests: add check for vector negation
Wolfgang Bumiller [Thu, 22 Jun 2017 06:45:38 +0000 (08:45 +0200)]
tests: add check for vector negation

7 years agoqcvm: add stov builtin #16
Wolfgang Bumiller [Thu, 22 Jun 2017 06:45:18 +0000 (08:45 +0200)]
qcvm: add stov builtin #16

7 years agoir: fix vector negation using the nil value
Wolfgang Bumiller [Thu, 22 Jun 2017 06:44:35 +0000 (08:44 +0200)]
ir: fix vector negation using the nil value

We cannot use OFS_NULL as it is only a single value and
overlaps with OFS_RETURN.

7 years agosanitize: shift 1u (unsigned) for flag bits
Wolfgang Bumiller [Tue, 14 Feb 2017 18:17:45 +0000 (19:17 +0100)]
sanitize: shift 1u (unsigned) for flag bits

7 years agoc++: exec.cpp
Wolfgang Bumiller [Sat, 11 Feb 2017 10:33:12 +0000 (11:33 +0100)]
c++: exec.cpp

8 years agoc++: ir_function::m_params
Wolfgang Bumiller [Sat, 3 Dec 2016 20:42:15 +0000 (21:42 +0100)]
c++: ir_function::m_params

8 years agoc++: ir: function_allocator
Wolfgang Bumiller [Sat, 3 Dec 2016 20:39:09 +0000 (21:39 +0100)]
c++: ir: function_allocator

8 years agoc++: ir_block::m_instr
Wolfgang Bumiller [Sat, 3 Dec 2016 20:30:33 +0000 (21:30 +0100)]
c++: ir_block::m_instr

8 years agoc++: ir_block::m_exits
Wolfgang Bumiller [Sat, 3 Dec 2016 19:34:42 +0000 (20:34 +0100)]
c++: ir_block::m_exits

8 years agoc++: ir_block::m_entries
Wolfgang Bumiller [Sat, 3 Dec 2016 19:32:26 +0000 (20:32 +0100)]
c++: ir_block::m_entries

8 years agoCleaner way to set the mask for -Wunused-component
Dale Weiler [Thu, 24 Nov 2016 19:54:17 +0000 (19:54 +0000)]
Cleaner way to set the mask for -Wunused-component

8 years agoJust mark LOCAL_RETURN noref instead of checking for '#' in the name
Dale Weiler [Thu, 24 Nov 2016 15:50:48 +0000 (15:50 +0000)]
Just mark LOCAL_RETURN noref instead of checking for '#' in the name

8 years agoRemove parser m_uses in favor of {IR,AST}_FLAG_NOREF instead
Dale Weiler [Thu, 24 Nov 2016 15:33:58 +0000 (15:33 +0000)]
Remove parser m_uses in favor of {IR,AST}_FLAG_NOREF instead

8 years agoAdd -Wunused-component like -Wunused-variable but warns about unused components of...
Dale Weiler [Thu, 24 Nov 2016 14:52:57 +0000 (14:52 +0000)]
Add -Wunused-component like -Wunused-variable but warns about unused components of vector

8 years agomore intelligent handling of unused vector fields
Dale Weiler [Thu, 24 Nov 2016 14:44:28 +0000 (14:44 +0000)]
more intelligent handling of unused vector fields

8 years agoFix #158
Dale Weiler [Thu, 24 Nov 2016 14:08:38 +0000 (14:08 +0000)]
Fix #158

8 years agoFix #161
Dale Weiler [Thu, 24 Nov 2016 13:41:26 +0000 (13:41 +0000)]
Fix #161

8 years agoFix #171
Dale Weiler [Thu, 24 Nov 2016 13:40:22 +0000 (13:40 +0000)]
Fix #171

8 years agoFix fieldfuncs test and track unused variables through writes as well.
Dale Weiler [Sat, 19 Nov 2016 12:19:00 +0000 (12:19 +0000)]
Fix fieldfuncs test and track unused variables through writes as well.

8 years agoDon't generate unused warnings for unused constants
Dale Weiler [Sat, 19 Nov 2016 11:46:32 +0000 (11:46 +0000)]
Don't generate unused warnings for unused constants

8 years agofix access to fields of vector members
Wolfgang Bumiller [Sat, 19 Nov 2016 15:15:26 +0000 (16:15 +0100)]
fix access to fields of vector members

When ast_member encounters the result of an ast_entfield it
has to replace the ast_entfield's codegen as we cannot
evaluate the field access first.

We then perform the same action as ast_entfield but call
vectorMember on the field before issuing the load/address
instruction.

This effectively turns the codegen of the following ast
structure:
    member_of {
        field_of {
            entity,
            a_vector
        }
        memberid
    }
into the one of this structure:
    field_of {
        entity,
        member_of {
            a_vector
            memberid
        }
    }

8 years agoRevert "Fix ent.vec.{x,y,z} writes"
Wolfgang Bumiller [Sat, 19 Nov 2016 15:22:13 +0000 (16:22 +0100)]
Revert "Fix ent.vec.{x,y,z} writes"

This reverts commit ad1cfcfeaab754b3a7d34a152b0d334f7f040239.

8 years agoFix ent.vec.{x,y,z} writes
Dale Weiler [Sat, 19 Nov 2016 10:42:33 +0000 (10:42 +0000)]
Fix ent.vec.{x,y,z} writes

8 years agoUnused globals even if they have an initial value should produce unused diagnostic
Dale Weiler [Sat, 19 Nov 2016 10:05:58 +0000 (10:05 +0000)]
Unused globals even if they have an initial value should produce unused diagnostic

8 years agoWarning xonotic-v0.8.2
Dale Weiler [Mon, 23 May 2016 20:47:40 +0000 (16:47 -0400)]
Warning

8 years agoupdate .gitignore
Wolfgang Bumiller [Wed, 10 Feb 2016 18:01:12 +0000 (19:01 +0100)]
update .gitignore

8 years agoMerge pull request #172 from TimePath/cmake
Dale Weiler [Sun, 3 Jan 2016 06:15:18 +0000 (01:15 -0500)]
Merge pull request #172 from TimePath/cmake

Add CMakeLists.txt

8 years agoAdd CMakeLists.txt
TimePath [Sun, 3 Jan 2016 06:13:22 +0000 (17:13 +1100)]
Add CMakeLists.txt

8 years agoFixes
Dale Weiler [Sun, 3 Jan 2016 05:38:58 +0000 (00:38 -0500)]
Fixes

8 years agoeh
Dale Weiler [Sun, 3 Jan 2016 05:35:12 +0000 (00:35 -0500)]
eh

8 years agoFix makefile
Dale Weiler [Sun, 3 Jan 2016 05:34:29 +0000 (00:34 -0500)]
Fix makefile

8 years agoMerge branch 'master' into cleanup
Dale Weiler [Sun, 3 Jan 2016 03:30:35 +0000 (22:30 -0500)]
Merge branch 'master' into cleanup

9 years agooops graphitemaster/cooking graphitemaster/legacy
Dale Weiler [Mon, 28 Dec 2015 13:00:54 +0000 (08:00 -0500)]
oops

9 years agoFix unary negation (-)
Dale Weiler [Mon, 28 Dec 2015 12:58:54 +0000 (07:58 -0500)]
Fix unary negation (-)

9 years agotempcommitting a whole bunch of to-c++ conversions graphitemaster/cleanup
Wolfgang Bumiller [Sat, 2 May 2015 07:48:24 +0000 (09:48 +0200)]
tempcommitting a whole bunch of to-c++ conversions

9 years agoremove a bunch of unnecessary c-casts to ast_expression*
Wolfgang Bumiller [Sun, 1 Feb 2015 11:15:30 +0000 (12:15 +0100)]
remove a bunch of unnecessary c-casts to ast_expression*

9 years agoMerge branch 'cleanup' of git://github.com/graphitemaster/gmqcc into cleanup
Wolfgang Bumiller [Sun, 1 Feb 2015 11:13:59 +0000 (12:13 +0100)]
Merge branch 'cleanup' of git://github.com/graphitemaster/gmqcc into cleanup

9 years agofix std::string constructed from nullptr
Wolfgang Bumiller [Sun, 1 Feb 2015 11:13:22 +0000 (12:13 +0100)]
fix std::string constructed from nullptr

9 years agoast_unary::make: safer double-negation optimization check
Wolfgang Bumiller [Sun, 1 Feb 2015 11:13:05 +0000 (12:13 +0100)]
ast_unary::make: safer double-negation optimization check

9 years agofix backward propagateSideEffect impl
Wolfgang Bumiller [Sun, 1 Feb 2015 11:12:25 +0000 (12:12 +0100)]
fix backward propagateSideEffect impl

9 years agodestructor call order is important here
Wolfgang Bumiller [Sun, 1 Feb 2015 10:52:58 +0000 (11:52 +0100)]
destructor call order is important here

9 years agoir_instr_delete_quick needs to clear _m_ops
Wolfgang Bumiller [Sun, 1 Feb 2015 10:49:46 +0000 (11:49 +0100)]
ir_instr_delete_quick needs to clear _m_ops

9 years agoast conversion mostly finished
Wolfgang Bumiller [Fri, 30 Jan 2015 17:59:48 +0000 (18:59 +0100)]
ast conversion mostly finished

9 years agoSame on the cleanup branch
Dale Weiler [Fri, 30 Jan 2015 05:46:25 +0000 (00:46 -0500)]
Same on the cleanup branch

9 years agoDon't allocate globals for constants that aren't read xonotic-v0.8.1
Dale Weiler [Fri, 30 Jan 2015 05:40:59 +0000 (00:40 -0500)]
Don't allocate globals for constants that aren't read

9 years agoConstant folding for strings xonotic-data/qc_updates
Dale Weiler [Fri, 30 Jan 2015 05:25:10 +0000 (00:25 -0500)]
Constant folding for strings

9 years agoMerge branch 'cleanup' of github.com:graphitemaster/gmqcc into cleanup
Dale Weiler [Fri, 30 Jan 2015 05:20:41 +0000 (00:20 -0500)]
Merge branch 'cleanup' of github.com:graphitemaster/gmqcc into cleanup

9 years agoConstant folding for string comparisons too
Dale Weiler [Fri, 30 Jan 2015 05:18:52 +0000 (00:18 -0500)]
Constant folding for string comparisons too

9 years agoFix for loops
Dale Weiler [Fri, 30 Jan 2015 04:33:59 +0000 (23:33 -0500)]
Fix for loops

9 years agoFor now
Dale Weiler [Fri, 30 Jan 2015 04:13:55 +0000 (23:13 -0500)]
For now

9 years agoBROKEN: more ast nodes converted
Wolfgang Bumiller [Thu, 29 Jan 2015 19:29:34 +0000 (20:29 +0100)]
BROKEN: more ast nodes converted

9 years agoadd another test that we just didn't have anywhere else yet
Wolfgang Bumiller [Thu, 22 Jan 2015 10:45:23 +0000 (11:45 +0100)]
add another test that we just didn't have anywhere else yet

9 years agoBROKEN: in the middle of converting ast nodes to c++ with constructors and methods
Wolfgang Bumiller [Sun, 25 Jan 2015 08:24:26 +0000 (09:24 +0100)]
BROKEN: in the middle of converting ast nodes to c++ with constructors and methods

9 years agoa whole lotta 'm_'s
Wolfgang Bumiller [Sat, 24 Jan 2015 11:25:46 +0000 (12:25 +0100)]
a whole lotta 'm_'s

9 years agowhy didn't gcc catch that...
Wolfgang Bumiller [Sat, 24 Jan 2015 09:26:43 +0000 (10:26 +0100)]
why didn't gcc catch that...

9 years agofix for loops
Wolfgang Bumiller [Tue, 20 Jan 2015 19:55:27 +0000 (20:55 +0100)]
fix for loops

9 years agofor now just call the dtors like this
Wolfgang Bumiller [Tue, 20 Jan 2015 19:33:07 +0000 (20:33 +0100)]
for now just call the dtors like this

9 years agomore c++ migration for ast/ir/code; reached a working condition here
Wolfgang Bumiller [Tue, 20 Jan 2015 19:25:56 +0000 (20:25 +0100)]
more c++ migration for ast/ir/code; reached a working condition here

9 years agotemp committing major c++ification
Wolfgang Bumiller [Tue, 20 Jan 2015 15:43:58 +0000 (16:43 +0100)]
temp committing major c++ification

9 years agomaking ast nodes derive from ast_expression
Wolfgang Bumiller [Mon, 19 Jan 2015 13:00:04 +0000 (14:00 +0100)]
making ast nodes derive from ast_expression

9 years agothis can be a move
Wolfgang Bumiller [Mon, 19 Jan 2015 12:46:30 +0000 (13:46 +0100)]
this can be a move

9 years agoast_expression: params -> type_params
Wolfgang Bumiller [Mon, 19 Jan 2015 12:46:10 +0000 (13:46 +0100)]
ast_expression: params -> type_params

9 years agorenaming ast_function::vtype to function_type
Wolfgang Bumiller [Mon, 19 Jan 2015 12:37:22 +0000 (13:37 +0100)]
renaming ast_function::vtype to function_type

9 years agoast_expression now derives from ast_node
Wolfgang Bumiller [Mon, 19 Jan 2015 12:33:39 +0000 (13:33 +0100)]
ast_expression now derives from ast_node

9 years agorenaming some ast_node members before making ast_expression an ast_node to use the...
Wolfgang Bumiller [Mon, 19 Jan 2015 12:32:26 +0000 (13:32 +0100)]
renaming some ast_node members before making ast_expression an ast_node to use the compiler to help find possible clashes

9 years agoRewrite constant folder in C++
Dale Weiler [Fri, 16 Jan 2015 01:27:17 +0000 (20:27 -0500)]
Rewrite constant folder in C++

9 years agoForgot about this file
Dale Weiler [Thu, 15 Jan 2015 23:12:54 +0000 (18:12 -0500)]
Forgot about this file

9 years agoRewrite intrinsic system in C++
Dale Weiler [Thu, 15 Jan 2015 23:11:41 +0000 (18:11 -0500)]
Rewrite intrinsic system in C++

9 years agos/NULL/nullptr/
Dale Weiler [Thu, 15 Jan 2015 20:18:33 +0000 (15:18 -0500)]
s/NULL/nullptr/

9 years agoUse std::vector for static_names
Dale Weiler [Thu, 15 Jan 2015 20:15:35 +0000 (15:15 -0500)]
Use std::vector for static_names

9 years agoCleanup
Dale Weiler [Thu, 15 Jan 2015 20:11:30 +0000 (15:11 -0500)]
Cleanup

9 years agoNot needed
Dale Weiler [Thu, 15 Jan 2015 20:10:02 +0000 (15:10 -0500)]
Not needed

9 years agoUse std::vector for SYA
Dale Weiler [Thu, 15 Jan 2015 20:08:50 +0000 (15:08 -0500)]
Use std::vector for SYA

9 years agoUse std::vector for break and continue ast blocks
Dale Weiler [Thu, 15 Jan 2015 19:22:22 +0000 (14:22 -0500)]
Use std::vector for break and continue ast blocks

9 years agoUse std::vector for ast switch cases
Dale Weiler [Thu, 15 Jan 2015 19:19:07 +0000 (14:19 -0500)]
Use std::vector for ast switch cases

9 years agoUse std::vector for ast blocks
Dale Weiler [Thu, 15 Jan 2015 19:15:44 +0000 (14:15 -0500)]
Use std::vector for ast blocks

9 years agostd::vector for initlist
Dale Weiler [Thu, 15 Jan 2015 19:07:26 +0000 (14:07 -0500)]
std::vector for initlist

9 years agoEliminate use of vec_ in intrin.cpp
Dale Weiler [Thu, 15 Jan 2015 08:01:26 +0000 (03:01 -0500)]
Eliminate use of vec_ in intrin.cpp

9 years agoEliminate use of vec_ in fold.c
Dale Weiler [Thu, 15 Jan 2015 07:47:42 +0000 (02:47 -0500)]
Eliminate use of vec_ in fold.c

9 years agoMore std::vector
Dale Weiler [Thu, 15 Jan 2015 07:17:37 +0000 (02:17 -0500)]
More std::vector

9 years agoMore std::vector
Dale Weiler [Thu, 15 Jan 2015 06:57:40 +0000 (01:57 -0500)]
More std::vector

9 years agoMore std::vector
Dale Weiler [Thu, 15 Jan 2015 06:35:56 +0000 (01:35 -0500)]
More std::vector

9 years agoMore std::vector migration
Dale Weiler [Thu, 15 Jan 2015 06:22:21 +0000 (01:22 -0500)]
More std::vector migration

9 years agoStop using vec_* in testsuite code
Dale Weiler [Thu, 15 Jan 2015 05:29:37 +0000 (00:29 -0500)]
Stop using vec_* in testsuite code

9 years agoUse C++ naming for structures
Dale Weiler [Thu, 15 Jan 2015 05:05:48 +0000 (00:05 -0500)]
Use C++ naming for structures

9 years agoUse C++ naming for structures
Dale Weiler [Thu, 15 Jan 2015 04:56:52 +0000 (23:56 -0500)]
Use C++ naming for structures

9 years agoMore std::vector migration
Dale Weiler [Thu, 15 Jan 2015 04:45:00 +0000 (23:45 -0500)]
More std::vector migration

9 years agoInitial movement to std::vector
Dale Weiler [Thu, 15 Jan 2015 04:34:43 +0000 (23:34 -0500)]
Initial movement to std::vector

9 years agoFast math is too fast for clang
Dale Weiler [Thu, 15 Jan 2015 02:58:04 +0000 (21:58 -0500)]
Fast math is too fast for clang

9 years agoMake travis update to newer compilers
Dale Weiler [Thu, 15 Jan 2015 02:54:41 +0000 (21:54 -0500)]
Make travis update to newer compilers

9 years ago.c -> .cpp
Dale Weiler [Thu, 15 Jan 2015 02:48:47 +0000 (21:48 -0500)]
.c -> .cpp

9 years agoMore cleanup
Dale Weiler [Wed, 14 Jan 2015 02:46:52 +0000 (21:46 -0500)]
More cleanup

9 years agoMore cleanup
Dale Weiler [Wed, 14 Jan 2015 02:43:48 +0000 (21:43 -0500)]
More cleanup