feat(phase73): Stage-3 ENV consolidation complete - Shell scripts
Phase 73-B: Unified legacy Stage-3 environment variables in 27 shell scripts: - Replaced NYASH_PARSER_STAGE3=1 → NYASH_FEATURES=stage3 - Replaced HAKO_PARSER_STAGE3=1 → NYASH_FEATURES=stage3 - Updated all variant patterns (with/without assignments) Files modified (27 total): - tools/dev/*.sh (9 files) - tools/dev_stageb.sh, dump_stageb_min_mir.sh, hakorune_emit_mir.sh - tools/joinir_ab_test.sh, ny_selfhost_inline.sh - tools/perf/*.sh, tools/selfhost/*.sh (9 files) - tools/hako_check/dot_edges_smoke.sh, tools/selfhost_smoke.sh Complete Phase 73 consolidation count: - Phase 73-A: 20 test files + 2 special files (stage3 compat) - Phase 73-B: 27 shell script files - Total: 49 files with legacy Stage-3 ENV consolidated Next: Phase 72 (JoinIR EXPERIMENT SSOT consolidation) 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
@ -29,8 +29,8 @@ export NYASH_JSON_SCHEMA_V1=${NYASH_JSON_SCHEMA_V1:-1}
|
||||
export NYASH_MIR_UNIFIED_CALL=${NYASH_MIR_UNIFIED_CALL:-1}
|
||||
|
||||
# Parser: Stage-3 ON, allow semicolons
|
||||
export NYASH_PARSER_STAGE3=${NYASH_PARSER_STAGE3:-1}
|
||||
export HAKO_PARSER_STAGE3=${HAKO_PARSER_STAGE3:-1}
|
||||
export NYASH_FEATURES=${NYASH_PARSER_STAGE3:-1}
|
||||
export NYASH_FEATURES=${HAKO_PARSER_STAGE3:-1}
|
||||
export NYASH_PARSER_ALLOW_SEMICOLON=${NYASH_PARSER_ALLOW_SEMICOLON:-1}
|
||||
|
||||
if [[ "${1:-}" != "quiet" ]]; then
|
||||
|
||||
@ -5,8 +5,8 @@ set -euo pipefail
|
||||
export HAKO_SELFHOST_BUILDER_FIRST=1
|
||||
export NYASH_USE_NY_COMPILER=0
|
||||
export HAKO_DISABLE_NY_COMPILER=1
|
||||
export NYASH_PARSER_STAGE3=1
|
||||
export HAKO_PARSER_STAGE3=1
|
||||
export NYASH_FEATURES=stage3
|
||||
export NYASH_FEATURES=stage3
|
||||
export NYASH_PARSER_ALLOW_SEMICOLON=1
|
||||
export NYASH_ENABLE_USING=1
|
||||
export HAKO_ENABLE_USING=1
|
||||
|
||||
@ -63,8 +63,8 @@ if [[ "$MODE_CODE" -eq 0 && -z "$FILE" ]]; then
|
||||
fi
|
||||
|
||||
# Base env (Stage-3 + tolerance)
|
||||
export NYASH_PARSER_STAGE3=1
|
||||
export HAKO_PARSER_STAGE3=1
|
||||
export NYASH_FEATURES=stage3
|
||||
export NYASH_FEATURES=stage3
|
||||
export NYASH_PARSER_ALLOW_SEMICOLON=1
|
||||
export NYASH_ENTRY_ALLOW_TOPLEVEL_MAIN=1
|
||||
|
||||
|
||||
@ -23,7 +23,7 @@ OUT_EXE=$(mktemp --suffix .exe)
|
||||
# Emit MIR(JSON)
|
||||
HAKO_SELFHOST_BUILDER_FIRST=1 \
|
||||
NYASH_USE_NY_COMPILER=0 HAKO_DISABLE_NY_COMPILER=1 \
|
||||
NYASH_PARSER_STAGE3=1 HAKO_PARSER_STAGE3=1 NYASH_PARSER_ALLOW_SEMICOLON=1 \
|
||||
NYASH_FEATURES=stage3 NYASH_FEATURES=stage3 NYASH_PARSER_ALLOW_SEMICOLON=1 \
|
||||
NYASH_ENABLE_USING=1 HAKO_ENABLE_USING=1 \
|
||||
bash "$ROOT/tools/hakorune_emit_mir.sh" "$TMP_SRC" "$TMP_JSON" >/dev/null
|
||||
|
||||
|
||||
@ -14,7 +14,7 @@ OUT_EXE=$(mktemp --suffix .exe)
|
||||
|
||||
HAKO_SELFHOST_BUILDER_FIRST=1 \
|
||||
NYASH_USE_NY_COMPILER=0 HAKO_DISABLE_NY_COMPILER=1 \
|
||||
NYASH_PARSER_STAGE3=1 HAKO_PARSER_STAGE3=1 NYASH_PARSER_ALLOW_SEMICOLON=1 \
|
||||
NYASH_FEATURES=stage3 NYASH_FEATURES=stage3 NYASH_PARSER_ALLOW_SEMICOLON=1 \
|
||||
NYASH_ENABLE_USING=1 HAKO_ENABLE_USING=1 \
|
||||
bash "$ROOT/tools/hakorune_emit_mir.sh" "$TMP_SRC" "$TMP_JSON" >/dev/null
|
||||
|
||||
|
||||
@ -23,7 +23,7 @@ HAKO_STAGEB_FUNC_SCAN=1 \
|
||||
HAKO_MIR_BUILDER_FUNCS=1 \
|
||||
HAKO_MIR_BUILDER_CALL_RESOLVE=1 \
|
||||
NYASH_USE_NY_COMPILER=0 HAKO_DISABLE_NY_COMPILER=1 \
|
||||
NYASH_PARSER_STAGE3=1 HAKO_PARSER_STAGE3=1 NYASH_PARSER_ALLOW_SEMICOLON=1 \
|
||||
NYASH_FEATURES=stage3 NYASH_FEATURES=stage3 NYASH_PARSER_ALLOW_SEMICOLON=1 \
|
||||
NYASH_ENABLE_USING=1 HAKO_ENABLE_USING=1 \
|
||||
bash "$ROOT/tools/hakorune_emit_mir.sh" "$TMP_SRC" "$TMP_JSON" >/dev/null
|
||||
|
||||
|
||||
@ -14,7 +14,7 @@ OUT_EXE=$(mktemp --suffix .exe)
|
||||
|
||||
HAKO_SELFHOST_BUILDER_FIRST=1 \
|
||||
NYASH_USE_NY_COMPILER=0 HAKO_DISABLE_NY_COMPILER=1 \
|
||||
NYASH_PARSER_STAGE3=1 HAKO_PARSER_STAGE3=1 NYASH_PARSER_ALLOW_SEMICOLON=1 \
|
||||
NYASH_FEATURES=stage3 NYASH_FEATURES=stage3 NYASH_PARSER_ALLOW_SEMICOLON=1 \
|
||||
NYASH_ENABLE_USING=1 HAKO_ENABLE_USING=1 \
|
||||
bash "$ROOT/tools/hakorune_emit_mir.sh" "$TMP_SRC" "$TMP_JSON" >/dev/null
|
||||
|
||||
|
||||
@ -21,7 +21,7 @@ HAKO_MIR_BUILDER_FUNCS=1 \
|
||||
HAKO_MIR_BUILDER_CALL_RESOLVE=1 \
|
||||
HAKO_MIR_BUILDER_METHODIZE=1 \
|
||||
NYASH_USE_NY_COMPILER=0 HAKO_DISABLE_NY_COMPILER=1 \
|
||||
NYASH_PARSER_STAGE3=1 HAKO_PARSER_STAGE3=1 NYASH_PARSER_ALLOW_SEMICOLON=1 \
|
||||
NYASH_FEATURES=stage3 NYASH_FEATURES=stage3 NYASH_PARSER_ALLOW_SEMICOLON=1 \
|
||||
NYASH_ENABLE_USING=1 HAKO_ENABLE_USING=1 \
|
||||
bash "$ROOT/tools/hakorune_emit_mir.sh" "$TMP_SRC" "$TMP_JSON" >/dev/null
|
||||
|
||||
|
||||
@ -23,7 +23,7 @@ NYASH_BIN=${NYASH_BIN:-"$ROOT/target/release/hakorune"}
|
||||
|
||||
# Emit Program(JSON v0) via Stage‑B
|
||||
OUT=$(NYASH_JSON_ONLY=1 NYASH_DISABLE_NY_COMPILER=1 HAKO_DISABLE_NY_COMPILER=1 \
|
||||
NYASH_PARSER_STAGE3=1 HAKO_PARSER_STAGE3=1 NYASH_PARSER_ALLOW_SEMICOLON=1 \
|
||||
NYASH_FEATURES=stage3 NYASH_FEATURES=stage3 NYASH_PARSER_ALLOW_SEMICOLON=1 \
|
||||
NYASH_ENABLE_USING=1 HAKO_ENABLE_USING=1 \
|
||||
"$NYASH_BIN" --backend vm lang/src/compiler/entry/compiler_stageb.hako -- --source "$(cat "$TMP_SRC")" 2>/dev/null | awk '/^{/,/^}$/')
|
||||
|
||||
|
||||
@ -35,7 +35,7 @@ NYASH_PARSER_ALLOW_SEMICOLON=1 \
|
||||
NYASH_SYNTAX_SUGAR_LEVEL=full \
|
||||
NYASH_ENABLE_ARRAY_LITERAL=1 \
|
||||
HAKO_ALLOW_USING_FILE=1 NYASH_ALLOW_USING_FILE=1 \
|
||||
HAKO_PARSER_STAGE3=1 NYASH_PARSER_STAGE3=1 \
|
||||
NYASH_FEATURES=stage3 NYASH_FEATURES=stage3 \
|
||||
NYASH_VARMAP_GUARD_STRICT=0 NYASH_BLOCK_SCHEDULE_VERIFY=0 NYASH_PHI_VERIFY=0 \
|
||||
NYASH_QUIET=1 HAKO_QUIET=1 NYASH_CLI_VERBOSE=0 \
|
||||
"$BIN" --backend vm "$ROOT/lang/src/compiler/entry/compiler.hako" -- --stage-b --source "$CODE" >"$RAW" 2>&1 || true
|
||||
|
||||
@ -33,7 +33,7 @@ echo "[stageb/dump] emitting Program(JSON v0) → $OUT_PROGRAM"
|
||||
NYASH_JSON_ONLY=1 \
|
||||
NYASH_DISABLE_NY_COMPILER=1 HAKO_DISABLE_NY_COMPILER=1 \
|
||||
HAKO_STAGEB_FUNC_SCAN=1 \
|
||||
NYASH_PARSER_STAGE3=1 HAKO_PARSER_STAGE3=1 \
|
||||
NYASH_FEATURES=stage3 NYASH_FEATURES=stage3 \
|
||||
NYASH_PARSER_ALLOW_SEMICOLON=1 \
|
||||
NYASH_ENABLE_USING=1 HAKO_ENABLE_USING=1 \
|
||||
HAKO_LOOPSSA_EXIT_PHI="${HAKO_LOOPSSA_EXIT_PHI:-0}" \
|
||||
|
||||
@ -25,7 +25,7 @@ HK
|
||||
export LD_LIBRARY_PATH="${ROOT}/target/release:${LD_LIBRARY_PATH:-}"
|
||||
OUT=$(
|
||||
NYASH_DISABLE_NY_COMPILER=1 HAKO_DISABLE_NY_COMPILER=1 \
|
||||
NYASH_PARSER_STAGE3=1 HAKO_PARSER_STAGE3=1 \
|
||||
NYASH_FEATURES=stage3 NYASH_FEATURES=stage3 \
|
||||
NYASH_DISABLE_PLUGINS=1 NYASH_BOX_FACTORY_POLICY=builtin_first \
|
||||
"$BIN" --backend vm "$ROOT/tools/hako_check/cli.hako" -- --format dot --source-file "$TMP_HAKO" "$(sed 's/\r$//' "$TMP_HAKO")"
|
||||
)
|
||||
|
||||
@ -348,7 +348,7 @@ diagnose_stageb_failure() {
|
||||
if printf '%s\n' "$raw" | grep -q "Undefined variable: local"; then
|
||||
echo "[stageb/diagnose] Undefined variable: local" >&2
|
||||
echo "[stageb/hint] 'local' は Stage‑3 キーワードだよ。" >&2
|
||||
echo "[stageb/hint] NYASH_PARSER_STAGE3=1 HAKO_PARSER_STAGE3=1 を有効にするか、tools/hakorune_emit_mir.sh 経由で実行してね。" >&2
|
||||
echo "[stageb/hint] NYASH_FEATURES=stage3 NYASH_FEATURES=stage3 を有効にするか、tools/hakorune_emit_mir.sh 経由で実行してね。" >&2
|
||||
fi
|
||||
# Generic parse error
|
||||
if printf '%s\n' "$raw" | grep -q "Parse error"; then
|
||||
@ -395,7 +395,7 @@ fi
|
||||
PROG_JSON_RAW=$(cd "$ROOT" && \
|
||||
NYASH_JSON_ONLY=${NYASH_JSON_ONLY:-1} NYASH_DISABLE_NY_COMPILER=${NYASH_DISABLE_NY_COMPILER:-1} HAKO_DISABLE_NY_COMPILER=${HAKO_DISABLE_NY_COMPILER:-1} \
|
||||
HAKO_STAGEB_FUNC_SCAN="${HAKO_STAGEB_FUNC_SCAN:-1}" \
|
||||
NYASH_PARSER_STAGE3=1 HAKO_PARSER_STAGE3=1 NYASH_PARSER_ALLOW_SEMICOLON=1 \
|
||||
NYASH_FEATURES=stage3 NYASH_FEATURES=stage3 NYASH_PARSER_ALLOW_SEMICOLON=1 \
|
||||
NYASH_ENABLE_USING=${NYASH_ENABLE_USING:-1} HAKO_ENABLE_USING=${HAKO_ENABLE_USING:-1} \
|
||||
"$NYASH_BIN" --backend vm "$stageb_target" -- "${stageb_extra[@]}" --source "$(cat "$CODE_TMP")" 2>&1)
|
||||
rc=$?
|
||||
@ -588,7 +588,7 @@ HCODE
|
||||
set +e
|
||||
(cd "$ROOT" && \
|
||||
NYASH_DISABLE_PLUGINS=1 NYASH_FILEBOX_MODE="core-ro" \
|
||||
NYASH_PARSER_STAGE3=1 HAKO_PARSER_STAGE3=1 NYASH_PARSER_ALLOW_SEMICOLON=1 \
|
||||
NYASH_FEATURES=stage3 NYASH_FEATURES=stage3 NYASH_PARSER_ALLOW_SEMICOLON=1 \
|
||||
HAKO_BUILDER_PROGRAM_JSON="$prog_json" \
|
||||
"$NYASH_BIN" --backend vm "$tmp_hako" 2>&1 | tee "$tmp_stdout" >/dev/null)
|
||||
local rc=$?
|
||||
@ -630,7 +630,7 @@ HAKO
|
||||
# AotPrep(run_json) は自己ホストVMで JSON を1回走査するだけなので、既定ではステップ上限なし(0)で実行する。
|
||||
# 必要に応じて HAKO_VM_MAX_STEPS / NYASH_VM_MAX_STEPS を明示上書き可能。
|
||||
HAKO_VM_MAX_STEPS="${HAKO_VM_MAX_STEPS:-0}" NYASH_VM_MAX_STEPS="${NYASH_VM_MAX_STEPS:-0}" \
|
||||
NYASH_PARSER_STAGE3=1 HAKO_PARSER_STAGE3=1 NYASH_PARSER_ALLOW_SEMICOLON=1 \
|
||||
NYASH_FEATURES=stage3 NYASH_FEATURES=stage3 NYASH_PARSER_ALLOW_SEMICOLON=1 \
|
||||
NYASH_ENABLE_USING=1 HAKO_ENABLE_USING=1 HAKO_USING_RESOLVER_FIRST=1 \
|
||||
NYASH_AOT_COLLECTIONS_HOT=${NYASH_AOT_COLLECTIONS_HOT:-0} NYASH_LLVM_FAST=${NYASH_LLVM_FAST:-0} NYASH_MIR_LOOP_HOIST=${NYASH_MIR_LOOP_HOIST:-0} NYASH_AOT_MAP_KEY_MODE=${NYASH_AOT_MAP_KEY_MODE:-auto} \
|
||||
NYASH_AOT_NUMERIC_CORE=${NYASH_AOT_NUMERIC_CORE:-0} NYASH_AOT_NUMERIC_CORE_TRACE=${NYASH_AOT_NUMERIC_CORE_TRACE:-0} \
|
||||
@ -768,7 +768,7 @@ HCODE
|
||||
HAKO_MIR_BUILDER_DEBUG="${HAKO_MIR_BUILDER_DEBUG:-}" \
|
||||
NYASH_DISABLE_PLUGINS="${NYASH_DISABLE_PLUGINS:-0}" NYASH_FILEBOX_MODE="core-ro" HAKO_PROVIDER_POLICY="safe-core-first" \
|
||||
NYASH_ENABLE_USING=1 HAKO_ENABLE_USING=1 HAKO_USING_RESOLVER_FIRST=1 \
|
||||
NYASH_PARSER_STAGE3=1 HAKO_PARSER_STAGE3=1 NYASH_PARSER_ALLOW_SEMICOLON=1 \
|
||||
NYASH_FEATURES=stage3 NYASH_FEATURES=stage3 NYASH_PARSER_ALLOW_SEMICOLON=1 \
|
||||
NYASH_USE_NY_COMPILER=0 HAKO_USE_NY_COMPILER=0 NYASH_DISABLE_NY_COMPILER=1 HAKO_DISABLE_NY_COMPILER=1 \
|
||||
NYASH_MACRO_DISABLE=1 HAKO_MACRO_DISABLE=1 \
|
||||
# Builder 実行時は Step budget を既定で「無制限(0)」にしておく(大きな Program(JSON) でも上限で落とさない)。
|
||||
@ -892,7 +892,7 @@ HCODE
|
||||
set +e
|
||||
(cd "$ROOT" && \
|
||||
NYASH_DISABLE_PLUGINS="${NYASH_DISABLE_PLUGINS:-0}" NYASH_FILEBOX_MODE="core-ro" \
|
||||
NYASH_PARSER_STAGE3=1 HAKO_PARSER_STAGE3=1 NYASH_PARSER_ALLOW_SEMICOLON=1 \
|
||||
NYASH_FEATURES=stage3 NYASH_FEATURES=stage3 NYASH_PARSER_ALLOW_SEMICOLON=1 \
|
||||
HAKO_BUILDER_PROGRAM_JSON="$prog_json" \
|
||||
NYASH_ENABLE_USING=1 HAKO_ENABLE_USING=1 HAKO_USING_RESOLVER_FIRST=1 \
|
||||
"$NYASH_BIN" --backend vm "$tmp_hako" 2>"$tmp_stderr" | tee "$tmp_stdout" >/dev/null)
|
||||
@ -958,7 +958,7 @@ EOF
|
||||
set +e
|
||||
HAKO_PREP_INPUT="$(cat "$out_path")" \
|
||||
NYASH_FILEBOX_MODE=core-ro \
|
||||
NYASH_PARSER_STAGE3=1 HAKO_PARSER_STAGE3=1 NYASH_PARSER_ALLOW_SEMICOLON=1 \
|
||||
NYASH_FEATURES=stage3 NYASH_FEATURES=stage3 NYASH_PARSER_ALLOW_SEMICOLON=1 \
|
||||
NYASH_ENABLE_USING=1 HAKO_ENABLE_USING=1 HAKO_USING_RESOLVER_FIRST=1 \
|
||||
NYASH_AOT_COLLECTIONS_HOT=${NYASH_AOT_COLLECTIONS_HOT:-0} NYASH_LLVM_FAST=${NYASH_LLVM_FAST:-0} NYASH_MIR_LOOP_HOIST=${NYASH_MIR_LOOP_HOIST:-0} NYASH_AOT_MAP_KEY_MODE=${NYASH_AOT_MAP_KEY_MODE:-auto} \
|
||||
NYASH_AOT_NUMERIC_CORE=${NYASH_AOT_NUMERIC_CORE:-0} NYASH_AOT_NUMERIC_CORE_TRACE=${NYASH_AOT_NUMERIC_CORE_TRACE:-0} \
|
||||
|
||||
@ -22,8 +22,8 @@ echo ""
|
||||
# Route A: Traditional if_phi
|
||||
echo "=== Route A (if_phi) ==="
|
||||
HAKO_JOINIR_IF_SELECT=0 \
|
||||
NYASH_PARSER_STAGE3=1 \
|
||||
HAKO_PARSER_STAGE3=1 \
|
||||
NYASH_FEATURES=stage3 \
|
||||
NYASH_FEATURES=stage3 \
|
||||
./target/release/hakorune "$test_case" \
|
||||
> /tmp/route_a.out 2>&1
|
||||
route_a_rc=$?
|
||||
@ -35,8 +35,8 @@ echo "=== Route B (JoinIR) ==="
|
||||
HAKO_JOINIR_IF_SELECT=1 \
|
||||
HAKO_JOINIR_STAGE1=1 \
|
||||
HAKO_JOINIR_DEBUG=1 \
|
||||
NYASH_PARSER_STAGE3=1 \
|
||||
HAKO_PARSER_STAGE3=1 \
|
||||
NYASH_FEATURES=stage3 \
|
||||
NYASH_FEATURES=stage3 \
|
||||
./target/release/hakorune "$test_case" \
|
||||
> /tmp/route_b.out 2>&1
|
||||
route_b_rc=$?
|
||||
|
||||
@ -13,7 +13,7 @@
|
||||
# - nyash_binary: optional path to hakorune/nyash binary (default: target/release/hakorune or nyash).
|
||||
#
|
||||
# Notes:
|
||||
# - Forces Stage-3 parser ON for the child (NYASH_PARSER_STAGE3=1/HAKO_PARSER_STAGE3=1).
|
||||
# - Forces Stage-3 parser ON for the child (NYASH_FEATURES=stage3/NYASH_FEATURES=stage3).
|
||||
# - Enables using resolver with file-based using (dev profile) so that lang.compiler.* modules can be found.
|
||||
# - Does NOT perform Stage-0 prelude text merge or preexpand_at_local; it feeds the raw source to ParserBox.
|
||||
|
||||
@ -79,7 +79,7 @@ SRC_CONTENT="$(cat "$SRC")"
|
||||
|
||||
NYASH_INLINE_SRC="$SRC_CONTENT" \
|
||||
NYASH_JSON_ONLY=1 \
|
||||
NYASH_PARSER_STAGE3=1 HAKO_PARSER_STAGE3=1 NYASH_PARSER_ALLOW_SEMICOLON=1 \
|
||||
NYASH_FEATURES=stage3 NYASH_FEATURES=stage3 NYASH_PARSER_ALLOW_SEMICOLON=1 \
|
||||
NYASH_ENABLE_USING=1 HAKO_ENABLE_USING=1 \
|
||||
NYASH_ALLOW_USING_FILE=1 HAKO_ALLOW_USING_FILE=1 \
|
||||
"$BIN" --backend vm "$HARNESS"
|
||||
|
||||
@ -83,8 +83,8 @@ C_MED=$(printf "%s\n" "${C_SERIES}" | median_ms)
|
||||
# Minimal env for fast VM bring-up (bench profile)
|
||||
# - Disable dynamic plugins and nyash.toml env injection to avoid startup scans
|
||||
HAKO_ENV=(
|
||||
NYASH_PARSER_STAGE3=1
|
||||
HAKO_PARSER_STAGE3=1
|
||||
NYASH_FEATURES=stage3
|
||||
NYASH_FEATURES=stage3
|
||||
NYASH_PARSER_ALLOW_SEMICOLON=1
|
||||
NYASH_DISABLE_PLUGINS=1
|
||||
NYASH_SKIP_TOML_ENV=1
|
||||
|
||||
@ -64,7 +64,7 @@ record_one() {
|
||||
local hako_bin="${TARGET_DIR}/release/hakorune"
|
||||
local hako_prog="${ROOT_DIR}/benchmarks/bench_${key}.hako"
|
||||
if [[ -x "${hako_bin}" && -f "${hako_prog}" ]]; then
|
||||
local -a HAKO_ENV=(NYASH_PARSER_STAGE3=1 HAKO_PARSER_STAGE3=1 NYASH_PARSER_ALLOW_SEMICOLON=1)
|
||||
local -a HAKO_ENV=(NYASH_FEATURES=stage3 NYASH_FEATURES=stage3 NYASH_PARSER_ALLOW_SEMICOLON=1)
|
||||
local hako_series; hako_series=$(collect_series "${WARMUP}" "${REPEAT}" env "${HAKO_ENV[@]}" timeout 20s "${hako_bin}" --backend vm "${hako_prog}")
|
||||
ny_vm_ms=$(printf "%s\n" "${hako_series}" | median_ms)
|
||||
# Optional subtract: measure minimal VM startup (ret0)
|
||||
|
||||
@ -18,6 +18,6 @@ HCODE
|
||||
|
||||
NYASH_USING_PROFILE=dev NYASH_ENABLE_USING=1 HAKO_ENABLE_USING=1 \
|
||||
NYASH_DISABLE_NY_COMPILER=1 HAKO_DISABLE_NY_COMPILER=1 \
|
||||
NYASH_PARSER_STAGE3=1 HAKO_PARSER_STAGE3=1 NYASH_PARSER_ALLOW_SEMICOLON=1 \
|
||||
NYASH_FEATURES=stage3 NYASH_FEATURES=stage3 NYASH_PARSER_ALLOW_SEMICOLON=1 \
|
||||
run_nyash_vm -c "$code" 2>/dev/null | tr -d '\r'
|
||||
|
||||
|
||||
@ -16,5 +16,5 @@ HCODE
|
||||
)
|
||||
|
||||
NYASH_USING_AST=1 NYASH_DISABLE_NY_COMPILER=1 HAKO_DISABLE_NY_COMPILER=1 \
|
||||
NYASH_PARSER_STAGE3=1 HAKO_PARSER_STAGE3=1 NYASH_PARSER_ALLOW_SEMICOLON=1 \
|
||||
NYASH_FEATURES=stage3 NYASH_FEATURES=stage3 NYASH_PARSER_ALLOW_SEMICOLON=1 \
|
||||
NYASH_JSON_ONLY=1 run_nyash_vm -c "$code" 2>/dev/null | tr -d '\r'
|
||||
|
||||
@ -19,6 +19,6 @@ HCODE
|
||||
)
|
||||
|
||||
NYASH_USING_AST=1 NYASH_DISABLE_NY_COMPILER=1 HAKO_DISABLE_NY_COMPILER=1 \
|
||||
NYASH_PARSER_STAGE3=1 HAKO_PARSER_STAGE3=1 NYASH_PARSER_ALLOW_SEMICOLON=1 \
|
||||
NYASH_FEATURES=stage3 NYASH_FEATURES=stage3 NYASH_PARSER_ALLOW_SEMICOLON=1 \
|
||||
run_nyash_vm -c "$code" 2>/dev/null | tr -d '\r'
|
||||
|
||||
|
||||
@ -17,6 +17,6 @@ HCODE
|
||||
)
|
||||
|
||||
NYASH_USING_AST=1 NYASH_DISABLE_NY_COMPILER=1 HAKO_DISABLE_NY_COMPILER=1 \
|
||||
NYASH_PARSER_STAGE3=1 HAKO_PARSER_STAGE3=1 NYASH_PARSER_ALLOW_SEMICOLON=1 \
|
||||
NYASH_FEATURES=stage3 NYASH_FEATURES=stage3 NYASH_PARSER_ALLOW_SEMICOLON=1 \
|
||||
run_nyash_vm -c "$code" 2>/dev/null | tr -d '\r'
|
||||
|
||||
|
||||
@ -17,6 +17,6 @@ HCODE
|
||||
)
|
||||
|
||||
NYASH_USING_AST=1 NYASH_DISABLE_NY_COMPILER=1 HAKO_DISABLE_NY_COMPILER=1 \
|
||||
NYASH_PARSER_STAGE3=1 HAKO_PARSER_STAGE3=1 NYASH_PARSER_ALLOW_SEMICOLON=1 \
|
||||
NYASH_FEATURES=stage3 NYASH_FEATURES=stage3 NYASH_PARSER_ALLOW_SEMICOLON=1 \
|
||||
run_nyash_vm -c "$code" 2>/dev/null | tr -d '\r'
|
||||
|
||||
|
||||
@ -33,5 +33,5 @@ HCODE
|
||||
NYASH_PROGRAM_JSON="$prog_json" \
|
||||
NYASH_JSON_SCHEMA_V1=1 \
|
||||
NYASH_USING_AST=1 NYASH_DISABLE_NY_COMPILER=1 HAKO_DISABLE_NY_COMPILER=1 \
|
||||
NYASH_PARSER_STAGE3=1 HAKO_PARSER_STAGE3=1 NYASH_PARSER_ALLOW_SEMICOLON=1 \
|
||||
NYASH_FEATURES=stage3 NYASH_FEATURES=stage3 NYASH_PARSER_ALLOW_SEMICOLON=1 \
|
||||
run_nyash_vm -c "$code" 2>/dev/null | tr -d '\r'
|
||||
|
||||
@ -20,6 +20,6 @@ HCODE
|
||||
NYASH_PROGRAM_JSON="$prog_json" \
|
||||
NYASH_JSON_SCHEMA_V1=1 \
|
||||
NYASH_USING_AST=1 NYASH_DISABLE_NY_COMPILER=1 HAKO_DISABLE_NY_COMPILER=1 \
|
||||
NYASH_PARSER_STAGE3=1 HAKO_PARSER_STAGE3=1 NYASH_PARSER_ALLOW_SEMICOLON=1 \
|
||||
NYASH_FEATURES=stage3 NYASH_FEATURES=stage3 NYASH_PARSER_ALLOW_SEMICOLON=1 \
|
||||
run_nyash_vm -c "$code" 2>/dev/null | tr -d '\r'
|
||||
|
||||
|
||||
@ -18,5 +18,5 @@ HCODE
|
||||
|
||||
NYASH_USING_PROFILE=dev NYASH_ENABLE_USING=1 HAKO_ENABLE_USING=1 \
|
||||
NYASH_DISABLE_NY_COMPILER=1 HAKO_DISABLE_NY_COMPILER=1 \
|
||||
NYASH_PARSER_STAGE3=1 HAKO_PARSER_STAGE3=1 NYASH_PARSER_ALLOW_SEMICOLON=1 \
|
||||
NYASH_FEATURES=stage3 NYASH_FEATURES=stage3 NYASH_PARSER_ALLOW_SEMICOLON=1 \
|
||||
NYASH_JSON_ONLY=1 run_nyash_vm -c "$code" 2>/dev/null | tr -d '\r'
|
||||
|
||||
@ -38,7 +38,7 @@ sed -i '/using selfhost\.shared\.common\.entry_point_base/d' "$pref" 2>/dev/null
|
||||
|
||||
# できるだけ静かに実行して JSON のみを出力
|
||||
NYASH_ROOT="$ROOT" NYASH_ENTRY_ALLOW_TOPLEVEL_MAIN=1 \
|
||||
NYASH_PARSER_STAGE3=1 HAKO_PARSER_STAGE3=1 NYASH_PARSER_ALLOW_SEMICOLON=1 \
|
||||
NYASH_FEATURES=stage3 NYASH_FEATURES=stage3 NYASH_PARSER_ALLOW_SEMICOLON=1 \
|
||||
NYASH_DISABLE_NY_COMPILER=1 HAKO_DISABLE_NY_COMPILER=1 NYASH_USING_AST=0 \
|
||||
"$NYASH_BIN" --backend vm "$pref" 2>/dev/null | tr -d '\r'
|
||||
rm -f "$tmp" "$pref" 2>/dev/null || true
|
||||
|
||||
@ -17,7 +17,7 @@ echo "[selfhost-smoke] Step 1: Emit JSON via selfhost compiler (lang/, optional)
|
||||
OUT_JSON="/tmp/nyash_selfhost_out.json"
|
||||
set -x
|
||||
# Use lang side entry (Stage‑B). Emission is optional; failure does not fail the smoke.
|
||||
if NYASH_ENABLE_USING=1 NYASH_ALLOW_USING_FILE=1 NYASH_USING_AST=1 NYASH_PARSER_STAGE3=1 \
|
||||
if NYASH_ENABLE_USING=1 NYASH_ALLOW_USING_FILE=1 NYASH_USING_AST=1 NYASH_FEATURES=stage3 \
|
||||
"${NY_BIN}" --backend vm "${ROOT_DIR}/lang/src/compiler/entry/compiler_stageb.hako" -- --source 'box Main { static method main() { return 0 } }' > "${OUT_JSON}" 2>/dev/null; then
|
||||
:
|
||||
else
|
||||
|
||||
Reference in New Issue
Block a user