re PR middle-end/67335 (ICE in compiling omp simd function with unused argument)

PR middle-end/67335
	* omp-simd-clone.c (simd_clone_adjust_argument_types): Use NULL prefix
	for tmp simd array if DECL_NAME (parm) is NULL.

	* g++.dg/vect/simd-clone-7.cc: New test.

From-SVN: r242678
This commit is contained in:
Jakub Jelinek 2016-11-21 20:17:36 +01:00 committed by Jakub Jelinek
parent afb3458277
commit 699e8cb7b4
4 changed files with 22 additions and 2 deletions

View File

@ -1,3 +1,9 @@
2016-11-21 Jakub Jelinek <jakub@redhat.com>
PR middle-end/67335
* omp-simd-clone.c (simd_clone_adjust_argument_types): Use NULL prefix
for tmp simd array if DECL_NAME (parm) is NULL.
2016-11-20 Jeff Law <law@redhat.com>
PR target/25128

View File

@ -630,8 +630,9 @@ simd_clone_adjust_argument_types (struct cgraph_node *node)
if (node->definition)
sc->args[i].simd_array
= create_tmp_simd_array (IDENTIFIER_POINTER (DECL_NAME (parm)),
parm_type, sc->simdlen);
= create_tmp_simd_array (DECL_NAME (parm)
? IDENTIFIER_POINTER (DECL_NAME (parm))
: NULL, parm_type, sc->simdlen);
}
adjustments.safe_push (adj);
}

View File

@ -1,5 +1,8 @@
2016-11-21 Jakub Jelinek <jakub@redhat.com>
PR middle-end/67335
* g++.dg/vect/simd-clone-7.cc: New test.
PR c++/71973
* g++.dg/torture/pr53321.C (size_t): Use __SIZE_TYPE__ instead of
long unsigned int.

View File

@ -0,0 +1,10 @@
// PR middle-end/67335
// { dg-do compile }
// { dg-additional-options "-fopenmp-simd" }
#pragma omp declare simd notinbranch uniform(y)
float
bar (float x, float *y, int)
{
return y[0] + y[1] * x;
}