From patchwork Sun Jan 7 05:24:17 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Mike Frysinger X-Patchwork-Id: 83477 Return-Path: X-Original-To: patchwork@sourceware.org Delivered-To: patchwork@sourceware.org Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id 120F73858433 for ; Sun, 7 Jan 2024 05:24:44 +0000 (GMT) X-Original-To: gdb-patches@sourceware.org Delivered-To: gdb-patches@sourceware.org Received: from smtp.gentoo.org (dev.gentoo.org [IPv6:2001:470:ea4a:1:5054:ff:fec7:86e4]) by sourceware.org (Postfix) with ESMTP id 796AF3858418 for ; Sun, 7 Jan 2024 05:24:19 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 796AF3858418 Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=gentoo.org Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=gentoo.org ARC-Filter: OpenARC Filter v1.0.0 sourceware.org 796AF3858418 Authentication-Results: server2.sourceware.org; arc=none smtp.remote-ip=2001:470:ea4a:1:5054:ff:fec7:86e4 ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1704605060; cv=none; b=magRG+XHKc9eaBYD8wOFqG5hoa0V0m/8cK4hpzQKK7q1JqYroMo2kj8M+jBCquODbnfkVXuLAy/KdIPpPlQa07AQFwtpqTEaHicQzKqE7EDxLoQCtHC7cvaLimIPpew+IOLtD3lm30jn5J2tHuY76chMcVq/yXUhB1PnseHLQeo= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1704605060; c=relaxed/simple; bh=stU3/Vufd631aQTbeSgiV8kSSsTp+/L/r/F+puxB0LM=; h=From:To:Subject:Date:Message-ID:MIME-Version; b=ghhDTfoy98+8SGtnUGv7reLYMptNp629Cdk0sbTapTG0DEdlNLkquYrBCTpaPvJz0jp4svlZ4CVbKzs619g9Ziq3bPYw+37PZzP6M7Pccfl9Pcg+AwZ4m+vmor+D9qlI3INaq2H0XqMB5Hsfh09eXnEP3XLsfPKm9PBHIowKyjs= ARC-Authentication-Results: i=1; server2.sourceware.org Received: by smtp.gentoo.org (Postfix, from userid 559) id C63E9343236; Sun, 7 Jan 2024 05:24:18 +0000 (UTC) From: Mike Frysinger To: gdb-patches@sourceware.org Subject: [PATCH] sim: sh: avoid left shifting negative values Date: Sun, 7 Jan 2024 00:24:17 -0500 Message-ID: <20240107052417.28947-1-vapier@gentoo.org> X-Mailer: git-send-email 2.43.0 MIME-Version: 1.0 X-Spam-Status: No, score=-11.3 required=5.0 tests=BAYES_00, GIT_PATCH_0, JMQ_SPF_NEUTRAL, KAM_DMARC_STATUS, SPF_HELO_PASS, SPF_PASS, TXREP, T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org X-BeenThere: gdb-patches@sourceware.org X-Mailman-Version: 2.1.30 Precedence: list List-Id: Gdb-patches mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: gdb-patches-bounces+patchwork=sourceware.org@sourceware.org We just want to create a bitmask here, so cast the mask to unsigned to avoid left shifting a negative value which is undefined behavior. --- sim/sh/gencode.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sim/sh/gencode.c b/sim/sh/gencode.c index c121d53bb40b..8246e89432f0 100644 --- a/sim/sh/gencode.c +++ b/sim/sh/gencode.c @@ -2350,7 +2350,7 @@ static op ppi_tab[] = " res = 31;", "do", " {", - " if (Sx & ~0 << i)", + " if (Sx & ((unsigned)~0 << i))", " {", " res -= i;", " Sx >>= i;", @@ -2373,7 +2373,7 @@ static op ppi_tab[] = "res = 31;", "do", " {", - " if (Sy & ~0 << i)", + " if (Sy & ((unsigned)~0 << i))", " {", " res -= i;", " Sy >>= i;",