diff mbox series

rs6000: Implement insn_cost for mfcr, mfcrf

Message ID be8ce0062b1ef9095b838f798e0cbc99e54f6de1.1509958518.git.segher@kernel.crashing.org
State New
Headers show
Series rs6000: Implement insn_cost for mfcr, mfcrf | expand

Commit Message

Segher Boessenkool Nov. 6, 2017, 9 a.m. UTC
This gives mfcrf a cost of three integer insns, just like we do for sync
and load-with-reservation already.

Tested on powerpc64-linux {-m32,-m64}, applying to trunk.


Segher


2017-11-06  Segher Boessenkool  <segher@kernel.crashing.org>

	* config/rs6000/rs6000.c (rs6000_insn_cost): Handle TYPE_MFCR and
	TYPE_MFCRF.

---
 gcc/config/rs6000/rs6000.c | 2 ++
 1 file changed, 2 insertions(+)
diff mbox series

Patch

diff --git a/gcc/config/rs6000/rs6000.c b/gcc/config/rs6000/rs6000.c
index a568c52..c882279 100644
--- a/gcc/config/rs6000/rs6000.c
+++ b/gcc/config/rs6000/rs6000.c
@@ -35028,6 +35028,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;