+2019-09-18 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR target/90878
+ * config/i386/x86-tune-costs.h (skylake_cost): Restore SImode
+ hard register store cost to 6.
+
2019-09-18 H.J. Lu <hongjiu.lu@intel.com>
PR target/91446
{4, 4, 4}, /* cost of loading integer registers
in QImode, HImode and SImode.
Relative to reg-reg move (2). */
- {6, 6, 3}, /* cost of storing integer 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 */
--- /dev/null
+/* { dg-do compile } */
+/* { dg-options "-O2 -march=skylake" } */
+
+union ieee754_float
+ {
+ float f;
+
+ struct
+ {
+ unsigned int mantissa:23;
+ unsigned int exponent:8;
+ unsigned int negative:1;
+ } ieee;
+};
+
+double
+foo (float f)
+{
+ union ieee754_float u;
+ u.f = f;
+ u.ieee.negative = 0;
+ return u.f;
+}
+
+/* { dg-final { scan-assembler-not "vcvtss2sd\[^\\n\]*\\\(%.sp\\\)" } } */