diff options
author | Jan Hubicka <hubicka@ucw.cz> | 2017-10-20 22:51:50 +0200 |
---|---|---|
committer | Jan Hubicka <hubicka@gcc.gnu.org> | 2017-10-20 20:51:50 +0000 |
commit | af8630301d5bb5ae93d741ad4753f6a9d8817d89 (patch) | |
tree | 4c27493af3bdedeb5271182036e92f4b4af7f75e | |
parent | 001cbba0efcd44aa1c955c5e6fbbb118aec55440 (diff) | |
download | gcc-af8630301d5bb5ae93d741ad4753f6a9d8817d89.zip gcc-af8630301d5bb5ae93d741ad4753f6a9d8817d89.tar.gz gcc-af8630301d5bb5ae93d741ad4753f6a9d8817d89.tar.bz2 |
* x86-tune-costs.h (intel_cost, generic_cost): Fix move costs.
From-SVN: r253958
-rw-r--r-- | gcc/ChangeLog | 4 | ||||
-rw-r--r-- | gcc/config/i386/x86-tune-costs.h | 38 |
2 files changed, 23 insertions, 19 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 1274635..91c9cfc 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,7 @@ +2017-10-20 Jan Hubicka <hubicka@ucw.cz> + + * x86-tune-costs.h (intel_cost, generic_cost): Fix move costs. + 2017-10-20 Jakub Jelinek <jakub@redhat.com> * config/i386/i386.md (isa): Remove fma_avx512f. diff --git a/gcc/config/i386/x86-tune-costs.h b/gcc/config/i386/x86-tune-costs.h index 3f7a4f2..761d421 100644 --- a/gcc/config/i386/x86-tune-costs.h +++ b/gcc/config/i386/x86-tune-costs.h @@ -2121,27 +2121,27 @@ struct processor_costs intel_cost = { COSTS_N_INSNS (1), /* cost of movzx */ 8, /* "large" insn */ 17, /* MOVE_RATIO */ - 4, /* cost for loading QImode using movzbl */ + 6, /* cost for loading QImode using movzbl */ {4, 4, 4}, /* cost of loading integer registers in QImode, HImode and SImode. Relative to reg-reg move (2). */ - {4, 4, 4}, /* cost of storing integer registers */ - 4, /* cost of reg,reg fld/fst */ - {12, 12, 12}, /* cost of loading fp registers + {6, 6, 6}, /* cost of storing integer registers */ + 2, /* cost of reg,reg fld/fst */ + {6, 6, 8}, /* cost of loading fp registers in SFmode, DFmode and XFmode */ - {6, 6, 8}, /* cost of storing fp registers + {6, 6, 10}, /* cost of storing fp registers in SFmode, DFmode and XFmode */ 2, /* cost of moving MMX register */ - {8, 8}, /* cost of loading MMX registers + {6, 6}, /* cost of loading MMX registers in SImode and DImode */ - {8, 8}, /* cost of storing MMX registers + {6, 6}, /* cost of storing MMX registers in SImode and DImode */ 2, /* cost of moving SSE register */ - {8, 8, 8}, /* cost of loading SSE registers + {6, 6, 6}, /* cost of loading SSE registers in SImode, DImode and TImode */ - {8, 8, 8}, /* cost of storing SSE registers + {6, 6, 6}, /* cost of storing SSE registers in SImode, DImode and TImode */ - 5, /* MMX or SSE register to integer */ + 2, /* MMX or SSE register to integer */ 32, /* size of l1 cache. */ 256, /* size of l2 cache. */ 64, /* size of prefetch block */ @@ -2221,23 +2221,23 @@ struct processor_costs generic_cost = { {4, 4, 4}, /* cost of loading integer registers in QImode, HImode and SImode. Relative to reg-reg move (2). */ - {4, 4, 4}, /* cost of storing integer registers */ + {6, 6, 6}, /* cost of storing integer registers */ 4, /* cost of reg,reg fld/fst */ - {12, 12, 12}, /* cost of loading fp registers + {6, 6, 12}, /* cost of loading fp registers in SFmode, DFmode and XFmode */ - {6, 6, 8}, /* cost of storing fp registers + {6, 6, 12}, /* cost of storing fp registers in SFmode, DFmode and XFmode */ 2, /* cost of moving MMX register */ - {8, 8}, /* cost of loading MMX registers + {6, 6}, /* cost of loading MMX registers in SImode and DImode */ - {8, 8}, /* cost of storing MMX registers + {6, 6}, /* cost of storing MMX registers in SImode and DImode */ 2, /* cost of moving SSE register */ - {8, 8, 8}, /* cost of loading SSE registers + {6, 6, 6}, /* cost of loading SSE registers in SImode, DImode and TImode */ - {8, 8, 8}, /* cost of storing SSE registers + {6, 6, 6}, /* cost of storing SSE registers in SImode, DImode and TImode */ - 5, /* MMX or SSE register to integer */ + 6, /* MMX or SSE register to integer */ 32, /* size of l1 cache. */ 512, /* size of l2 cache. */ 64, /* size of prefetch block */ @@ -2326,7 +2326,7 @@ struct processor_costs core_cost = { 2, /* cost of reg,reg fld/fst */ {6, 6, 8}, /* cost of loading fp registers in SFmode, DFmode and XFmode */ - {8, 6, 10}, /* cost of storing fp registers + {6, 6, 10}, /* cost of storing fp registers in SFmode, DFmode and XFmode */ 2, /* cost of moving MMX register */ {6, 6}, /* cost of loading MMX registers |