On Fri, Sep 13, 2013 at 1:45 PM, Wei Mi <w...@google.com> wrote: > On Fri, Sep 13, 2013 at 12:09 PM, H.J. Lu <hjl.to...@gmail.com> wrote: >> On Fri, Sep 13, 2013 at 11:28 AM, Wei Mi <w...@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?