2016-11-07 Richard Biener <rguenther@suse.de>
PR target/78229
* config/i386/i386.c (ix86_gimple_fold_builtin): Do not adjust
EH info.
* g++.dg/pr78229.C: New testcase.
From-SVN: r241901
+2016-11-07 Richard Biener <rguenther@suse.de>
+
+ PR target/78229
+ * config/i386/i386.c (ix86_gimple_fold_builtin): Do not adjust
+ EH info.
+
2016-11-07 Richard Biener <rguenther@suse.de>
PR tree-optimization/78218
gsi_insert_before (gsi, g, GSI_SAME_STMT);
g = gimple_build_assign (gimple_call_lhs (stmt), NOP_EXPR, lhs);
gimple_set_location (g, loc);
- gsi_replace (gsi, g, true);
+ gsi_replace (gsi, g, false);
return true;
}
break;
+2016-11-07 Richard Biener <rguenther@suse.de>
+
+ PR target/78229
+ * g++.dg/pr78229.C: New testcase.
+
2016-11-07 Richard Biener <rguenther@suse.de>
PR tree-optimization/78218
--- /dev/null
+/* { dg-do compile { target x86_64-*-* i?86-*-* } } */
+/* { dg-options "-O2 -mbmi -w" } */
+
+void a();
+inline int b(int c) {
+ int d = c;
+ return __builtin_ia32_tzcnt_u32(d);
+}
+struct e {};
+int f, g, h;
+void fn3() {
+ float j;
+ &j;
+ {
+ e k;
+ while (h) {
+ if (g == 0)
+ continue;
+ int i = b(g);
+ f = i;
+ }
+ a();
+ }
+}