[PATCH] D16124: Add to the split module utility an SCC based method which allows not to globalize any local variables.

Mehdi Amini via llvm-commits llvm-commits at lists.llvm.org
Tue Jan 12 15:48:08 PST 2016


This looks like a good motivation to me :)

I’d rename them just like we do for ThinLTO, but I’m not sure what you mean by "our customers might rely on presence of specific symbols”, this is only for external symbol right?

— 
Mehdi


> On Jan 12, 2016, at 3:45 PM, Sergei Larin via llvm-commits <llvm-commits at lists.llvm.org> wrote:
> 
> Mehdi,
> 
>  I think Tobias beat me to the answer - at the least we can have linker errors if we try to blindly globalize locals with identical names. Renaming them will not always work either, since our customers might rely on presence of specific symbols in the final image... There are also other reasons for that, but correctness of at least some corner cases seems like a hard justification on its own :-) 
> 
> Welcome to the embedded world :) :) :)
> 
> Sergei
> 
> ---
> Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum, hosted by The Linux Foundation
> 
> 
>> -----Original Message-----
>> From: Mehdi AMINI [mailto:mehdi.amini at apple.com]
>> Sent: Tuesday, January 12, 2016 4:29 PM
>> To: slarin at codeaurora.org; peter at pcc.me.uk
>> Cc: mehdi_amini at apple.com; tobias at codeaurora.org; llvm-
>> commits at lists.llvm.org
>> Subject: Re: [PATCH] D16124: Add to the split module utility an SCC based
>> method which allows not to globalize any local variables.
>> 
>> joker.eph added a comment.
>> 
>> What is the issue with the current globalization? You mentioned that it
>> "might not be desirable in some scenarios", can you elaborate?
>> 
>> 
>> ================
>> Comment at: include/llvm/CodeGen/ParallelCG.h:41
>> @@ +40,3 @@
>> +        SplitFunction,
>> +    Reloc::Model RM = Reloc::Default, CodeModel::Model CM =
>> CodeModel::Default,
>> +    CodeGenOpt::Level OL = CodeGenOpt::Default,
>> ----------------
>> The added argument would probably benefit some documentation.
>> 
>> 
>> http://reviews.llvm.org/D16124
>> 
>> 
> 
> 
> _______________________________________________
> llvm-commits mailing list
> llvm-commits at lists.llvm.org
> http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-commits



More information about the llvm-commits mailing list