1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-24 11:42:57 +01:00

Add SDTCisPtrTy and use it for loads, to indicate that the operand of a load

must be a pointer.  This removes a type check out of the code generated by
tblgen for load matching.

llvm-svn: 24650
This commit is contained in:
Chris Lattner 2005-12-09 22:58:42 +00:00
parent aaec1f6faa
commit ee29c75c65

View File

@ -24,15 +24,17 @@ class SDTypeConstraint<int opnum> {
}
// SDTCisVT - The specified operand has exactly this VT.
class SDTCisVT <int OpNum, ValueType vt> : SDTypeConstraint<OpNum> {
class SDTCisVT<int OpNum, ValueType vt> : SDTypeConstraint<OpNum> {
ValueType VT = vt;
}
class SDTCisPtrTy<int OpNum> : SDTypeConstraint<OpNum>;
// SDTCisInt - The specified operand is has integer type.
class SDTCisInt<int OpNum> : SDTypeConstraint<OpNum>;
// SDTCisFP - The specified operand is has floating point type.
class SDTCisFP <int OpNum> : SDTypeConstraint<OpNum>;
class SDTCisFP<int OpNum> : SDTypeConstraint<OpNum>;
// SDTCisSameAs - The two specified operands have identical types.
class SDTCisSameAs<int OpNum, int OtherOp> : SDTypeConstraint<OpNum> {
@ -132,7 +134,7 @@ def SDTWritePort : SDTypeProfile<0, 2, [ // writeport
]>;
def SDTLoad : SDTypeProfile<1, 1, [ // load
SDTCisInt<1>
SDTCisPtrTy<1>
]>;
//===----------------------------------------------------------------------===//