gingerBill
63d28377bb
Pass a copy of a value within a packed struct to a procedure by reference when its address is not known to be aligned to its type, and lower the alignment of loads and stores to that known from the GEPs leading to their address
2026-10-02 17:22:15 +01:00
kalsprite
c1aeb47ce5
swizzle target multi-assignment
2026-08-25 22:22:33 -07:00
gingerBill
73bb97ceb4
Merge pull request #7394 from mfbulut/fix/or-else-diverging-single
...
Fix or_else diverging with single return value
2026-08-20 10:30:59 +02:00
kalsprite
a13a4b418d
backend: a union constant in a ternary or builds an ill-typed phi
2026-08-19 16:45:58 -07:00
Mustafa Furkan Bulut
581d20c606
Allow 'or_else' in diverging single-return
2026-08-20 00:57:10 +03:00
FourteenBrush
727b5043e5
Fix switch fallthrough in lb_emit_struct_ev
2026-07-15 14:13:53 +02:00
Jeroen van Rijn
dc0f001b35
Merge pull request #6933 from odin-lang/bill/box3d
...
`vendor:box3d`
2026-07-03 21:35:30 +02:00
gingerBill
448a71f432
Support q.xyz on quaternion*
2026-07-02 12:27:03 +01:00
misomosi
f276d77c0c
Fix misuse of lb_emit_(min|max) in simd_(min|max)
2026-07-01 10:59:03 -04:00
gingerBill
c66de5ee3c
Improve vector to integer transmute LLVM IR
2026-05-19 18:32:05 +01:00
gingerBill
86a6f69793
General clean up
2026-05-11 14:01:50 +01:00
gingerBill
b752ff4bdb
Add a minor optimization for row_major * row_major
2026-05-11 13:28:54 +01:00
gingerBill
65ff188c1c
Add optimization edge case for square mat * mat
2026-05-11 11:16:27 +01:00
gingerBill
46ed5500b1
Fix lb_convert_struct_index for struct #raw_union
2026-04-22 13:18:26 +01:00
gingerBill
6b2853d9f1
Improve matrix * vector code gen
2026-03-15 21:03:31 +00:00
gingerBill
a56c3da149
Support select fast path for or_else
2026-03-15 20:02:48 +00:00
gingerBill
bb2e42faa6
More uses of SSA aggregation values
2026-03-15 19:49:26 +00:00
gingerBill
0dbda03890
Simplify slice creation as LLVM values
2026-03-15 19:40:57 +00:00
gingerBill
c23d2793df
Fix lb_convert_struct_index for FCD arrays
2026-03-15 15:45:29 +00:00
gingerBill
a6160770ff
Support compound literals for fixed capacity dynamic arrays
2026-03-12 10:03:58 +00:00
gingerBill
f1dbe9c242
[dynamic; N]T proof of concept: fixed capacity dynamic array (akin to small_array.Small_Array(N, T))
2026-03-11 16:46:33 +00:00
gingerBill
bb7496a2fc
Add intrinsics.count_trailing_ones and intrinsics.count_leading_ones
2026-02-02 14:28:16 +00:00
gingerBill
2608f92fee
Use std::atomic for Ast.viral_state_flags and Ast_Ident.entity
2026-02-02 10:48:30 +00:00
gingerBill
3586bda6ae
Use context.assertion_failure_proc with type assertions when the context is available, otherwise use a trivial trap.
2026-01-26 18:23:29 +00:00
gingerBill
dc6067a8a9
Unify "mem*.inline" logic to only inline for <=8 bytes on all platforms
2026-01-22 13:18:22 +00:00
Harold Brenes
30e2875396
Fix automatic objc_msgSend on static methods not resolving aliased types.
2025-12-20 00:54:57 -05:00
Laytan
c4d1cd6ee5
fixes for 32bit with regards to typeid
2025-11-04 21:37:29 +01:00
jakubtomsu
c21453acc5
comment
2025-10-18 16:18:58 +02:00
jakubtomsu
91750e2f1b
prefer Type pointer over LLVMTypeRef when doing a struct_field_remapping lookup
2025-10-18 16:11:47 +02:00
Laytan
e7ecb16a1e
llvm 21 support
2025-10-14 19:55:00 +02:00
Harold Brenes
e79e53dbbd
Use module-prefixed naming scheme for tracking
...
objc block instead of shared id counter.
2025-10-05 16:14:32 -04:00
Harold Brenes
86f9c920da
Fix Objective-C block symbols naming conflict across modules.
...
Fix assert triggered when there's checker errors and
Objective-C method implementations.
2025-10-05 15:53:42 -04:00
gingerBill
3f7fc1e9bf
Merge pull request #5738 from jakubtomsu/fix-simd-ptr-transmute
...
[LLVM backend] SIMD vector transmute only uses bitcast when the elements aren't pointers
2025-10-05 20:27:23 +01:00
gingerBill
810ca89253
Merge pull request #5727 from harold-b/hb.intrinsics.objc_super
...
Add intrinsics.objc_super and Automatically emit objc_msgSend calls
2025-10-05 20:27:01 +01:00
Jakub Tomsu
588513a510
bitcast only non-pointer-like-element simd vectors, handle others like other aggregate types
2025-10-01 15:54:32 +02:00
Harold Brenes
6d9ace4a2c
Remove outdated todo
2025-09-29 20:38:16 -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
34d040cef1
Correct format strings
2025-09-29 16:51:38 +01:00
gingerBill
9e8be055c1
Rename to -build-diagnostics
2025-09-29 16:16:19 +01:00
gingerBill
11712627cb
Add module stuff to -para-poly-diagnostics
2025-09-29 16:14:55 +01:00
gingerBill
1fc1d8e451
Change sort for single instanced procedures
2025-09-29 14:32:21 +01:00
gingerBill
53f4fc1cbb
Add -para-poly-diagnostics
2025-09-29 14:03:32 +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
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
gingerBill
2561427dd3
Add string16 and cstring16 (UTF-16 based strings)
2025-08-02 11:00:15 +01:00
Harold Brenes
1505edef01
Change ivar offsets from u32 to (odin base type) int/native pointer size.
2025-04-30 22:09:33 -04:00
Harold Brenes
f3923ed666
Fix indentations
...
Fix Objective-C wrapper procs not forwarding return value
2025-04-27 22:55:53 -04:00
Harold Brenes
bca02f81cd
Include the ivar in the Objective-C class unconditionally of it being used or not.
...
Allow pseudo-fields for ivar access.
2025-04-22 19:18:53 -04:00
Harold Brenes
b3b4d501ca
Fix ivar in multi-module mode.
2025-04-21 02:43:16 -04:00