probinson added a comment. In https://reviews.llvm.org/D28404#641757, @chandlerc wrote:
> % ag OptimizeNone lib/Transforms/IPO > lib/Transforms/IPO/ForceFunctionAttrs.cpp > 47: .Case("optnone", Attribute::OptimizeNone) This is implementing a debugging option, not skipping a pass. > lib/Transforms/IPO/Inliner.cpp > 813: if (F.hasFnAttribute(Attribute::OptimizeNone)) This is declining to operate on a callee, not skipping a pass. Given that optnone is supposed to be paired with noinline, wouldn't this be redundant? > lib/Transforms/IPO/InferFunctionAttrs.cpp > 30: if (F.isDeclaration() && > !F.hasFnAttribute((Attribute::OptimizeNone))) > > lib/Transforms/IPO/FunctionAttrs.cpp > 1056: if (F.hasFnAttribute(Attribute::OptimizeNone)) { > 1137: if (!F || F->hasFnAttribute(Attribute::OptimizeNone)) { This is SCC stuff, which I don't really understand what it is trying to do. I wonder whether 'noinline' ought to be the relevant attribute, though. https://reviews.llvm.org/D28404 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits