[LLVMdev] -Os

Eric Christopher echristo at gmail.com
Sat Feb 23 11:02:09 PST 2013


There's nominally an Oz option to go for "minimum size".

-eric


On Sat, Feb 23, 2013 at 10:54 AM, Reed Kotler <rkotler at mips.com> wrote:

> At one of the BOFS during the llvm conference a few years back, one of the
> Apple managers stated in effect that their view of -Os was to get some
> modest savings but only if performance has near 0 impact.
>
>
> On 02/23/2013 09:45 AM, Reed Kotler wrote:
>
>> On 02/23/2013 04:28 AM, David Chisnall wrote:
>>
>>> Hi Reed,
>>>
>>> -Os could do with some love.  It is more or less the same set of passes
>>> as -O2, but with a few things that are most likely to increase code size
>>> removed.  We have had problems with it in the past for FreeBSD's
>>> bootloader.  By tweaking the set of default passes added for -Os, I got the
>>> size down by about 20%, but I didn't have time to evaluate whether this was
>>> a general saving or just for this specific case.  If you have customers who
>>> value size optimisations, then it would be worth looking in
>>> lib/Transforms/IPO/**PassManagerBuilder.cpp and tweaking things a bit.
>>>  I suspect that you can get some quite significant improvements here, but
>>> so far it hasn't been a priority for anyone.  Having -Oz working well
>>> (currently it comes nowhere near gcc) would be particularly helpful for
>>> bootloaders, where there is little or no performance-critical code, but
>>> there is a hard limit on the size.  I imagine a lot of embedded MIPS
>>> systems have similar constraints.
>>>
>> Hmmm. You don't remember which tweaks you tried?
>>
>>  David
>>>
>>> On 23 Feb 2013, at 02:56, reed kotler <rkotler at mips.com> wrote:
>>>
>>>  Mips 16 is basically to save space.
>>>>
>>>> I want to start comparing real benchmarks with llvm and gcc -mips16.
>>>>
>>>> Does -Os have any meaning currently to clang? llvm?
>>>>
>>>> What about inlining? Is inlining turned off?
>>>>
>>>> Tia.
>>>>
>>>> Reed
>>>>
>>>> ______________________________**_________________
>>>> LLVM Developers mailing list
>>>> LLVMdev at cs.uiuc.edu         http://llvm.cs.uiuc.edu
>>>> http://lists.cs.uiuc.edu/**mailman/listinfo/llvmdev<http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev>
>>>>
>>>
>>
>>
>
> ______________________________**_________________
> LLVM Developers mailing list
> LLVMdev at cs.uiuc.edu         http://llvm.cs.uiuc.edu
> http://lists.cs.uiuc.edu/**mailman/listinfo/llvmdev<http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20130223/eaed1c3b/attachment.html>


More information about the llvm-dev mailing list