mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-09-07 16:54:48 +00:00
Assorted comment/naming fixes, 80-col violations, and reindentation.
- No functionality change. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@58352 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
b493b2774c
commit
f184c66e71
@ -11,8 +11,8 @@
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
#ifndef INLINECOST_H
|
||||
#define INLINECOST_H
|
||||
#ifndef LLVM_TRANSFORMS_UTILS_INLINECOST_H
|
||||
#define LLVM_TRANSFORMS_UTILS_INLINECOST_H
|
||||
|
||||
#include "llvm/ADT/SmallPtrSet.h"
|
||||
#include <map>
|
||||
@ -46,7 +46,7 @@ namespace llvm {
|
||||
/// is used to estimate the code size cost of inlining it.
|
||||
unsigned NumInsts, NumBlocks;
|
||||
|
||||
/// NumVectorInsts - Keep track how many instrctions produce vector
|
||||
/// NumVectorInsts - Keep track of how many instructions produce vector
|
||||
/// values. The inliner is being more aggressive with inlining vector
|
||||
/// kernels.
|
||||
unsigned NumVectorInsts;
|
||||
|
@ -51,14 +51,13 @@ namespace {
|
||||
|
||||
char AlwaysInliner::ID = 0;
|
||||
static RegisterPass<AlwaysInliner>
|
||||
X("always-inline", "Inliner that handles always_inline functions");
|
||||
X("always-inline", "Inliner for always_inline functions");
|
||||
|
||||
Pass *llvm::createAlwaysInlinerPass() { return new AlwaysInliner(); }
|
||||
|
||||
// doInitialization - Initializes the vector of functions that have not
|
||||
// been annotated with the "always inline" attribute.
|
||||
bool AlwaysInliner::doInitialization(CallGraph &CG) {
|
||||
|
||||
Module &M = CG.getModule();
|
||||
|
||||
for (Module::iterator I = M.begin(), E = M.end();
|
||||
@ -68,4 +67,3 @@ bool AlwaysInliner::doInitialization(CallGraph &CG) {
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
|
@ -28,7 +28,7 @@ using namespace llvm;
|
||||
|
||||
static cl::opt<unsigned>
|
||||
BasicInlineThreshold("inline-threshold", cl::Hidden, cl::init(200),
|
||||
cl::desc("Control the amount of basic inlining to perform (default = 200)"));
|
||||
cl::desc("Control the amount of basic inlining to perform (default = 200)"));
|
||||
|
||||
namespace llvm {
|
||||
|
||||
@ -95,22 +95,23 @@ void BasicInlinerImpl::inlineFunctions() {
|
||||
bool Changed = false;
|
||||
do {
|
||||
Changed = false;
|
||||
for (unsigned index = 0; index != CallSites.size() && !CallSites.empty(); ++index) {
|
||||
for (unsigned index = 0; index != CallSites.size() && !CallSites.empty();
|
||||
++index) {
|
||||
CallSite CS = CallSites[index];
|
||||
if (Function *Callee = CS.getCalledFunction()) {
|
||||
|
||||
// Eliminate calls taht are never inlinable.
|
||||
// Eliminate calls that are never inlinable.
|
||||
if (Callee->isDeclaration() ||
|
||||
CS.getInstruction()->getParent()->getParent() == Callee) {
|
||||
CallSites.erase(CallSites.begin() + index);
|
||||
--index;
|
||||
continue;
|
||||
--index;
|
||||
continue;
|
||||
}
|
||||
int InlineCost = CA.getInlineCost(CS, NeverInline);
|
||||
if (InlineCost >= (int) BasicInlineThreshold) {
|
||||
DOUT << " NOT Inlining: cost = " << InlineCost
|
||||
<< ", call: " << *CS.getInstruction();
|
||||
continue;
|
||||
DOUT << " NOT Inlining: cost = " << InlineCost
|
||||
<< ", call: " << *CS.getInstruction();
|
||||
continue;
|
||||
}
|
||||
|
||||
DOUT << " Inlining: cost=" << InlineCost
|
||||
@ -119,7 +120,7 @@ void BasicInlinerImpl::inlineFunctions() {
|
||||
// Inline
|
||||
if (InlineFunction(CS, NULL, TD)) {
|
||||
if (Callee->use_empty() && Callee->hasInternalLinkage())
|
||||
DeadFunctions.insert(Callee);
|
||||
DeadFunctions.insert(Callee);
|
||||
Changed = true;
|
||||
CallSites.erase(CallSites.begin() + index);
|
||||
--index;
|
||||
|
Loading…
Reference in New Issue
Block a user