// Global helper JIT smoke: avoid static box method resolution // Build plugin: // (cd plugins/nyash-array-plugin && cargo build --release) // Run: // NYASH_USE_PLUGIN_BUILTINS=1 NYASH_JIT_EXEC=1 NYASH_JIT_THRESHOLD=1 \ // NYASH_JIT_SHIM_TRACE=1 NYASH_CLI_VERBOSE=1 \ // ./target/release/nyash --backend vm examples/jit_plugin_invoke_global_helper.hako helper(arr) { // JIT target: plugin_invoke on parameter only return arr.length() } main() { local a, debug debug = new DebugBox() debug.tracePluginCalls(true) a = new ArrayBox() a.push(1) a.push(2) a.push(3) // Call global helper (should become a distinct MIR function) print(helper(a)) // Dump recent JIT shim events print(debug.getJitEvents()) }