From 26da67b39461c8f88f27819c158ef80820fe3519 Mon Sep 17 00:00:00 2001 From: Dan Gohman Date: Tue, 6 Nov 2018 10:38:29 -0800 Subject: [PATCH] Add a verifier check that ghost instructions don't have encodings. --- lib/codegen/src/verifier/mod.rs | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/lib/codegen/src/verifier/mod.rs b/lib/codegen/src/verifier/mod.rs index 6fedcc5af2..31a7dfc029 100644 --- a/lib/codegen/src/verifier/mod.rs +++ b/lib/codegen/src/verifier/mod.rs @@ -1550,6 +1550,15 @@ impl<'a> Verifier<'a> { let encoding = self.func.encodings[inst]; if encoding.is_legal() { + if self.func.dfg[inst].opcode().is_ghost() { + return nonfatal!( + errors, + inst, + "Ghost instruction has an encoding: {}", + isa.encoding_info().display(encoding) + ); + } + let mut encodings = isa .legal_encodings( &self.func,