Module &M = CG.getModule();
+ for (Module::iterator I = M.begin(), E = M.end();
+ I != E; ++I)
+ if (!I->isDeclaration() && I->getNotes() == FN_NOTE_NoInline)
+ NeverInline.insert(I);
+
// Get llvm.noinline
GlobalVariable *GV = M.getNamedGlobal("llvm.noinline");
bool AlwaysInline = false;
if (Fn && (Fn->getNotes() & FN_NOTE_AlwaysInline))
AlwaysInline = true;
- if (Fn && (Fn->getNotes() & FN_NOTE_NoInline))
- DOUT << "NOT Inlining: inline=never is set" << *CS.getInstruction();
- else if (!AlwaysInline
- && InlineCost >= (int)(InlineThreshold * FudgeFactor)) {
+ if (!AlwaysInline
+ && InlineCost >= (int)(InlineThreshold * FudgeFactor)) {
DOUT << " NOT Inlining: cost=" << InlineCost
<< ", Call: " << *CS.getInstruction();
} else {