This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: Fwd: [PATCH] Scheduling result adjustment to enable macro-fusion
- From: "H.J. Lu" <hjl dot tools at gmail dot com>
- To: Wei Mi <wmi at google dot com>
- Cc: Alexander Monakov <amonakov at ispras dot ru>, Steven Bosscher <stevenb dot gcc at gmail dot com>, GCC Patches <gcc-patches at gcc dot gnu dot org>, David Li <davidxl at google dot com>, Kirill Yukhin <kirill dot yukhin at gmail dot com>
- Date: Fri, 13 Sep 2013 16:47:50 -0700
- Subject: Re: Fwd: [PATCH] Scheduling result adjustment to enable macro-fusion
- Authentication-results: sourceware.org; auth=none
- References: <CAMe9rOo-dc7=ax8_pA21wuxnqphLBvf_Voi2n1OHJX7ZEab=ew at mail dot gmail dot com> <CA+4CFy4fqCRvM2Luw2_p6AEZOmucSV1KemntEO3_XU5TfzA-7A at mail dot gmail dot com> <CA+4CFy6gdxREYiJa2B70RBe2aUtLY3zQ9ShK9jGEy26Hdn9QOg at mail dot gmail dot com>
On Fri, Sep 13, 2013 at 4:07 PM, Wei Mi <wmi@google.com> wrote:
> 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?
Yes, please.
Thanks.
--
H.J.