Files
hakmem/core/box/front_fastlane_env_box.c
2025-12-14 16:28:23 +09:00

34 lines
1.5 KiB
C

// ============================================================================
// Phase 6: Front FastLane - ENV Gate Box (Implementation)
// ============================================================================
//
// Purpose: Optional refresh function for bench_profile putenv() synchronization
//
// Note: The main getters (front_fastlane_enabled, front_fastlane_class_mask)
// are inline in the header for zero overhead in hot paths.
// This .c file provides cold-path refresh functions if needed.
//
// ============================================================================
#include "front_fastlane_env_box.h"
#include <stdlib.h>
#include <stdatomic.h>
// Refresh from ENV (for bench_profile putenv() synchronization)
// Called after bench_profile changes ENV variables via putenv()
void front_fastlane_env_refresh_from_env(void) {
// Force re-read of ENV variables on next call
// Note: The actual getenv() is done in the inline functions in the header
// This just resets the cache to trigger re-initialization
// Access the static atomics via extern declarations
// (The actual variables live in the header inline functions' static scope)
// Since we can't access static variables in inline functions from here,
// we rely on the fact that ENV changes will be picked up naturally
// on the next call if the cache is cleared.
// For now, this is a no-op placeholder.
// If bench_profile needs synchronization, we'll need to refactor
// the cache to be file-scope globals instead of function-local statics.
}