mirror of
https://github.com/RPCS3/llvm.git
synced 2025-01-23 19:17:17 +00:00
[TableGen] Move a couple virtual methods out of line so vtable anchors can be removed. NFC
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@238727 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
f15cab13cb
commit
dd2a26fccb
@ -139,7 +139,6 @@ class StringRecTy : public RecTy {
|
||||
static StringRecTy Shared;
|
||||
StringRecTy() : RecTy(StringRecTyKind) {}
|
||||
|
||||
virtual void anchor();
|
||||
public:
|
||||
static bool classof(const RecTy *RT) {
|
||||
return RT->getRecTyKind() == StringRecTyKind;
|
||||
@ -147,7 +146,7 @@ public:
|
||||
|
||||
static StringRecTy *get() { return &Shared; }
|
||||
|
||||
std::string getAsString() const override { return "string"; }
|
||||
std::string getAsString() const override;
|
||||
};
|
||||
|
||||
/// ListRecTy - 'list<Ty>' - Represent a list of values, all of which must be of
|
||||
@ -177,7 +176,6 @@ class DagRecTy : public RecTy {
|
||||
static DagRecTy Shared;
|
||||
DagRecTy() : RecTy(DagRecTyKind) {}
|
||||
|
||||
virtual void anchor();
|
||||
public:
|
||||
static bool classof(const RecTy *RT) {
|
||||
return RT->getRecTyKind() == DagRecTyKind;
|
||||
@ -185,7 +183,7 @@ public:
|
||||
|
||||
static DagRecTy *get() { return &Shared; }
|
||||
|
||||
std::string getAsString() const override { return "dag"; }
|
||||
std::string getAsString() const override;
|
||||
};
|
||||
|
||||
/// RecordRecTy - '[classname]' - Represent an instance of a class, such as:
|
||||
|
@ -88,9 +88,6 @@ DagRecTy DagRecTy::Shared;
|
||||
|
||||
void RecTy::dump() const { print(errs()); }
|
||||
|
||||
void StringRecTy::anchor() { }
|
||||
void DagRecTy::anchor() { }
|
||||
|
||||
ListRecTy *RecTy::getListTy() {
|
||||
if (!ListTy)
|
||||
ListTy.reset(new ListRecTy(this));
|
||||
@ -136,6 +133,9 @@ bool IntRecTy::typeIsConvertibleTo(const RecTy *RHS) const {
|
||||
return kind==BitRecTyKind || kind==BitsRecTyKind || kind==IntRecTyKind;
|
||||
}
|
||||
|
||||
std::string StringRecTy::getAsString() const {
|
||||
return "string";
|
||||
}
|
||||
|
||||
std::string ListRecTy::getAsString() const {
|
||||
return "list<" + Ty->getAsString() + ">";
|
||||
@ -147,6 +147,10 @@ bool ListRecTy::typeIsConvertibleTo(const RecTy *RHS) const {
|
||||
return false;
|
||||
}
|
||||
|
||||
std::string DagRecTy::getAsString() const {
|
||||
return "dag";
|
||||
}
|
||||
|
||||
RecordRecTy *RecordRecTy::get(Record *R) {
|
||||
return dyn_cast<RecordRecTy>(R->getDefInit()->getType());
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user