36 lines
1.2 KiB
Bash
36 lines
1.2 KiB
Bash
|
|
#!/bin/bash
|
||
|
|
# Phase 10.10 Smoke Test - Minimal verification for key features
|
||
|
|
# Usage: ./tools/smoke_phase_10_10.sh
|
||
|
|
|
||
|
|
set -e
|
||
|
|
|
||
|
|
echo "=== Phase 10.10 Smoke Test ==="
|
||
|
|
echo
|
||
|
|
|
||
|
|
# 1. Build with Cranelift
|
||
|
|
echo "1) Building with Cranelift JIT..."
|
||
|
|
cargo build --release -j32 --features cranelift-jit 2>&1 | head -5
|
||
|
|
echo "✓ Build complete"
|
||
|
|
echo
|
||
|
|
|
||
|
|
# 2. HH direct execution (Map.get_hh)
|
||
|
|
echo "2) Testing HH direct execution..."
|
||
|
|
NYASH_JIT_EXEC=1 NYASH_JIT_THRESHOLD=1 NYASH_JIT_HOSTCALL=1 NYASH_JIT_EVENTS=1 \
|
||
|
|
./target/release/nyash --backend vm examples/jit_map_get_param_hh.nyash 2>&1 | head -10 | grep -E "(allow id:|value1|Result:)"
|
||
|
|
echo "✓ HH execution verified"
|
||
|
|
echo
|
||
|
|
|
||
|
|
# 3. Mutating opt-in (JitPolicyBox)
|
||
|
|
echo "3) Testing mutating opt-in policy..."
|
||
|
|
NYASH_JIT_EXEC=1 NYASH_JIT_THRESHOLD=1 NYASH_JIT_HOSTCALL=1 NYASH_JIT_EVENTS=1 \
|
||
|
|
./target/release/nyash --backend vm examples/jit_policy_optin_mutating.nyash 2>&1 | head -15 | grep -E "(policy_denied_mutating|allow id:|Result:)"
|
||
|
|
echo "✓ Policy opt-in verified"
|
||
|
|
echo
|
||
|
|
|
||
|
|
# 4. CountingGC demo
|
||
|
|
echo "4) Testing CountingGC..."
|
||
|
|
./target/release/nyash --backend vm examples/gc_counting_demo.nyash 2>&1 | head -10 | grep -E "(GC stats:|allocations:|write barriers:)"
|
||
|
|
echo "✓ CountingGC verified"
|
||
|
|
echo
|
||
|
|
|
||
|
|
echo "=== All smoke tests passed! ==="
|