Add FuncRef and SigRef entity references.
These refer to external functions and function signatures declared in the preamble. Since we're already using the type names 'Signature' and 'Function', these entity references don't folow the usual EntityData / Entity naming convention.
This commit is contained in:
@@ -18,11 +18,11 @@ stack_slot = EntityRefKind('stack_slot', 'A stack slot.')
|
||||
|
||||
#: A reference to a function sugnature declared in the function preamble.
|
||||
#: Tbis is used to provide the call signature in an indirect call instruction.
|
||||
signature = EntityRefKind('signature', 'A function signature.')
|
||||
sig_ref = EntityRefKind('sig_ref', 'A function signature.')
|
||||
|
||||
#: A reference to an external function declared in the function preamble.
|
||||
#: This is used to provide the callee and signature in a call instruction.
|
||||
function = EntityRefKind('function', 'An external function.')
|
||||
func_ref = EntityRefKind('func_ref', 'An external function.')
|
||||
|
||||
#: A reference to a jump table declared in the function preamble.
|
||||
jump_table = EntityRefKind(
|
||||
|
||||
@@ -8,7 +8,7 @@ in this module.
|
||||
from __future__ import absolute_import
|
||||
from . import InstructionFormat, value, variable_args
|
||||
from .immediates import imm64, uimm8, ieee32, ieee64, immvector, intcc, floatcc
|
||||
from .entities import ebb, function, jump_table
|
||||
from .entities import ebb, func_ref, jump_table
|
||||
|
||||
Nullary = InstructionFormat()
|
||||
|
||||
@@ -46,7 +46,7 @@ Branch = InstructionFormat(value, ebb, variable_args, boxed_storage=True)
|
||||
BranchTable = InstructionFormat(value, jump_table)
|
||||
|
||||
Call = InstructionFormat(
|
||||
function, variable_args, multiple_results=True, boxed_storage=True)
|
||||
func_ref, variable_args, multiple_results=True, boxed_storage=True)
|
||||
Return = InstructionFormat(variable_args, boxed_storage=True)
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user