https://gcc.gnu.org/bugzilla/show_bug.cgi?id=107569

--- Comment #47 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
I have tested the
--- gcc/passes.def.jj   2023-03-22 16:59:45.378390155 +0100
+++ gcc/passes.def      2023-03-22 22:07:35.272803901 +0100
@@ -88,6 +88,7 @@ along with GCC; see the file COPYING3.
          /* pass_build_ealias is a dummy pass that ensures that we
             execute TODO_rebuild_alias at this point.  */
          NEXT_PASS (pass_build_ealias);
+         NEXT_PASS (pass_dce);
          NEXT_PASS (pass_fre, true /* may_iterate */);
          NEXT_PASS (pass_early_vrp);
          NEXT_PASS (pass_merge_phi);
patch and it unfortunately has some regressions on x86_64-linux, haven't
verified though what is just that testcases would need to be tweaking and where
we actually end up with worse code:
UNRESOLVED: gcc.dg/bic-bitmask-13.c scan-tree-dump-not dce7 "&\\\\s*
4294967040"
UNRESOLVED: gcc.dg/bic-bitmask-13.c scan-tree-dump-times dce7 "<=\\\\s* 255" 1
UNRESOLVED: gcc.dg/bic-bitmask-14.c scan-tree-dump-not dce7 "&\\\\s*
4294967040"
UNRESOLVED: gcc.dg/bic-bitmask-14.c scan-tree-dump-times dce7 "<=\\\\s* 255" 1
UNRESOLVED: gcc.dg/bic-bitmask-15.c scan-tree-dump-not dce7 "&\\\\s*
4294967040"
UNRESOLVED: gcc.dg/bic-bitmask-15.c scan-tree-dump-times dce7 "=\\\\s* 1" 1
UNRESOLVED: gcc.dg/bic-bitmask-16.c scan-tree-dump-not dce7 "&\\\\s*
4294967040"
UNRESOLVED: gcc.dg/bic-bitmask-16.c scan-tree-dump-times dce7 ">\\\\s* 255" 1
UNRESOLVED: gcc.dg/bic-bitmask-17.c scan-tree-dump-not dce7 "&\\\\s*
4294967040"
UNRESOLVED: gcc.dg/bic-bitmask-17.c scan-tree-dump-times dce7 "<=\\\\s* 255" 1
UNRESOLVED: gcc.dg/bic-bitmask-18.c scan-tree-dump-times dce7 " = 0;" 1
UNRESOLVED: gcc.dg/bic-bitmask-19.c scan-tree-dump-not dce7 "&\\\\s*
4294967294"
UNRESOLVED: gcc.dg/bic-bitmask-19.c scan-tree-dump-times dce7 ">\\\\s* 1" 1
UNRESOLVED: gcc.dg/bic-bitmask-20.c scan-tree-dump dce7 "&\\\\s* 4294967290"
UNRESOLVED: gcc.dg/bic-bitmask-20.c scan-tree-dump-not dce7 "<=\\\\s*
4294967289"
UNRESOLVED: gcc.dg/bic-bitmask-21.c scan-tree-dump dce7 "<=\\\\s* 255"
UNRESOLVED: gcc.dg/bic-bitmask-21.c scan-tree-dump-not dce7 "&\\\\s*
4294967290"
UNRESOLVED: gcc.dg/bic-bitmask-22.c scan-tree-dump dce7 ">\\\\s* 255"
UNRESOLVED: gcc.dg/bic-bitmask-22.c scan-tree-dump-not dce7 "&\\\\s*
4294967290"
FAIL: gcc.dg/pr23911.c scan-tree-dump-times dce3 "(?n)IMAGPART_EXPR.*= 0\\\\.0"
2
FAIL: gcc.dg/pr23911.c scan-tree-dump-times dce3 "(?n)REALPART_EXPR.*=
1\\\\.0e\\\\+0" 2
FAIL: gcc.dg/guality/pr45003-2.c   -O2 -flto -fuse-linker-plugin
-fno-fat-lto-objects  -DPREVENT_OPTIMIZATION line 10 a == 0x8078
FAIL: gcc.dg/guality/pr45003-2.c   -O2 -flto -fuse-linker-plugin
-fno-fat-lto-objects  -DPREVENT_OPTIMIZATION line 19 a == 0xffff8078
FAIL: gcc.dg/guality/pr45003-3.c   -O2 -flto -fuse-linker-plugin
-fno-fat-lto-objects  -DPREVENT_OPTIMIZATION line 10 a == -32648
FAIL: gcc.dg/guality/pr45003-3.c   -O2 -flto -fuse-linker-plugin
-fno-fat-lto-objects  -DPREVENT_OPTIMIZATION line 19 a == 0x8078
UNRESOLVED: gcc.dg/tree-ssa/20030731-2.c scan-tree-dump-times dce2 "if " 1
UNRESOLVED: gcc.dg/tree-ssa/20030808-1.c scan-tree-dump-times dce7 "->code" 0
UNRESOLVED: gcc.dg/tree-ssa/20030808-1.c scan-tree-dump-times dce7 "if " 0
UNRESOLVED: gcc.dg/tree-ssa/20040305-1.c scan-tree-dump-times dce2 "if " 2
FAIL: gcc.dg/tree-ssa/alias-37.c scan-tree-dump dse1 "Deleted dead store"
UNRESOLVED: gcc.dg/tree-ssa/cfgcleanup-1.c scan-tree-dump-times dce2 "if " 0
FAIL: gcc.dg/tree-ssa/evrp10.c scan-tree-dump-times evrp "\\\\[-128, 127\\\\]"
9
FAIL: gcc.dg/tree-ssa/evrp6.c scan-tree-dump evrp "\\\\[12, \\\\+INF"
UNRESOLVED: gcc.dg/tree-ssa/pr69270-2.c scan-tree-dump-times dce2
"usecount_[0-9]+ = usecount_[0-9]+ . 1;" 0
FAIL: gcc.dg/tree-ssa/pr79697.c scan-tree-dump cddce1 "Deleting :
__builtin_strdup"
FAIL: gcc.dg/tree-ssa/pr79697.c scan-tree-dump cddce1 "Deleting :
__builtin_strndup"
FAIL: gcc.dg/tree-ssa/ssa-dse-32.c scan-tree-dump-times dse1 "Deleted dead
store" 1
UNRESOLVED: gcc.dg/vect/pr26359.c -flto -ffat-lto-objects  scan-tree-dump-times
dce6 "Deleting : vect_" 0
UNRESOLVED: gcc.dg/vect/pr26359.c scan-tree-dump-times dce6 "Deleting : vect_"
0
UNRESOLVED: gcc.dg/vect/vect-bic-bitmask-23.c -flto -ffat-lto-objects 
scan-tree-dump dce7 "<=\\\\s*.+{ 255, 15, 1, 65535 }"
UNRESOLVED: gcc.dg/vect/vect-bic-bitmask-23.c scan-tree-dump dce7 "<=\\\\s*.+{
255, 15, 1, 65535 }"
FAIL: g++.dg/cpp1y/new1.C  -std=gnu++11  scan-tree-dump-times cddce1 "Deleting
: _\\\\d+ = operator new" 8
FAIL: g++.dg/cpp1y/new1.C  -std=gnu++14  scan-tree-dump-times cddce1 "Deleting
: _\\\\d+ = operator new" 8
FAIL: g++.dg/cpp1y/new1.C  -std=gnu++17  scan-tree-dump-times cddce1 "Deleting
: _\\\\d+ = operator new" 8
FAIL: g++.dg/cpp1y/new1.C  -std=gnu++20  scan-tree-dump-times cddce1 "Deleting
: _\\\\d+ = operator new" 8
FAIL: g++.dg/cpp1y/new1.C  -std=gnu++2b  scan-tree-dump-times cddce1 "Deleting
: _\\\\d+ = operator new" 8
FAIL: g++.dg/cpp1y/new1.C  -std=gnu++98  scan-tree-dump-times cddce1 "Deleting
: _\\\\d+ = operator new" 8
FAIL: g++.dg/pr94314-2.C  -std=gnu++11  scan-tree-dump-times cddce1 "Deleting :
operator delete" 2
FAIL: g++.dg/pr94314-2.C  -std=gnu++14  scan-tree-dump-times cddce1 "Deleting :
operator delete" 2
FAIL: g++.dg/pr94314-2.C  -std=gnu++17  scan-tree-dump-times cddce1 "Deleting :
operator delete" 2
FAIL: g++.dg/pr94314-2.C  -std=gnu++20  scan-tree-dump-times cddce1 "Deleting :
operator delete" 2
FAIL: g++.dg/pr94314-2.C  -std=gnu++2b  scan-tree-dump-times cddce1 "Deleting :
operator delete" 2
FAIL: g++.dg/pr94314-2.C  -std=gnu++98  scan-tree-dump-times cddce1 "Deleting :
operator delete" 2
FAIL: g++.dg/warn/Wmismatched-new-delete-5.C  -std=gnu++11  (test for warnings,
line 36)
FAIL: g++.dg/warn/Wmismatched-new-delete-5.C  -std=gnu++14  (test for warnings,
line 36)
FAIL: g++.dg/warn/Wmismatched-new-delete-5.C  -std=gnu++17  (test for warnings,
line 36)
FAIL: g++.dg/warn/Wmismatched-new-delete-5.C  -std=gnu++20  (test for warnings,
line 36)
FAIL: g++.dg/warn/Wmismatched-new-delete-5.C  -std=gnu++2b  (test for warnings,
line 36)
FAIL: g++.dg/warn/Wmismatched-new-delete-5.C  -std=gnu++98  (test for warnings,
line 36)

The UNRESOLVED ones likely just need to replace dce7 with dce8.

Reply via email to