Track stack slot kinds.

Add a StackSlotKind enumeration to help keep track of the different
kinds of stack slots supported:

- Incoming and outgoing function arguments on the stack.
- Spill slots and locals.

Change the text format syntax for declaring a stack slot to use a kind
keyword rather than just 'stack_slot'.
This commit is contained in:
Jakob Stoklund Olesen
2017-06-16 10:35:01 -07:00
parent db62f435f8
commit 7b97933996
9 changed files with 110 additions and 38 deletions

View File

@@ -223,7 +223,7 @@ mod tests {
#[test]
fn details() {
let tf = parse_test("function %detail() {
ss10 = stack_slot 13
ss10 = incoming_arg 13
jt10 = jump_table ebb0
ebb0(v4: i32, v7: i32):
v10 = iadd v4, v7