2016-02-02 Richard Biener <rguenther@suse.de>
PR tree-optimization/69606
* tree-ssa-math-opts.c (bswap_replace): Clear flow sensitive
info on the result before moving a stmt.
* gcc.dg/torture/pr69606.c: New testcase.
From-SVN: r233069
+2016-02-02 Richard Biener <rguenther@suse.de>
+
+ PR tree-optimization/69606
+ * tree-ssa-math-opts.c (bswap_replace): Clear flow sensitive
+ info on the result before moving a stmt.
+
2016-02-02 Yuri Rumyantsev <ysrumyan@gmail.com>
PR middle-end/68542
+2016-02-02 Richard Biener <rguenther@suse.de>
+
+ PR tree-optimization/69606
+ * gcc.dg/torture/pr69606.c: New testcase.
+
2016-02-02 Yuri Rumyantsev <ysrumyan@gmail.com>
PR middle-end/68542
--- /dev/null
+/* { dg-do run } */
+
+char a;
+unsigned short b;
+int c, d;
+unsigned char e;
+
+int
+main ()
+{
+ int f = 1, g = ~a;
+ if (b > f)
+ {
+ e = b;
+ d = b | e;
+ g = 0;
+ }
+ c = 1 % g;
+ return 0;
+}
/* Move cur_stmt just before one of the load of the original
to ensure it has the same VUSE. See PR61517 for what could
go wrong. */
+ if (gimple_bb (cur_stmt) != gimple_bb (src_stmt))
+ reset_flow_sensitive_info (gimple_assign_lhs (cur_stmt));
gsi_move_before (&gsi, &gsi_ins);
gsi = gsi_for_stmt (cur_stmt);