vect-fold-1.c
348 Bytes
-
fold-const.c (native_encode_expr): New function to encode the target… · 78bf6e2f
fold-const.c (native_encode_expr): New function to encode the target representation of an INTEGER_CST... * fold-const.c (native_encode_expr): New function to encode the target representation of an INTEGER_CST, REAL_CST, COMPLEX_CST or VECTOR_CST into a specified buffer. (native_encode_int): New function. (native_encode_real): New function. (native_encode_complex): New function. (native_encode_vector): New function. (native_interpret_expr): Inverse of native_encode_expr to convert a target representation into an INTEGER_CST, REAL_CST etc... (native_interpret_int): New function. (native_interpret_real): New function. (native_interpret_complex): New function. (native_interpret_vector): New function. (fold_view_convert_expr): New function to constant fold/evaluate a VIEW_CONVERT_EXPR of a suitable constant expression. (fold_unary) <VIEW_CONVERT_EXPR>: Call fold_view_convert_expr. Change call of build1 to fold_build1 when constructing a VIEW_CONVERT_EXPR. * gcc.target/i386/20050113-1.c: Tweak testcase to reflect that casts of integers to a vector types are now constant expressions in C. * gcc.dg/vect/vect-fold-1.c: New test case. From-SVN: r112927
Roger Sayle committed