From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from simark.ca by simark.ca with LMTP id UDd6NfO3jWHjSwAAWB0awg (envelope-from ) for ; Thu, 11 Nov 2021 19:40:19 -0500 Received: by simark.ca (Postfix, from userid 112) id D91241F0BD; Thu, 11 Nov 2021 19:40:19 -0500 (EST) X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on simark.ca X-Spam-Level: X-Spam-Status: No, score=-3.0 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,MAILING_LIST_MULTI,URIBL_BLOCKED autolearn=ham autolearn_force=no version=3.4.2 Received: from sourceware.org (server2.sourceware.org [8.43.85.97]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by simark.ca (Postfix) with ESMTPS id 758861E813 for ; Thu, 11 Nov 2021 19:40:19 -0500 (EST) Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id 18DDD3858417 for ; Fri, 12 Nov 2021 00:40:19 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 18DDD3858417 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sourceware.org; s=default; t=1636677619; bh=A7nvWhjlif1jGjDRI36KhTom/7iqYDs4IKrgZDgzYXY=; h=To:Subject:Date:In-Reply-To:References:List-Id:List-Unsubscribe: List-Archive:List-Post:List-Help:List-Subscribe:From:Reply-To: From; b=X8SylNN3fNg6oYNFEmfTJUR52F9MYohZY9U+fHUkpjSxwVF2oqD+n+y0BHrtzs1PF vZ0tjDbfIfJ5AYYcM100uuXUPIjLTV1/sveSGHHsijnEjJ2o+WECxwH3P0YYO01+Wn ZQbpbnP+BmSXgL/sWN0FhLKA7mP+wqZSHMmkuBJg= Received: from smtp.gentoo.org (woodpecker.gentoo.org [140.211.166.183]) by sourceware.org (Postfix) with ESMTP id 087C13858D28 for ; Fri, 12 Nov 2021 00:39:35 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org 087C13858D28 Received: by smtp.gentoo.org (Postfix, from userid 559) id 8519E343110; Fri, 12 Nov 2021 00:39:34 +0000 (UTC) To: gdb-patches@sourceware.org Subject: [PATCH 2/2] sim: sh: fix switch-bool warnings Date: Thu, 11 Nov 2021 19:39:33 -0500 Message-Id: <20211112003933.3612-2-vapier@gentoo.org> X-Mailer: git-send-email 2.33.0 In-Reply-To: <20211112003933.3612-1-vapier@gentoo.org> References: <68a4c7ee-700a-22f5-62ad-9257de03e9f9@linaro.org> <20211112003933.3612-1-vapier@gentoo.org> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-BeenThere: gdb-patches@sourceware.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Gdb-patches mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , From: Mike Frysinger via Gdb-patches Reply-To: Mike Frysinger Errors-To: gdb-patches-bounces+public-inbox=simark.ca@sourceware.org Sender: "Gdb-patches" This code triggers -Werror=switch-bool warnings with <=gcc-5 versions. Rework it to use if statements instead as it also simplifies a bit. --- sim/sh/interp.c | 79 ++++++++++++++++++------------------------------- 1 file changed, 28 insertions(+), 51 deletions(-) diff --git a/sim/sh/interp.c b/sim/sh/interp.c index 93923fa2c56c..559b39a63226 100644 --- a/sim/sh/interp.c +++ b/sim/sh/interp.c @@ -1104,74 +1104,51 @@ div1 (int *R, int iRn2, int iRn1/*, int T*/) R[iRn1] <<= 1; R[iRn1] |= (unsigned long) T; - switch (old_q) + if (!old_q) { - case 0: - switch (M) + if (!M) { - case 0: tmp0 = R[iRn1]; R[iRn1] -= R[iRn2]; tmp1 = (R[iRn1] > tmp0); - switch (Q) - { - case 0: - SET_SR_Q (tmp1); - break; - case 1: - SET_SR_Q ((unsigned char) (tmp1 == 0)); - break; - } - break; - case 1: + if (!Q) + SET_SR_Q (tmp1); + else + SET_SR_Q ((unsigned char) (tmp1 == 0)); + } + else + { tmp0 = R[iRn1]; R[iRn1] += R[iRn2]; tmp1 = (R[iRn1] < tmp0); - switch (Q) - { - case 0: - SET_SR_Q ((unsigned char) (tmp1 == 0)); - break; - case 1: - SET_SR_Q (tmp1); - break; - } - break; + if (!Q) + SET_SR_Q ((unsigned char) (tmp1 == 0)); + else + SET_SR_Q (tmp1); } - break; - case 1: - switch (M) + } + else + { + if (!M) { - case 0: tmp0 = R[iRn1]; R[iRn1] += R[iRn2]; tmp1 = (R[iRn1] < tmp0); - switch (Q) - { - case 0: - SET_SR_Q (tmp1); - break; - case 1: - SET_SR_Q ((unsigned char) (tmp1 == 0)); - break; - } - break; - case 1: + if (!Q) + SET_SR_Q (tmp1); + else + SET_SR_Q ((unsigned char) (tmp1 == 0)); + } + else + { tmp0 = R[iRn1]; R[iRn1] -= R[iRn2]; tmp1 = (R[iRn1] > tmp0); - switch (Q) - { - case 0: - SET_SR_Q ((unsigned char) (tmp1 == 0)); - break; - case 1: - SET_SR_Q (tmp1); - break; - } - break; + if (!Q) + SET_SR_Q ((unsigned char) (tmp1 == 0)); + else + SET_SR_Q (tmp1); } - break; } /*T = (Q == M);*/ SET_SR_T (Q == M); -- 2.33.0