mirror of
https://github.com/RPCS3/llvm.git
synced 2024-12-03 09:21:02 +00:00
eliminate the last use of EEVT::isUnknown
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98918 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
765028f97b
commit
aac5b5b2e5
@ -25,8 +25,6 @@ using namespace llvm;
|
||||
// EEVT::TypeSet Implementation
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
// FIXME: Remove EEVT::isUnknown!
|
||||
|
||||
static inline bool isInteger(MVT::SimpleValueType VT) {
|
||||
return EVT(VT).isInteger();
|
||||
}
|
||||
@ -97,7 +95,7 @@ bool EEVT::TypeSet::hasVectorTypes() const {
|
||||
|
||||
|
||||
std::string EEVT::TypeSet::getName() const {
|
||||
if (TypeVec.empty()) return "isUnknown";
|
||||
if (TypeVec.empty()) return "<empty>";
|
||||
|
||||
std::string Result;
|
||||
|
||||
@ -678,8 +676,8 @@ SDNodeInfo::SDNodeInfo(Record *R) : Def(R) {
|
||||
|
||||
/// getKnownType - If the type constraints on this node imply a fixed type
|
||||
/// (e.g. all stores return void, etc), then return it as an
|
||||
/// MVT::SimpleValueType. Otherwise, return EEVT::isUnknown.
|
||||
unsigned SDNodeInfo::getKnownType() const {
|
||||
/// MVT::SimpleValueType. Otherwise, return EEVT::Other.
|
||||
MVT::SimpleValueType SDNodeInfo::getKnownType() const {
|
||||
unsigned NumResults = getNumResults();
|
||||
assert(NumResults <= 1 &&
|
||||
"We only work with nodes with zero or one result so far!");
|
||||
@ -697,7 +695,7 @@ unsigned SDNodeInfo::getKnownType() const {
|
||||
return MVT::iPTR;
|
||||
}
|
||||
}
|
||||
return EEVT::isUnknown;
|
||||
return MVT::Other;
|
||||
}
|
||||
|
||||
//===----------------------------------------------------------------------===//
|
||||
@ -1185,7 +1183,6 @@ bool TreePatternNode::ApplyTypeConstraints(TreePattern &TP, bool NotRegisters) {
|
||||
MadeChange |= UpdateNodeType(getChild(0)->getExtType(), TP);
|
||||
MadeChange |= getChild(0)->UpdateNodeType(getExtType(), TP);
|
||||
}
|
||||
|
||||
|
||||
unsigned ChildNo = 0;
|
||||
for (unsigned i = 0, e = Inst.getNumOperands(); i != e; ++i) {
|
||||
|
@ -41,11 +41,6 @@ namespace llvm {
|
||||
/// arbitrary integer, floating-point, and vector types, so only an unknown
|
||||
/// value is needed.
|
||||
namespace EEVT {
|
||||
enum DAGISelGenValueType {
|
||||
// FIXME: Remove EEVT::isUnknown!
|
||||
isUnknown = MVT::LAST_VALUETYPE
|
||||
};
|
||||
|
||||
/// TypeSet - This is either empty if it's completely unknown, or holds a set
|
||||
/// of types. It is used during type inference because register classes can
|
||||
/// have multiple possible types and we don't know which one they get until
|
||||
@ -212,8 +207,8 @@ public:
|
||||
|
||||
/// getKnownType - If the type constraints on this node imply a fixed type
|
||||
/// (e.g. all stores return void, etc), then return it as an
|
||||
/// MVT::SimpleValueType. Otherwise, return EEVT::isUnknown.
|
||||
unsigned getKnownType() const;
|
||||
/// MVT::SimpleValueType. Otherwise, return MVT::Other.
|
||||
MVT::SimpleValueType getKnownType() const;
|
||||
|
||||
/// hasProperty - Return true if this node has the specified property.
|
||||
///
|
||||
|
@ -357,14 +357,13 @@ bool CheckOpcodeMatcher::isContradictoryImpl(const Matcher *M) const {
|
||||
// ISD::STORE will never be true at the same time a check for Type i32 is.
|
||||
if (const CheckTypeMatcher *CT = dyn_cast<CheckTypeMatcher>(M)) {
|
||||
// FIXME: What result is this referring to?
|
||||
unsigned NodeType;
|
||||
MVT::SimpleValueType NodeType;
|
||||
if (getOpcode().getNumResults() == 0)
|
||||
NodeType = MVT::isVoid;
|
||||
else
|
||||
NodeType = getOpcode().getKnownType();
|
||||
if (NodeType != EEVT::isUnknown)
|
||||
return TypesAreContradictory((MVT::SimpleValueType)NodeType,
|
||||
CT->getType());
|
||||
if (NodeType != MVT::Other)
|
||||
return TypesAreContradictory(NodeType, CT->getType());
|
||||
}
|
||||
|
||||
return false;
|
||||
|
Loading…
Reference in New Issue
Block a user