From: Sam James Date: Fri, 13 Dec 2024 04:42:29 +0000 (+0000) Subject: testsuite: torture: add LLVM testcase for DSE vs. -ftrivial-auto-var-init= X-Git-Tag: basepoints/gcc-16~3007 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=26ca00eeedb01f9d5102586b76ae2a6e787111af;p=thirdparty%2Fgcc.git testsuite: torture: add LLVM testcase for DSE vs. -ftrivial-auto-var-init= 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 --- 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(); +}