aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJakub Jelinek <jakub@redhat.com>2022-11-09 11:37:58 +0100
committerJakub Jelinek <jakub@redhat.com>2022-11-09 11:37:58 +0100
commitcecc039fbb4ffdb0e5185fdd7f8f87c3eec68832 (patch)
treecbc9119f8c290cb8f5240e432eec8539a42b6373
parent79f1313608b468fd6a0f329d2e265fa67bba7cc1 (diff)
downloadgcc-cecc039fbb4ffdb0e5185fdd7f8f87c3eec68832.zip
gcc-cecc039fbb4ffdb0e5185fdd7f8f87c3eec68832.tar.gz
gcc-cecc039fbb4ffdb0e5185fdd7f8f87c3eec68832.tar.bz2
testsuite: Fix up pr107541.c test
The test fails when long is 32-bit rather than 64-bit (say x86_64 with RUNTESTFLAGS='--target_board=unix\{-m32,-m64\} tree-ssa.exp=pr107541.c' ). I've tweaked it to use long long so it passes even on the 32-bit targets, and added an early out for weirdo targets because I think the test assumes the usual 1/2/4/8 bytes sizes for char/short/int/long long. 2022-11-09 Jakub Jelinek <jakub@redhat.com> PR tree-optimization/107541 * gcc.dg/tree-ssa/pr107541.c (c): Use long long type rather than long. (main): Punt if sizeof short isn't 2, or int 4, or long long 8.
-rw-r--r--gcc/testsuite/gcc.dg/tree-ssa/pr107541.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/gcc/testsuite/gcc.dg/tree-ssa/pr107541.c b/gcc/testsuite/gcc.dg/tree-ssa/pr107541.c
index 4751421..9c89db5 100644
--- a/gcc/testsuite/gcc.dg/tree-ssa/pr107541.c
+++ b/gcc/testsuite/gcc.dg/tree-ssa/pr107541.c
@@ -3,9 +3,11 @@
unsigned char a = 1;
char b, e;
-long c;
+long long c;
short d;
int main() {
+ if (sizeof (short) != 2 || sizeof (int) != 4 || sizeof (long long) != 8)
+ return 0;
a = ~(1 && a);
c = ~((~a / 8 | -2) & 11007578330939886389LLU);
e = -c;