diff options
author | Ilya Enkovich <ienkovich@gcc.gnu.org> | 2016-05-17 09:28:15 +0000 |
---|---|---|
committer | Ilya Enkovich <ienkovich@gcc.gnu.org> | 2016-05-17 09:28:15 +0000 |
commit | b28eb195007c4a766dc7b6d1d79013e5db1f5e90 (patch) | |
tree | 40878ea748b00ba8c5e42e6f43686927a5e5749c | |
parent | 69af4eecb85d8deb4b810f46033118b97f6190be (diff) | |
download | gcc-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
-rw-r--r-- | gcc/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/config/i386/i386.c | 8 | ||||
-rw-r--r-- | gcc/testsuite/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/testsuite/gcc.target/i386/pr70799-1.c | 2 |
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; |