]> gcc.gnu.org Git - gcc.git/commit
testsuite/108604 - gcc.dg/torture/pr108574-3.c hangs on unsigned char archs
authorXianmiao Qu <cooper.qu@linux.alibaba.com>
Tue, 31 Jan 2023 08:49:06 +0000 (09:49 +0100)
committerRichard Biener <rguenther@suse.de>
Tue, 31 Jan 2023 08:50:40 +0000 (09:50 +0100)
commit78d6489f736963a8a07c494294c72662c49e8e63
treeba67a0229188169d4340292f3bb72039ef22917b
parent603a6fbcaac1e80aa90d1d26318c881a53473066
testsuite/108604 - gcc.dg/torture/pr108574-3.c hangs on unsigned char archs

In the architecture where sign defaults to unsigned, the 'f' will be zero
extended to int type in the expression 'd = ~(f & ~2880764155)', then the
'd' will become -1 wich cause the case to fail.
So it's ok for the architectures where sign defaults to signed like x86,
but failed for the architectures where sign defaults to unsigned like arm
and csky. Change char to signed char to avoid this problem.

PR testsuite/108604
gcc/testsuite:
* gcc.dg/torture/pr108574-3.c (b, f): Change type from char to
signed char.
gcc/testsuite/gcc.dg/torture/pr108574-3.c
This page took 0.072633 seconds and 6 git commands to generate.