zig/lib/std
Dominic 559150e844
Xxhash perf (#15947)
Improvements for xxHash performance, both on small keys as well as large slices.

* std.hash: make benchmarks consistent for xxhash

There is some odd behaviour in the timings for the XXHash benchmarks
introduced in 879f0b9, specifically the changes to the allocation in
benchmarkHash. The problem is somewhere in the difference between
9628243 and 9362d61 (these are commit that were force-pushed over but
        can be found in PR #15917).

* std.hash: correctly calculate throughput in benchmark
* std.hash: add hashes per sec to small key output
* std.hash: add exact and small xxhash routines
* std.hash: add --small-only flag to benchmark
* std.hash.xxhash: extract stateless Accumulator type
* std.hash.xxhash: cleanup hash() and improve small key perf
* std.hash.xxhash: port xxhash64 changes to xxhash32
* std.hash: change benchmark --small-only flag to --include-array
2023-07-24 13:47:45 -04:00
..
atomic all: migrate code to new cast builtin syntax 2023-06-24 16:56:39 -07:00
Build std.Build.Step.Compile: getEmittedDocs API enhancements 2023-07-24 02:37:25 -07:00
c darwin: update mcontext_t definition for aarch64 to add neon state 2023-07-20 22:58:14 -04:00
compress all: migrate code to new cast builtin syntax 2023-06-24 16:56:39 -07:00
crypto Use builtin inference over @as where possible 2023-07-24 10:23:51 -07:00
dwarf dwarf: implement aarch64 default register rules 2023-07-20 22:58:16 -04:00
event all: migrate code to new cast builtin syntax 2023-06-24 16:56:39 -07:00
fmt reduce AstGen.numberLiteral stack usage 2023-07-20 12:51:18 -07:00
fs Consolidate 'delete a read-only file on windows' test cases 2023-07-23 01:26:26 -07:00
hash Xxhash perf (#15947) 2023-07-24 13:47:45 -04:00
heap std: fix doc comment of GPA deinit 2023-07-03 01:14:20 -07:00
http Fix the http.Server test and add it to the set of tests in http.zig 2023-07-23 13:58:34 -07:00
io Merge pull request #15879 from r00ster91/more_stage1_test_coverage 2023-07-03 15:59:54 -07:00
json std.json: support parsing json at comptime using FixedBufferAllocator (#16488) 2023-07-22 18:52:26 -04:00
math Use builtin inference over @as where possible 2023-07-24 10:23:51 -07:00
mem Optimize Allocator functions to create less duplicate code for similar types (#16332) 2023-07-06 14:41:49 -04:00
meta all: migrate code to new cast builtin syntax 2023-06-24 16:56:39 -07:00
net
os Use builtin inference over @as where possible 2023-07-24 10:23:51 -07:00
rand Use builtin inference over @as where possible 2023-07-24 10:23:51 -07:00
sort improve documentation of std.sort.*Context functions (#16145) 2023-06-27 00:51:06 -07:00
target
testing all: migrate code to new cast builtin syntax 2023-06-24 16:56:39 -07:00
Thread std: implement detach for WASI-threads 2023-06-26 20:00:58 +02:00
time all: migrate code to new cast builtin syntax 2023-06-24 16:56:39 -07:00
tz
unicode all: migrate code to new cast builtin syntax 2023-06-24 16:56:39 -07:00
valgrind all: migrate code to new cast builtin syntax 2023-06-24 16:56:39 -07:00
zig Use builtin inference over @as where possible 2023-07-24 10:23:51 -07:00
array_hash_map.zig compiler: rework inferred error sets 2023-07-18 19:02:05 -07:00
array_list.zig std: reword some comments 2023-07-16 18:32:52 -07:00
ascii.zig
atomic.zig
base64.zig all: migrate code to new cast builtin syntax 2023-06-24 16:56:39 -07:00
bit_set.zig all: migrate code to new cast builtin syntax 2023-06-24 16:56:39 -07:00
BitStack.zig std.json: Unify stringify and writeStream (#16405) 2023-07-21 19:56:46 -04:00
bounded_array.zig Smaller memory footprint for BoundedArray (#16299) 2023-07-03 13:58:03 -04:00
buf_map.zig
buf_set.zig
Build.zig Use builtin inference over @as where possible 2023-07-24 10:23:51 -07:00
builtin.zig Merge pull request #15775 from r00ster91/newlines 2023-07-11 23:06:12 -07:00
c.zig c: fixup getcontext 2023-07-20 22:58:14 -04:00
child_process.zig child_process: Fix regression on Windows for FAT filesystems 2023-07-23 19:09:20 -07:00
coff.zig dwarf: fixup integer overflow in readEhPointer 2023-07-20 22:58:16 -04:00
compress.zig
comptime_string_map.zig std.sort.block: add safety check for lessThan return value 2023-06-26 17:50:10 -07:00
crypto.zig
cstr.zig std.cstr: deprecate namespace 2023-06-25 14:51:03 -07:00
debug.zig dwarf: move macho unwind code from macho -> dwarf 2023-07-20 22:58:16 -04:00
dwarf.zig dwarf: move macho unwind code from macho -> dwarf 2023-07-20 22:58:16 -04:00
dynamic_library.zig all: migrate code to new cast builtin syntax 2023-06-24 16:56:39 -07:00
elf.zig debug: support loading elf debug info from external files 2023-07-20 22:58:12 -04:00
enums.zig std.sort.block: add safety check for lessThan return value 2023-06-26 17:50:10 -07:00
event.zig
fifo.zig
fmt.zig all: migrate code to new cast builtin syntax 2023-06-24 16:56:39 -07:00
fs.zig all: migrate code to new cast builtin syntax 2023-06-24 16:56:39 -07:00
hash.zig
hash_map.zig Use builtin inference over @as where possible 2023-07-24 10:23:51 -07:00
heap.zig std.json: support parsing json at comptime using FixedBufferAllocator (#16488) 2023-07-22 18:52:26 -04:00
http.zig Fix the http.Server test and add it to the set of tests in http.zig 2023-07-23 13:58:34 -07:00
Ini.zig
io.zig all: migrate code to new cast builtin syntax 2023-06-24 16:56:39 -07:00
json.zig std.json: Unify stringify and writeStream (#16405) 2023-07-21 19:56:46 -04:00
leb128.zig Use builtin inference over @as where possible 2023-07-24 10:23:51 -07:00
linked_list.zig SinglyLinkedList: rename invert -> reverse 2023-07-15 21:37:54 -07:00
log.zig
macho.zig dwarf: move macho unwind code from macho -> dwarf 2023-07-20 22:58:16 -04:00
math.zig Remove len parameter from splat in standard lib 2023-07-12 15:35:57 -07:00
mem.zig Remove len parameter from splat in standard lib 2023-07-12 15:35:57 -07:00
meta.zig Remove len parameter from splat in standard lib 2023-07-12 15:35:57 -07:00
multi_array_list.zig Add more sorting functions to MultiArrayList (#16377) 2023-07-11 06:37:51 +00:00
net.zig Unrevert "Sema: preserve extern struct field alignment" 2023-06-30 23:24:52 -04:00
once.zig
os.zig os.renameatW: Handle OBJECT_NAME_COLLISION from NtSetInformationFile 2023-07-23 19:09:36 -07:00
packed_int_array.zig all: migrate code to new cast builtin syntax 2023-06-24 16:56:39 -07:00
pdb.zig std.pdb: fix incorrect field alignment in ptrCast 2023-06-30 23:23:03 -04:00
priority_dequeue.zig
priority_queue.zig
process.zig all: migrate code to new cast builtin syntax 2023-06-24 16:56:39 -07:00
Progress.zig all: migrate code to new cast builtin syntax 2023-06-24 16:56:39 -07:00
rand.zig all: migrate code to new cast builtin syntax 2023-06-24 16:56:39 -07:00
RingBuffer.zig
segmented_list.zig all: migrate code to new cast builtin syntax 2023-06-24 16:56:39 -07:00
SemanticVersion.zig
simd.zig Remove len parameter from splat in standard lib 2023-07-12 15:35:57 -07:00
sort.zig improve documentation of std.sort.*Context functions (#16145) 2023-06-27 00:51:06 -07:00
start.zig all: migrate code to new cast builtin syntax 2023-06-24 16:56:39 -07:00
start_windows_tls.zig all: migrate code to new cast builtin syntax 2023-06-24 16:56:39 -07:00
std.zig std.json: Unify stringify and writeStream (#16405) 2023-07-21 19:56:46 -04:00
tar.zig all: migrate code to new cast builtin syntax 2023-06-24 16:56:39 -07:00
target.zig llvm: fix datalayout generation for more targets 2023-07-23 23:48:18 -04:00
testing.zig Remove len parameter from splat in standard lib 2023-07-12 15:35:57 -07:00
Thread.zig default to single-threaded for WebAssembly 2023-06-26 20:00:58 +02:00
time.zig implement std.time.sleep for uefi 2023-07-07 11:57:09 -07:00
treap.zig
tz.zig all: migrate code to new cast builtin syntax 2023-06-24 16:56:39 -07:00
unicode.zig all: migrate code to new cast builtin syntax 2023-06-24 16:56:39 -07:00
Uri.zig std.Uri: allow getting the mutable result from (un)escape 2023-06-26 15:46:04 +03:00
valgrind.zig all: migrate code to new cast builtin syntax 2023-06-24 16:56:39 -07:00
wasm.zig
zig.zig all: migrate code to new cast builtin syntax 2023-06-24 16:56:39 -07:00