Commit Graph

15401 Commits

Author SHA1 Message Date
Barinzaya
f61dc7d071 Remove favor_size attributes inhibiting SIMD optimizations.
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).
2025-07-31 13:05:10 -04:00
Barinzaya
2f8b390c19 Various minor changes in XXH3.
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)
2025-07-31 13:05:10 -04:00
Barinzaya
9d40f371be Add static SIMD support to XXH3 in core:hash/xxhash.
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.
2025-07-31 13:05:08 -04:00
Jeroen van Rijn
393e00bec3 Placate linker 2025-07-31 16:40:40 +02:00
Jeroen van Rijn
a41500de28 Merge pull request #5520 from Mecso2/master
fix amd64 no-crt entry assembly
2025-07-31 16:38:21 +02:00
gingerBill
077ba0b6cb Merge pull request #5513 from colrdavidson/spall_v3
update to spall format v3
2025-07-31 12:37:09 +01:00
gingerBill
9b8223dd69 Remove use of .no_copy 2025-07-30 23:19:14 +01:00
gingerBill
6a10cfdc30 Fix typo 2025-07-30 23:15:14 +01:00
gingerBill
a2e7a62a26 Add virtual.new_clone 2025-07-30 23:14:53 +01:00
gingerBill
7057fc8dfc Remove the semantics of #no_copy, keep the grammar 2025-07-30 23:14:29 +01:00
gingerBill
aa6a749804 Improve atomic logic for sync.Wait_Group 2025-07-30 23:11:18 +01:00
Colin Davidson
3e10684630 adjust scale with new format, fix segfault for auto-trace 2025-07-30 14:09:50 -07:00
Colin Davidson
7720a32120 Merge remote-tracking branch 'live/master' into spall_v3 2025-07-30 12:51:56 -07:00
Mecso2
e54bf24746 fix amd64 no-crt entry assembly 2025-07-30 12:44:53 +02:00
Laytan
939fed592d Merge pull request #5517 from colrdavidson/freq_hotfix
fix x86 osx build
2025-07-30 06:22:25 +02:00
cardboardguru76
44f039a92f Merge branch 'odin-lang:master' into darwin-foundation-support-for-handmade-hero-port 2025-07-30 00:28:31 +01:00
Colin Davidson
b5a8a3cf94 require to reduce files for a one line function 2025-07-29 13:58:30 -07:00
Colin Davidson
42f2891f35 attempt to fix x86 osx build 2025-07-29 13:54:56 -07:00
Colin Davidson
e869b9351b Merge remote-tracking branch 'live/master' into spall_v3 2025-07-29 13:48:32 -07:00
Laytan
861fa4ab68 Merge pull request #4140 from colrdavidson/macharena
Mach Process control
2025-07-29 22:37:42 +02:00
Colin Davidson
35a95fc3e4 workaround to avoid excessive file-splitting 2025-07-29 13:28:04 -07:00
Colin Davidson
517e392abe if -> when 2025-07-29 13:18:40 -07:00
Colin Davidson
4d9fdf5bd3 move to checker error, rather than panic 2025-07-29 13:09:05 -07:00
Steve Waddicor
9c5e577792 Additional obj-c methods for darwin Foundation
Added support for NSBitmapImageRep class.
Added ability to set contents to a CALayer.
I needed these to support a port of Handmade Hero, but they are of general use.
2025-07-29 21:01:22 +01:00
Colin Davidson
9a2e6fff48 switch to read_cycle_counter_frequency from arm64_read_cycle_counter_freq, trap on invalid arch 2025-07-29 12:21:46 -07:00
Colin Davidson
c1b3d035e4 remove spawn from os, comment sys/posix/spawn 2025-07-29 12:12:15 -07:00
Colin Davidson
0a102bd757 shuffle to Kern_Return 2025-07-29 11:52:58 -07:00
Colin Davidson
fe2b48dec4 enum pass 2025-07-29 11:48:58 -07:00
Laytan
435f7f6503 Merge pull request #5515 from laytan/ignored-arg-multi-return
fix ignored args in multi return handling
2025-07-29 19:16:32 +02:00
Laytan
e8a591386b Merge pull request #5514 from laytan/saner-default-stack-linker-flags
saner stack linker flags for WASM
2025-07-29 19:16:19 +02:00
Laytan
af0b90bd3e fix flag 2025-07-29 19:07:28 +02:00
Laytan
c966e63520 fix ignored args in multi return handling
Fixes #5483
2025-07-29 19:04:49 +02:00
Laytan
e7670e58dd saner stack linker flags for WASM
Supersedes #5425
2025-07-29 18:50:27 +02:00
Taylor
6c2b72f701 fix: align the enum values 2025-07-30 00:17:40 +09:00
Colin Davidson
b5629aeed9 copy-paste typo fix 2025-07-28 16:34:53 -07:00
Colin Davidson
1a9b128bfc update linux-arm to use the asm intrin for freq 2025-07-28 16:32:10 -07:00
Colin Davidson
e1fd69f573 oops, one more manual_header 2025-07-28 16:27:54 -07:00
Colin Davidson
7986d85924 name_container_event -> name_event 2025-07-28 16:25:42 -07:00
Colin Davidson
2dd1e3c8e3 fix casts and consts 2025-07-28 16:24:29 -07:00
Colin Davidson
5b020591d8 update to spall format v3 2025-07-28 16:19:51 -07:00
Colin Davidson
76b00c046b arm64 has an invariant tsc too 2025-07-28 15:30:24 -07:00
Colin Davidson
1848e0df05 use the correct frequency for the arm tsc timer 2025-07-28 15:10:42 -07:00
Colin Davidson
b88f9194d0 Merge remote-tracking branch 'live/master' into macharena 2025-07-28 14:24:46 -07:00
Taylor
1b15c9928b add cgltf filter type and wrap mode enums 2025-07-28 23:28:19 +09:00
gingerBill
be3006dbf2 Merge pull request #5507 from Paul-Andre/fix-issue-5474
Fix issue 5474
2025-07-28 11:42:09 +01:00
Paul-Andre Henegar
93a39affd1 Fix issue 5474
The fix was adding `is_constant = false;`

I also removed the unnecessary check regarding the first element of the
BitSet, since it's checked inside the loop, and also fixed a typo in the
message.
2025-07-28 01:42:19 -04:00
robomage
55de1dd923 SDL2 - audio allow change bit_set
sdl.OpenAudioDevice was incorrectly using a bool instead of a c.int for it's last parameter. To make the proc call more idiomatic and inline with other bindings a new bit_set was introduced to be used in place of the constants
2025-07-27 17:39:42 -04:00
Jeroen van Rijn
a93d3503b1 Merge pull request #5499 from Kelimion/fix-5498
Fix #5498
2025-07-25 12:09:34 +02:00
Jeroen van Rijn
3a7e4873cd Fix #5498
Also:
- Expands `tests/core/hash`
- Fixes bug found in `#hash(s, "murmur64")`
2025-07-25 12:00:24 +02:00
Jeroen van Rijn
315cd51f76 Merge pull request #5491 from Feoramund/buddy-2
Fix Linux-specific optimized test failure
2025-07-22 17:01:13 +02:00