]> git.ipfire.org Git - thirdparty/gcc.git/commit
This fixes problems with tests that exceed a data type or the maximum stack frame...
authorJoern Rennecke <joern.rennecke@riscy-ip.com>
Mon, 12 Aug 2024 10:13:24 +0000 (11:13 +0100)
committerJoern Rennecke <joern.rennecke@riscy-ip.com>
Mon, 12 Aug 2024 10:27:12 +0000 (11:27 +0100)
commit46bd63d872ffb9733c4fff51033447f26ce56576
tree375ebcc0648d4b64ecd2c8962e8f9da268f854fa
parent40b9a7beb79acbea569be3066768cfb62c0f7c31
This fixes problems with tests that exceed a data type or the maximum stack frame size on 16 bit targets.

Note: GCC has a limitation that a stack frame cannot exceed half the address space.

For two tests the decision to modify or skip them seems not so clear-cut;
I choose to modify gcc.dg/pr47893.c to use types that fit the numbers, as
that seemed to have little impact on the test, and skip gcc.dg/pr115646.c
for 16 bit, as layout of structs with bitfields members can have quite
subtle rules.

gcc/testsuite/
* gcc.dg/pr107523.c: Make sure variables can fit numbers.
* gcc.dg/pr47893.c: Add dg-require-effective-target size20plus clause.
* c-c++-common/torture/builtin-clear-padding-2.c:
dg-require-effective-target size20plus.
* gcc.dg/pr115646.c: dg-require-effective-target int32plus.
* c-c++-common/analyzer/coreutils-sum-pr108666.c:
For c++, expect a warning about exceeding maximum object size
if not size20plus.
* gcc.dg/torture/inline-mem-cpy-1.c:
Like the included file, dg-require-effective-target ptr32plus.
* gcc.dg/torture/inline-mem-cmp-1.c: Likewise.
gcc/testsuite/c-c++-common/analyzer/coreutils-sum-pr108666.c
gcc/testsuite/c-c++-common/torture/builtin-clear-padding-2.c
gcc/testsuite/gcc.dg/pr107523.c
gcc/testsuite/gcc.dg/pr115646.c
gcc/testsuite/gcc.dg/pr47893.c
gcc/testsuite/gcc.dg/torture/inline-mem-cmp-1.c
gcc/testsuite/gcc.dg/torture/inline-mem-cpy-1.c