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]: Workaround PR 63620 by allowing only direct immediate values in FP push patterns


Hello!

Attached patch works around PR 63620. Patched gcc will allow only a
subset of CONST_DOUBLEs in FP push patterns. This subset will result
in direct immediates that can always be encoded directly in the insn
stream. These won't be reloaded through memory, and will avoid PIC
register re-materialization issues. OTOH, the patch will generate
non-optimal push sequences when general registers are available.

2014-10-31  Uros Bizjak  <ubizjak@gmail.com>

    PR target/63620
    * config/i386/i386.md (*pushtf): Allow only CONST_DOUBLES that won't
    be reloaded through memory.
    (*pushxf): Ditto.
    (*pushdf): Ditto.

The patch was bootstrapped and regression tested on x86_64-linux-gnu
{-m32}. The patch was also checked with Darwin crosscompiler on the
testcases in the PR.

Committed to mainline.

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]