selfhost/cmd/wcc: delete mem.ww (γ-7, Phase 0 close)
mem.ww has 0 callers post-γ-6 — newarena/amalloc/grow/freearena/ roundup all unreferenced after the *arena cascade strip. Drop the 91-line module. Makefile: remove mem.ww from 5 dep lists (wwdump_ww, w6c_ww, w6a_ww, w6l_ww, ww_ww); drop `-I selfhost/cmd/wcc` from w6a_ww/ w6l_ww/ww_ww build invocations (wwdump_ww + w6c_ww still need it for check.ww/cgen*.ww). test/wcc/990_selfhost.c: drop 6 mem.ww entries from probe_codegen, probe_dump_diff (×2), probe_resolve, probe_dump_stable, and probe_cgen_match file lists. lib/memio/memio.ww: dynamicgrow doc comment reframed as historical context (collision source is gone, but task #9 keeps the module-prefixed name conservative against future collisions). Two dead `import mem;` lines remain in selfhost/cmd/w6a/asm.ww and selfhost/test/uses.ww; tolerated silently by ww build, swept in task #8. main.combined.ww auto-regenerated for w6a/w6c/wwdump. Verified 132/132 incl. 994_w6c_ww + 995_self_rebuild byte-identity. Phase 0 closes.
This commit is contained in:
22
Makefile
22
Makefile
@@ -104,12 +104,12 @@ $(OBJ)/w6l/%.o: cmd/w6l/%.c cmd/w6l/l.h | $(OBJ)/w6l
|
||||
# ---- ww-side wwdump (the lexer port, exercised by 990_selfhost) --------
|
||||
# Built via the user-facing ww driver. The introspection ports (lex,
|
||||
# tok, ast, parse, typ, sym) live in lib/ww/; the compiler-only bits
|
||||
# (mem, check, cgen*) stay in selfhost/cmd/wcc/. Output named wwdump_ww
|
||||
# (check, cgen*) stay in selfhost/cmd/wcc/. Output named wwdump_ww
|
||||
# to avoid colliding with the C-side wwdump in $(BIN).
|
||||
$(BIN)/wwdump_ww: selfhost/cmd/wwdump/main.ww \
|
||||
lib/ww/lex/lex.ww lib/ww/lex/tok.ww lib/ww/ast.ww \
|
||||
lib/ww/parse/parse.ww lib/ww/parse/expr.ww lib/ww/parse/stmt.ww lib/ww/parse/decl.ww lib/ww/typ.ww lib/ww/sym.ww \
|
||||
selfhost/cmd/wcc/mem.ww selfhost/cmd/wcc/check.ww \
|
||||
selfhost/cmd/wcc/check.ww \
|
||||
selfhost/cmd/wcc/cgen.ww selfhost/cmd/wcc/cgenexpr.ww \
|
||||
selfhost/cmd/wcc/cgenstmt.ww selfhost/cmd/wcc/cgenutil.ww \
|
||||
selfhost/cmd/wcc/cgendecl.ww \
|
||||
@@ -131,7 +131,7 @@ $(BIN)/wwdump_ww: selfhost/cmd/wwdump/main.ww \
|
||||
$(BIN)/w6c_ww: selfhost/cmd/w6c/main.ww \
|
||||
lib/ww/lex/lex.ww lib/ww/lex/tok.ww lib/ww/ast.ww \
|
||||
lib/ww/parse/parse.ww lib/ww/parse/expr.ww lib/ww/parse/stmt.ww lib/ww/parse/decl.ww lib/ww/typ.ww lib/ww/sym.ww \
|
||||
selfhost/cmd/wcc/mem.ww selfhost/cmd/wcc/check.ww \
|
||||
selfhost/cmd/wcc/check.ww \
|
||||
selfhost/cmd/wcc/cgen.ww selfhost/cmd/wcc/cgenexpr.ww \
|
||||
selfhost/cmd/wcc/cgenstmt.ww selfhost/cmd/wcc/cgenutil.ww \
|
||||
selfhost/cmd/wcc/cgendecl.ww \
|
||||
@@ -149,48 +149,44 @@ $(BIN)/w6c_ww: selfhost/cmd/w6c/main.ww \
|
||||
|
||||
# ---- ww-side w6a (assembler port, exercised by 991_w6a_ww) ------------
|
||||
# Built like wwdump_ww. Needs -I selfhost/cmd/w6a for the local types/lex/
|
||||
# parse/asm/obj modules and -I selfhost/cmd/wcc to find `mem`.
|
||||
# parse/asm/obj modules.
|
||||
$(BIN)/w6a_ww: selfhost/cmd/w6a/main.ww selfhost/cmd/w6a/opcodes.ww \
|
||||
selfhost/cmd/w6a/lex.ww selfhost/cmd/w6a/parse.ww \
|
||||
selfhost/cmd/w6a/asm.ww selfhost/cmd/w6a/obj.ww \
|
||||
selfhost/cmd/wcc/mem.ww \
|
||||
lib/os/os.ww lib/rt/malloc.ww lib/time/time.ww \
|
||||
$(BIN)/ww $(BIN)/w6c $(BIN)/w6a $(BIN)/w6l \
|
||||
$(LIB)/libwwrt.a | $(BIN)
|
||||
@mkdir -p $(BIN)/w6a_ww.d
|
||||
cd $(BIN)/w6a_ww.d && $(CURDIR)/$(BIN)/ww build \
|
||||
-I $(CURDIR)/selfhost/cmd/w6a \
|
||||
-I $(CURDIR)/selfhost/cmd/wcc \
|
||||
$(CURDIR)/selfhost/cmd/w6a/main.ww
|
||||
mv $(BIN)/w6a_ww.d/main $@
|
||||
|
||||
# ---- ww-side w6l (linker port, exercised by 992_w6l_ww) ---------------
|
||||
# Built like 6a_ww. Needs -I selfhost/cmd/w6l for the local sym/obj/pass/
|
||||
# out modules and -I selfhost/cmd/wcc to find `mem`.
|
||||
# out modules.
|
||||
$(BIN)/w6l_ww: selfhost/cmd/w6l/main.ww selfhost/cmd/w6l/sym.ww \
|
||||
selfhost/cmd/w6l/obj.ww selfhost/cmd/w6l/dyn.ww \
|
||||
selfhost/cmd/w6l/pass.ww selfhost/cmd/w6l/dynout.ww \
|
||||
selfhost/cmd/w6l/out.ww selfhost/cmd/wcc/mem.ww \
|
||||
selfhost/cmd/w6l/out.ww \
|
||||
lib/os/os.ww lib/rt/malloc.ww lib/time/time.ww \
|
||||
$(BIN)/ww $(BIN)/w6c $(BIN)/w6a $(BIN)/w6l \
|
||||
$(LIB)/libwwrt.a | $(BIN)
|
||||
@mkdir -p $(BIN)/w6l_ww.d
|
||||
cd $(BIN)/w6l_ww.d && $(CURDIR)/$(BIN)/ww build \
|
||||
-I $(CURDIR)/selfhost/cmd/w6l \
|
||||
-I $(CURDIR)/selfhost/cmd/wcc \
|
||||
$(CURDIR)/selfhost/cmd/w6l/main.ww
|
||||
mv $(BIN)/w6l_ww.d/main $@
|
||||
|
||||
# ---- ww-side ww driver (exercised by 993_ww_ww) ------------------------
|
||||
# The driver pulls in lib/os (default search path) and selfhost/cmd/wcc
|
||||
# (for the bump arena). It then orchestrates w6c/w6a/w6l like the C driver.
|
||||
$(BIN)/ww_ww: selfhost/cmd/ww/main.ww selfhost/cmd/wcc/mem.ww lib/os/os.ww lib/rt/malloc.ww \
|
||||
# The driver pulls in lib/os (default search path) and orchestrates
|
||||
# w6c/w6a/w6l like the C driver.
|
||||
$(BIN)/ww_ww: selfhost/cmd/ww/main.ww lib/os/os.ww lib/rt/malloc.ww \
|
||||
lib/time/time.ww lib/strconv/strconv.ww \
|
||||
$(BIN)/ww $(BIN)/w6c $(BIN)/w6a $(BIN)/w6l \
|
||||
$(LIB)/libwwrt.a | $(BIN)
|
||||
@mkdir -p $(BIN)/ww_ww.d
|
||||
cd $(BIN)/ww_ww.d && $(CURDIR)/$(BIN)/ww build \
|
||||
-I $(CURDIR)/selfhost/cmd/wcc \
|
||||
$(CURDIR)/selfhost/cmd/ww/main.ww
|
||||
mv $(BIN)/ww_ww.d/main $@
|
||||
|
||||
|
||||
Reference in New Issue
Block a user