re PR target/56043 (ICE in rs6000_builtin_vectorized_libmass for vsx-mass-1.c)

[gcc]
2013-02-08  Michael Meissner  <meissner@linux.vnet.ibm.com>

	PR target/56043
	* config/rs6000/rs6000.c (rs6000_builtin_vectorized_libmass):
	If there is no implicit builtin declaration, just return NULL.

[gcc/testsuite]
2013-02-08  Michael Meissner  <meissner@linux.vnet.ibm.com>

	PR target/56043
	* gcc.target/powerpc/vsx-mass-1.c: Only run this test on
	powerpc*-*-linux*.

From-SVN: r195899
This commit is contained in:
Michael Meissner 2013-02-08 19:46:52 +00:00 committed by Michael Meissner
parent 9d9555437c
commit 51a3348a21
4 changed files with 26 additions and 3 deletions

View File

@ -1,3 +1,12 @@
2013-02-08 Michael Meissner <meissner@linux.vnet.ibm.com>
Backport from mainline
2013-02-08 Michael Meissner <meissner@linux.vnet.ibm.com>
PR target/56043
* config/rs6000/rs6000.c (rs6000_builtin_vectorized_libmass):
If there is no implicit builtin declaration, just return NULL.
2013-02-08 David Edelsohn <dje.gcc@gmail.com>
Michael Meissner <meissner@linux.vnet.ibm.com>

View File

@ -3753,7 +3753,8 @@ rs6000_builtin_vectorized_libmass (tree fndecl, tree type_out, tree type_in)
bdecl = builtin_decl_implicit (fn);
suffix = "d2"; /* pow -> powd2 */
if (el_mode != DFmode
|| n != 2)
|| n != 2
|| !bdecl)
return NULL_TREE;
break;
@ -3790,7 +3791,8 @@ rs6000_builtin_vectorized_libmass (tree fndecl, tree type_out, tree type_in)
bdecl = builtin_decl_implicit (fn);
suffix = "4"; /* powf -> powf4 */
if (el_mode != SFmode
|| n != 4)
|| n != 4
|| !bdecl)
return NULL_TREE;
break;
@ -3803,6 +3805,9 @@ rs6000_builtin_vectorized_libmass (tree fndecl, tree type_out, tree type_in)
gcc_assert (suffix != NULL);
bname = IDENTIFIER_POINTER (DECL_NAME (bdecl));
if (!bname)
return NULL_TREE;
strcpy (name, bname + sizeof ("__builtin_") - 1);
strcat (name, suffix);

View File

@ -1,3 +1,12 @@
2013-02-08 Michael Meissner <meissner@linux.vnet.ibm.com>
Backport from mainline
2013-02-08 Michael Meissner <meissner@linux.vnet.ibm.com>
PR target/56043
* gcc.target/powerpc/vsx-mass-1.c: Only run this test on
powerpc*-*-linux*.
2013-02-05 Richard Biener <rguenther@suse.de>
Backport from mainline

View File

@ -1,4 +1,4 @@
/* { dg-do compile { target { powerpc*-*-* } } } */
/* { dg-do compile { target { powerpc*-*-linux* } } } */
/* { dg-skip-if "" { powerpc*-*-darwin* } { "*" } { "" } } */
/* { dg-require-effective-target powerpc_vsx_ok } */
/* { dg-options "-O3 -ftree-vectorize -mcpu=power7 -ffast-math -mveclibabi=mass" } */