Jakub Jelinek <ja...@redhat.com> writes: > Hi! > > Apparently VECTOR_CSTs shouldn't be stepped if they contain floating > elements and also widening conversions can be problematic if there is > wrapping in the narrower type. On the following testcase, we create a > stepped VECTOR_CST with REAL_CST elts and ICE whenever we try to print it or > when we try to expand it. The following patch follows what fold_convert_const > does. > > Bootstrapped/regtested on x86_64-linux and i686-linux, ok for trunk? > > 2019-02-05 Jakub Jelinek <ja...@redhat.com> > > PR middle-end/89210 > * fold-const-call.c (fold_const_vec_convert): Pass true as last > operand to new_unary_operation only if both element types are integral > and it isn't a widening conversion. Return NULL_TREE if > new_unary_operation failed.
OK, thanks. Richard