mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-08-07 12:28:24 +00:00
Really minor cleanups
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3549 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
@@ -2,24 +2,19 @@
|
|||||||
//
|
//
|
||||||
// This pass is designed to be a very quick global transformation that
|
// This pass is designed to be a very quick global transformation that
|
||||||
// eliminates global common subexpressions from a function. It does this by
|
// eliminates global common subexpressions from a function. It does this by
|
||||||
// examining the SSA value graph of the function, instead of doing slow, dense,
|
// using an existing value numbering implementation to identify the common
|
||||||
// bit-vector computations.
|
// subexpressions, eliminating them when possible.
|
||||||
//
|
//
|
||||||
//===----------------------------------------------------------------------===//
|
//===----------------------------------------------------------------------===//
|
||||||
|
|
||||||
#include "llvm/Transforms/Scalar.h"
|
#include "llvm/Transforms/Scalar.h"
|
||||||
#include "llvm/InstrTypes.h"
|
|
||||||
#include "llvm/iMemory.h"
|
#include "llvm/iMemory.h"
|
||||||
|
#include "llvm/Type.h"
|
||||||
#include "llvm/Analysis/Dominators.h"
|
#include "llvm/Analysis/Dominators.h"
|
||||||
#include "llvm/Analysis/ValueNumbering.h"
|
#include "llvm/Analysis/ValueNumbering.h"
|
||||||
#include "llvm/Support/InstIterator.h"
|
#include "llvm/Support/InstIterator.h"
|
||||||
#include "llvm/Support/CFG.h"
|
|
||||||
#include "llvm/Type.h"
|
|
||||||
#include "Support/StatisticReporter.h"
|
#include "Support/StatisticReporter.h"
|
||||||
#include <algorithm>
|
#include <algorithm>
|
||||||
using std::set;
|
|
||||||
using std::map;
|
|
||||||
|
|
||||||
|
|
||||||
namespace {
|
namespace {
|
||||||
Statistic<> NumInstRemoved("gcse\t\t- Number of instructions removed");
|
Statistic<> NumInstRemoved("gcse\t\t- Number of instructions removed");
|
||||||
@@ -28,7 +23,7 @@ namespace {
|
|||||||
"to non-instruction values");
|
"to non-instruction values");
|
||||||
|
|
||||||
class GCSE : public FunctionPass {
|
class GCSE : public FunctionPass {
|
||||||
set<Instruction*> WorkList;
|
std::set<Instruction*> WorkList;
|
||||||
DominatorSet *DomSetInfo;
|
DominatorSet *DomSetInfo;
|
||||||
#if 0
|
#if 0
|
||||||
ImmediateDominators *ImmDominator;
|
ImmediateDominators *ImmDominator;
|
||||||
|
Reference in New Issue
Block a user