aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--include/llvm/CodeGen/Passes.h6
-rw-r--r--lib/CodeGen/CMakeLists.txt2
-rw-r--r--lib/CodeGen/CodePlacementOpt.cpp (renamed from lib/CodeGen/LoopAligner.cpp)24
-rw-r--r--lib/CodeGen/LLVMTargetMachine.cpp2
4 files changed, 19 insertions, 15 deletions
diff --git a/include/llvm/CodeGen/Passes.h b/include/llvm/CodeGen/Passes.h
index faf9831952..ff80dbacd6 100644
--- a/include/llvm/CodeGen/Passes.h
+++ b/include/llvm/CodeGen/Passes.h
@@ -146,9 +146,9 @@ namespace llvm {
/// IfConverter Pass - This pass performs machine code if conversion.
FunctionPass *createIfConverterPass();
- /// LoopAligner Pass - This pass aligns loop headers to target specific
- /// alignment boundary.
- FunctionPass *createLoopAlignerPass();
+ /// Code Placement Pass - This pass optimize code placement and aligns loop
+ /// headers to target specific alignment boundary.
+ FunctionPass *createCodePlacementOptPass();
/// DebugLabelFoldingPass - This pass prunes out redundant debug labels. This
/// allows a debug emitter to determine if the range of two labels is empty,
diff --git a/lib/CodeGen/CMakeLists.txt b/lib/CodeGen/CMakeLists.txt
index bf8c153a32..2cae80f321 100644
--- a/lib/CodeGen/CMakeLists.txt
+++ b/lib/CodeGen/CMakeLists.txt
@@ -1,5 +1,6 @@
add_llvm_library(LLVMCodeGen
BranchFolding.cpp
+ CodePlacementOpt.cpp
DeadMachineInstructionElim.cpp
ELFWriter.cpp
GCMetadata.cpp
@@ -13,7 +14,6 @@ add_llvm_library(LLVMCodeGen
LiveIntervalAnalysis.cpp
LiveStackAnalysis.cpp
LiveVariables.cpp
- LoopAligner.cpp
LowerSubregs.cpp
MachOWriter.cpp
MachineBasicBlock.cpp
diff --git a/lib/CodeGen/LoopAligner.cpp b/lib/CodeGen/CodePlacementOpt.cpp
index b67f5c3bf9..54121afefd 100644
--- a/lib/CodeGen/LoopAligner.cpp
+++ b/lib/CodeGen/CodePlacementOpt.cpp
@@ -1,4 +1,4 @@
-//===-- LoopAligner.cpp - Loop aligner pass. ------------------------------===//
+//===-- CodePlacementOpt.cpp - Code Placement pass. -----------------------===//
//
// The LLVM Compiler Infrastructure
//
@@ -7,12 +7,12 @@
//
//===----------------------------------------------------------------------===//
//
-// This file implements the pass that align loop headers to target specific
-// alignment boundary.
+// This file implements the pass that optimize code placement and align loop
+// headers to target specific alignment boundary.
//
//===----------------------------------------------------------------------===//
-#define DEBUG_TYPE "loopalign"
+#define DEBUG_TYPE "code-placement"
#include "llvm/CodeGen/MachineLoopInfo.h"
#include "llvm/CodeGen/MachineFunctionPass.h"
#include "llvm/CodeGen/Passes.h"
@@ -23,13 +23,15 @@
using namespace llvm;
namespace {
- class LoopAligner : public MachineFunctionPass {
+ class CodePlacementOpt : public MachineFunctionPass {
public:
static char ID;
- LoopAligner() : MachineFunctionPass(&ID) {}
+ CodePlacementOpt() : MachineFunctionPass(&ID) {}
virtual bool runOnMachineFunction(MachineFunction &MF);
- virtual const char *getPassName() const { return "Loop aligner"; }
+ virtual const char *getPassName() const {
+ return "Code Placement Optimizater";
+ }
virtual void getAnalysisUsage(AnalysisUsage &AU) const {
AU.addRequired<MachineLoopInfo>();
@@ -39,12 +41,14 @@ namespace {
}
};
- char LoopAligner::ID = 0;
+ char CodePlacementOpt::ID = 0;
} // end anonymous namespace
-FunctionPass *llvm::createLoopAlignerPass() { return new LoopAligner(); }
+FunctionPass *llvm::createCodePlacementOptPass() {
+ return new CodePlacementOpt();
+}
-bool LoopAligner::runOnMachineFunction(MachineFunction &MF) {
+bool CodePlacementOpt::runOnMachineFunction(MachineFunction &MF) {
const MachineLoopInfo *MLI = &getAnalysis<MachineLoopInfo>();
if (MLI->empty())
diff --git a/lib/CodeGen/LLVMTargetMachine.cpp b/lib/CodeGen/LLVMTargetMachine.cpp
index b4a0bc2b7a..c93ecdab47 100644
--- a/lib/CodeGen/LLVMTargetMachine.cpp
+++ b/lib/CodeGen/LLVMTargetMachine.cpp
@@ -70,7 +70,7 @@ LLVMTargetMachine::addPassesToEmitFile(PassManagerBase &PM,
PM.add(createMachineFunctionPrinterPass(cerr));
if (OptLevel != CodeGenOpt::None)
- PM.add(createLoopAlignerPass());
+ PM.add(createCodePlacementOptPass());
switch (FileType) {
default: