[llvm] r223521 - Remove dead code. We are only lazy about functions with bodies.

Michael Ilseman milseman at apple.com
Mon Dec 8 16:32:23 PST 2014


Rafael, this broke an internal test case. I’m trying to diagnose the problem and I'm also seeing if I can make an external test case. In the mean time, since this is just “dead code" is it ok if I temporarily revert this? 


> On Dec 5, 2014, at 1:36 PM, Rafael Espindola <rafael.espindola at gmail.com> wrote:
> 
> Author: rafael
> Date: Fri Dec  5 15:36:06 2014
> New Revision: 223521
> 
> URL: http://llvm.org/viewvc/llvm-project?rev=223521&view=rev
> Log:
> Remove dead code. We are only lazy about functions with bodies.
> 
> Modified:
>    llvm/trunk/lib/Linker/LinkModules.cpp
> 
> Modified: llvm/trunk/lib/Linker/LinkModules.cpp
> URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Linker/LinkModules.cpp?rev=223521&r1=223520&r2=223521&view=diff
> ==============================================================================
> --- llvm/trunk/lib/Linker/LinkModules.cpp (original)
> +++ llvm/trunk/lib/Linker/LinkModules.cpp Fri Dec  5 15:36:06 2014
> @@ -1518,9 +1518,6 @@ bool ModuleLinker::run() {
>     Function *SF = LazilyLinkFunctions.back();
>     LazilyLinkFunctions.pop_back();
> 
> -    if (!SF)
> -      continue;
> -
>     Function *DF = cast<Function>(ValueMap[SF]);
>     if (SF->hasPrefixData()) {
>       // Link in the prefix data.
> @@ -1532,11 +1529,8 @@ bool ModuleLinker::run() {
>     if (std::error_code EC = SF->materialize())
>       return emitError(EC.message());
> 
> -    // Skip if no body (function is external).
> -    if (SF->isDeclaration())
> -      continue;
> -
>     // Link in function body.
> +    assert(!SF->isDeclaration());
>     linkFunctionBody(DF, SF);
>     SF->Dematerialize();
>   }
> 
> 
> _______________________________________________
> llvm-commits mailing list
> llvm-commits at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits





More information about the llvm-commits mailing list