https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90883
--- Comment #31 from Kito Cheng <kito at gcc dot gnu.org> --- Maybe we could add --param max-inline-insns-size=1 to compile flag and add mips* and aarch64 into xfail list to make every target happy for this test case? and if some other target fail is cause by the CLEAR_RATIO too, they should add into xfail list. Patch here: diff --git a/gcc/testsuite/g++.dg/tree-ssa/pr90883.C b/gcc/testsuite/g++.dg/tree-ssa/pr90883.C index c5faffa1f32..0e622f263d2 100644 --- a/gcc/testsuite/g++.dg/tree-ssa/pr90883.C +++ b/gcc/testsuite/g++.dg/tree-ssa/pr90883.C @@ -1,4 +1,4 @@ -// { dg-options "-O2 -Os -fdump-tree-dse-details -std=c++11" } +// { dg-options "-O2 -Os -fdump-tree-dse-details -std=c++11 --param max-inline-insns-size=1" } class C @@ -15,6 +15,6 @@ // We want to match enough here to capture that we deleted an empty // constructor store -// { dg-final { scan-tree-dump "Deleted redundant store: .*\.a = {}" "dse1" { target { ! i?86-*-* } } } } -// { dg-final { scan-tree-dump "Deleted redundant store: .*\.a = {}" "dse2" { target i?86-*-* } } } +// aarch64 and mips will expand into loop to clear because CLEAR_RATIO. +// { dg-final { scan-tree-dump "Deleted redundant store: .*\.a = {}" "dse1" { xfail { aarch64-*-* mips*-*-* } } } }