Moe Charm (CI)
ef2d1caa2a
Phase 7-1.3: Simplify HAK_RET_ALLOC macro definition (-35% LOC, -100% #undef)
Problem:
- Phase 7-1.3 working code had complex #ifndef/#undef pattern
- Bidirectional dependency between hakmem_tiny.c and tiny_alloc_fast.inc.h
- Dangerous #undef usage masking real errors
- 3 levels of #ifdef nesting, hard to understand control flow
Solution:
- Single definition point in core/hakmem_tiny.c (lines 116-152)
- Clear feature flag based selection: #if HAKMEM_TINY_HEADER_CLASSIDX
- Removed duplicate definition and #undef from tiny_alloc_fast.inc.h
- Added clear comment pointing to single definition point
Results:
- -35% lines of code (7 lines deleted)
- -100% #undef usage (eliminated dangerous pattern)
- -33% nesting depth (3 levels → 2 levels)
- Much clearer control flow (single decision point)
- Same performance: 2.63M ops/s Larson, 17.7M ops/s bench_random_mixed
Implementation:
1. core/hakmem_tiny.c: Replaced #ifndef/#undef with #if HAKMEM_TINY_HEADER_CLASSIDX
2. core/tiny_alloc_fast.inc.h: Deleted duplicate macro, added pointer comment
Testing:
- Larson 1T: 2.63M ops/s (expected ~2.73M, within variance)
- bench_random_mixed (128B): 17.7M ops/s (better than before!)
- All builds clean with HEADER_CLASSIDX=1
Recommendation from Task Agent Ultrathink (Option A - Single Definition):
https://github.com/anthropics/claude-code/issues/...
Phase: 7-1.3 (Ifdef Simplification)
Date: 2025-11-08
2025-11-08 11:49:21 +09:00
..
2025-11-08 04:50:41 +09:00
2025-11-08 03:18:17 +09:00
2025-11-05 12:31:14 +09:00
2025-11-05 12:31:14 +09:00
2025-11-05 12:31:14 +09:00
2025-11-05 12:31:14 +09:00
2025-11-05 12:31:14 +09:00
2025-11-05 12:31:14 +09:00
2025-11-05 12:31:14 +09:00
2025-11-05 12:31:14 +09:00
2025-11-05 12:31:14 +09:00
2025-11-05 12:31:14 +09:00
2025-11-05 12:31:14 +09:00
2025-11-05 12:31:14 +09:00
2025-11-05 12:31:14 +09:00
2025-11-05 12:31:14 +09:00
2025-11-07 01:27:04 +09:00
2025-11-05 12:31:14 +09:00
2025-11-05 12:31:14 +09:00
2025-11-05 12:31:14 +09:00
2025-11-05 12:31:14 +09:00
2025-11-05 12:31:14 +09:00
2025-11-05 12:31:14 +09:00
2025-11-05 12:31:14 +09:00
2025-11-05 12:31:14 +09:00
2025-11-05 12:31:14 +09:00
2025-11-08 04:50:41 +09:00
2025-11-05 12:31:14 +09:00
2025-11-05 12:31:14 +09:00
2025-11-05 12:31:14 +09:00
2025-11-05 12:31:14 +09:00
2025-11-05 12:31:14 +09:00
2025-11-05 12:31:14 +09:00
2025-11-05 12:31:14 +09:00
2025-11-05 12:31:14 +09:00
2025-11-05 12:31:14 +09:00
2025-11-05 12:31:14 +09:00
2025-11-05 12:31:14 +09:00
2025-11-05 12:31:14 +09:00
2025-11-05 12:31:14 +09:00
2025-11-06 21:54:12 +09:00
2025-11-07 01:27:04 +09:00
2025-11-07 01:27:04 +09:00
2025-11-07 01:27:04 +09:00
2025-11-05 12:31:14 +09:00
2025-11-05 12:31:14 +09:00
2025-11-05 12:31:14 +09:00
2025-11-05 12:31:14 +09:00
2025-11-05 12:31:14 +09:00
2025-11-05 12:31:14 +09:00
2025-11-05 12:31:14 +09:00
2025-11-05 12:31:14 +09:00
2025-11-05 12:31:14 +09:00
2025-11-07 18:07:48 +09:00
2025-11-07 18:07:48 +09:00
2025-11-05 12:31:14 +09:00
2025-11-05 12:31:14 +09:00
2025-11-05 12:31:14 +09:00
2025-11-05 12:31:14 +09:00
2025-11-07 01:27:04 +09:00
2025-11-05 12:31:14 +09:00
2025-11-07 01:27:04 +09:00
2025-11-05 12:31:14 +09:00
2025-11-05 12:31:14 +09:00
2025-11-05 12:31:14 +09:00
2025-11-05 12:31:14 +09:00
2025-11-07 20:31:01 +09:00
2025-11-05 12:31:14 +09:00
2025-11-07 01:27:04 +09:00
2025-11-05 12:31:14 +09:00
2025-11-07 01:27:04 +09:00
2025-11-05 12:31:14 +09:00
2025-11-05 12:31:14 +09:00
2025-11-08 01:18:37 +09:00
2025-11-07 01:27:04 +09:00
2025-11-05 12:31:14 +09:00
2025-11-05 12:31:14 +09:00
2025-11-05 12:31:14 +09:00
2025-11-07 20:31:01 +09:00
2025-11-05 12:31:14 +09:00
2025-11-07 01:27:04 +09:00
2025-11-07 01:27:04 +09:00
2025-11-05 12:31:14 +09:00
2025-11-05 12:31:14 +09:00
2025-11-05 12:31:14 +09:00
2025-11-05 12:31:14 +09:00
2025-11-05 12:31:14 +09:00
2025-11-08 01:44:24 +09:00
2025-11-07 22:34:24 +09:00
2025-11-05 12:31:14 +09:00
2025-11-05 12:31:14 +09:00
2025-11-05 12:31:14 +09:00
2025-11-05 12:31:14 +09:00
2025-11-05 12:31:14 +09:00
2025-11-05 12:31:14 +09:00
2025-11-05 12:31:14 +09:00
2025-11-07 01:27:04 +09:00
2025-11-05 12:31:14 +09:00
2025-11-05 12:31:14 +09:00
2025-11-05 12:31:14 +09:00
2025-11-07 01:27:04 +09:00
2025-11-07 01:27:04 +09:00
2025-11-05 12:31:14 +09:00
2025-11-05 12:31:14 +09:00
2025-11-07 01:27:04 +09:00
2025-11-07 01:27:04 +09:00
2025-11-05 12:31:14 +09:00
2025-11-07 21:45:20 +09:00
2025-11-08 01:18:37 +09:00
2025-11-07 23:05:33 +09:00
2025-11-05 12:31:14 +09:00
2025-11-07 20:31:01 +09:00
2025-11-05 12:31:14 +09:00
2025-11-07 01:27:04 +09:00
2025-11-08 11:49:21 +09:00
2025-11-08 03:18:17 +09:00
2025-11-05 12:31:14 +09:00
2025-11-05 12:31:14 +09:00
2025-11-05 12:31:14 +09:00
2025-11-05 12:31:14 +09:00
2025-11-07 18:07:48 +09:00
2025-11-05 12:31:14 +09:00
2025-11-05 12:31:14 +09:00
2025-11-07 01:27:04 +09:00
2025-11-07 01:27:04 +09:00
2025-11-08 11:49:21 +09:00
2025-11-06 21:54:12 +09:00
2025-11-05 12:31:14 +09:00
2025-11-07 01:27:04 +09:00
2025-11-07 01:27:04 +09:00
2025-11-05 12:31:14 +09:00
2025-11-07 18:07:48 +09:00
2025-11-05 05:44:18 +00:00
2025-11-08 04:50:41 +09:00
2025-11-07 01:27:04 +09:00
2025-11-06 21:54:12 +09:00
2025-11-07 01:27:04 +09:00
2025-11-07 01:27:04 +09:00
2025-11-05 12:31:14 +09:00
2025-11-07 01:27:04 +09:00
2025-11-07 18:07:48 +09:00
2025-11-08 01:46:37 +09:00
2025-11-07 18:07:48 +09:00
2025-11-08 04:50:41 +09:00
2025-11-07 01:27:04 +09:00
2025-11-08 01:18:37 +09:00
2025-11-05 12:31:14 +09:00
2025-11-07 01:27:04 +09:00
2025-11-07 01:27:04 +09:00
2025-11-05 12:31:14 +09:00
2025-11-08 01:18:37 +09:00
2025-11-08 03:18:17 +09:00
2025-11-06 21:54:12 +09:00
2025-11-07 22:34:24 +09:00
2025-11-05 12:31:14 +09:00