Use hidden visibility to reduce codesize

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@28974 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Chris Lattner 2006-06-28 22:57:00 +00:00
parent f8c68f694c
commit 9ef7e06cce
2 changed files with 6 additions and 4 deletions

View File

@ -17,6 +17,7 @@
#include "llvm/Type.h"
#include "llvm/Support/CFG.h"
#include "llvm/Support/LeakDetector.h"
#include "llvm/Support/Visibility.h"
#include "SymbolTableListTraitsImpl.h"
#include <algorithm>
using namespace llvm;
@ -24,7 +25,7 @@ using namespace llvm;
namespace {
/// DummyInst - An instance of this class is used to mark the end of the
/// instruction list. This is not a real instruction.
struct DummyInst : public Instruction {
struct VISIBILITY_HIDDEN DummyInst : public Instruction {
DummyInst() : Instruction(Type::VoidTy, OtherOpsEnd, 0, 0) {
// This should not be garbage monitored.
LeakDetector::removeGarbageObject(this);

View File

@ -12,6 +12,7 @@
//===----------------------------------------------------------------------===//
#include "llvm/Support/LeakDetector.h"
#include "llvm/Support/Visibility.h"
#include "llvm/Value.h"
#include <iostream>
#include <set>
@ -19,17 +20,17 @@ using namespace llvm;
namespace {
template <class T>
struct PrinterTrait {
struct VISIBILITY_HIDDEN PrinterTrait {
static void print(const T* P) { std::cerr << P; }
};
template<>
struct PrinterTrait<Value> {
struct VISIBILITY_HIDDEN PrinterTrait<Value> {
static void print(const Value* P) { std::cerr << *P; }
};
template <typename T>
struct LeakDetectorImpl {
struct VISIBILITY_HIDDEN LeakDetectorImpl {
LeakDetectorImpl(const char* const name) : Cache(0), Name(name) { }
// Because the most common usage pattern, by far, is to add a