gingerBill
|
81f83d5780
|
Fix prototype
|
2022-11-13 23:51:59 +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
|
a71daee545
|
Allow for -use-static-map-calls which generates a get procedure per map; add runtime.map_get
|
2022-11-08 14:58:05 +00:00 |
|
gingerBill
|
a74093784c
|
Add intrinsics.map_cell_info and intrinsics.map_info
|
2022-11-08 12:24:00 +00:00 |
|
gingerBill
|
ed58374964
|
Make Map_Info store pointers to cell info rather than inline
|
2022-11-08 12:18:36 +00:00 |
|
gingerBill
|
da774e3fd2
|
General modifications
|
2022-11-08 00:38:31 +00:00 |
|
gingerBill
|
bce62b98d4
|
Basic fmt printing for map
|
2022-11-07 23:32:59 +00:00 |
|
gingerBill
|
c96e0afbf1
|
Begin work on implementing the new map internals
|
2022-11-07 23:02:21 +00:00 |
|
gingerBill
|
c39ef1b25c
|
Ad-hoc pass source code location directly by pointer without stack copy
|
2022-10-31 00:25:53 +00:00 |
|
gingerBill
|
8fa571c283
|
Use direct parameter value in lb_find_ident when possible
|
2022-10-30 22:58:44 +00:00 |
|
gingerBill
|
831620bfc4
|
Remove header cache code
|
2022-09-21 13:06:02 +01:00 |
|
gingerBill
|
ff97a73152
|
Reduce unnecessary map gets
|
2022-09-21 13:03:13 +01:00 |
|
gingerBill
|
0ebc2add03
|
Use a cache when generating the map header to minimize stack wastage
|
2022-09-17 12:56:03 +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
|
a3c04db828
|
Revert "Just get the value directly and store it in another global variable"
This reverts commit 190c3ab0cd.
|
2022-09-14 17:57:12 +01:00 |
|
gingerBill
|
190c3ab0cd
|
Just get the value directly and store it in another global variable
// global
x := &Foo{}
|
2022-09-14 17:50:31 +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
|
cb0a59bb2c
|
Eliminate use of LLVMGetElementType for pointers
|
2022-08-09 15:36:18 +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
|
e6ab4f4856
|
Force memset instead of store zeroinitializer when the value is large
|
2022-07-24 20:22:50 +01:00 |
|
gingerBill
|
d492fb3501
|
Fix and improve x->y() behaviour to minimize duplicate evaluation
|
2022-07-24 12:39:59 +01:00 |
|
gingerBill
|
041625381c
|
Fix #1888
|
2022-07-16 17:36:03 +01:00 |
|
gingerBill
|
5187db525f
|
Minor style change
|
2022-06-12 17:17:59 +01:00 |
|
gingerBill
|
a8bd340267
|
Merge pull request #1395 from hdooley/master
factor out alloca generation into a helper
|
2022-06-12 17:17:12 +01:00 |
|
gingerBill
|
cec049b7d3
|
Make the link order of foreign imports deterministic
|
2022-05-04 16:04:26 +01:00 |
|
gingerBill
|
db6bd9b358
|
Allow sysv and win64 calling conventions to be used on any platform on amd64
|
2022-02-16 16:03:49 +00:00 |
|
gingerBill
|
0cc40db565
|
Begin work on support objc intrinsics
|
2022-02-08 17:04:55 +00:00 |
|
gingerBill
|
eac74631ec
|
Correct debug information logic for procedure parameters
|
2022-02-01 14:11:19 +00:00 |
|
gingerBill
|
9ecbadd457
|
Simplify procedure parameters callee logic
|
2022-01-15 16:16:11 +00:00 |
|
gingerBill
|
79f32d7b71
|
Remove unused lbDefer kind
|
2022-01-15 16:03:37 +00:00 |
|
Henry Dooley
|
069c05669f
|
cast isize to unsigned int for llvm api, add defaulted name parameter to helper.
|
2021-12-25 16:46:02 -06:00 |
|
Henry Dooley
|
516065d7c2
|
factor out alloca generation into a helper
|
2021-12-25 16:28:09 -06:00 |
|
gingerBill
|
23f0fbc376
|
Improve matrix->matrix casting implementation
|
2021-11-08 11:40:41 +00:00 |
|
gingerBill
|
3d3785a7f1
|
Remove many LLVM optimization passes which were causes UB due to them assuming C-like behaviour incompatible with Odin
|
2021-11-06 17:23:33 +00:00 |
|
gingerBill
|
6be104e521
|
Make llvm backend code use PtrMap; remove dead code
|
2021-11-05 16:43:53 +00:00 |
|
gingerBill
|
6ded538546
|
@(linkage=<string>) for procedures and variables; @(require) for procedures; package runtime linkage improvements; Subsequence improvements to lb_run_remove_unused_function_pass
|
2021-11-04 12:40:50 +00:00 |
|
gingerBill
|
8ef6f9dd7b
|
Compile wasm64; Add lb_run_remove_unused_function_pass
|
2021-10-31 00:11:38 +01:00 |
|
gingerBill
|
7d715fe113
|
Add ODIN_LLVM_MINIMUM_VERSION_12
|
2021-10-25 16:05:22 +01:00 |
|
gingerBill
|
a440d8d812
|
Improve use of vector muladd operations
|
2021-10-25 13:10:56 +01:00 |
|
gingerBill
|
82b6772ea4
|
Support matrix literals
|
2021-10-20 00:40:03 +01:00 |
|
gingerBill
|
662cbaf425
|
Support indexing matrices
|
2021-10-19 12:13:19 +01:00 |
|
gingerBill
|
ba331024af
|
Very basic matrix support in backend
|
2021-10-18 18:16:52 +01:00 |
|
gingerBill
|
00671a59a0
|
Minor code cleanup for backend; add struct_fields_index_by_increasing_offset for future use
|
2021-10-02 17:22:56 +01:00 |
|
gingerBill
|
ebca0398a7
|
Remove need for alignment lb_struct_has_padding_prefix
|
2021-10-02 16:06:42 +01:00 |
|
gingerBill
|
444fedd8d4
|
Heavily improve the LLVM struct type generation to improve ABI
|
2021-10-02 15:45:46 +01:00 |
|
gingerBill
|
8de728e3dc
|
LLVM Code Generator: Add explicitly padding between fields in LLVM struct types
|
2021-09-13 16:40:24 +01:00 |
|
gingerBill
|
df372dbd5b
|
Migrate and remove more from gb.h
|
2021-08-19 15:38:21 +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 |
|