From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 2063) id 970823858D34; Tue, 21 May 2024 02:02:52 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 970823858D34 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gcc.gnu.org; s=default; t=1716256972; bh=74ky3dmlVH+/4TYAnKNSF5Ah+XQ9/Edx5THa/9B4vyA=; h=From:To:Subject:Date:From; b=f4sEWAAwR7/y/XriQYt9RWtLDPrWEow9ey+jcKSYZKvvwCB4W8FeyQLhzYTSYo0p8 YsoS7crtM6m3Kj6lxaKb5hImgDW5axb9cO6jOuq0ZG7BZA+g0PGZFMp3K9a1daaZ2C ggj4o0Qf4dYmfG+HlA7OGdg8Uztdg9JpM5kD4ZvU= MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset="utf-8" From: Kewen Lin To: gcc-cvs@gcc.gnu.org Subject: [gcc r15-703] rs6000: Add assert !TARGET_VSX if !TARGET_ALTIVEC and strip a useless check X-Act-Checkin: gcc X-Git-Author: Kewen Lin X-Git-Refname: refs/heads/master X-Git-Oldrev: c547e353597ac4e0af09c2faca8c5a16744dcea4 X-Git-Newrev: b390b0115696353ba579706531fbd3bcf39281c5 Message-Id: <20240521020252.970823858D34@sourceware.org> Date: Tue, 21 May 2024 02:02:52 +0000 (GMT) List-Id: https://gcc.gnu.org/g:b390b0115696353ba579706531fbd3bcf39281c5 commit r15-703-gb390b0115696353ba579706531fbd3bcf39281c5 Author: Kewen Lin Date: Mon May 20 21:01:06 2024 -0500 rs6000: Add assert !TARGET_VSX if !TARGET_ALTIVEC and strip a useless check In function rs6000_option_override_internal, we have the checks and adjustments like: if (TARGET_P8_VECTOR && !TARGET_ALTIVEC) rs6000_isa_flags &= ~OPTION_MASK_P8_VECTOR; if (TARGET_P8_VECTOR && !TARGET_VSX) rs6000_isa_flags &= ~OPTION_MASK_P8_VECTOR; But in fact some previous code has guaranteed !TARGET_VSX if !TARGET_ALTIVEC, so we can remove the former check and adjustment. This patch is to remove it accordingly and also place an explicit assertion. gcc/ChangeLog: * config/rs6000/rs6000.cc (rs6000_option_override_internal): Remove useless check on TARGET_P8_VECTOR && !TARGET_ALTIVEC and add an assertion on !TARGET_VSX if !TARGET_ALTIVEC. Diff: --- gcc/config/rs6000/rs6000.cc | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/gcc/config/rs6000/rs6000.cc b/gcc/config/rs6000/rs6000.cc index d18e262d81de..e4dc629ddcc9 100644 --- a/gcc/config/rs6000/rs6000.cc +++ b/gcc/config/rs6000/rs6000.cc @@ -3940,8 +3940,9 @@ rs6000_option_override_internal (bool global_init_p) rs6000_isa_flags &= ~OPTION_MASK_FPRND; } - if (TARGET_P8_VECTOR && !TARGET_ALTIVEC) - rs6000_isa_flags &= ~OPTION_MASK_P8_VECTOR; + /* Assert !TARGET_VSX if !TARGET_ALTIVEC and make some adjustments + based on either !TARGET_VSX or !TARGET_ALTIVEC concise. */ + gcc_assert (TARGET_ALTIVEC || !TARGET_VSX); if (TARGET_P8_VECTOR && !TARGET_VSX) rs6000_isa_flags &= ~OPTION_MASK_P8_VECTOR;