Add a verifier check that ghost instructions don't have encodings.

This commit is contained in:
Dan Gohman
2018-11-06 10:38:29 -08:00
committed by Benjamin Bouvier
parent 88bbbca6cd
commit 26da67b394

View File

@@ -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,