gingerBill
9640b49319
Fix #1435 type switch statements of empty union types
2022-09-17 10:42:54 +01:00
gingerBill
902a6db0e1
Fix #2000 - allow #soa array iteration by pointer
2022-09-01 16:15:09 +01:00
gingerBill
19ae6122c7
Fix #2002 (allow array *= matrix)
2022-09-01 16:11:03 +01:00
gingerBill
aeacf3a9d8
Correct max alignment handling throughout the llvm backend
2022-08-24 13:07:41 +01:00
Ian Lilley
f5431a046d
using correct type for val1
2022-08-15 08:08:49 -04:00
Ian Lilley
595efba747
removed unnecessary ternary
2022-08-11 11:43:19 -04:00
Ian Lilley
483a72ac61
fixed debug symbols for range interval
2022-08-03 12:36:52 -04:00
gingerBill
e6ab4f4856
Force memset instead of store zeroinitializer when the value is large
2022-07-24 20:22:50 +01:00
Fabian Sperber
9c059f1a12
Fix debug info for type switch variable to be only visible in correct switch case
...
- use correct scopes for type switch
2022-07-19 00:46:28 +02:00
Fabian Sperber
fb167d1d0a
Fix loop var (init) becoming hidden while stepping on the for-line
...
- set debug location of jumps between block (similar to clang to the location of 'for')
- extend scope range to include all parts of the for-stmt
2022-07-19 00:46:27 +02:00
gingerBill
6c7e5748a8
Integrate numerous debug fixes from #1877
2022-07-18 12:49:29 +01:00
gitlost
fdbbf24271
Fix issue #1592 "LLVM code gen error when using a constant in an if"
...
Changes lb_build_if_stmt() to return null lbValue if condition is
cmpAnd, cmpOr or non-const neg and check in lb_build_if_stmt()
to avoid short circuiting if that's the case
Adds test to "tests/issues" and adds step in CI to check this dir
2022-03-18 13:57:22 +00:00
gingerBill
24e7356825
Add #no_type_assert and #type_assert to disable implicit type assertions with x.(T)
2022-01-27 16:08:47 +00:00
gingerBill
79f32d7b71
Remove unused lbDefer kind
2022-01-15 16:03:37 +00:00
gingerBill
7501cc2f17
Remove dead code
2022-01-15 16:01:23 +00:00
gingerBill
a390ef41f8
Fix swizzle logic within lb_build_assign_stmt_array
2022-01-15 15:55:01 +00:00
gingerBill
f818d0feb1
Fix #1344
2022-01-03 19:43:22 +00:00
gingerBill
daebaa8b50
Fix #1319
2021-11-19 15:43:13 +00:00
gingerBill
f47311f2f6
Remove scope field from Ast
2021-11-14 15:22:40 +00:00
gingerBill
3f038428a7
Begin minimizing Ast size
2021-11-14 15:12:37 +00:00
gingerBill
6646348e1a
Increase usage of PtrMap
2021-11-05 17:03:02 +00:00
gingerBill
6be104e521
Make llvm backend code use PtrMap; remove dead code
2021-11-05 16:43:53 +00:00
gingerBill
8de728e3dc
LLVM Code Generator: Add explicitly padding between fields in LLVM struct types
2021-09-13 16:40:24 +01:00
gingerBill
fb8fa5217d
Begin minimize Type size by replacing Array with Slice etc
2021-09-13 00:58:39 +01:00
gingerBill
b014879159
Add extra message to assert
2021-08-23 16:45:52 +01:00
gingerBill
7845769d4b
Remove unused code
2021-08-19 15:03:10 +01:00
gingerBill
3c443babb2
Extra sanity check around static
2021-08-18 20:32:54 +01:00
gingerBill
01f431b01f
Unify semantics of the built-in swizzle procedure with the selector expression semantics e.g. .xyz
2021-08-09 19:37:58 +01:00
gingerBill
40822be595
Reorganize llvm_backend.cpp into separate files for easier maintenance
2021-08-07 12:01:48 +01:00