Commit Graph

3305 Commits

Author SHA1 Message Date
gingerBill
3e3b9ae2df Fix #1994 Returning to err: Maybe(Error) raises compiler assert 2022-09-01 16:33:44 +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
b82b91ea08 Fix #1974 by erring on untyped parameters to intrinsics.objc_send 2022-09-01 15:15:51 +01:00
gingerBill
ed73441a4c Fix code generation related to Objective-C related x->y() calls 2022-09-01 15:11:53 +01:00
gingerBill
8fd5bef0bd Fix #1977 2022-08-26 12:14:04 +01:00
gingerBill
776927709b Check for using variables 2022-08-26 12:11:27 +01:00
gingerBill
af1b3b6368 Correct check_expr_is_stack_variable 2022-08-24 16:03:04 +01:00
gingerBill
d56789e5a7 Add very basic escape analysis on return values 2022-08-24 15:58:20 +01:00
gingerBill
aeacf3a9d8 Correct max alignment handling throughout the llvm backend 2022-08-24 13:07:41 +01:00
gingerBill
4ba486baa2 Add extra max alignment parameter for metrics (specifically for SIMD) 2022-08-24 12:58:16 +01:00
gingerBill
f1ffd90294 Fix #1966 2022-08-24 12:52:57 +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
2908923db9 Fix #1972 2022-08-24 12:18:42 +01:00
Jeroen Ruigrok van der Werven
b70d211f21 fix: Expand OpenBSD include for wait.h to all Unix
closes: #1968
2022-08-22 11:15:53 +02:00
gingerBill
c8c076f970 Fix #1963 2022-08-19 16:57:36 +01:00
gingerBill
6e9f9e6f3c Fix typo 2022-08-17 15:57:56 +01:00
gingerBill
f504b200a9 Improve unreachable generation by putting a trap before it 2022-08-17 15:54:45 +01:00
gingerBill
82e840a0ca EXPERIMENTAL intrinsics.valgrind_client_request 2022-08-17 13:52:13 +01:00
Jasper Geer
5387ec5f29 Remove erroneous byte swap 2022-08-16 19:22:52 -07:00
gingerBill
f2908cbc5a Remove debug crap with inlining 2022-08-16 16:36:13 +01:00
gingerBill
5337b0b471 Revert "Remove debug message"
This reverts commit 22d16c20f8.

Revert "Correct global constant procedure initialization"

This reverts commit 697c839c84.

Revert "Clean up how procedures are typed in LLVM's dumb type system"

This reverts commit de8bd88d2a.
2022-08-16 16:16:36 +01:00
gingerBill
2c004dbcc9 Improve matrix conversion rules 2022-08-16 12:02:14 +01:00
gingerBill
4f7bbe0e4a Merge pull request #1927 from IanLilleyT/debug_symbols_for_range_interval
Debug symbols for range-based for loop over number range
2022-08-15 16:56:01 +01:00
Ian Lilley
f5431a046d using correct type for val1 2022-08-15 08:08:49 -04:00
gingerBill
d30198c99a Merge pull request #1944 from odin-lang/load-improvements
Improvements to `#load`
2022-08-15 10:27:53 +01:00
gingerBill
8e7c7eeeba Fix lb_emit_ptr_offset 2022-08-12 13:48:10 +01:00
gingerBill
22d16c20f8 Remove debug message 2022-08-12 12:29:32 +01:00
gingerBill
697c839c84 Correct global constant procedure initialization 2022-08-12 12:29:11 +01:00
gingerBill
de8bd88d2a Clean up how procedures are typed in LLVM's dumb type system 2022-08-12 11:15:12 +01:00
Ian Lilley
595efba747 removed unnecessary ternary 2022-08-11 11:43:19 -04: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
03f683f9e7 Improve emit store for large constants 2022-08-11 15:19:27 +01:00
gingerBill
cecadce86d Allow for chaining of '#load(path) or_else #load(path)' 2022-08-11 14:42:29 +01:00
gingerBill
a7c3906003 #load(path, type)
where `type` can be `string` or `[]T` where `T` is a simple type
2022-08-11 14:30:14 +01:00
gingerBill
70dc0c15fd Improve type hint for #load to allow for string types 2022-08-11 13:43:35 +01:00
gingerBill
9eeed9d5bd Simplify #load_or for the time being 2022-08-11 13:35:24 +01:00
gingerBill
a054c2934e Cache #load data and hashes 2022-08-11 13:32:45 +01:00
gingerBill
38102f14c1 Add #load(path) or_else default in favour of #load_or(path, default) 2022-08-11 13:01:54 +01:00
gingerBill
0997df4fcf Move builtin directives to a separate procedure 2022-08-11 12:39:05 +01:00
Jasper Yujin Geer
57dd5ec4db Added back missing return statement 2022-08-10 18:25:29 -07:00
Jasper Yujin Geer
5b621d5be1 More accurate error message 2022-08-10 18:07:49 -07:00
Jasper Yujin Geer
7aee762f3a Throw error when untyped shift expressions have non-integral type hints 2022-08-10 17:39:21 -07:00
Joakim Hentula
28f440dd9e Do not remove .rc extension from resource path to prevent expansion to full path assuming it's a directory if a folder with the same name exists in the same folder as the resource file 2022-08-10 14:03:04 +01:00
gingerBill
84f9fb706b General clean up of LLVM*GEP2 code 2022-08-10 11:36:25 +01:00
gingerBill
812823cad8 Wrap all LLVMGetElementType uses 2022-08-09 21:17:32 +01:00
gingerBill
0655260378 Comment out a bit of code in lb_is_const_or_global 2022-08-09 21:13:52 +01:00
gingerBill
cfc3723879 Remove other uses of LLVMGetElementType on pointer types 2022-08-09 21:12:31 +01:00