projects
/
oota-llvm.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Remove the 'N' modifier from llvm-ar.
[oota-llvm.git]
/
utils
/
TableGen
/
DAGISelMatcher.h
diff --git
a/utils/TableGen/DAGISelMatcher.h
b/utils/TableGen/DAGISelMatcher.h
index dcb8da71086eef0dbeb56de5b1b763c97db4a3a6..f978188aae596922b4e4908348bf8fd958ccaa2f 100644
(file)
--- a/
utils/TableGen/DAGISelMatcher.h
+++ b/
utils/TableGen/DAGISelMatcher.h
@@
-10,10
+10,10
@@
#ifndef TBLGEN_DAGISELMATCHER_H
#define TBLGEN_DAGISELMATCHER_H
#ifndef TBLGEN_DAGISELMATCHER_H
#define TBLGEN_DAGISELMATCHER_H
-#include "llvm/CodeGen/ValueTypes.h"
#include "llvm/ADT/OwningPtr.h"
#include "llvm/ADT/OwningPtr.h"
-#include "llvm/ADT/StringRef.h"
#include "llvm/ADT/SmallVector.h"
#include "llvm/ADT/SmallVector.h"
+#include "llvm/ADT/StringRef.h"
+#include "llvm/CodeGen/ValueTypes.h"
#include "llvm/Support/Casting.h"
namespace llvm {
#include "llvm/Support/Casting.h"
namespace llvm {
@@
-35,12
+35,13
@@
void EmitMatcherTable(const Matcher *Matcher, const CodeGenDAGPatterns &CGP,
raw_ostream &OS);
raw_ostream &OS);
-/// Matcher - Base class for all the
the
DAG ISel Matcher representation
+/// Matcher - Base class for all the DAG ISel Matcher representation
/// nodes.
class Matcher {
// The next matcher node that is executed after this one. Null if this is the
// last stage of a match.
OwningPtr<Matcher> Next;
/// nodes.
class Matcher {
// The next matcher node that is executed after this one. Null if this is the
// last stage of a match.
OwningPtr<Matcher> Next;
+ virtual void anchor();
public:
enum KindTy {
// Matcher state manipulation.
public:
enum KindTy {
// Matcher state manipulation.
@@
-98,8
+99,6
@@
public:
OwningPtr<Matcher> &getNextPtr() { return Next; }
OwningPtr<Matcher> &getNextPtr() { return Next; }
- static inline bool classof(const Matcher *) { return true; }
-
bool isEqual(const Matcher *M) const {
if (getKind() != M->getKind()) return false;
return isEqualImpl(M);
bool isEqual(const Matcher *M) const {
if (getKind() != M->getKind()) return false;
return isEqualImpl(M);
@@
-1011,6
+1010,7
@@
private:
/// EmitNodeMatcher - This signals a successful match and generates a node.
class EmitNodeMatcher : public EmitNodeMatcherCommon {
/// EmitNodeMatcher - This signals a successful match and generates a node.
class EmitNodeMatcher : public EmitNodeMatcherCommon {
+ virtual void anchor();
unsigned FirstResultSlot;
public:
EmitNodeMatcher(const std::string &opcodeName,
unsigned FirstResultSlot;
public:
EmitNodeMatcher(const std::string &opcodeName,
@@
-1033,6
+1033,7
@@
public:
};
class MorphNodeToMatcher : public EmitNodeMatcherCommon {
};
class MorphNodeToMatcher : public EmitNodeMatcherCommon {
+ virtual void anchor();
const PatternToMatch &Pattern;
public:
MorphNodeToMatcher(const std::string &opcodeName,
const PatternToMatch &Pattern;
public:
MorphNodeToMatcher(const std::string &opcodeName,