gingerBill
7bd42cb02f
Merge branch 'master' into windows-llvm-13.0.0
2023-04-20 14:02:02 +01:00
gingerBill
9d23a392a6
Merge branch 'master' of https://github.com/odin-lang/Odin
2023-04-20 11:27:14 +01:00
gingerBill
6726df4d58
Allow aliasing foreign import name
2023-04-20 11:20:15 +01:00
gingerBill
02a58c1247
Merge pull request #2464 from ap29600/simd_unaligned_load
...
Improve code generation for `intrinsics.unaligned_load/store` on `#simd` types
2023-04-20 10:33:32 +01:00
gingerBill
72a7b35513
Merge pull request #2450 from destroycomputers/master
...
Fix intrinsics.alloca code generation
2023-04-20 10:25:43 +01:00
gingerBill
843eaf8893
Fix race condition with -use-separate-modules due to type determination
2023-04-18 17:20:50 +01:00
gingerBill
30fa8f8ac2
Add missing enum
2023-04-18 16:08:54 +01:00
gingerBill
0ec4e8d5d4
Inline static map calls for map get, and improve readability of the LLVM IR
2023-04-18 15:17:16 +01:00
Andrea Piseri
af63eff8d7
improve code generation for intrinsics.unaligned_load/store on #simd types
...
the default implementation calls memcpy on an `alloca` constant, which
seems to heavily confuse the optimizer and produces overall suboptimal
code.
Introducing this specialization simplifies the intermediate
representation produced, resulting in more efficient code.
2023-04-16 15:01:30 +02:00
gingerBill
e24315eed8
Improve grammar
2023-04-15 16:16:16 +01:00
gingerBill
dc55e88588
Add @(deferred_*_by_ptr=<proc>)
2023-04-15 16:04:04 +01:00
gingerBill
5da76ae34b
Add struct #no_copy
2023-04-15 15:37:32 +01:00
destroycomputers
b6f356c211
Fix intrinsics.alloca code generation
...
There was a disconnect between the declared return type for alloca
intrinsic in check_builtin.cpp (multi_pointer(t_u8)) and the generated
result type in llvm_backend_proc.cpp (t_u8_ptr).
This allowed slicing the return type, but in the code generation process
the type of the expression wasn't sliceable, which triggered the assert.
Fixes #2139
2023-04-11 01:11:01 +02:00
gingerBill
ae6e76bbb3
Merge pull request #2435 from Lperlind/master
...
Fix type comparison not accounting for parapoly params
2023-04-06 12:56:25 +01:00
gingerBill
70ce878dfb
Add -max-error-count:<integer>
2023-04-04 12:11:12 +01:00
gingerBill
08ffbeebd5
Merge branch 'master' into windows-llvm-13.0.0
2023-04-03 21:12:10 +01:00
gingerBill
adcaace03c
Fix allow_field_separator for foreign import
2023-04-03 21:09:26 +01:00
Lucas Perlind
08bc6a1698
Fix type comparison not accounting for parapoly params
2023-04-03 12:47:28 +10:00
Mark Naughton
bd7ffcc048
Change help text to output to stdout
2023-03-29 16:30:02 +01:00
Alexander Goussas
99d6c58971
Fix typo in warning message in parser
2023-03-24 15:37:17 -05:00
gingerBill
d986eee36b
Fix typo
2023-03-21 15:28:52 +00:00
gingerBill
b3e712e0b8
Correctly handle end comment for doc generation
2023-03-21 15:22:11 +00:00
gingerBill
2c4a478987
Add @(extra_linker_flags=<string>)
2023-03-21 13:30:58 +00:00
gingerBill
ba02ef8f25
Change trailing comma require to -strict-style only
2023-03-21 13:16:03 +00:00
gingerBill
fe533fb809
Improve llreg integer type generation for SysV ABI
2023-03-19 01:29:53 +00:00
gingerBill
1f5bb99548
Improve SysV ABI for multiple return values that fit into a single register; Fixes #2384
2023-03-19 00:51:57 +00:00
gingerBill
cb47c78af6
Merge branch 'master' into windows-llvm-13.0.0
2023-03-16 17:25:02 +00:00
gingerBill
bfb231fb8a
Simplify copy elision on variable declarations
2023-03-16 17:24:29 +00:00
gingerBill
c2f69f091b
Merge branch 'master' into windows-llvm-13.0.0
2023-03-16 15:16:58 +00:00
gingerBill
8dc70f797c
Increase use of temporary_allocator() where possible
2023-03-16 15:16:17 +00:00
gingerBill
c1c7128634
Minimize severe memory usage by enforcing the heap_allocator() in places
2023-03-16 15:04:57 +00:00
gingerBill
e67947b371
Merge branch 'master' into windows-llvm-13.0.0
2023-03-16 13:08:57 +00:00
gingerBill
49cf0125a9
Fix minor memory leak
2023-03-16 13:01:06 +00:00
gingerBill
b4666c7e23
Merge branch 'master' into windows-llvm-13.0.0
2023-03-16 12:45:06 +00:00
gingerBill
0602a16ad6
Reserve memory for procedures when generating the LLVM IR
2023-03-16 12:44:03 +00:00
gingerBill
00f24a3249
Merge pull request #2380 from flysand7/master
...
Add -no-thread-local flag
2023-03-14 13:04:34 +00:00
Florian Behr
8d5c865814
Fix missing commas in -target-featues string by adding missing i increment.
2023-03-14 13:39:08 +01:00
bumbread
5134d6bc63
rename -no-tls to -no-thread-local
2023-03-14 16:32:42 +11:00
bumbread
5f3b6c9722
Added -no-tls flag
2023-03-13 20:25:13 +11:00
gingerBill
93f7d3bfb9
Allow case nil within a type switch statement (experimental idea)
2023-03-12 16:33:21 +00:00
gingerBill
bf91fcc6f7
Improve type checking on polymorphic unions
2023-03-12 12:39:31 +00:00
gingerBill
c39bd7e089
Fix range loop & vals debug info
2023-03-09 15:57:29 +00:00
gingerBill
3470d986f0
Fix debug symbols for range loops
2023-03-09 15:48:02 +00:00
gingerBill
7c0257fcda
Fix value elision on declaration
2023-03-09 15:39:41 +00:00
gingerBill
7f3f164736
Update help usage
2023-03-07 15:32:32 +00:00
gingerBill
085db569f1
Add -o:none optimization mode (useful for -debug builds)
2023-03-07 15:31:55 +00:00
gingerBill
1c2301e2f1
Use atof in float_from_string to allow for debug C-like semantic purposes
2023-03-06 19:52:03 +00:00
gingerBill
a164438b5b
Merge branch 'master' into windows-llvm-13.0.0
2023-03-06 11:35:19 +00:00
gingerBill
2d71ab6f29
Improve error message on undefined operators
2023-03-02 14:54:27 +00:00
gingerBill
9afd9f9bea
Merge branch 'master' into new-temp-allocator
2023-02-28 12:15:54 +00:00