From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 1005) id E68DA385700D; Fri, 18 Jun 2021 04:24:01 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org E68DA385700D Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit From: Michael Meissner To: gcc-cvs@gcc.gnu.org Subject: [gcc(refs/users/meissner/heads/work056)] Fix xxeval predicates. X-Act-Checkin: gcc X-Git-Author: Michael Meissner X-Git-Refname: refs/users/meissner/heads/work056 X-Git-Oldrev: 94d01e76a4277db4bfdd41a00f69bc7b8a493a53 X-Git-Newrev: d64d7661e35eb43d8014154f1700e69f4d979ce1 Message-Id: <20210618042401.E68DA385700D@sourceware.org> Date: Fri, 18 Jun 2021 04:24:01 +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: Fri, 18 Jun 2021 04:24:02 -0000 https://gcc.gnu.org/g:d64d7661e35eb43d8014154f1700e69f4d979ce1 commit d64d7661e35eb43d8014154f1700e69f4d979ce1 Author: Michael Meissner Date: Fri Jun 18 00:23:40 2021 -0400 Fix xxeval predicates. In doing the patch to move the XX* built-in functions from altivec.md to vsx.md, I noticed that the xxeval built-in function used the altivec_register_operand predicate. Since it takes vsx registers, this might force the register allocate to issue a move when it could use a traditional floating point register. This patch fixes that. gcc/ 2021-06-18 Michael Meissner * config/rs6000/vsx.md (xxeval): Use register_predicate instead of altivec_register_predicate. Diff: --- gcc/config/rs6000/vsx.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/gcc/config/rs6000/vsx.md b/gcc/config/rs6000/vsx.md index c9cc96e200e..e912641abb8 100644 --- a/gcc/config/rs6000/vsx.md +++ b/gcc/config/rs6000/vsx.md @@ -6577,9 +6577,9 @@ ;; XXEVAL built-in function support (define_insn "xxeval" [(set (match_operand:V2DI 0 "register_operand" "=wa") - (unspec:V2DI [(match_operand:V2DI 1 "altivec_register_operand" "wa") - (match_operand:V2DI 2 "altivec_register_operand" "wa") - (match_operand:V2DI 3 "altivec_register_operand" "wa") + (unspec:V2DI [(match_operand:V2DI 1 "register_operand" "wa") + (match_operand:V2DI 2 "register_operand" "wa") + (match_operand:V2DI 3 "register_operand" "wa") (match_operand:QI 4 "u8bit_cint_operand" "n")] UNSPEC_XXEVAL))] "TARGET_POWER10"