about summary refs log tree commit diff
path: root/src/test/run-make-fulldeps/hotplug_codegen_backend
diff options
context:
space:
mode:
authorAlbert Larsan <74931857+albertlarsan68@users.noreply.github.com>2023-01-05 09:13:28 +0100
committerAlbert Larsan <74931857+albertlarsan68@users.noreply.github.com>2023-01-11 09:32:08 +0000
commitcf2dff2b1e3fa55fa5415d524200070d0d7aacfe (patch)
tree40a88d9a46aaf3e8870676eb2538378b75a263eb /src/test/run-make-fulldeps/hotplug_codegen_backend
parentca855e6e42787ecd062d81d53336fe6788ef51a9 (diff)
downloadrust-cf2dff2b1e3fa55fa5415d524200070d0d7aacfe.tar.gz
rust-cf2dff2b1e3fa55fa5415d524200070d0d7aacfe.zip
Move /src/test to /tests
Diffstat (limited to 'src/test/run-make-fulldeps/hotplug_codegen_backend')
-rw-r--r--src/test/run-make-fulldeps/hotplug_codegen_backend/Makefile26
-rw-r--r--src/test/run-make-fulldeps/hotplug_codegen_backend/some_crate.rs2
-rw-r--r--src/test/run-make-fulldeps/hotplug_codegen_backend/the_backend.rs82
3 files changed, 0 insertions, 110 deletions
diff --git a/src/test/run-make-fulldeps/hotplug_codegen_backend/Makefile b/src/test/run-make-fulldeps/hotplug_codegen_backend/Makefile
deleted file mode 100644
index 4cda243ffb5..00000000000
--- a/src/test/run-make-fulldeps/hotplug_codegen_backend/Makefile
+++ /dev/null
@@ -1,26 +0,0 @@
-include ../tools.mk
-
-# ignore-stage1
-
-# This test both exists as a check that -Zcodegen-backend is capable of loading external codegen
-# backends and that this external codegen backend is only included in the dep info if
-# -Zbinary-dep-depinfo is used.
-
-all:
-	/bin/echo || exit 0 # This test requires /bin/echo to exist
-	$(RUSTC) the_backend.rs --crate-name the_backend --crate-type dylib \
-		-o $(TMPDIR)/the_backend.dylib
-
-	$(RUSTC) some_crate.rs --crate-name some_crate --crate-type lib -o $(TMPDIR)/some_crate \
-		-Z codegen-backend=$(TMPDIR)/the_backend.dylib -Z unstable-options \
-		--emit link,dep-info
-	grep -x "This has been \"compiled\" successfully." $(TMPDIR)/libsome_crate.rlib
-	# don't declare a dependency on the codegen backend if -Zbinary-dep-depinfo isn't used.
-	grep -v "the_backend.dylib" $(TMPDIR)/some_crate.d
-	
-	$(RUSTC) some_crate.rs --crate-name some_crate --crate-type lib -o $(TMPDIR)/some_crate \
-		-Z codegen-backend=$(TMPDIR)/the_backend.dylib -Z unstable-options \
-		--emit link,dep-info -Zbinary-dep-depinfo
-	grep -x "This has been \"compiled\" successfully." $(TMPDIR)/libsome_crate.rlib
-	# but declare a dependency on the codegen backend if -Zbinary-dep-depinfo it used.
-	grep "the_backend.dylib" $(TMPDIR)/some_crate.d
diff --git a/src/test/run-make-fulldeps/hotplug_codegen_backend/some_crate.rs b/src/test/run-make-fulldeps/hotplug_codegen_backend/some_crate.rs
deleted file mode 100644
index da27b7f3463..00000000000
--- a/src/test/run-make-fulldeps/hotplug_codegen_backend/some_crate.rs
+++ /dev/null
@@ -1,2 +0,0 @@
-#![feature(no_core)]
-#![no_core]
diff --git a/src/test/run-make-fulldeps/hotplug_codegen_backend/the_backend.rs b/src/test/run-make-fulldeps/hotplug_codegen_backend/the_backend.rs
deleted file mode 100644
index 3aa57d58908..00000000000
--- a/src/test/run-make-fulldeps/hotplug_codegen_backend/the_backend.rs
+++ /dev/null
@@ -1,82 +0,0 @@
-#![feature(rustc_private)]
-#![deny(warnings)]
-
-extern crate rustc_codegen_ssa;
-extern crate rustc_data_structures;
-extern crate rustc_driver;
-extern crate rustc_errors;
-extern crate rustc_hir;
-extern crate rustc_metadata;
-extern crate rustc_middle;
-extern crate rustc_session;
-extern crate rustc_span;
-extern crate rustc_symbol_mangling;
-extern crate rustc_target;
-
-use rustc_codegen_ssa::traits::CodegenBackend;
-use rustc_codegen_ssa::{CodegenResults, CrateInfo};
-use rustc_data_structures::fx::FxHashMap;
-use rustc_errors::ErrorGuaranteed;
-use rustc_metadata::EncodedMetadata;
-use rustc_middle::dep_graph::{WorkProduct, WorkProductId};
-use rustc_middle::ty::TyCtxt;
-use rustc_session::config::OutputFilenames;
-use rustc_session::Session;
-use std::any::Any;
-
-struct TheBackend;
-
-impl CodegenBackend for TheBackend {
-    fn codegen_crate<'a, 'tcx>(
-        &self,
-        tcx: TyCtxt<'tcx>,
-        metadata: EncodedMetadata,
-        _need_metadata_module: bool,
-    ) -> Box<dyn Any> {
-        Box::new(CodegenResults {
-            modules: vec![],
-            allocator_module: None,
-            metadata_module: None,
-            metadata,
-            crate_info: CrateInfo::new(tcx, "fake_target_cpu".to_string()),
-        })
-    }
-
-    fn join_codegen(
-        &self,
-        ongoing_codegen: Box<dyn Any>,
-        _sess: &Session,
-        _outputs: &OutputFilenames,
-    ) -> Result<(CodegenResults, FxHashMap<WorkProductId, WorkProduct>), ErrorGuaranteed> {
-        let codegen_results = ongoing_codegen
-            .downcast::<CodegenResults>()
-            .expect("in join_codegen: ongoing_codegen is not a CodegenResults");
-        Ok((*codegen_results, FxHashMap::default()))
-    }
-
-    fn link(
-        &self,
-        sess: &Session,
-        codegen_results: CodegenResults,
-        outputs: &OutputFilenames,
-    ) -> Result<(), ErrorGuaranteed> {
-        use rustc_session::{config::CrateType, output::out_filename};
-        use std::io::Write;
-        let crate_name = codegen_results.crate_info.local_crate_name;
-        for &crate_type in sess.opts.crate_types.iter() {
-            if crate_type != CrateType::Rlib {
-                sess.fatal(&format!("Crate type is {:?}", crate_type));
-            }
-            let output_name = out_filename(sess, crate_type, &outputs, crate_name);
-            let mut out_file = ::std::fs::File::create(output_name).unwrap();
-            write!(out_file, "This has been \"compiled\" successfully.").unwrap();
-        }
-        Ok(())
-    }
-}
-
-/// This is the entrypoint for a hot plugged rustc_codegen_llvm
-#[no_mangle]
-pub fn __rustc_codegen_backend() -> Box<dyn CodegenBackend> {
-    Box::new(TheBackend)
-}