From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 1005) id B6D263989CAD; Wed, 21 Apr 2021 23:10:37 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org B6D263989CAD 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/work049)] Update ChangeLog.meissner. X-Act-Checkin: gcc X-Git-Author: Michael Meissner X-Git-Refname: refs/users/meissner/heads/work049 X-Git-Oldrev: 19e3fe1306d83fc988008b95ca77361960baee93 X-Git-Newrev: d9d64d8e9523ec9e6727bb02985aec4664e9f427 Message-Id: <20210421231037.B6D263989CAD@sourceware.org> Date: Wed, 21 Apr 2021 23:10:37 +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, 21 Apr 2021 23:10:37 -0000 https://gcc.gnu.org/g:d9d64d8e9523ec9e6727bb02985aec4664e9f427 commit d9d64d8e9523ec9e6727bb02985aec4664e9f427 Author: Michael Meissner Date: Wed Apr 21 19:10:16 2021 -0400 Update ChangeLog.meissner. gcc/ 2021-04-21 Michael Meissner * ChangeLog.meissner: Update. Diff: --- gcc/ChangeLog.meissner | 74 ++++++++++++++++++++++++-------------------------- 1 file changed, 36 insertions(+), 38 deletions(-) diff --git a/gcc/ChangeLog.meissner b/gcc/ChangeLog.meissner index 21ee40692c3..f8a119abcd3 100644 --- a/gcc/ChangeLog.meissner +++ b/gcc/ChangeLog.meissner @@ -1,3 +1,33 @@ +work049.patch021: +2021-04-21 Michael Meissner + + * config/rs6000/constraint.md (eD): New constraint. + * config/rs6000/predicates.md (easy_fp_constant): If the constant + can be loaded with XXSPLTI32DX, it is easy. + (xxsplti32dx_operand): New predicate. + (easy_vector_constant): If the constant can be loaded with + XXSPLTI32DX, it is easy. + * config/rs6000/rs6000-protos.h (xxsplti32dx_constant_p): New + declaration. + * config/rs6000/rs6000.c (rs6000_option_override_internal): Add + support for -mxxsplti32dx. + (+xxsplti32dx_constant_p): New function. + (output_vec_const_move): If the operand can be loaded with + XXSPLTI32DX, split it. + (rs6000_opt_masks): Add -mxxsplti32dx. + * config/rs6000/rs6000.md (movsf_hardfloat): Add support for + constants loaded with XXSPLTI32DX. + (mov_hardfloat32, FMOVE64 iterator): Add support for + constants loaded with XXSPLTI32DX. + (mov_hardfloat64, FMOVE64 iterator): Add support for + constants loaded with XXSPLTI32DX. + * config/rs6000/rs6000.opt (-mxxsplti32dx): New option. + * config/rs6000/vsx.md (UNSPEC_XXSPLTI32DX_CONST): New unspec. + (XXSPLTI32DX): New mode iterator. + (xxsplti32dx_): New insn and splitter for XXSPLTI32DX. + (xxsplti32dx__first): New insn. + (xxsplti32dx__second): New insn. + work049.patch019: 2021-04-21 Michael Meissner @@ -38,49 +68,17 @@ work049.patch017: work049.patch016: 2021-04-21 Michael Meissner - * config/rs6000/altivec.me (UNSPEC_XXSPLTI32DX): Move to vsx.md. + * config/rs6000/altivec.md (UNSPEC_XXSPLTI32DX): Move to vsx.md. (xxsplti32dx_v4si): Move to vsx.md. (xxsplti32dx_v4si_inst): Move to vsx.md. (xxsplti32dx_v4sf): Move to vsx.md. (xxsplti32dx_v4sf_inst): Move to vsx.md. - * config/rs6000/contraints.md (eD): New constraint. - * config/rs6000/predicates.md (easy_fp_constant): If we can load - the constant with a pair of XXSPLTI32DX instructions, it is easy. - (xxsplti32dx_operand): New predicate. - (easy_vector_constant): If we can load the constant with a pair of - XXSPLTI32DX instructions, it is easy. - * config/rs6000/rs6000-cpus.def (OTHER_POWER10_MASKS): Add - -mxxsplti32dx. - (POWERPC_MASKS): Add -mxxsplti32dx. - * config/rs6000/rs6000-protos.h (xxsplti32dx_constant_p): New - declaration. - * config/rs6000/rs6000.c (rs6000_option_override_internal): Add - -mxxsplti32dx support. - (xxsplti32dx_constant_p): New helper function. - (output_vec_const_move): Split constants that need XXSPLTI32DX. - (rs6000_opt_masks): Add -mxxsplti32dx. - * config/rs6000/rs6000.md (movsf_hardfloat): Add support for - loading constants with XXSPLTI32DX. - (mov_hardfloat32, FMOVE64 iterator): Add support for loading - constants with XXSPLTI32DX. - (mov_hardfloat64, FMOVE64 iterator): Add support for loading - constants with XXSPLTI32DX. - * config/rs6000/rs6000.opt (-mxxsplti32dx): New switch. - * config/rs6000/vsx.md (UNSPEC_XXSPLTI32DX): Move unspec here from + * config/rs6000/vsx.md (UNSPEC_XXSPLTI32DX): Move from altivec.md. - (UNSPEC_XXSPLTI32DX_CONST): New unspec. - (vsx_mov_64bit): Bump up size of 'W' vector constants to - accomidate a pair of XXSPLTI32DX instructions. - (vsx_mov_32bit): Bump up size of 'W' vector constants to - accomidate a pair of XXSPLTI32DX instructions. - (XXSPLTI32DX): New mode iterator. - (xxsplti32dx_): New insn and splits. - (xxsplti32dx__first): New insns. - (xxsplti32dx__second): New insns. - (xxsplti32dx_v4si): Move here from altivec.md. - (xxsplti32dx_v4si_inst): Move here from altivec.md. - (xxsplti32dx_v4sf): Move here from altivec.md. - (xxsplti32dx_v4sf_inst): Move here from altivec.md. + (xxsplti32dx_v4si): Move from altivec.md. + (xxsplti32dx_v4si_inst): Move from altivec_md. + (xxsplti32dx_v4sf): Move from altivec.md. + (xxsplti32dx_v4sf_inst): Move from altivec.md. work049.patch014: 2021-04-21 Michael Meissner