On Tue, Jan 07, 2014 at 03:54:56PM +0100, Richard Biener wrote: > > This fixes PR59471 by properly gimplifying > > VIEW_CONVERT_EXPR<uint8x8_t>(BIT_FIELD_REF <VIEW_CONVERT_EXPR<vector(2) > long unsigned int>(x), 64, 0>) > > to use separate stmts for the VIEW_CONVERT_EXPRs. > > Bootstrap and regtest running on x86_64-unknown-linux-gnu.
What about if something post gimplification creates VCE(BFR(VCE())) or similar and tries to force_gimple_operand_gsi or similar, then without making the above invalid in the predicates we'd still not try to gimplify it at all (because it would pass the predicate), and then hit the verification ICE. > 2014-01-07 Richard Biener <rguent...@suse.de> > > PR middle-end/59471 > * gimplify.c (gimplify_expr): Gimplify register-register type > VIEW_CONVERT_EXPRs to separate stmts. > > * gcc.dg/pr59471.c: New testcase. Jakub