mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-07-25 13:24:46 +00:00
Unweaken vtables as per http://llvm.org/docs/CodingStandards.html#ll_virtual_anch
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@146960 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
@@ -153,6 +153,7 @@ namespace llvm {
|
||||
|
||||
/// DIScope - A base class for various scopes.
|
||||
class DIScope : public DIDescriptor {
|
||||
virtual void anchor();
|
||||
public:
|
||||
explicit DIScope(const MDNode *N = 0) : DIDescriptor (N) {}
|
||||
virtual ~DIScope() {}
|
||||
@@ -163,6 +164,7 @@ namespace llvm {
|
||||
|
||||
/// DICompileUnit - A wrapper for a compile unit.
|
||||
class DICompileUnit : public DIScope {
|
||||
virtual void anchor();
|
||||
public:
|
||||
explicit DICompileUnit(const MDNode *N = 0) : DIScope(N) {}
|
||||
|
||||
@@ -202,6 +204,7 @@ namespace llvm {
|
||||
|
||||
/// DIFile - This is a wrapper for a file.
|
||||
class DIFile : public DIScope {
|
||||
virtual void anchor();
|
||||
public:
|
||||
explicit DIFile(const MDNode *N = 0) : DIScope(N) {
|
||||
if (DbgNode && !isFile())
|
||||
@@ -230,7 +233,7 @@ namespace llvm {
|
||||
/// FIXME: Types should be factored much better so that CV qualifiers and
|
||||
/// others do not require a huge and empty descriptor full of zeros.
|
||||
class DIType : public DIScope {
|
||||
public:
|
||||
virtual void anchor();
|
||||
protected:
|
||||
// This ctor is used when the Tag has already been validated by a derived
|
||||
// ctor.
|
||||
@@ -240,7 +243,6 @@ namespace llvm {
|
||||
|
||||
/// Verify - Verify that a type descriptor is well formed.
|
||||
bool Verify() const;
|
||||
public:
|
||||
explicit DIType(const MDNode *N);
|
||||
explicit DIType() {}
|
||||
virtual ~DIType() {}
|
||||
@@ -320,6 +322,7 @@ namespace llvm {
|
||||
|
||||
/// DIBasicType - A basic type, like 'int' or 'float'.
|
||||
class DIBasicType : public DIType {
|
||||
virtual void anchor();
|
||||
public:
|
||||
explicit DIBasicType(const MDNode *N = 0) : DIType(N) {}
|
||||
|
||||
@@ -338,6 +341,7 @@ namespace llvm {
|
||||
/// DIDerivedType - A simple derived type, like a const qualified type,
|
||||
/// a typedef, a pointer or reference, etc.
|
||||
class DIDerivedType : public DIType {
|
||||
virtual void anchor();
|
||||
protected:
|
||||
explicit DIDerivedType(const MDNode *N, bool, bool)
|
||||
: DIType(N, true, true) {}
|
||||
@@ -391,6 +395,7 @@ namespace llvm {
|
||||
/// other types, like a function or struct.
|
||||
/// FIXME: Why is this a DIDerivedType??
|
||||
class DICompositeType : public DIDerivedType {
|
||||
virtual void anchor();
|
||||
public:
|
||||
explicit DICompositeType(const MDNode *N = 0)
|
||||
: DIDerivedType(N, true, true) {
|
||||
@@ -454,6 +459,7 @@ namespace llvm {
|
||||
|
||||
/// DISubprogram - This is a wrapper for a subprogram (e.g. a function).
|
||||
class DISubprogram : public DIScope {
|
||||
virtual void anchor();
|
||||
public:
|
||||
explicit DISubprogram(const MDNode *N = 0) : DIScope(N) {}
|
||||
|
||||
@@ -687,6 +693,7 @@ namespace llvm {
|
||||
|
||||
/// DILexicalBlock - This is a wrapper for a lexical block.
|
||||
class DILexicalBlock : public DIScope {
|
||||
virtual void anchor();
|
||||
public:
|
||||
explicit DILexicalBlock(const MDNode *N = 0) : DIScope(N) {}
|
||||
DIScope getContext() const { return getFieldAs<DIScope>(1); }
|
||||
@@ -705,6 +712,7 @@ namespace llvm {
|
||||
/// DILexicalBlockFile - This is a wrapper for a lexical block with
|
||||
/// a filename change.
|
||||
class DILexicalBlockFile : public DIScope {
|
||||
virtual void anchor();
|
||||
public:
|
||||
explicit DILexicalBlockFile(const MDNode *N = 0) : DIScope(N) {}
|
||||
DIScope getContext() const { return getScope().getContext(); }
|
||||
@@ -724,6 +732,7 @@ namespace llvm {
|
||||
|
||||
/// DINameSpace - A wrapper for a C++ style name space.
|
||||
class DINameSpace : public DIScope {
|
||||
virtual void anchor();
|
||||
public:
|
||||
explicit DINameSpace(const MDNode *N = 0) : DIScope(N) {}
|
||||
DIScope getContext() const { return getFieldAs<DIScope>(1); }
|
||||
|
Reference in New Issue
Block a user