diff --git a/core/box/hak_wrappers.inc.h b/core/box/hak_wrappers.inc.h index dbbfbe78..39fd8b48 100644 --- a/core/box/hak_wrappers.inc.h +++ b/core/box/hak_wrappers.inc.h @@ -222,7 +222,8 @@ void* malloc(size_t size) { // Phase 5 E4-2: Malloc Wrapper ENV Snapshot (optional, ENV-gated) // Strategy: Consolidate 2+ TLS reads -> 1 TLS read (50%+ reduction) // Expected gain: +2-4% (from malloc 16.13% + tiny_alloc_gate_fast 19.50% reduction) - if (__builtin_expect(malloc_wrapper_env_snapshot_enabled(), 0)) { + // Phase 19-4a: Remove UNLIKELY hint, gate is ON by default in presets + if (malloc_wrapper_env_snapshot_enabled()) { // Optimized path: Single TLS snapshot (1 TLS read instead of 2+) const struct malloc_wrapper_env_snapshot* env = malloc_wrapper_env_get(); @@ -709,7 +710,8 @@ void free(void* ptr) { // Strategy: Wrapper-level Tiny validation → direct path (skip ENV snapshot + cold path) // Expected gain: +3-5% (reduces 29.56% overhead by 30-40%) // ENV: HAKMEM_FREE_TINY_DIRECT=0/1 (default: 0, research box) - if (__builtin_expect(free_tiny_direct_enabled(), 0)) { + // Phase 19-4c: Remove UNLIKELY hint, gate is ON by default in presets + if (free_tiny_direct_enabled()) { #if HAKMEM_TINY_HEADER_CLASSIDX // Page boundary guard: ptr must not be page-aligned uintptr_t off = (uintptr_t)ptr & 0xFFFu; @@ -756,7 +758,8 @@ void free(void* ptr) { // Phase 5 E4-1: Free Wrapper ENV Snapshot (optional, ENV-gated) // Strategy: Consolidate 2 TLS reads -> 1 TLS read (50% reduction) // Expected gain: +1.5-2.5% (from free() 25.26% self% reduction) - if (__builtin_expect(free_wrapper_env_snapshot_enabled(), 0)) { + // Phase 19-4a: Remove UNLIKELY hint, gate is ON by default in presets + if (free_wrapper_env_snapshot_enabled()) { // Optimized path: Single TLS snapshot (1 TLS read instead of 2) const struct free_wrapper_env_snapshot* env = free_wrapper_env_get();