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

krebbel@gcc.gnu.org krebbel@gcc.gnu.org
Thu Dec 13 11:57:00 GMT 2018


Author: krebbel
Date: Thu Dec 13 11:57:16 2018
New Revision: 267084

URL: https://gcc.gnu.org/viewcvs?rev=267084&root=gcc&view=rev
Log:
S/390: Fix zvector vec_double builtin

The (unsigned) long int to double vector conversion instructions
expect 2 immediate parameters. One for the inexact suppression
control and another one for the rounding mode.  However, the
vec_double builtin has just the vector source operand.  The 2
addtional operands need to be added with an intermediate expander.
The expanders were already there but unfortunately not wired up
correctly to the builtin.

gcc/ChangeLog:

2018-12-13  Andreas Krebbel  <krebbel@linux.ibm.com>

	* config/s390/s390-builtins.def (s390_vec_double_s64): Map to
	s390_vec_double_s64 instead of s390_vcdgb.
	(s390_vec_double_u64): Map to s390_vec_double_u64 instead of
	s390_vcdlgb.

gcc/testsuite/ChangeLog:

2018-12-13  Andreas Krebbel  <krebbel@linux.ibm.com>

	* gcc.target/s390/zvector/vec-double-1.c: New test.
	* gcc.target/s390/zvector/vec-double-2.c: New test.


Added:
    trunk/gcc/testsuite/gcc.target/s390/zvector/vec-double-1.c
    trunk/gcc/testsuite/gcc.target/s390/zvector/vec-double-2.c
Modified:
    trunk/gcc/ChangeLog
    trunk/gcc/config/s390/s390-builtins.def
    trunk/gcc/testsuite/ChangeLog



More information about the Gcc-cvs mailing list