From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-pl1-x634.google.com (mail-pl1-x634.google.com [IPv6:2607:f8b0:4864:20::634]) by sourceware.org (Postfix) with ESMTPS id B9BFF3858C54 for ; Thu, 26 Jan 2023 21:52:27 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org B9BFF3858C54 Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=gmail.com Received: by mail-pl1-x634.google.com with SMTP id d9so3100503pll.9 for ; Thu, 26 Jan 2023 13:52:27 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=content-disposition:mime-version:message-id:subject:to:from:date :from:to:cc:subject:date:message-id:reply-to; bh=B07aIQAwWF60plduXXzv1x4ukjKzQVS8zj2B+1ZYkPw=; b=WKNhewuSH8PcYokBCqRQrGJMYMwCrVgP1/4E0Ad2PZdUUAQRKEboCLSfP5Z4VQ4lhk YTjOS4Njuq5pZGDRIbo/JjU+L5COU7C46rQGAUGOJnt0dRe39tkvSRb/im/qfZy4BmQi dtXJqMwN+X5f3g+36fijvD4n7veJMB+m3Fi2Lp990Z/TMSLBYAqhN00p+IISG89f9oA1 2SYYLhsSYjvBzy7aAdrgfXMGuWHhWOjSSkdwkeqzvAZ+LPS0gf16ePUXqYpikE5IsLTd rGf58EVZUwTIAts+hp+SRNPR3cKZmsYbQq1I/BCh9f6UsyObNkJh4dUah0x0ME+J2fQR IJcw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=content-disposition:mime-version:message-id:subject:to:from:date :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=B07aIQAwWF60plduXXzv1x4ukjKzQVS8zj2B+1ZYkPw=; b=zCf50B7ynk7RHwrNTwQZeUHD8NutKUOCuYtxG7Q/2W/dQuPUyiGxRcwOG+mOxRqFIr otXnIyERmPWHmjKtWWOqvqgCxfg05TdtDMcDizL0Dk2zixPhs/2N8krRr62h5i/QDlbc j1UTydZ3fnCwoojdu4RChvaE9s6xs2Yes0w+J+LMKh2zuar/L2mPCAmW9k4lmc3/GMMX DfK5yhESNoWbJCDd3K2vl0TnnZNTYEyGYgmxLxQ7DukKSWUWf8ngomkhVYn9mrz09SdK SmSsv2tlcJ1iLDa8PE1cR5zD15JBXxnXSQ6Tt4JuVKJ/ezqclJM5t+MEHBxnYfG6ggwG skXw== X-Gm-Message-State: AO0yUKUg/v1EOCQ6berbOLHNaJZv6f4Wme6ZIXTPlC45qg9NrIDniUHq CfEA5kbYPRp9zBN9gNdBG7ojHMunrj8= X-Google-Smtp-Source: AK7set+oZwJ4+gOW2eLPVsn4jnkr67SAhs9WNycuxTsuKfAYb3OeBdS2UiKru+F/dh4pguiEb5ZOCQ== X-Received: by 2002:a17:902:ec85:b0:196:25b1:a041 with SMTP id x5-20020a170902ec8500b0019625b1a041mr8987035plg.63.1674769946551; Thu, 26 Jan 2023 13:52:26 -0800 (PST) Received: from squeak.grove.modra.org ([2406:3400:51d:8cc0:319f:f0be:bba8:4238]) by smtp.gmail.com with ESMTPSA id jm23-20020a17090304d700b001947222676csm1417650plb.249.2023.01.26.13.52.25 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 26 Jan 2023 13:52:26 -0800 (PST) Received: by squeak.grove.modra.org (Postfix, from userid 1000) id E3D851142CC6; Fri, 27 Jan 2023 08:22:23 +1030 (ACDT) Date: Fri, 27 Jan 2023 08:22:23 +1030 From: Alan Modra To: binutils@sourceware.org Subject: resolve gas shift expressions with large exponents to zero Message-ID: MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline X-Spam-Status: No, score=-3035.1 required=5.0 tests=BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,FREEMAIL_FROM,GIT_PATCH_0,RCVD_IN_DNSWL_NONE,SPF_HELO_NONE,SPF_PASS,TXREP autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org List-Id: * expr.c (resolve_expression ): Resolve shifts exceeding bits in a valueT to zero. diff --git a/gas/expr.c b/gas/expr.c index ba3d2109b9d..794be6f09d8 100644 --- a/gas/expr.c +++ b/gas/expr.c @@ -2320,8 +2320,18 @@ resolve_expression (expressionS *expressionP) return 0; left = (offsetT) left % (offsetT) right; break; - case O_left_shift: left <<= right; break; - case O_right_shift: left >>= right; break; + case O_left_shift: + if (right >= sizeof (left) * CHAR_BIT) + left = 0; + else + left <<= right; + break; + case O_right_shift: + if (right >= sizeof (left) * CHAR_BIT) + left = 0; + else + left >>= right; + break; case O_bit_inclusive_or: left |= right; break; case O_bit_or_not: left |= ~right; break; case O_bit_exclusive_or: left ^= right; break; -- Alan Modra Australia Development Lab, IBM