gingerBill
ff6b76986a
Use C++11 loops for some arrays
2022-12-09 12:32:54 +00:00
gingerBill
5c3624eb86
Fix map looping
2022-12-09 12:18:49 +00:00
gingerBill
144e357fd2
Add extra check
2022-12-09 11:37:15 +00:00
gingerBill
be22f0d1e1
Fix variable shadow in compiler
2022-12-09 11:32:52 +00:00
gingerBill
34a048f7da
Replace compiler for loops for the hash-table types to simplify code usage
2022-12-09 11:29:28 +00:00
gingerBill
1f8f94276e
Initialize the multiple return value map in lb_create_dummy_procedure
2022-12-07 16:44:26 +00:00
gingerBill
a5bdb4a8e8
Merge pull request #2208 from odin-lang/multiple-return-abi-experiment
...
Multiple Return ABI Changes and Improvements
2022-12-07 11:42:23 +00:00
Dragos Popescu
75dcaf6d8d
-ignore-unknown-attributes: fixed the attribute value being type checked in variable declarations
2022-12-03 00:11:18 +01:00
Phil
7a4106077a
correct compare_exact_values(x,y) for TypeId and Procedure
2022-12-02 13:13:01 -08: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
615eccb6d1
Correct return ptr semantics for split returns
2022-11-24 14:26:45 +00:00
gingerBill
d3c65b6ba5
Make split multiple return logic only work for the native Odin calling conventions
2022-11-24 13:16:02 +00:00
gingerBill
90415e4a6e
Add split multiple return to different ABIs
2022-11-24 12:14:19 +00:00
gingerBill
7352c312e0
Fix type for split returns code
2022-11-24 11:20:28 +00:00
gingerBill
0befadde1d
Basic copy elision support for multiple return values
2022-11-24 01:27:39 +00:00
gingerBill
aef8b25a8e
Listen to past Bill's wisdom
2022-11-23 23:54:12 +00:00
gingerBill
ae81117f70
Merge branch 'master' into multiple-return-abi-experiment
2022-11-23 23:43:00 +00:00
gingerBill
d6cb105d5f
Fix LLVM type cycle nonsense with procedure types
2022-11-23 23:32:34 +00:00
gingerBill
b7b9a016d3
Merge branch 'master' into multiple-return-abi-experiment
2022-11-23 22:48:56 +00:00
gingerBill
5ac36b5f25
HACK: Get around debugging type generation for slices and dynamic arrays of *nix systems
2022-11-23 22:46:02 +00:00
gingerBill
22bcf1ba70
Extra check for slices and dynamic arrays for -debug
2022-11-23 22:31:21 +00:00
gingerBill
51c705edf1
Add extra check to debug information of named composite types
2022-11-23 21:59:53 +00:00
gingerBill
708a1b0cd3
Clean up return logic for split multiple return ABI experiment
2022-11-23 16:42:26 +00:00
gingerBill
7ab591667a
Basic support for new ABI experiment on Win64
2022-11-23 16:25:09 +00:00
gingerBill
0a0db23b17
Remove copy elision code
2022-11-22 15:49:27 +00:00
gingerBill
6fa0679be9
Fix #2109
2022-11-21 13:12:44 +00:00
gingerBill
afea221d64
Make structs with the same fields but different tags different types
...
Fixes #2105
2022-11-21 13:10:49 +00:00
gingerBill
3dfd53aee0
Improve error handling for trailing commas #2136
2022-11-21 11:56:59 +00:00
gingerBill
c7be30e0ea
Fix #2172
2022-11-21 11:38:29 +00:00
gingerBill
1baa47c78e
Fix #2179
2022-11-21 11:31:35 +00:00
gingerBill
0b33df4e9d
Fix #2186
2022-11-21 11:30:21 +00:00
gingerBill
4c40495742
Fix #2188
2022-11-21 11:23:10 +00:00
gingerBill
824b97d250
Fix #2197
2022-11-21 11:14:29 +00:00
gingerBill
5bbab05161
Fix #2199
2022-11-21 11:02:52 +00:00
gingerBill
83558a1352
Fix #2201
2022-11-21 11:01:01 +00:00
gingerBill
cb183e968a
Fix #2202
2022-11-21 10:30:59 +00:00
gingerBill
27d56d0da4
Fix #2125
2022-11-21 10:25:34 +00:00
gingerBill
c663566cd5
Fixed comparison against nil for maps
2022-11-20 01:34:57 +00:00
gingerBill
15bbdb2030
Merge pull request #2181 from odin-lang/map-dev
...
New `map` internals
2022-11-17 15:29:28 +00:00
Jeroen van Rijn
d3c5143292
Fix microsoft_craziness.h
2022-11-15 13:57:02 +01:00
gingerBill
25bec19b1f
Revert "Minor improvement to multi return value reducing stack usage"
2022-11-13 23:56:05 +00:00
gingerBill
81f83d5780
Fix prototype
2022-11-13 23:51:59 +00:00
gingerBill
d2019e3e4d
Enforce pointer cast
2022-11-13 23:50:45 +00:00
gingerBill
3edb3d8d8c
Simplify the handling of the hashing calls for maps
2022-11-13 23:24:08 +00:00
gingerBill
a705a2e38b
Minor improvement to multi return value reducing stack usage
2022-11-13 22:55:32 +00:00
gingerBill
7cfbd87f57
Merge branch 'master' into map-dev
2022-11-11 15:56:14 +00:00
gingerBill
e9e05a3783
Fix typo
2022-11-11 15:55:55 +00:00
gingerBill
2b83f27f06
Merge branch 'master' into map-dev
2022-11-11 15:54:33 +00:00
gingerBill
3d0e194298
Check for non-zero sized elements for intrinsics.ptr_sub
2022-11-11 15:54:13 +00:00
gingerBill
fcd8860990
Make intrinsics.ptr_sub use explicit integer arithmetic internally
2022-11-11 15:52:49 +00:00