| Commit message (Collapse) | Author | Age | Files | Lines | |
|---|---|---|---|---|---|
| * | Use `memcpy` for local constant slice arrays from a global constant | gingerBill | 2025-09-28 | 1 | -18/+0 |
| | | |||||
| * | First step towards constant unions | gingerBill | 2025-09-28 | 1 | -3/+19 |
| | | |||||
| * | Check for `nullptr` | gingerBill | 2025-09-26 | 1 | -1/+3 |
| | | |||||
| * | Try to improve const `union` LLVM construction | gingerBill | 2025-09-24 | 1 | -0/+15 |
| | | |||||
| * | Use a `RwMutex` instead of `BlockingMutex` | gingerBill | 2025-09-10 | 1 | -2/+3 |
| | | |||||
| * | Add `-integer-division-by-zero:all-bits` | gingerBill | 2025-08-10 | 1 | -0/+19 |
| | | |||||
| * | Rename block names from `div` to `mod`. | gingerBill | 2025-08-10 | 1 | -3/+3 |
| | | |||||
| * | Add shortcut for `unsigned_x/power_of_two` -> `unsigned_x >> log2(power_of_two)` | gingerBill | 2025-08-10 | 1 | -0/+11 |
| | | |||||
| * | Add shortcut for division by a constant | gingerBill | 2025-08-10 | 1 | -40/+87 |
| | | |||||
| * | Handle `fixed_point_div` and `fixed_point_div_sat` | gingerBill | 2025-08-08 | 1 | -0/+73 |
| | | |||||
| * | Add `-integer-division-by-zero:self` | gingerBill | 2025-08-08 | 1 | -4/+13 |
| | | |||||
| * | Add `#+feature integer-division-by-zero:<string>` | gingerBill | 2025-08-08 | 1 | -6/+24 |
| | | |||||
| * | Define the behaviour of integer division by zero | gingerBill | 2025-08-08 | 1 | -27/+161 |
| | | |||||
| * | Fix `cstring != ""` | gingerBill | 2025-08-02 | 1 | -2/+2 |
| | | |||||
| * | Fix `string16 != ""` comparison | gingerBill | 2025-08-02 | 1 | -4/+12 |
| | | |||||
| * | Fix [^]u16 <-> cstring16 conversions | gingerBill | 2025-08-02 | 1 | -0/+61 |
| | | |||||
| * | Cache const `string16` in LLVM | gingerBill | 2025-08-02 | 1 | -6/+0 |
| | | |||||
| * | Begin supporting `string16` across the core library | gingerBill | 2025-08-02 | 1 | -1/+2 |
| | | |||||
| * | Add `string16` and `cstring16` (UTF-16 based strings) | gingerBill | 2025-08-02 | 1 | -0/+72 |
| | | |||||
| * | Allow -dynamic-literals for `[dynamic]T` | Jeroen van Rijn | 2025-06-03 | 1 | -1/+1 |
| | | |||||
| * | -dynamic-literals | Jeroen van Rijn | 2025-05-19 | 1 | -1/+1 |
| | | |||||
| * | Merge pull request #5064 from harold-b/hb/objc-classes | gingerBill | 2025-05-08 | 1 | -8/+16 |
| |\ | | | | | Add support for Objective-C class implementation | ||||
| | * | Cleanup ivar generation for selector expressions. | Harold Brenes | 2025-04-30 | 1 | -19/+5 |
| | | | | | | | | | Cleanup ObjC superclass resolution. | ||||
| | * | Fixes to Ivar pseudo fields. | Harold Brenes | 2025-04-23 | 1 | -1/+7 |
| | | | |||||
| | * | Include the ivar in the Objective-C class unconditionally of it being used ↵ | Harold Brenes | 2025-04-22 | 1 | -8/+24 |
| | | | | | | | | | | | | | or not. Allow pseudo-fields for ivar access. | ||||
| * | | Also allow comparing SOA pointers against each other | Jeroen van Rijn | 2025-05-06 | 1 | -1/+5 |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This compares the data pointer *and* the index. ```odin package scratch import "core:fmt" Foo :: struct {a, b: int} main :: proc() { a := new(#soa[dynamic]Foo) a^ = make(#soa[dynamic]Foo, 12, 12) b := new(#soa[dynamic]Foo) b^ = make(#soa[dynamic]Foo, 12, 12) fmt.printfln("&a[0]: %p, &b[0]: %p, Same: %v", &a[0], &b[0], &a[0] == &b[0]) // Same: false fmt.printfln("&a[0]: %p, &b[0]: %p, Same: %v", &a[0], &b[1], &a[0] == &b[1]) // Same: false fmt.printfln("&a[0]: %p, &b[0]: %p, Same: %v", &a[0], &b[2], &a[0] == &b[2]) // Same: false fmt.printfln("&a[0]: %p, &a[1]: %p, Same: %v", &a[0], &a[1], &a[0] == &a[1]) // Same: false fmt.printfln("&a[1]: %p, &a[2]: %p, Same: %v", &a[1], &a[2], &a[1] == &a[2]) // Same: false fmt.printfln("&a[2]: %p, &a[3]: %p, Same: %v", &a[2], &a[3], &a[2] == &a[3]) // Same: false fmt.printfln("&a[0]: %p, &a[0]: %p, Same: %v", &a[0], &a[0], &a[0] == &a[0]) // Same: true fmt.printfln("&a[1]: %p, &a[1]: %p, Same: %v", &a[1], &a[1], &a[1] == &a[1]) // Same: true fmt.printfln("&a[2]: %p, &a[2]: %p, Same: %v", &a[2], &a[2], &a[2] == &a[2]) // Same: true } ``` | ||||
| * | | Add support for SoaPointer nil comparison in lb_emit_comp_against_nil | bogwi | 2025-05-06 | 1 | -0/+12 |
| | | | |||||
| * | | fix variable NaN comparisons | Laytan Laats | 2025-04-30 | 1 | -2/+2 |
| |/ | |||||
| * | Simplify condition, op = Token_Sub was trivially true | Jeroen van Rijn | 2025-04-10 | 1 | -1/+1 |
| | | |||||
| * | Fixes #5026 | Jeroen van Rijn | 2025-04-10 | 1 | -0/+3 |
| | | |||||
| * | Propagate `@(link_section=<string>)` to nested declarations | gingerBill | 2025-04-08 | 1 | -4/+3 |
| | | |||||
| * | Fix #4952 | gingerBill | 2025-03-24 | 1 | -1/+2 |
| | | |||||
| * | Fix #4573 | gingerBill | 2025-03-07 | 1 | -0/+6 |
| | | |||||
| * | Try to make globally generated variables deterministic in name | gingerBill | 2025-02-25 | 1 | -4/+4 |
| | | |||||
| * | Fix #4819 | gingerBill | 2025-02-24 | 1 | -2/+2 |
| | | |||||
| * | Fixed an issue with SIMD vector equality. | Barinzaya | 2025-02-20 | 1 | -1/+10 |
| | | | | | | | Comparing SIMD vectors with `==` was checking that the mask of elements that matched was not 0, meaning it succeeded if *any* element was equal, rather than if *all* elements were equal. | ||||
| * | -obfuscate-source-code-locations on bounds checks and type assertions | Laytan Laats | 2025-02-05 | 1 | -6/+2 |
| | | |||||
| * | Fix #4773 - Change order of evaluation for slicing indices | gingerBill | 2025-01-29 | 1 | -10/+11 |
| | | |||||
| * | Make `-no-dynamic-literals` the default now | gingerBill | 2025-01-05 | 1 | -2/+2 |
| | | |||||
| * | Add `#branch_location` | gingerBill | 2025-01-01 | 1 | -3/+9 |
| | | |||||
| * | Fix bug with comparisons with big endian types | gingerBill | 2024-12-12 | 1 | -0/+19 |
| | | |||||
| * | Merge pull request #4440 from 0dminnimda/support_llvm19 | gingerBill | 2024-11-27 | 1 | -2/+10 |
| |\ | | | | | Add support for llvm version 19 | ||||
| | * | Add support for llvm version 19 | 0dminnimda | 2024-10-31 | 1 | -2/+10 |
| | | | |||||
| * | | Remove `#relative` types from the compiler | gingerBill | 2024-11-14 | 1 | -36/+1 |
| | | | |||||
| * | | Fix `auto_cast` matrix bug | gingerBill | 2024-11-04 | 1 | -1/+12 |
| |/ | |||||
| * | Fix invalid union access | bobsayshilol | 2024-10-27 | 1 | -1/+1 |
| | | | | | | | | | | | | UBSan spotted that |src->Basic.kind| had a value outside the range of |BasicKind| due to it actually being a |Type_Pointer|. Since these are stored in a union there could be cases where the value of |kind| just so happens to be |Basic_string|, in which case the branch would have been taken when it shouldn't have been. To fix this simply check that it's a |Type_Basic| before treating it as a |Basic|. | ||||
| * | check packed load and set alignment on all loads, not just lb_emit_load | Laytan Laats | 2024-10-25 | 1 | -7/+6 |
| | | |||||
| * | fix quaternion64 arith | Laytan Laats | 2024-10-02 | 1 | -4/+4 |
| | | | | | Fixes #4282 | ||||
| * | Fix union comparison bug | gingerBill | 2024-09-30 | 1 | -0/+6 |
| | | |||||
| * | Fix for crash when emitting a comparison between a constant array and a ↵ | Karl Zylinski | 2024-09-25 | 1 | -3/+7 |
| | | | | | non-constant value. | ||||