Commit fc77678339

David Rubin <daviru007@icloud.com>
2024-12-26 11:23:21
mem: add `@branchHint` to `indexOfSentinel` also seems to work around aarch64 LLVM miscompilation :thinking:
1 parent 95720f0
Changed files (1)
lib
lib/std/mem.zig
@@ -1119,6 +1119,7 @@ pub fn indexOfSentinel(comptime T: type, comptime sentinel: T, p: [*:sentinel]co
 
                     i += @divExact(std.mem.alignForward(usize, start_addr, block_size) - start_addr, @sizeOf(T));
                 } else {
+                    @branchHint(.unlikely);
                     // Would read over a page boundary. Per-byte at a time until aligned or found.
                     // 0.39% chance this branch is taken for 4K pages at 16b block length.
                     //