diff options
author | Jakub Jelinek <jakub@redhat.com> | 2023-12-09 15:29:51 +0100 |
---|---|---|
committer | Jakub Jelinek <jakub@redhat.com> | 2023-12-09 15:29:51 +0100 |
commit | af8bbd631f5425e9be084dfd1f2b9487a31a350e (patch) | |
tree | f713bf4afdf12a5d0ea4318492818682341e4753 | |
parent | cdf45e00a936a76a785c592c9730f24ef1ac25cd (diff) | |
download | gcc-af8bbd631f5425e9be084dfd1f2b9487a31a350e.zip gcc-af8bbd631f5425e9be084dfd1f2b9487a31a350e.tar.gz gcc-af8bbd631f5425e9be084dfd1f2b9487a31a350e.tar.bz2 |
testsuite: Add testcase for already fixed PR [PR112924]
This testcase got fixed with
r14-6132-g50f2a3370d177f8fe9bea0461feb710523e048a2 .
I'm just adding a testcase so that it doesn't reappear.
2023-12-09 Jakub Jelinek <jakub@redhat.com>
PR tree-optimization/112924
* gcc.dg/pr112924.c: New test.
-rw-r--r-- | gcc/testsuite/gcc.dg/pr112924.c | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/gcc/testsuite/gcc.dg/pr112924.c b/gcc/testsuite/gcc.dg/pr112924.c new file mode 100644 index 0000000..c8a51d4 --- /dev/null +++ b/gcc/testsuite/gcc.dg/pr112924.c @@ -0,0 +1,26 @@ +/* PR tree-optimization/112924 */ +/* { dg-do compile } */ +/* { dg-options "-O2 -w" } */ +/* { dg-additional-options "-msse2" { target i?86-*-* x86_64-*-* } } */ + +struct S { long a; char b[64]; }; +void foo (struct S a); +char c; +int d[3541]; + +static void +bar (struct S *s, char *p) +{ + unsigned int a = sizeof (d) - sizeof (int) - s->a; + long c = __builtin_object_size (s, 0); + for (; a >= 64; a -= 64, p += 4); + __builtin___memcpy_chk (s, p, a, c); +} + +void +baz (void) +{ + struct S s = {}; + bar (&s, &c); + foo (s); +} |