Files
hakmem/core/box/smallobject_cold_iface_v4.h
Moe Charm (CI) e3e4cab833 Cleanup: Unify type naming and Cold Iface architecture
Refactoring:
- Type naming: Rename small_page_v4 → SmallPageMeta, small_class_heap_v4 → SmallClassHeap, small_heap_ctx_v4 → SmallHeapCtx
- Keep backward compatibility aliases for existing code
- SmallSegment struct unified, clean forward declarations
- Cold Iface: Remove vtable (SmallColdIfaceV4 struct) in favor of direct function calls
- Simplify refill_page/retire_page to direct calls, not callbacks
- smallobject_hotbox_v4.c: Update to call small_cold_v4_* functions directly

Documentation:
- Add docs/analysis/ENV_CLEANUP_CANDIDATES.md
- Categorize ENVs: KEEP (production), RESEARCH (opt-in), DELETE (obsolete)
- v2 code: Keep as research infrastructure (complete, safe, gated)
- v4 code: Research scaffold for future mid-level allocator

Build:
- ビルド成功(警告のみ)
- Backward compatible, all existing code still works

🤖 Generated with Claude Code

Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
2025-12-10 23:30:32 +09:00

20 lines
876 B
C
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

// smallobject_cold_iface_v4.h - SmallObject HotHeap v4 Cold Interface (Direct Functions)
//
// 役割:
// - HotBox_v4 と Superslab/Warm/Remote を繋ぐ Cold 側のインターフェース。
// - 関数ポインタvtableではなく direct function で統一。
// - Hot Box は以下の関数を直接呼び出すcallback ではなく)。
#pragma once
#include <stdbool.h>
#include <stdint.h>
#include "smallobject_hotbox_v4_box.h"
// Cold path API: Direct functions (not function pointers)
// Hot box から直接呼び出される Cold 側の実装。
small_page_v4* small_cold_v4_refill_page(small_heap_ctx_v4* ctx, uint32_t class_idx);
void small_cold_v4_retire_page(small_heap_ctx_v4* ctx, small_page_v4* page);
bool small_cold_v4_remote_push(small_page_v4* page, void* ptr, uint32_t tid);
void small_cold_v4_remote_drain(small_heap_ctx_v4* ctx);