r239361 - in /trunk/gcc: ChangeLog config/s390/...

krebbel@gcc.gnu.org krebbel@gcc.gnu.org
Thu Aug 11 11:15:00 GMT 2016


Author: krebbel
Date: Thu Aug 11 11:15:50 2016
New Revision: 239361

URL: https://gcc.gnu.org/viewcvs?rev=239361&root=gcc&view=rev
Log:
S/390: Provide low-level builtins with __int128 ops.

gcc/ChangeLog:

2016-08-11  Andreas Krebbel  <krebbel@linux.vnet.ibm.com>

	* config/s390/s390-builtin-types.def: Add INT128 types.
	* config/s390/s390-builtins.def: Add INT128 variants for the add
	sub low-level builtins dealing with TImode.
	* config/s390/s390.c (s390_expand_builtin): Allow mode conversions
	via subreg when expanding a builtin.
	* config/s390/s390.md: Remove UNSPEC_VEC_ADDC_U128,
	UNSPEC_VEC_SUB_U128, and UNSPEC_VEC_SUBC_U128 constants.
	Fix comment.
	* config/s390/vecintrin.h: Adjust builtin names accordingly.
	* config/s390/vx-builtins.md ("vec_add_u128"): Remove expander.
	("vec_addc<mode>", "vec_addc_u128"): Merge to
	"vacc<bhfgq>_<mode>".
	("vec_adde_u128"): Rename to "vacq". Change mode to TImode.
	("vec_addec_u128"): Rename to "vacccq". Change mode to TImode.
	("vec_subc<mode>", "vec_subc_u128"): Merge to
	"vscbi<bhfgq>_<mode>".
	("vec_sube_u128"): Rename to "vsbiq". Change mode to TImode.
	("vec_subec_u128"): Rename to "vsbcbiq". Change mode to TImode.


Modified:
    trunk/gcc/ChangeLog
    trunk/gcc/config/s390/s390-builtin-types.def
    trunk/gcc/config/s390/s390-builtins.def
    trunk/gcc/config/s390/s390.c
    trunk/gcc/config/s390/s390.md
    trunk/gcc/config/s390/vecintrin.h
    trunk/gcc/config/s390/vx-builtins.md



More information about the Gcc-cvs mailing list