https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71453
H.J. Lu <hjl.tools at gmail dot com> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|SUSPENDED |NEW CC|izamyatin at gmail dot com |crazylht at gmail dot com, | |skpgkp2 at gmail dot com --- Comment #5 from H.J. Lu <hjl.tools at gmail dot com> --- commit 0ccf1b9d72ec54742f14d0ded84fa34cb5a48e5b Author: uros <uros@138bc75d-0d04-0410-961f-82ee72b054a4> Date: Wed Aug 28 15:09:51 2019 +0000 diff --git a/gcc/config/i386/i386.c b/gcc/config/i386/i386.c index f3b3a9a326fd..d2d84eb11663 100644 --- a/gcc/config/i386/i386.c +++ b/gcc/config/i386/i386.c @@ -18617,9 +18617,9 @@ ix86_register_move_cost (machine_mode mode, reg_class_t class1_i, where integer modes in SSE registers are not tieable because of missing QImode and HImode moves to, from or between MMX/SSE registers. */ - return MAX (8, SSE_CLASS_P (class1) - ? ix86_cost->hard_register.sse_to_integer - : ix86_cost->hard_register.integer_to_sse); + return (SSE_CLASS_P (class1) + ? ix86_cost->hard_register.sse_to_integer + : ix86_cost->hard_register.integer_to_sse); if (MAYBE_FLOAT_CLASS_P (class1)) return ix86_cost->hard_register.fp_move; removed the cost floor on inter-unit moves. It results in spills to vector registers.