aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorIlya Enkovich <ienkovich@gcc.gnu.org>2016-05-17 09:28:15 +0000
committerIlya Enkovich <ienkovich@gcc.gnu.org>2016-05-17 09:28:15 +0000
commitb28eb195007c4a766dc7b6d1d79013e5db1f5e90 (patch)
tree40878ea748b00ba8c5e42e6f43686927a5e5749c /gcc
parent69af4eecb85d8deb4b810f46033118b97f6190be (diff)
downloadgcc-b28eb195007c4a766dc7b6d1d79013e5db1f5e90.zip
gcc-b28eb195007c4a766dc7b6d1d79013e5db1f5e90.tar.gz
gcc-b28eb195007c4a766dc7b6d1d79013e5db1f5e90.tar.bz2
re PR target/71114 (Several test suite failures on x86_64-apple-darwin* after revision r236090)
gcc/ PR target/71114 * config/i386/i386.c (dimode_scalar_chain::convert_op): Fix insertion point for instructions generated by validize_mem. gcc/testsuite/ PR target/71114 * gcc.target/i386/pr70799-1.c: Fix scan for Darwin. From-SVN: r236315
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog6
-rw-r--r--gcc/config/i386/i386.c8
-rw-r--r--gcc/testsuite/ChangeLog6
-rw-r--r--gcc/testsuite/gcc.target/i386/pr70799-1.c2
4 files changed, 20 insertions, 2 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 4876a73..9aae0ff 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,9 @@
+2016-05-17 Ilya Enkovich <ilya.enkovich@intel.com>
+
+ PR target/71114
+ * config/i386/i386.c (dimode_scalar_chain::convert_op): Fix
+ insertion point for instructions generated by validize_mem.
+
2016-05-17 James Greenhalgh <james.greenhalgh@arm.com>
* config/aarch64/aarch64.c (SHIFT_COUNT_TRUNCATED): Wrap definition
diff --git a/gcc/config/i386/i386.c b/gcc/config/i386/i386.c
index 7f9004f..e65f312 100644
--- a/gcc/config/i386/i386.c
+++ b/gcc/config/i386/i386.c
@@ -3688,7 +3688,13 @@ dimode_scalar_chain::convert_op (rtx *op, rtx_insn *insn)
gen_rtvec (2, *op, const0_rtx));
if (!standard_sse_constant_p (vec_cst, V2DImode))
- vec_cst = validize_mem (force_const_mem (V2DImode, vec_cst));
+ {
+ start_sequence ();
+ vec_cst = validize_mem (force_const_mem (V2DImode, vec_cst));
+ rtx_insn *seq = get_insns ();
+ end_sequence ();
+ emit_insn_before (seq, insn);
+ }
emit_insn_before (gen_move_insn (tmp, vec_cst), insn);
*op = tmp;
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index c5f151f..d14bcf1 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,9 @@
+2016-05-17 Dominique d'Humieres <dominiq@lps.ens.fr>
+ Ilya Enkovich <ilya.enkovich@intel.com>
+
+ PR target/71114
+ * gcc.target/i386/pr70799-1.c: Fix scan for Darwin.
+
2016-05-16 Jan Hubicka <hubicka@ucw.cz>
* g++.dg/ipa/ivinline-7.C: Do not xfail.
diff --git a/gcc/testsuite/gcc.target/i386/pr70799-1.c b/gcc/testsuite/gcc.target/i386/pr70799-1.c
index 0abbfb9..f4e42fa 100644
--- a/gcc/testsuite/gcc.target/i386/pr70799-1.c
+++ b/gcc/testsuite/gcc.target/i386/pr70799-1.c
@@ -3,7 +3,7 @@
/* { dg-options "-O2 -march=slm" } */
/* { dg-final { scan-assembler "pxor" } } */
/* { dg-final { scan-assembler "pcmpeqd" } } */
-/* { dg-final { scan-assembler "movdqa\[ \\t\]+.LC0" } } */
+/* { dg-final { scan-assembler "movdqa\[ \\t\]+.?LC0" } } */
long long a, b, c;