This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Fwd: [PATCH] Scheduling result adjustment to enable macro-fusion


On Fri, Sep 13, 2013 at 1:45 PM, Wei Mi <wmi@google.com> wrote:
> On Fri, Sep 13, 2013 at 12:09 PM, H.J. Lu <hjl.tools@gmail.com> wrote:
>> On Fri, Sep 13, 2013 at 11:28 AM, Wei Mi <wmi@google.com> wrote:
>>>> Checking corei7/corei7-avx explicitly isn't a good idea.
>>>> It is also useful for Ivy Bridge and Haswell.  I think you
>>>> should use a variable to control it, similar to
>>>> TARGET_FUSE_CMP_AND_BRANCH.
>>>>
>>>>
>>>> --
>>>> H.J.
>>>
>>> Different x86 microarchitectures support macro-fusion for different
>>> compare and branch combinations. I need to differentiate various x86
>>> microarchitectures. If use TARGET_FUSE_CMP_AND_BRANCH like vars to
>>> control it, it requires a bunch of them. That is why I choose to check
>>
>> Can you use TARGET_FUSE_CMP_AND_BRANCH covers cmp/test
>> and branch,  TARGET_FUSE_ALU_AND_BRANCH covers and/add/sub/inc/dec
>> and branch?
>>
>
> Yes, I can. Thanks for the suggestion. Will fix it, and with Ivy
> Bridge and Haswell included.
>

Just notice another problem here:
processor_type only contains PROCESSOR_COREI7, so I cannot
differentiate Westmere and Sandybridge in x86-tune.def, which are
different for TARGET_FUSE_ALU_AND_BRANCH. So do I have to separate
m_SANDYBRIDGE out from m_COREI7?


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]