thetarnav
72754962ab
Use resize_soa instead of resize proc group in soa procs
2025-11-02 14:20:55 +01:00
thetarnav
e364e76f7f
Add inject_at_soa and append_nothing_soa procedures
2025-11-02 12:13:11 +01:00
gingerBill
da1d599326
Bodge runtime.exit for haiku
2025-10-31 15:19:08 +00:00
Jeroen van Rijn
338733d9ef
Remove duplicate import
2025-10-30 17:54:02 +01:00
gingerBill
91a9875077
Correct cast to uintptr
2025-10-30 16:32:26 +00:00
gingerBill
efb553afad
Add runtime.exit
2025-10-30 16:29:23 +00:00
gingerBill
074a8d7df5
constant_truncate -> constant_trunc to be consistent with other intrinsics
2025-10-30 09:37:09 +00:00
gingerBill
99520d82fd
Add intrinsics.constant_(floor|truncate|ceil|round)
2025-10-30 08:52:21 +00:00
samwega
45f2822dd0
fix: typo
2025-10-14 19:11:49 +03:00
gingerBill
98dac324e9
Add to intrinsics.odin
2025-10-10 12:13:49 +01:00
gingerBill
0b2c0f785c
Add type_is_nearly_simple_compare to intrinsics.odin
2025-10-09 10:06:39 +01:00
gingerBill
7870e6d68b
Update intrinsics.odin
2025-10-09 09:56:30 +01:00
gingerBill
20e67f2ad9
Add some more docs
2025-10-07 14:27:19 +01:00
gingerBill
a4a74442ce
Add some basic docs to Default_Temp_Allocator
2025-10-07 10:41:52 +01:00
gingerBill
47cfee1f62
Add docs to nil_allocator and panic_allocator
2025-10-07 10:38:50 +01:00
gingerBill
d343afbad5
Improve core_builtin.odin docs
2025-10-07 10:34:48 +01:00
Harold Brenes
2daaf57ad1
Correct signature (missing return value) for objc_msgSendSuper2
2025-09-30 14:16:43 -04:00
Harold Brenes
5af13f5d53
Automatically emit objc_msgSend calls when calling imported or implemented Objective-C methods
...
- Add intrinsics.objc_super()
- Emit objc_msgSendSuper2 calls when an objc method call is combined with objc_super(self)
- Fix objc_block return value ABI for large struct returns
- Fix objc_implement method wrappers bad ABI for large struct returns and indirect args
- Simplify parameter forwarding for objc_imlpement methods
- Add intrinsics.objc_instancetype to mimi Objective-C instancetype* returns
This facilitates returning the correct type on subclasses when calling mehtods
such as `alloc`, `init`, `retain`, etc.
- Refactor Objective-C class implementations generation so that hierarchies are properly initialized
- Better codegen for context passing with ivar-based autocontext
- Allow @superclass on imported objc-c objects
- Better codegen for block forwarding invoker, arguments are forwarded directly
2025-09-29 20:37:48 -04:00
gingerBill
9b4c0ea492
Type erase the internals of runtime.copy_*
2025-09-29 15:12:55 +01:00
gingerBill
2baa19f73c
Remove unused variable
2025-09-27 10:10:25 +01:00
gingerBill
ac01d1b5bf
Add runtime.conditional_mem_zero to improve heap_allocator performance on non-Windows systems
2025-09-27 09:58:28 +01:00
gingerBill
286e3eafe6
Change inlining semantics for some builtin calls
2025-09-25 08:55:03 +01:00
gingerBill
4d2854f561
Merge pull request #5632 from kalsprite/x386
...
windows i386 support
2025-09-18 22:01:14 +01:00
gingerBill
9cf69576ab
More improvements to minimize code gen size
2025-09-18 20:58:24 +01:00
gingerBill
3954491393
Type erasure to minimize code generation size
2025-09-18 15:54:05 +01:00
Jon Lipstate
57bc45ae30
revert to working build
2025-09-03 22:51:28 -07:00
Jon Lipstate
e0c4c53362
add tls when we have crt
2025-09-03 22:32:33 -07:00
Damian Tarnawski
21fd7c200e
Add require_results attr to procs returning an allocator
2025-09-02 13:03:15 +02:00
Jon Lipstate
231ce2da59
windows i386 support
2025-08-29 12:41:38 -07:00
Damian Tarnawski
ce0cf7076c
Add missing test attr and don't zero memory when reserve already did
2025-08-26 13:03:26 +02:00
gingerBill
83a78d5d28
Merge branch 'master' into soa-resize-zero-memory
2025-08-26 11:26:15 +01:00
Damian Tarnawski
95cfad67b7
Cleanup soa resize logic—reduce nesting
2025-08-24 15:17:13 +02:00
Damian Tarnawski
66f4c93420
Handle nil old data case
2025-08-24 15:04:19 +02:00
Damian Tarnawski
ac4a89e765
Always use .Resize_Non_Zeroed in _reserve_soa
2025-08-23 17:07:57 +02:00
Damian Tarnawski
2a6dfd2545
Avoid overlap issues when correcting memory after resize in _reserve_soa
2025-08-23 16:55:12 +02:00
Damian Tarnawski
18a2980d26
Zero existing memory when using resize_soa ( fixes #5614 )
2025-08-23 14:28:25 +02:00
Damian Tarnawski
9d651348b5
Only zero memory when requested
2025-08-23 13:10:19 +02:00
Damian Tarnawski
05706864b7
Support using allocator resize in _reserve_soa ( fixes #5615 )
2025-08-23 12:55:07 +02:00
blob1807
f90d7029b4
Fix stride in memory_equal/compare_zero giving false positves
...
The previous stride of 8 assumed `uintptr` size is 8 which isn't the case on 32bit & wasm64p32. Skipping every other set of 4 bytes
2025-08-21 05:19:16 +10:00
Xotchkass
d60fba13df
fix: throwing away the last generated byte in default_random_generator_proc
2025-08-14 13:49:59 +03:00
gingerBill
a0ff05e633
Merge pull request #5558 from odin-lang/bill/init-fini-changes
...
`@(init)` & `@(finit)` Changes.
2025-08-10 12:47:15 +01:00
gingerBill
804984ed35
contextless fixes for js
2025-08-08 13:29:49 +01:00
gingerBill
7642e0a0e0
Require @(init) and @(fini) to be proc "contextless" ()
2025-08-08 12:10:01 +01:00
Sunagatov Denis
e6635e2508
Update runtime doc file
...
This updates and reformats the doc file for the runtime package. The
list of things that need to be implemented for a compiler runtime to
work has been updated in accordance with recent changes to runtime
(notably `cstring16` and `string16` types and `#load_directory`). Some
copy-paste errors around string-comparison procedures have been fixed.
The file has been renamed to `doc.odin` as per convention, the comment
has been moved to the top of the package declaration and the comment is
now markdown-formatted.
Also wrote down a little map to maybe slightly help with understanding
navigation within package runtime's files and added a few more
explanations as to why that list of declarations exists and how to use
it.
The list of declarations has been detailed to some degree, explaining
under what conditions the declarations are required.
2025-08-08 15:34:30 +11:00
gingerBill
a0e9a98d61
Merge pull request #5547 from harold-b/hb.objc_block_intrinsic
...
Implements the Apple block ABI.2010.3.16 natively via `objc_block` intrinsic
2025-08-07 16:08:38 +01:00
gingerBill
34b4b84b64
Add intrinsics.type_canonical_name
2025-08-07 12:34:41 +01:00
Harold Brenes
9d8e15b3af
Implementes the block ABI.2010.3.16 natively via the objc_block intrinsic and the Objc_Block builtin type.
...
See: https://clang.llvm.org/docs/Block-ABI-Apple.html
2025-08-06 20:27:31 -04:00
gingerBill
af3184adc9
Change is_utf16 field to encoding and use an enum
2025-08-05 15:12:54 +01:00
gingerBill
bb4bc316a4
for in string16; Support string16 across core
2025-08-02 12:20:35 +01:00
gingerBill
ae02d3d02d
Begin supporting string16 across the core library
2025-08-02 11:55:16 +01:00