[llvm-commits] [llvm] r142439 - /llvm/trunk/lib/Target/X86/X86TargetMachine.cpp

Eric Christopher echristo at apple.com
Tue Oct 18 16:15:39 PDT 2011


On Oct 18, 2011, at 4:14 PM, Eli Friedman wrote:

> On Tue, Oct 18, 2011 at 4:11 PM, Eric Christopher <echristo at apple.com> wrote:
>> 
>> On Oct 18, 2011, at 4:11 PM, Bruno Cardoso Lopes wrote:
>> 
>>> Hi Eli,
>>> 
>>> On Tue, Oct 18, 2011 at 9:05 PM, Eli Friedman <eli.friedman at gmail.com> wrote:
>>>> On Tue, Oct 18, 2011 at 3:50 PM, Eric Christopher <echristo at apple.com> wrote:
>>>>> Author: echristo
>>>>> Date: Tue Oct 18 17:50:17 2011
>>>>> New Revision: 142439
>>>>> 
>>>>> URL: http://llvm.org/viewvc/llvm-project?rev=142439&view=rev
>>>>> Log:
>>>>> Turn on the vzeroupper pass by default.
>>>>> 
>>>>> I'll remove/rename the option in a few days.
>>>> 
>>>> Is the VZEROUPPER pass really ready?  I was under the impression it
>>>> was missing some rather important functionality (e.g. it inserts
>>>> VZEROUPPER calls into modules which don't use the ymm registers at
>>>> all).
>>> 
>>> The actual approach of this pass is very naive, I have a updated patch
>>> for improving it significantly. I've tested locally but haven't had
>>> the time yet to run it
>>> with all the singlesource+multisource on the testsuite, that's why I
>>> haven't comited yet.
>>> 
>>> I think this shouldn't be enabled by default yet, since I fix some issues on the
>>> upcoming patch.
>> 
>> OK. I can disable it.
>> 
>> I didn't see any issues, can you be a bit more forthcoming?
> 
> There isn't really anything wrong with it; it just inserts a bunch of
> unnecessary VZEROUPPER instructions.

That was my thought. It seemed naive, but vzeroupper instructions are supposed to be free anyhow…

-eric



More information about the llvm-commits mailing list