[LLVMdev] [RFC] Embedding command line options in bitcode (PR21471)
Akira Hatanaka
ahatanak at gmail.com
Fri Nov 14 17:59:34 PST 2014
On Fri, Nov 14, 2014 at 5:04 PM, Eric Christopher <echristo at gmail.com>
wrote:
>
>> a) How does this change the pass manager? Some of the command line
>> options (many) change which passes are run when. It should be as simple as
>> checking the function attribute for each pass to decide when to run, but if
>> one invokes a chain then you might have other issues or if the command line
>> option invokes module/cgscc passes (see c below).
>>
>>
>
> Relatedly you might want to look at all of the flags passed via
> -backend-args, i.e. -enable-global-merge=false as a good first step for
> things that will need to be handled this way. I.e. some optimization
> options could be turned off because of known code problems with those
> function (similarly opt levels etc).
>
> Honestly not sure how important this use is though. LTO + different
> optimization options for each module/function? Weird. But it's something to
> keep in mind I guess.
>
>
>From what I heard and read, there seems to be cases where different
functions in a module require different optimization options. But for now,
I'm going to assume that we can handle most cases by just checking the
function attribute to decide whether or not to run a pass.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20141114/e25b958b/attachment.html>
More information about the llvm-dev
mailing list