diff options
author | segher <segher@138bc75d-0d04-0410-961f-82ee72b054a4> | 2017-11-06 09:04:23 +0000 |
---|---|---|
committer | segher <segher@138bc75d-0d04-0410-961f-82ee72b054a4> | 2017-11-06 09:04:23 +0000 |
commit | d11af473850509e4d194dcd5faaf5f491a46c00a (patch) | |
tree | a7d37e1dedda39380c42f22f034e0ead45a858ab | |
parent | 0d27af05655d921af6953652df017c636cebe7b9 (diff) | |
download | gcc-d11af473850509e4d194dcd5faaf5f491a46c00a.tar.gz |
rs6000: Implement insn_cost for mfcr, mfcrf
This gives mfcrf a cost of three integer insns, just like we do for sync
and load-with-reservation already.
* config/rs6000/rs6000.c (rs6000_insn_cost): Handle TYPE_MFCR and
TYPE_MFCRF.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@254439 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r-- | gcc/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/config/rs6000/rs6000.c | 2 |
2 files changed, 7 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 5556e296bd6..c4a360fe434 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2017-11-06 Segher Boessenkool <segher@kernel.crashing.org> + + * config/rs6000/rs6000.c (rs6000_insn_cost): Handle TYPE_MFCR and + TYPE_MFCRF. + 2017-11-06 Richard Sandiford <richard.sandiford@linaro.org> * tree-vrp.c (vrp_int_const_binop): Return true on success and diff --git a/gcc/config/rs6000/rs6000.c b/gcc/config/rs6000/rs6000.c index 0eabd5f108c..e3636dc6831 100644 --- a/gcc/config/rs6000/rs6000.c +++ b/gcc/config/rs6000/rs6000.c @@ -35038,6 +35038,8 @@ rs6000_insn_cost (rtx_insn *insn, bool speed) case TYPE_SYNC: case TYPE_LOAD_L: + case TYPE_MFCR: + case TYPE_MFCRF: cost = COSTS_N_INSNS (n + 2); break; |