> Am 08.05.2025 um 18:19 schrieb Andrew Pinski <quic_apin...@quicinc.com>:
>
> AFter r16-400-g5e363ffefaceb9, on targets where char is unsigned by
> default, tree-ssa/pr31261.c testcase started to fail:
> FAIL: gcc.dg/tree-ssa/pr31261.c scan-tree-dump-times original "return
> \\\\(char\\\\) -\\\\(unsigned char\\\\) c & 31;" 1
>
> This is because the casts are no longer needed as both char and
> unsigned char are the same signedness.
> I was deciding between add -fsigned-char or changing the testcase
> to use explicitly `signed char`. I went with using an explicit
> `signed char` as that would be case normally.
>
> OK?
Ok
Richard
> PR testsuite/120168
>
> gcc/testsuite/ChangeLog:
>
> * gcc.dg/tree-ssa/pr31261.c: Use `signed char` instead
> of plain char.
>
> Signed-off-by: Andrew Pinski <quic_apin...@quicinc.com>
> ---
> gcc/testsuite/gcc.dg/tree-ssa/pr31261.c | 6 +++---
> 1 file changed, 3 insertions(+), 3 deletions(-)
>
> diff --git a/gcc/testsuite/gcc.dg/tree-ssa/pr31261.c
> b/gcc/testsuite/gcc.dg/tree-ssa/pr31261.c
> index 127300fdd24..dafb4c46c9c 100644
> --- a/gcc/testsuite/gcc.dg/tree-ssa/pr31261.c
> +++ b/gcc/testsuite/gcc.dg/tree-ssa/pr31261.c
> @@ -14,8 +14,8 @@ f2 (long int b)
> return (16 + (b & 7)) & 15;
> }
>
> -char
> -f3 (char c)
> +signed char
> +f3 (signed char c)
> {
> return -(c & 63) & 31;
> }
> @@ -34,7 +34,7 @@ f5 (int e)
>
> /* { dg-final { scan-tree-dump-times "return -a \& 7;" 1 "original" } } */
> /* { dg-final { scan-tree-dump-times "return b \& 7;" 1 "original" } } */
> -/* { dg-final { scan-tree-dump-times "return \\(char\\) -\\(unsigned char\\)
> c \& 31;" 1 "original" } } */
> +/* { dg-final { scan-tree-dump-times "return \\(signed char\\) -\\(unsigned
> char\\) c \& 31;" 1 "original" } } */
> /* { dg-final { scan-tree-dump-times "return \\(int\\) \\(12 - \\(unsigned
> int\\) d\\) \& 7;" 1 "original" { target { ! int16 } } } } */
> /* { dg-final { scan-tree-dump-times "return \\(int\\) \\(12 - \\(unsigned
> short\\) d\\) \& 7;" 1 "original" { target { int16 } } } } */
> /* { dg-final { scan-tree-dump-times "return 12 - \\(e \& 7\\) \& 15;" 1
> "original" } } */
> --
> 2.43.0
>