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]

[PATCH, i386]: Handle otential partial reg stall alternatives with preferred_for_speed attribute


Hello!

We have these long-standing comments in i386.md:

"%%% Potential partial reg stall on alternative X.  What to do?"

Using preferred_for_speed attribute, we can disparage these
alternatives for TARGET_PARTIAL_REG_STALL targets, which seems the
correct thing to do.

2016-05-07  Uros Bizjak  <ubizjak@gmail.com>

    * config/i386/i386.md (*addqi_1): Add preferred_for_speed attribute
    to disparage alternatives 3 and 4 for TARGET_PARTIAL_REG_STALL targets.
    (*andqi_1): Add preferred_for_speed attribute to disparage
    alternative 2 for TARGET_PARTIAL_REG_STALL targets.
    (*<code>qi_1): Ditto.
    (*one_cmplqi2_1): Add preferred_for_speed attribute to disparage
    alternative 1 for TARGET_PARTIAL_REG_STALL targets.
    (*ashlqi3_1): Ditto.
    (*swap<mode>): Merge from *swap<mode>_1 and *swap<mode>_2 patterns.
    Add preferred_for_size attribute to disparage alternative 0 and
    preferred_for_speed attribute to disparage alternative 1 for
    TARGET_PARTIAL_REG_STALL targets.

Patch was bootstrapped and regression tested on x86_64-linux-gnu {,-m32}.

Committed to mainline SVN.

Uros.

Attachment: p.diff.txt
Description: Text document


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