From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 1251) id 5C10C3858401; Wed, 10 Aug 2022 06:08:05 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 5C10C3858401 MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset="utf-8" From: Roger Sayle To: gcc-cvs@gcc.gnu.org Subject: [gcc r13-2009] [Committed] PR other/106575: Use "signed char" in new fold-eqandshift-4.c X-Act-Checkin: gcc X-Git-Author: Roger Sayle X-Git-Refname: refs/heads/master X-Git-Oldrev: 6d001ec15aee236b447197a1505142601a282dc7 X-Git-Newrev: c16d9f78dc81664e3341157c5a6efb85c0c141f4 Message-Id: <20220810060805.5C10C3858401@sourceware.org> Date: Wed, 10 Aug 2022 06:08:05 +0000 (GMT) X-BeenThere: gcc-cvs@gcc.gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Gcc-cvs mailing list List-Unsubscribe: , List-Archive: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 10 Aug 2022 06:08:05 -0000 https://gcc.gnu.org/g:c16d9f78dc81664e3341157c5a6efb85c0c141f4 commit r13-2009-gc16d9f78dc81664e3341157c5a6efb85c0c141f4 Author: Roger Sayle Date: Wed Aug 10 07:05:33 2022 +0100 [Committed] PR other/106575: Use "signed char" in new fold-eqandshift-4.c My recently added testcase gcc.dg/fold-eqandshift-4.c, incorrectly assumed that "char" was "signed char", and hence fails on powerpc64 where this isn't the case. Fixed by making "signed char" explicit where needed in this test. Committed as obvious. 2022-08-10 Roger Sayle gcc/testsuite/ChangeLog PR other/106575 * gcc.dg/fold-eqandshift-4.c: Use "signed char" explicitly. Diff: --- gcc/testsuite/gcc.dg/fold-eqandshift-4.c | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/gcc/testsuite/gcc.dg/fold-eqandshift-4.c b/gcc/testsuite/gcc.dg/fold-eqandshift-4.c index 42d5190703e..fbba438556e 100644 --- a/gcc/testsuite/gcc.dg/fold-eqandshift-4.c +++ b/gcc/testsuite/gcc.dg/fold-eqandshift-4.c @@ -1,14 +1,14 @@ /* { dg-do compile } */ /* { dg-options "-O2 -fdump-tree-optimized" } */ -int sr30eq00(char x) { return ((x >> 4) & 0x30) == 0; } -int sr30ne00(char x) { return ((x >> 4) & 0x30) != 0; } -int sr30eq20(char z) { return ((z >> 4) & 0x30) == 0x20; } -int sr30ne20(char z) { return ((z >> 4) & 0x30) != 0x20; } -int sr30eq30(char x) { return ((x >> 4) & 0x30) == 0x30; } -int sr30ne30(char x) { return ((x >> 4) & 0x30) != 0x30; } -int sr33eq33(char x) { return ((x >> 4) & 0x33) == 0x33; } -int sr33ne33(char x) { return ((x >> 4) & 0x33) != 0x33; } +int sr30eq00(signed char x) { return ((x >> 4) & 0x30) == 0; } +int sr30ne00(signed char x) { return ((x >> 4) & 0x30) != 0; } +int sr30eq20(signed char z) { return ((z >> 4) & 0x30) == 0x20; } +int sr30ne20(signed char z) { return ((z >> 4) & 0x30) != 0x20; } +int sr30eq30(signed char x) { return ((x >> 4) & 0x30) == 0x30; } +int sr30ne30(signed char x) { return ((x >> 4) & 0x30) != 0x30; } +int sr33eq33(signed char x) { return ((x >> 4) & 0x33) == 0x33; } +int sr33ne33(signed char x) { return ((x >> 4) & 0x33) != 0x33; } int ur30eq00(unsigned char z) { return ((z >> 4) & 0x30) == 0; } int ur30ne00(unsigned char z) { return ((z >> 4) & 0x30) != 0; }