aboutsummaryrefslogtreecommitdiff
path: root/gcc/gimple-fold.c
diff options
context:
space:
mode:
authorTeresa Johnson <tejohnson@google.com>2012-04-06 05:03:49 +0000
committerTeresa Johnson <tejohnson@gcc.gnu.org>2012-04-06 05:03:49 +0000
commit7b38ee83df3686a974d84c17da96101239de47bb (patch)
treea12fd9a169d4afde5d4da2344818e26d9caa4a08 /gcc/gimple-fold.c
parent939c8f05b8ebcb9d34f2b58055899c3f71912a2c (diff)
downloadgcc-7b38ee83df3686a974d84c17da96101239de47bb.zip
gcc-7b38ee83df3686a974d84c17da96101239de47bb.tar.gz
gcc-7b38ee83df3686a974d84c17da96101239de47bb.tar.bz2
Avoid instructions that incur expensive length-changing prefix (LCP) stalls on some x86-64 implementations...
Avoid instructions that incur expensive length-changing prefix (LCP) stalls on some x86-64 implementations, notably Core2 and Corei7. Specifically, a move of a 16-bit constant into memory requires a length-changing prefix and can incur significant penalties. Modified an old patch written by H.J to split such instructions during peephole2. 2012-04-05 Teresa Johnson <tejohnson@google.com> H.J. Lu <hongjiu.lu@intel.com> * config/i386/i386.h (ix86_tune_indices): Add X86_TUNE_LCP_STALL. * config/i386/i386.md (move immediate to memory peephole2): Add cases for HImode move when LCP stall avoidance is needed. * config/i386/i386.c (initial_ix86_tune_features): Initialize X86_TUNE_LCP_STALL entry. Co-Authored-By: H.J. Lu <hongjiu.lu@intel.com> From-SVN: r186176
Diffstat (limited to 'gcc/gimple-fold.c')
0 files changed, 0 insertions, 0 deletions