Commit 82bb9245 by Alan Modra

re PR bootstrap/61583 (stage2 and stage3 compare failure due to value range loss)

gcc/
	PR bootstrap/61583
	* tree-vrp.c (remove_range_assertions): Do not set is_unreachable
	to zero on debug statements.
gcc/testsuite/
	* gcc.dg/pr61583.c: New.

From-SVN: r211897
parent 096c59be
2014-06-23 Alan Modra <amodra@gmail.com>
PR bootstrap/61583
* tree-vrp.c (remove_range_assertions): Do not set is_unreachable
to zero on debug statements.
2014-06-19 Alan Lawrence <alan.lawrence@arm.com> 2014-06-19 Alan Lawrence <alan.lawrence@arm.com>
PR target/60825 PR target/60825
...@@ -25,7 +31,7 @@ ...@@ -25,7 +31,7 @@
vsqadd_u64, vsra_n_s64, vsra_n_u64, vsri_n_s64, vsri_n_u64, vsqadd_u64, vsra_n_s64, vsra_n_u64, vsri_n_s64, vsri_n_u64,
vst1_s64, vst1_u64, vtst_s64, vtst_u64, vuqadd_s64): Wrap existing vst1_s64, vst1_u64, vtst_s64, vtst_u64, vuqadd_s64): Wrap existing
logic in GCC vector extensions logic in GCC vector extensions
(vpaddd_s64, vaddd_s64, vaddd_u64, vceqd_s64, vceqd_u64, vceqzd_s64 (vpaddd_s64, vaddd_s64, vaddd_u64, vceqd_s64, vceqd_u64, vceqzd_s64
vceqzd_u64, vcged_s64, vcged_u64, vcgezd_s64, vcgtd_s64, vcgtd_u64, vceqzd_u64, vcged_s64, vcged_u64, vcgezd_s64, vcgtd_s64, vcgtd_u64,
vcgtzd_s64, vcled_s64, vcled_u64, vclezd_s64, vcltd_s64, vcltd_u64, vcgtzd_s64, vcled_s64, vcled_u64, vclezd_s64, vcltd_s64, vcltd_u64,
...@@ -468,8 +474,8 @@ ...@@ -468,8 +474,8 @@
2014-06-18 Robert Suchanek <robert.suchanek@imgtec.com> 2014-06-18 Robert Suchanek <robert.suchanek@imgtec.com>
* lra-constraints.c (base_to_reg): New function. * lra-constraints.c (base_to_reg): New function.
(process_address): Use new function. (process_address): Use new function.
2014-06-18 Tom de Vries <tom@codesourcery.com> 2014-06-18 Tom de Vries <tom@codesourcery.com>
......
2014-06-23 Alan Modra <amodra@gmail.com>
* gcc.dg/pr61583.c: New.
2014-06-19 Alan Lawrence <alan.lawrence@arm.com> 2014-06-19 Alan Lawrence <alan.lawrence@arm.com>
* g++.dg/abi/mangle-neon-aarch64.C (f22, f23): New tests of * g++.dg/abi/mangle-neon-aarch64.C (f22, f23): New tests of
[u]int64x1_t. [u]int64x1_t.
* gcc.target/aarch64/aapcs64/func-ret-64x1_1.c: Add {u,}int64x1 cases. * gcc.target/aarch64/aapcs64/func-ret-64x1_1.c: Add {u,}int64x1 cases.
...@@ -24,7 +28,7 @@ ...@@ -24,7 +28,7 @@
test_vqrshrnd_n_u64, test_vshld_n_s64, test_vshdl_n_u64, test_vqrshrnd_n_u64, test_vshld_n_s64, test_vshdl_n_u64,
test_vslid_n_s64, test_vslid_n_u64, test_vsrid_n_s64, test_vslid_n_s64, test_vslid_n_u64, test_vsrid_n_s64,
test_vsrid_n_u64): Fix signature to match intrinsic. test_vsrid_n_u64): Fix signature to match intrinsic.
(test_vabs_s64): Remove. (test_vabs_s64): Remove.
(test_vaddd_s64_2, test_vsubd_s64_2): Use force_simd. (test_vaddd_s64_2, test_vsubd_s64_2): Use force_simd.
......
/* { dg-do compile } */
/* { dg-options "-O2 -fcompare-debug" } */
void
f1 (int n, int b)
{
extern void f2 (int);
int j;
if (b)
n = 1;
if (n < 1)
__builtin_unreachable ();
for (j = 0; j < n; j++)
f2 (j);
}
...@@ -6523,8 +6523,9 @@ remove_range_assertions (void) ...@@ -6523,8 +6523,9 @@ remove_range_assertions (void)
} }
else else
{ {
if (!is_gimple_debug (gsi_stmt (si)))
is_unreachable = 0;
gsi_next (&si); gsi_next (&si);
is_unreachable = 0;
} }
} }
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment