inverted DST detection (two mktime() calls) out of the cache hit fast path in get_timezone_info(). Keep the cache key based on the cheap raw bias value and only compute inverted_dst/adjusted_bias on cache miss. Preserve the inverse DST correctness fix by still applying adjusted_bias to tzi->Bias in the slow path. This restores fast-path behavior for frequent GetTimeZoneInformation callers without regressing inverse DST handling. Fixes regression: bfae6eb8b4f6 ("ntdll: Fix get_timezone_info() for timezones defined with inverse DST on Unix.") Fixes: https://bugs.winehq.org/show_bug.cgi?id=59514 ## Test results Using a simple test demo: [time_bench.c](/uploads/700a5b087b09a0d93388dbcf437ad42d/time_bench.c) On AMD Ryzen 5800H with power connected it's **24 times** faster. Wine 11.4 without this fix: ``` iterations: 10000 time() : 1.093640 s (109364 ns/call) localtime() : 1.109118 s (110912 ns/call) sink=17736685140379 ``` With this fix: ``` iterations: 10000 time() : 0.046216 s (4622 ns/call) localtime() : 0.046636 s (4664 ns/call) sink=17736685140000 ``` -- v2: ntdll: Avoid expensive inverted DST check on get_timezone_info() cache hit path https://gitlab.winehq.org/wine/wine/-/merge_requests/10348