Define control flow instructions.

Rename 'br' to 'jump'. We'll use jump/br to mean unconditional/conditional
control transfer respectively.
This commit is contained in:
Jakob Stoklund Olesen
2016-05-18 16:28:21 -07:00
parent 27a311701d
commit b06f5ef72f
10 changed files with 244 additions and 79 deletions

View File

@@ -9,7 +9,7 @@ in this module.
from . import InstructionFormat, value, variable_args
from immediates import imm64, ieee32, ieee64, immvector
from entities import function
from entities import ebb, function, jump_table
Nullary = InstructionFormat()
@@ -23,6 +23,10 @@ Binary = InstructionFormat(value, value)
BinaryImm = InstructionFormat(value, imm64)
BinaryImmRev = InstructionFormat(imm64, value)
Jump = InstructionFormat(ebb, variable_args)
Branch = InstructionFormat(value, ebb, variable_args)
BranchTable = InstructionFormat(value, jump_table)
Call = InstructionFormat(function, variable_args, multiple_results=True)
# Finally extract the names of global variables in this module.