From: Sunil K Pandey Date: Fri, 24 Jul 2020 21:08:41 +0000 (-0700) Subject: Add testcase to show kernel issue got fixed by pr95237 [PR96192] X-Git-Tag: basepoints/gcc-12~5942 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=07c70c29affe7c6d01ab37cc7bc725fd1351f668;p=thirdparty%2Fgcc.git Add testcase to show kernel issue got fixed by pr95237 [PR96192] This test case, extracted from PR 95645, was failing because alignment of local long long variable got lowered from 8 bytes to 4 bytes in adjust alignment pass, which triggered assert failure. This test case passes now because PR 95237 fix only allows lowering of alignment of local variables in the front end. As a result, alignment of local long long variable no longer gets lowered in adjust alignment pass. gcc/testsuite/ChangeLog: PR target/96192 * c-c++-common/pr96192-1.c: New test. --- diff --git a/gcc/testsuite/c-c++-common/pr96192-1.c b/gcc/testsuite/c-c++-common/pr96192-1.c new file mode 100644 index 000000000000..4d9be06a045f --- /dev/null +++ b/gcc/testsuite/c-c++-common/pr96192-1.c @@ -0,0 +1,16 @@ +/* { dg-do compile { target ia32 } } */ +/* { dg-options "-mpreferred-stack-boundary=2 -Os -w" } */ + +int a; + +long long +b (void) +{ +} + +void +c (void) +{ + if (b()) + a = 1; +}