mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-07-25 13:24:46 +00:00
[weak vtables] Remove a bunch of weak vtables
This patch removes most of the trivial cases of weak vtables by pinning them to a single object file. Differential Revision: http://llvm-reviews.chandlerc.com/D2068 Reviewed by Andy git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@194865 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
@@ -105,6 +105,7 @@ private:
|
||||
|
||||
/// @brief Abstract base class for all Nodes.
|
||||
class Node {
|
||||
virtual void anchor();
|
||||
public:
|
||||
enum NodeKind {
|
||||
NK_Null,
|
||||
@@ -175,6 +176,7 @@ private:
|
||||
/// Example:
|
||||
/// !!null null
|
||||
class NullNode : public Node {
|
||||
virtual void anchor();
|
||||
public:
|
||||
NullNode(OwningPtr<Document> &D)
|
||||
: Node(NK_Null, D, StringRef(), StringRef()) {}
|
||||
@@ -190,6 +192,7 @@ public:
|
||||
/// Example:
|
||||
/// Adena
|
||||
class ScalarNode : public Node {
|
||||
virtual void anchor();
|
||||
public:
|
||||
ScalarNode(OwningPtr<Document> &D, StringRef Anchor, StringRef Tag,
|
||||
StringRef Val)
|
||||
@@ -231,6 +234,7 @@ private:
|
||||
/// Example:
|
||||
/// Section: .text
|
||||
class KeyValueNode : public Node {
|
||||
virtual void anchor();
|
||||
public:
|
||||
KeyValueNode(OwningPtr<Document> &D)
|
||||
: Node(NK_KeyValue, D, StringRef(), StringRef())
|
||||
@@ -342,6 +346,7 @@ void skip(CollectionType &C) {
|
||||
/// Name: _main
|
||||
/// Scope: Global
|
||||
class MappingNode : public Node {
|
||||
virtual void anchor();
|
||||
public:
|
||||
enum MappingType {
|
||||
MT_Block,
|
||||
@@ -391,6 +396,7 @@ private:
|
||||
/// - Hello
|
||||
/// - World
|
||||
class SequenceNode : public Node {
|
||||
virtual void anchor();
|
||||
public:
|
||||
enum SequenceType {
|
||||
ST_Block,
|
||||
@@ -446,6 +452,7 @@ private:
|
||||
/// Example:
|
||||
/// *AnchorName
|
||||
class AliasNode : public Node {
|
||||
virtual void anchor();
|
||||
public:
|
||||
AliasNode(OwningPtr<Document> &D, StringRef Val)
|
||||
: Node(NK_Alias, D, StringRef(), StringRef()), Name(Val) {}
|
||||
|
Reference in New Issue
Block a user