aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndreas Krebbel <krebbel@linux.vnet.ibm.com>2017-09-26 10:35:00 +0000
committerAndreas Krebbel <krebbel@gcc.gnu.org>2017-09-26 10:35:00 +0000
commit41067f07b9eb7bff5c26fe67ff9baefec2556a6b (patch)
treec665ee1bb50380d34f7ef5aa6cea651bf4173c6d
parentd55409bf7c3a82e4afd2ee68af9e1e2f1a1de290 (diff)
downloadgcc-41067f07b9eb7bff5c26fe67ff9baefec2556a6b.zip
gcc-41067f07b9eb7bff5c26fe67ff9baefec2556a6b.tar.gz
gcc-41067f07b9eb7bff5c26fe67ff9baefec2556a6b.tar.bz2
S/390: Set the preferred mode for float vectors
gcc/ChangeLog: 2017-09-26 Andreas Krebbel <krebbel@linux.vnet.ibm.com> * config/s390/s390.c (s390_preferred_simd_mode): Return V4SFmode for SFmode. From-SVN: r253196
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/config/s390/s390.c8
2 files changed, 13 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 5ae094f..92ed88d 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,5 +1,10 @@
2017-09-26 Andreas Krebbel <krebbel@linux.vnet.ibm.com>
+ * config/s390/s390.c (s390_preferred_simd_mode): Return V4SFmode
+ for SFmode.
+
+2017-09-26 Andreas Krebbel <krebbel@linux.vnet.ibm.com>
+
* config/s390/vector.md ("vec_unpacks_low_v16qi"): Rename to
vec_unpacks_lo_v16qi.
("vec_unpacku_low_v16qi"): Rename to vec_unpacku_lo_v16qi.
diff --git a/gcc/config/s390/s390.c b/gcc/config/s390/s390.c
index e3fafa2a6..0ceeef4 100644
--- a/gcc/config/s390/s390.c
+++ b/gcc/config/s390/s390.c
@@ -15859,6 +15859,14 @@ s390_atomic_assign_expand_fenv (tree *hold, tree *clear, tree *update)
static machine_mode
s390_preferred_simd_mode (scalar_mode mode)
{
+ if (TARGET_VXE)
+ switch (mode)
+ {
+ case E_SFmode:
+ return V4SFmode;
+ default:;
+ }
+
if (TARGET_VX)
switch (mode)
{