Commit cbb9453
committed
Batch 2-G: ssa.cpp -> ssa.h header-inline
ssa.cpp held seven SSAify methods: a one-line Run(Function&) that
delegates to hir_ssaify_run_c, plus the Braun-algorithm Run(start) and
five helpers (getDefine recursive STL, maybeAddPhi, getCommonPredValue,
fixIncompletePhis, initSSABasicBlocks). All consumers of ssa.h see
SSAify by name, so header-inline is a clean elimination.
This commit appends all seven bodies to ssa.h as inline definitions,
adds the includes the bodies need (hir_instr_c.h for
hir_c_create_load_const, ssaify_c.h for hir_ssaify_run_c, type.h for
TNullptr/Type::toHirType, cfg.h for CFG::GetRPOTraversal, plus
<algorithm> for std::sort) and a file-scope `extern "C"
hir_reflow_types_c` declaration matching the inline-extern pattern
already used by ssa.cpp + 5 other consumers across the tree, and
deletes ssa.cpp.
ZERO new bridges; the C entry points used (hir_ssaify_run_c,
hir_reflow_types_c, hir_c_create_load_const) all pre-date this commit.
ZERO hir_c_api.cpp growth — bodies stay in SSAify's own header.
ssa.h has 3 includers (builder.cpp + the about-to-be-deleted ssa.cpp +
compiler.cpp), so the rebuild blast radius for the header-inline bodies
is small.
Net: -1 file, +214/-227 = -13 line NET. .cpp count Python/jit/hir/
12 -> 11 (cumulative session 18 -> 11 across Batch 2-A through 2-G).
Compile-check: cmake reconfigure + cmake --build of Python/jit_build/build
PASSED clean (libphoenix_jit.a relinked, only pre-existing warnings).
Per supervisor L2747 LITERAL Step B AUTHORIZED after theologian L2746
formal scope-as-written ACK + L2743 pre-scope. W31 NOT triggered;
manual force_compile wiring smoke per testkeeper L2733 substitute.1 parent cd5a1c5 commit cbb9453
2 files changed
Lines changed: 214 additions & 227 deletions
This file was deleted.
0 commit comments