Remove the vconst instruction and the UnaryImmVector format.

No instruction sets actually have single instructions for materializing
vector constants. You always need to use a constant pool.

Cretonne doesn't have constant pools yet, but it will in the future, and
that is how vector constants should be represented.
This commit is contained in:
Jakob Stoklund Olesen
2017-03-10 11:57:49 -08:00
parent 60daf3e76b
commit 6021da8e1c
9 changed files with 5 additions and 56 deletions

View File

@@ -9,7 +9,7 @@ from cdsl.operands import Operand, VARIABLE_ARGS
from cdsl.typevar import TypeVar
from cdsl.instructions import Instruction, InstructionGroup
from base.types import i8, f32, f64, b1
from base.immediates import imm64, uimm8, ieee32, ieee64, immvector
from base.immediates import imm64, uimm8, ieee32, ieee64
from base.immediates import intcc, floatcc
from base import entities
import base.formats # noqa
@@ -196,16 +196,6 @@ f64const = Instruction(
""",
ins=N, outs=a)
N = Operand('N', immvector)
a = Operand('a', TxN, doc='A constant vector value')
vconst = Instruction(
'vconst', r"""
Vector constant (floating point or integer).
Create a SIMD vector value where the lanes don't have to be identical.
""",
ins=N, outs=a)
#
# Generics.
#