#include "llvm/Support/InstVisitor.h"
#include "llvm/Support/MathExtras.h"
#include "llvm/Support/PatternMatch.h"
+#include "llvm/Support/Visibility.h"
#include "llvm/ADT/Statistic.h"
#include "llvm/ADT/STLExtras.h"
#include <algorithm>
Statistic<> NumDeadStore("instcombine", "Number of dead stores eliminated");
Statistic<> NumSunkInst ("instcombine", "Number of instructions sunk");
- class InstCombiner : public FunctionPass,
- public InstVisitor<InstCombiner, Instruction*> {
+ class VISIBILITY_HIDDEN InstCombiner
+ : public FunctionPass,
+ public InstVisitor<InstCombiner, Instruction*> {
// Worklist of all of the instructions that need to be simplified.
std::vector<Instruction*> WorkList;
TargetData *TD;
#include "llvm/Instructions.h"
#include "llvm/Module.h"
#include "llvm/Pass.h"
+#include "llvm/Support/Visibility.h"
using namespace llvm;
namespace {
- class LowerGC : public FunctionPass {
+ class VISIBILITY_HIDDEN LowerGC : public FunctionPass {
/// GCRootInt, GCReadInt, GCWriteInt - The function prototypes for the
/// llvm.gcread/llvm.gcwrite/llvm.gcroot intrinsics.
Function *GCRootInt, *GCReadInt, *GCWriteInt;
#include "llvm/Transforms/Utils/Local.h"
#include "llvm/ADT/Statistic.h"
#include "llvm/Support/CommandLine.h"
+#include "llvm/Support/Visibility.h"
#include <csetjmp>
using namespace llvm;
cl::opt<bool> ExpensiveEHSupport("enable-correct-eh-support",
cl::desc("Make the -lowerinvoke pass insert expensive, but correct, EH code"));
- class LowerInvoke : public FunctionPass {
+ class VISIBILITY_HIDDEN LowerInvoke : public FunctionPass {
// Used for both models.
Function *WriteFn;
Function *AbortFn;
#include "llvm/Instructions.h"
#include "llvm/Pass.h"
#include "llvm/Support/Debug.h"
+#include "llvm/Support/Visibility.h"
#include "llvm/ADT/Statistic.h"
#include <algorithm>
#include <iostream>
/// LowerSwitch Pass - Replace all SwitchInst instructions with chained branch
/// instructions. Note that this cannot be a BasicBlock pass because it
/// modifies the CFG!
- class LowerSwitch : public FunctionPass {
+ class VISIBILITY_HIDDEN LowerSwitch : public FunctionPass {
public:
virtual bool runOnFunction(Function &F);
#include "llvm/Function.h"
#include "llvm/Target/TargetData.h"
#include "llvm/ADT/Statistic.h"
+#include "llvm/Support/Visibility.h"
using namespace llvm;
namespace {
Statistic<> NumPromoted("mem2reg", "Number of alloca's promoted");
- struct PromotePass : public FunctionPass {
+ struct VISIBILITY_HIDDEN PromotePass : public FunctionPass {
// runOnFunction - To run this pass, first we calculate the alloca
// instructions that are safe for promotion, then we promote each one.
//