Commit 218db463 by Richard Biener Committed by Richard Biener

re PR target/67278 (ICE: verify_gimple failed on darwin 14.5 x86_64)

2016-03-02  Richard Biener  <rguenther@suse.de>

	PR middle-end/67278
	* tree-cfg.c (verify_expr): Adjust BIT_FIELD_REF case.

	* gcc.dg/simd-7.c: New testcase.

From-SVN: r233897
parent 22c72158
2016-03-02 Richard Biener <rguenther@suse.de>
PR middle-end/67278
* tree-cfg.c (verify_expr): Adjust BIT_FIELD_REF case.
2016-03-02 Marek Polacek <polacek@redhat.com> 2016-03-02 Marek Polacek <polacek@redhat.com>
PR c/67854 PR c/67854
......
2016-03-02 Richard Biener <rguenther@suse.de>
PR middle-end/67278
* gcc.dg/simd-7.c: New testcase.
2016-03-02 Eric Botcazou <ebotcazou@adacore.com> 2016-03-02 Eric Botcazou <ebotcazou@adacore.com>
* gcc.target/i386/pr70007.c: Tweak. * gcc.target/i386/pr70007.c: Tweak.
......
/* { dg-do compile } */
#if __SIZEOF_LONG_DOUBLE__ == 16 || __SIZEOF_LONG_DOUBLE__ == 8
typedef long double a __attribute__((vector_size (16)));
a __attribute__((noinline))
sum (a first, a second)
{
return first + second;
}
a
foo (a x, a y, a z)
{
return sum (x, y) + z;
}
#else
int main() {}
#endif
...@@ -2959,10 +2959,10 @@ verify_expr (tree *tp, int *walk_subtrees, void *data ATTRIBUTE_UNUSED) ...@@ -2959,10 +2959,10 @@ verify_expr (tree *tp, int *walk_subtrees, void *data ATTRIBUTE_UNUSED)
} }
else if (!INTEGRAL_TYPE_P (TREE_TYPE (t)) else if (!INTEGRAL_TYPE_P (TREE_TYPE (t))
&& TYPE_MODE (TREE_TYPE (t)) != BLKmode && TYPE_MODE (TREE_TYPE (t)) != BLKmode
&& (GET_MODE_PRECISION (TYPE_MODE (TREE_TYPE (t))) && (GET_MODE_BITSIZE (TYPE_MODE (TREE_TYPE (t)))
!= tree_to_uhwi (t1))) != tree_to_uhwi (t1)))
{ {
error ("mode precision of non-integral result does not " error ("mode size of non-integral result does not "
"match field size of BIT_FIELD_REF"); "match field size of BIT_FIELD_REF");
return t; return t;
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment