Add a BinaryOverflow instruction format.

This will eventualy be used for add-with-carry and add-with-overflow type
instructions. For now it only serves as a representative of instruction formats
that have multiple_results=True and boxed_storage=False at the same time.
This commit is contained in:
Jakob Stoklund Olesen
2016-05-19 10:43:14 -07:00
parent 2ce5f05bed
commit 210139c4bd
4 changed files with 22 additions and 1 deletions

View File

@@ -657,6 +657,17 @@ impl<'a> Parser<'a> {
rhs: rhs,
}
}
InstructionFormat::BinaryOverflow => {
let lhs = try!(self.match_value("expected SSA value first operand"));
try!(self.match_token(Token::Comma, "expected ',' between operands"));
let rhs = try!(self.match_value("expected SSA value second operand"));
InstructionData::BinaryOverflow {
opcode: opcode,
ty: VOID,
second_result: NO_VALUE,
args: [lhs, rhs],
}
}
InstructionFormat::Jump |
InstructionFormat::Branch |
InstructionFormat::BranchTable |