From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 7856) id 632333858C60; Wed, 9 Mar 2022 03:21:31 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 632333858C60 MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset="utf-8" From: Xi Ruoyao To: gcc-cvs@gcc.gnu.org Subject: [gcc r12-7555] mips: avoid signed overflow in LUI_OPERAND [PR104842] X-Act-Checkin: gcc X-Git-Author: Xi Ruoyao X-Git-Refname: refs/heads/master X-Git-Oldrev: 17bffa0c9f90df49bde6671816bde04008b6c5af X-Git-Newrev: 2ab70a4a5c2d5a9ffb923f13b1c3b938c60dd0f0 Message-Id: <20220309032131.632333858C60@sourceware.org> Date: Wed, 9 Mar 2022 03:21:31 +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, 09 Mar 2022 03:21:31 -0000 https://gcc.gnu.org/g:2ab70a4a5c2d5a9ffb923f13b1c3b938c60dd0f0 commit r12-7555-g2ab70a4a5c2d5a9ffb923f13b1c3b938c60dd0f0 Author: Xi Ruoyao Date: Wed Mar 9 01:08:58 2022 +0800 mips: avoid signed overflow in LUI_OPERAND [PR104842] gcc/ PR target/104842 * config/mips/mips.h (LUI_OPERAND): Cast the input to an unsigned value before adding an offset. Diff: --- gcc/config/mips/mips.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gcc/config/mips/mips.h b/gcc/config/mips/mips.h index bf5c1d5a709..0029864fdcd 100644 --- a/gcc/config/mips/mips.h +++ b/gcc/config/mips/mips.h @@ -2309,7 +2309,7 @@ enum reg_class #define LUI_OPERAND(VALUE) \ (((VALUE) | 0x7fff0000) == 0x7fff0000 \ - || ((VALUE) | 0x7fff0000) + 0x10000 == 0) + || ((unsigned HOST_WIDE_INT) (VALUE) | 0x7fff0000) + 0x10000 == 0) /* Return a value X with the low 16 bits clear, and such that VALUE - X is a signed 16-bit value. */