Add ImmediateType for declaring immediate operands.
This commit is contained in:
@@ -110,3 +110,23 @@ class TypeVar(object):
|
||||
def __init__(self, name):
|
||||
self.name = name
|
||||
|
||||
#
|
||||
# Immediate operands.
|
||||
#
|
||||
# Instances of immediate operand types are provided in the cretonne.immediates
|
||||
# module.
|
||||
|
||||
class ImmediateType(object):
|
||||
"""
|
||||
The type of an immediate instruction operand.
|
||||
"""
|
||||
|
||||
def __init__(self, name, doc):
|
||||
self.name = name
|
||||
self.__doc__ = doc
|
||||
|
||||
def __str__(self):
|
||||
return self.name
|
||||
|
||||
def __repr__(self):
|
||||
return 'ImmediateType({})'.format(self.name)
|
||||
|
||||
12
meta/cretonne/immediates.py
Normal file
12
meta/cretonne/immediates.py
Normal file
@@ -0,0 +1,12 @@
|
||||
"""
|
||||
The cretonne.immdiates module predefines all the Cretonne immediate operand
|
||||
types.
|
||||
"""
|
||||
|
||||
from . import ImmediateType
|
||||
|
||||
#: A 64-bit immediate integer operand.
|
||||
#:
|
||||
#: This type of immediate integer can interact with SSA values with any
|
||||
#: :py:class:`cretonne.IntType` type.
|
||||
imm64 = ImmediateType('imm64', 'A 64-bit immediate integer.')
|
||||
Reference in New Issue
Block a user