aboutsummaryrefslogtreecommitdiff
path: root/core
Commit message (Collapse)AuthorAgeFilesLines
* Change `is_utf16` field to `encoding` and use an enumgingerBill2025-08-055-6/+7
|
* Merge branch 'master' into bill/utf16-stringsgingerBill2025-08-053-4/+13
|\
| * Merge pull request #5540 from jared-cone/fix-windows-delete-after-freeLaytan2025-08-051-3/+3
| |\ | | | | | | Fixed delete-after-free in file_windows.odin
| | * Fixed delete-after-free in file_windows.odinJared Cone2025-08-041-3/+3
| | |
| * | Adds @(no_instrumentation) to spall buffer and SCOPED operationsJack Punter2025-08-041-0/+4
| |/ | | | | | | | | Currently without this scoped event names are not displaying correctly when auto-tracing is enabled. The buffer_destroy event, obviously, fails to be completed (as theres no buffer to write the end event to, and context_destroy should happen after all the buffers are destroyed so there's, again, no buffers to write to.
| * thread: set stack size to rlimitLaytan Laats2025-08-021-1/+6
| |
* | Fix tests for UTF-16 stringsgingerBill2025-08-021-1/+1
| |
* | Remove unneeded uses of `intrinsics.constant_utf16_cstring`gingerBill2025-08-021-1/+1
| |
* | os2 internals -> (c)string16gingerBill2025-08-0210-49/+76
| |
* | `for in string16`; Support `string16` across coregingerBill2025-08-0215-63/+93
| |
* | Begin supporting `string16` across the core librarygingerBill2025-08-028-19/+27
| |
* | Add `string16` and `cstring16` (UTF-16 based strings)gingerBill2025-08-024-0/+147
|/
* Skip bounds checking on the inner accumulate loop.Barinzaya2025-07-311-2/+2
| | | | | This helps performance with SSE (somewhat) and AVX-512 (quite a bit), but not AVX2 for some reason.
* Remove favor_size attributes inhibiting SIMD optimizations.Barinzaya2025-07-311-11/+0
| | | | | | | | | This makes a tremendous (2x with SSE2, 3x with AVX2) difference on big datasets on my system, but this may be hardware-dependent (e.g. instruction cache sizes). Naturally, this also results in somewhat larger code for the large-data case (~75% larger).
* Various minor changes in XXH3.Barinzaya2025-07-311-19/+17
| | | | | | | | | | | | | This includes various minor things that didn't seem right or could be improved, including: - XXH3_state is documented to have a strict alignment requirement of 64 bytes, and thus came with a disclaimer not to use `new` because it wouldn't be aligned correctly. It now has an `#align(64)` so that it will. - An _internal proc being marked #force_no_inline (every other one is #force_inline) - Unnecessarily casting the product of two u32s through u128 (and ultimately truncating to u64 anyway)
* Add static SIMD support to XXH3 in core:hash/xxhash.Barinzaya2025-07-314-4/+137
| | | | | | | | | | This uses compile-time features to decide how large of a SIMD vector to use. It currently has checks for amd64/i386 to size its vectors for SSE2/AVX2/AVX512 as necessary. The generalized SIMD functions could also be useful for multiversioning of the hash procs, to allow for run-time dispatch based on available CPU features.
* Merge pull request #5513 from colrdavidson/spall_v3gingerBill2025-07-311-40/+98
|\ | | | | update to spall format v3
| * adjust scale with new format, fix segfault for auto-traceColin Davidson2025-07-301-1/+5
| |
| * Merge remote-tracking branch 'live/master' into spall_v3Colin Davidson2025-07-301-3/+3
| |\
| * \ Merge remote-tracking branch 'live/master' into spall_v3Colin Davidson2025-07-295-38/+394
| |\ \
| * | | oops, one more manual_headerColin Davidson2025-07-281-1/+1
| | | |
| * | | name_container_event -> name_eventColin Davidson2025-07-281-5/+5
| | | |
| * | | fix casts and constsColin Davidson2025-07-281-6/+8
| | | |
| * | | update to spall format v3Colin Davidson2025-07-281-36/+88
| | | |
* | | | Remove use of `.no_copy`gingerBill2025-07-302-2/+2
| | | |
* | | | Fix typogingerBill2025-07-301-1/+1
| | | |
* | | | Add `virtual.new_clone`gingerBill2025-07-301-0/+11
| | | |
* | | | Improve atomic logic for `sync.Wait_Group`gingerBill2025-07-301-12/+6
| |_|/ |/| |
* | | require to reduce files for a one line functionColin Davidson2025-07-291-1/+1
| | |
* | | attempt to fix x86 osx buildColin Davidson2025-07-291-2/+2
| |/ |/|
* | workaround to avoid excessive file-splittingColin Davidson2025-07-291-1/+1
| |
* | if -> whenColin Davidson2025-07-291-1/+1
| |
* | switch to read_cycle_counter_frequency from arm64_read_cycle_counter_freq, ↵Colin Davidson2025-07-292-2/+2
| | | | | | | | trap on invalid arch
* | remove spawn from os, comment sys/posix/spawnColin Davidson2025-07-292-35/+8
| |
* | shuffle to Kern_ReturnColin Davidson2025-07-291-19/+19
| |
* | enum passColin Davidson2025-07-294-31/+115
| |
* | copy-paste typo fixColin Davidson2025-07-281-1/+1
| |
* | update linux-arm to use the asm intrin for freqColin Davidson2025-07-281-24/+29
| |
* | arm64 has an invariant tsc tooColin Davidson2025-07-281-0/+2
| |
* | use the correct frequency for the arm tsc timerColin Davidson2025-07-281-1/+2
| |
* | Merge remote-tracking branch 'live/master' into macharenaColin Davidson2025-07-2888-127/+205
|\|
| * Fix #5498Jeroen van Rijn2025-07-251-1/+1
| | | | | | | | | | | | Also: - Expands `tests/core/hash` - Fixes bug found in `#hash(s, "murmur64")`
| * mem: Clarify `Buddy_Allocator` requirementsFeoramund2025-07-221-1/+4
| |
| * Merge pull request #5442 from jon-lipstate/table_lookupgingerBill2025-07-221-0/+51
| |\ | | | | | | table lookup simd intrinsic
| | * rename table_lookup to runtime_swizzleJon Lipstate2025-07-161-3/+3
| | |
| | * table lookup intrinsicJon Lipstate2025-07-051-0/+51
| | |
| * | Merge branch 'master' of https://github.com/odin-lang/OdingingerBill2025-07-2010-29/+21
| |\ \
| | * \ Merge pull request #5467 from harold-b/hb.ios-subtarget-rename-iphonegingerBill2025-07-202-16/+6
| | |\ \ | | | | | | | | | | Rename `iOS` subtarget to `iPhone`, add `ODIN_PLATFORM_SUBTARGET_IOS`
| | | * | Rename `iOS` subtarget to `iPhone` for consistency.Harold Brenes2025-07-142-16/+6
| | | | | | | | | | | | | | | | | | | | | | | | | Add `ODIN_PLATFORM_SUBTARGET_IOS` builtin constant which evaluated to `true` when the platform is `Darwin` and the subtarget it either `iPhone` or `iPhoneSimulator`
| | * | | Merge pull request #5482 from sergeypdev/masterLaytan2025-07-202-0/+2
| | |\ \ \ | | | | | | | | | | | | Disable filepath/match.odin and filepath/walk.odin compilation on js targets