gingerBill
f2e590be7a
Fix #2544
2023-05-18 11:35:47 +01:00
J.C. Moyer
ed580b3060
Zero non-diagonal elements when converting to matrix
...
Fixes #2056
2023-05-09 12:00:38 -04:00
gingerBill
b3aa6afba9
Fix #2481
2023-04-27 11:35:14 +01:00
gingerBill
7df1cc075c
Fix #2487
2023-04-27 11:31:05 +01:00
gingerBill
8dc70f797c
Increase use of temporary_allocator() where possible
2023-03-16 15:16:17 +00:00
gingerBill
a9182cfd8c
Allow compound literals to access fields through using
2023-02-26 13:26:35 +00:00
gingerBill
66f2881a78
Allow comparisons between empty struct{} and union{}
2023-02-17 17:02:37 +00:00
gingerBill
8a2a70a3c2
Fix overriding procedure information for literals
2023-02-17 13:00:37 +00:00
gingerBill
3d2a6c5895
Fix #2282 caused by a typo
2023-01-20 11:37:40 +00:00
gingerBill
eb1d00ced6
Fix #2264
2023-01-18 16:05:30 +00:00
gingerBill
f41c91d36b
Fix #2274
2023-01-18 15:41:49 +00:00
gingerBill
68b2d4b9e2
Fix #2305
2023-01-16 11:41:58 +00:00
gingerBill
69934c3b0b
More for_array(i, y) to for (x : y) translations
2023-01-03 13:04:09 +00:00
gingerBill
fa562ec5d6
Remove unneeded local_entity_map
2023-01-02 15:40:25 +00:00
gingerBill
529383f5b1
Correct a race condition when checking the procedure body
2023-01-02 15:30:04 +00:00
gingerBill
9b278db993
Revert "Change tav to be a pointer internally"
...
This reverts commit e98f1a28e6 .
2022-12-22 12:01:41 +00:00
gingerBill
e98f1a28e6
Change tav to be a pointer internally
2022-12-22 11:53:13 +00:00
gingerBill
6cdec65ca1
gb_internal LLVM backend
2022-12-18 22:32:05 +00:00
gingerBill
d88b052d2d
Naïve optimization of named _split_ multiple return valued when defer is never used
...
This is a naïve optimization but it helps a lot in the general case where callee temporary stack variables
are not allocated to represent the named return values by using that specific memory.
In the future, try to check if a specific named return value is ever used a `defer` within a procedure or not,
or is ever passed to a nested procedure call (e.g. possibly escapes).
2022-11-25 23:57:55 +00:00
gingerBill
c663566cd5
Fixed comparison against nil for maps
2022-11-20 01:34:57 +00:00
gingerBill
d2019e3e4d
Enforce pointer cast
2022-11-13 23:50:45 +00:00
gingerBill
16fc961010
Begin work on map static set
2022-11-11 14:45:22 +00:00
gingerBill
8852d090b6
Correct static map get; make get take a pointer to simplify compiler internals
2022-11-10 12:46:53 +00:00
gingerBill
1bcec3f769
Change map internal calls to use a pointer
2022-11-09 22:21:36 +00:00
gingerBill
046dd55032
Change __dynamic_map_get signature
2022-11-08 13:02:32 +00:00
gingerBill
2b7ca2bdd6
Fix #2160 (deep subtyping through using of _)
2022-11-01 13:14:20 +00:00
gingerBill
9da37ed394
Optimize #caller_location and #location to use read only data section where possible
2022-10-31 00:04:15 +00:00
gingerBill
532133d648
Minor technical improvement
2022-09-22 00:55:28 +01:00
gingerBill
ff97a73152
Reduce unnecessary map gets
2022-09-21 13:03:13 +01:00
gingerBill
7840c1b89f
Change __dynamic_map_get and __dynamic_map_set to use separate parameters rather than take a singular struct
2022-09-17 12:48:12 +01:00
gingerBill
4998cf80c1
Fix #2017 mismatched types in binary matrix expression for flt * (mat * vec)
2022-09-05 16:35:56 +01:00
gingerBill
3e3b9ae2df
Fix #1994 Returning to err: Maybe(Error) raises compiler assert
2022-09-01 16:33:44 +01:00
gingerBill
aeacf3a9d8
Correct max alignment handling throughout the llvm backend
2022-08-24 13:07:41 +01:00
gingerBill
777aa8b118
Merge pull request #1955 from jaspergeer/fix-endian-type-conversion
...
fix #1759 endian float type conversion errors
2022-08-24 12:49:57 +01:00
gingerBill
c8c076f970
Fix #1963
2022-08-19 16:57:36 +01:00
Jasper Geer
5387ec5f29
Remove erroneous byte swap
2022-08-16 19:22:52 -07:00
gingerBill
a19494d3a7
Minor refactoring of lb_build_addr
2022-08-11 16:12:07 +01:00
gingerBill
d2a362fd52
Clean up compound literal backend stuff some more
2022-08-11 16:07:55 +01:00
gingerBill
0f3562ef02
Improve compound literal generation for array-like types
2022-08-11 16:01:46 +01:00
gingerBill
cb0a59bb2c
Eliminate use of LLVMGetElementType for pointers
2022-08-09 15:36:18 +01:00
gingerBill
076700bd22
Merge pull request #1933 from lerno/reduce_reliance_on_ptr_type
...
Removed use of deprecated functions. Cleaned up most deprecated use o…
2022-08-09 15:18:09 +01:00
gingerBill
5e3cf45df3
Add #soa pointer type to aid with refactoring to #soa data types
...
a: #soa[16]Foo
p := &a[6]
#assert(type_of(p) == #soa^#soa[16]Foo)
p^.x = 123
p.x = 123
2022-08-08 15:07:00 +01:00
Christoffer Lerno
9c0a3b6c60
Removed use of deprecated functions. Cleaned up most deprecated use of LLVMGetElementType.
2022-08-07 19:26:28 +02:00
gingerBill
6caab6225d
Fix #1930
2022-08-05 11:36:12 +01:00
gingerBill
2542983d70
Fix #1793
2022-07-24 12:54:05 +01:00
gingerBill
d492fb3501
Fix and improve x->y() behaviour to minimize duplicate evaluation
2022-07-24 12:39:59 +01:00
gingerBill
6c7e5748a8
Integrate numerous debug fixes from #1877
2022-07-18 12:49:29 +01:00
gingerBill
78826071c0
Fix #1836
2022-07-16 23:14:09 +01:00
gingerBill
f886632bf1
Fix #1880
2022-07-16 22:18:07 +01:00
gingerBill
041625381c
Fix #1888
2022-07-16 17:36:03 +01:00