diff options
author | Jan Hubicka <hubicka@ucw.cz> | 2018-12-31 11:05:30 +0100 |
---|---|---|
committer | Jan Hubicka <hubicka@gcc.gnu.org> | 2018-12-31 10:05:30 +0000 |
commit | 41ee4e75ab27ebf63d1512fc56e673fdee74e8aa (patch) | |
tree | 5259f6b54268c9f44906b9578bb2ec63b2e94fbf | |
parent | 80c2bad6b64c511ba93089216b9fadb7074e4e8f (diff) | |
download | gcc-41ee4e75ab27ebf63d1512fc56e673fdee74e8aa.zip gcc-41ee4e75ab27ebf63d1512fc56e673fdee74e8aa.tar.gz gcc-41ee4e75ab27ebf63d1512fc56e673fdee74e8aa.tar.bz2 |
* x86-tune.def: Enable inter_unit_moves_to_vec for generic.
From-SVN: r267484
-rw-r--r-- | gcc/ChangeLog | 4 | ||||
-rw-r--r-- | gcc/config/i386/x86-tune.def | 8 |
2 files changed, 10 insertions, 2 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 54585381..5ef8523 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,7 @@ +2018-12-30 Jan Hubicka <hubicka@ucw.cz> + + * x86-tune.def: Enable inter_unit_moves_to_vec for generic. + 2018-12-30 Martin Sebor <msebor@redhat.com> Jeff Law <law@redhat.com> diff --git a/gcc/config/i386/x86-tune.def b/gcc/config/i386/x86-tune.def index b91dca1..02d8eda 100644 --- a/gcc/config/i386/x86-tune.def +++ b/gcc/config/i386/x86-tune.def @@ -379,9 +379,13 @@ DEF_TUNE (X86_TUNE_SSE_LOAD0_BY_PXOR, "sse_load0_by_pxor", /* X86_TUNE_INTER_UNIT_MOVES_TO_VEC: Enable moves in from integer to SSE registers. If disabled, the moves will be done by storing - the value to memory and reloading. */ + the value to memory and reloading. + Enable this flag for generic - the only relevant architecture preferring + no inter-unit moves is Buldozer. While this makes small regression on SPECfp + scores (sub 0.3%), disabling inter-unit moves penalizes noticeably hand + written vectorized code which use i.e. _mm_set_epi16. */ DEF_TUNE (X86_TUNE_INTER_UNIT_MOVES_TO_VEC, "inter_unit_moves_to_vec", - ~(m_ATHLON_K8 | m_AMDFAM10 | m_BDVER | m_BTVER | m_GENERIC)) + ~(m_ATHLON_K8 | m_AMDFAM10 | m_BDVER | m_BTVER)) /* X86_TUNE_INTER_UNIT_MOVES_TO_VEC: Enable moves in from SSE to integer registers. If disabled, the moves will be done by storing |