Mike Stump <mikest...@comcast.net> writes: > On Jan 2, 2025, at 4:00 PM, Sam James <s...@gentoo.org> wrote: >> >> This testcase came up in a recent LLVM bug report [0] for DSE vs >> -ftrivial-auto-var-init=. Add it to our testsuite given that area >> could do with better coverage. >> >> [0] https://github.com/llvm/llvm-project/issues/119646 >> >> gcc/testsuite/ChangeLog: >> >> * gcc.dg/torture/dse-trivial-auto-var-init.c: New test. >> >> Co-authored-by: Andrew Pinski <pins...@gmail.com> >> --- >> OK? > > Ok. If a bug currently in gcc, would be nice to submit a bug report, get a > number and attach it into the test case. If a bug in the past, would be nice > to attach that number to it.
Thanks, pushed. PR108657 is the closest I see but not quite the same. All branches with -ftrivial-auto-var-init pass this testcase. > >> .../gcc.dg/torture/dse-trivial-auto-var-init.c | 17 +++++++++++++++++ >> 1 file changed, 17 insertions(+) >> create mode 100644 gcc/testsuite/gcc.dg/torture/dse-trivial-auto-var-init.c >> >> diff --git a/gcc/testsuite/gcc.dg/torture/dse-trivial-auto-var-init.c >> b/gcc/testsuite/gcc.dg/torture/dse-trivial-auto-var-init.c >> new file mode 100644 >> index 000000000000..5a3d4c4e3ecb >> --- /dev/null >> +++ b/gcc/testsuite/gcc.dg/torture/dse-trivial-auto-var-init.c >> @@ -0,0 +1,17 @@ >> +/* Testcase for LLVM bug: >> https://github.com/llvm/llvm-project/issues/119646 */ >> +/* { dg-do run } */ >> +/* { dg-additional-options "-ftrivial-auto-var-init=zero" } */ >> + >> +int b = 208; >> +[[gnu::noinline]] >> +void f(int *e, int a) { >> + *e = !!b; >> + if (a) >> + __builtin_trap(); >> +} >> +int main(void) { >> + b = 0; >> + f(&b, 0); >> + if (b != 0) >> + __builtin_trap(); >> +} >> >> base-commit: 99d5ef700619c28904846399a6f6692af4c56b1b >> -- >> 2.47.1 >>