diff --git a/src/bootstrap/src/core/build_steps/test.rs b/src/bootstrap/src/core/build_steps/test.rs index 248d831b6e3..47b0637538b 100644 --- a/src/bootstrap/src/core/build_steps/test.rs +++ b/src/bootstrap/src/core/build_steps/test.rs @@ -1657,8 +1657,8 @@ fn run(self, builder: &Builder<'_>) { // ensure that `libproc_macro` is available on the host. builder.ensure(compile::Std::new(compiler, compiler.host)); - // As well as the target, except for plain wasm32, which can't build it - if suite != "mir-opt" && !target.contains("wasm") && !target.contains("emscripten") { + // As well as the target + if suite != "mir-opt" { builder.ensure(TestHelpers { target }); } @@ -2511,16 +2511,7 @@ fn prepare_cargo_test( dylib_path.insert(0, PathBuf::from(&*builder.sysroot_libdir(compiler, target))); cargo.env(dylib_path_var(), env::join_paths(&dylib_path).unwrap()); - if target.contains("emscripten") { - cargo.env( - format!("CARGO_TARGET_{}_RUNNER", envify(&target.triple)), - builder.config.nodejs.as_ref().expect("nodejs not configured"), - ); - } else if target.starts_with("wasm32") { - let node = builder.config.nodejs.as_ref().expect("nodejs not configured"); - let runner = format!("{} {}/src/etc/wasm32-shim.js", node.display(), builder.src.display()); - cargo.env(format!("CARGO_TARGET_{}_RUNNER", envify(&target.triple)), &runner); - } else if builder.remote_tested(target) { + if builder.remote_tested(target) { cargo.env( format!("CARGO_TARGET_{}_RUNNER", envify(&target.triple)), format!("{} run 0", builder.tool_exe(Tool::RemoteTestClient).display()), diff --git a/src/etc/wasm32-shim.js b/src/etc/wasm32-shim.js deleted file mode 100644 index 262a53eabe3..00000000000 --- a/src/etc/wasm32-shim.js +++ /dev/null @@ -1,24 +0,0 @@ -// This is a small "shim" program which is used when wasm32 unit tests are run -// in this repository. This program is intended to be run in node.js and will -// load a wasm module into memory, instantiate it with a set of imports, and -// then run it. -// -// There's a bunch of helper functions defined here in `imports.env`, but note -// that most of them aren't actually needed to execute most programs. Many of -// these are just intended for completeness or debugging. Hopefully over time -// nothing here is needed for completeness. - -const fs = require('fs'); -const process = require('process'); -const buffer = fs.readFileSync(process.argv[2]); - -Error.stackTraceLimit = 20; - -let m = new WebAssembly.Module(buffer); -let instance = new WebAssembly.Instance(m, {}); -try { - instance.exports.main(); -} catch (e) { - console.error(e); - process.exit(101); -} diff --git a/src/tools/compiletest/src/runtest.rs b/src/tools/compiletest/src/runtest.rs index 9fd83c507ed..3e0021bf7c6 100644 --- a/src/tools/compiletest/src/runtest.rs +++ b/src/tools/compiletest/src/runtest.rs @@ -2632,9 +2632,7 @@ fn make_exe_name(&self) -> PathBuf { // double the length. let mut f = self.output_base_dir().join("a"); // FIXME: This is using the host architecture exe suffix, not target! - if self.config.target.contains("emscripten") { - f = f.with_extra_extension("js"); - } else if self.config.target.contains("wasm32") { + if self.config.target.starts_with("wasm") { f = f.with_extra_extension("wasm"); } else if self.config.target.contains("spirv") { f = f.with_extra_extension("spv"); @@ -2649,32 +2647,6 @@ fn make_run_args(&self) -> ProcArgs { // then split apart its command let mut args = self.split_maybe_args(&self.config.runner); - // If this is emscripten, then run tests under nodejs - if self.config.target.contains("emscripten") { - if let Some(ref p) = self.config.nodejs { - args.push(p.into()); - } else { - self.fatal("emscripten target requested and no NodeJS binary found (--nodejs)"); - } - // If this is otherwise wasm, then run tests under nodejs with our - // shim - } else if self.config.target.contains("wasm32") { - if let Some(ref p) = self.config.nodejs { - args.push(p.into()); - } else { - self.fatal("wasm32 target requested and no NodeJS binary found (--nodejs)"); - } - - let src = self - .config - .src_base - .parent() - .unwrap() // chop off `ui` - .parent() - .unwrap(); // chop off `tests` - args.push(src.join("src/etc/wasm32-shim.js").into_os_string()); - } - let exe_file = self.make_exe_name(); args.push(exe_file.into_os_string());