PR c++/85052 * tree-vect-generic.c: Include insn-config.h and recog.h. (expand_vector_piecewise): Add defaulted ret_type argument, if non-NULL, use that in preference to type for the result type. (expand_vector_parallel): Formatting fix. (do_vec_conversion, do_vec_narrowing_conversion, expand_vector_conversion): New functions. (expand_vector_operations_1): Call expand_vector_conversion for VEC_CONVERT ifn calls. * internal-fn.def (VEC_CONVERT): New internal function. * internal-fn.c (expand_VEC_CONVERT): New function. * fold-const-call.c (fold_const_vec_convert): New function. (fold_const_call): Use it for CFN_VEC_CONVERT. * doc/extend.texi (__builtin_convertvector): Document. c-family/ * c-common.h (enum rid): Add RID_BUILTIN_CONVERTVECTOR. (c_build_vec_convert): Declare. * c-common.c (c_build_vec_convert): New function. c/ * c-parser.c (c_parser_postfix_expression): Parse __builtin_convertvector. cp/ * cp-tree.h (cp_build_vec_convert): Declare. * parser.c (cp_parser_postfix_expression): Parse __builtin_convertvector. * constexpr.c: Include fold-const-call.h. (cxx_eval_internal_function): Handle IFN_VEC_CONVERT. (potential_constant_expression_1): Likewise. * semantics.c (cp_build_vec_convert): New function. * pt.c (tsubst_copy_and_build): Handle CALL_EXPR to IFN_VEC_CONVERT. testsuite/ * c-c++-common/builtin-convertvector-1.c: New test. * c-c++-common/torture/builtin-convertvector-1.c: New test. * g++.dg/ext/builtin-convertvector-1.C: New test. * g++.dg/cpp0x/constexpr-builtin4.C: New test. From-SVN: r267632
Name |
Last commit
|
Last update |
---|---|---|
.. | ||
aarch64-vect-lane-1.c | Loading commit data... | |
aarch64-vect-lane-2.c | Loading commit data... | |
asm-inline.c | Loading commit data... | |
builtin-arith-overflow-1.c | Loading commit data... | |
builtin-arith-overflow-1.h | Loading commit data... | |
builtin-arith-overflow-10.c | Loading commit data... | |
builtin-arith-overflow-11.c | Loading commit data... | |
builtin-arith-overflow-12.c | Loading commit data... | |
builtin-arith-overflow-12.h | Loading commit data... | |
builtin-arith-overflow-13.c | Loading commit data... | |
builtin-arith-overflow-14.c | Loading commit data... | |
builtin-arith-overflow-15.c | Loading commit data... | |
builtin-arith-overflow-16.c | Loading commit data... | |
builtin-arith-overflow-17.c | Loading commit data... | |
builtin-arith-overflow-18.c | Loading commit data... | |
builtin-arith-overflow-2.c | Loading commit data... | |
builtin-arith-overflow-3.c | Loading commit data... | |
builtin-arith-overflow-4.c | Loading commit data... | |
builtin-arith-overflow-5.c | Loading commit data... | |
builtin-arith-overflow-6.c | Loading commit data... | |
builtin-arith-overflow-7.c | Loading commit data... | |
builtin-arith-overflow-8.c | Loading commit data... | |
builtin-arith-overflow-9.c | Loading commit data... | |
builtin-arith-overflow-p-1.c | Loading commit data... | |
builtin-arith-overflow-p-10.c | Loading commit data... | |
builtin-arith-overflow-p-11.c | Loading commit data... | |
builtin-arith-overflow-p-12.c | Loading commit data... | |
builtin-arith-overflow-p-13.c | Loading commit data... | |
builtin-arith-overflow-p-14.c | Loading commit data... | |
builtin-arith-overflow-p-15.c | Loading commit data... | |
builtin-arith-overflow-p-16.c | Loading commit data... | |
builtin-arith-overflow-p-17.c | Loading commit data... | |
builtin-arith-overflow-p-18.c | Loading commit data... | |
builtin-arith-overflow-p-19.c | Loading commit data... | |
builtin-arith-overflow-p-2.c | Loading commit data... | |
builtin-arith-overflow-p-3.c | Loading commit data... | |
builtin-arith-overflow-p-4.c | Loading commit data... | |
builtin-arith-overflow-p-5.c | Loading commit data... | |
builtin-arith-overflow-p-6.c | Loading commit data... | |
builtin-arith-overflow-p-7.c | Loading commit data... | |
builtin-arith-overflow-p-8.c | Loading commit data... | |
builtin-arith-overflow-p-9.c | Loading commit data... | |
builtin-arith-overflow.h | Loading commit data... | |
builtin-convertvector-1.c | Loading commit data... | |
complex-alias-1.c | Loading commit data... | |
complex-sign-add.c | Loading commit data... | |
complex-sign-mixed-add.c | Loading commit data... | |
complex-sign-mixed-div.c | Loading commit data... | |
complex-sign-mixed-mul.c | Loading commit data... | |
complex-sign-mixed-sub.c | Loading commit data... | |
complex-sign-mul-minus-one.c | Loading commit data... | |
complex-sign-mul-one.c | Loading commit data... | |
complex-sign-mul.c | Loading commit data... | |
complex-sign-sub.c | Loading commit data... | |
complex-sign.h | Loading commit data... | |
pr42834.c | Loading commit data... | |
pr46137.c | Loading commit data... | |
pr53505.c | Loading commit data... | |
pr57945.c | Loading commit data... | |
pr58794-1.c | Loading commit data... | |
pr58794-2.c | Loading commit data... | |
pr60026.c | Loading commit data... | |
pr60971.c | Loading commit data... | |
pr61184.c | Loading commit data... | |
pr61741.c | Loading commit data... | |
pr71261.c | Loading commit data... | |
pr77544.c | Loading commit data... | |
pr79731.c | Loading commit data... | |
pr83553.c | Loading commit data... | |
pr85022.c | Loading commit data... | |
pr87248.c | Loading commit data... | |
vector-compare-1.c | Loading commit data... | |
vector-compare-2.c | Loading commit data... | |
vector-shift.c | Loading commit data... | |
vector-shift1.c | Loading commit data... | |
vector-shift2.c | Loading commit data... | |
vector-subscript-1.c | Loading commit data... | |
vector-subscript-2.c | Loading commit data... | |
vector-subscript-3.c | Loading commit data... | |
vshuf-16.inc | Loading commit data... | |
vshuf-2.inc | Loading commit data... | |
vshuf-4.inc | Loading commit data... | |
vshuf-8.inc | Loading commit data... | |
vshuf-main.inc | Loading commit data... | |
vshuf-v16hi.c | Loading commit data... | |
vshuf-v16qi.c | Loading commit data... | |
vshuf-v2df.c | Loading commit data... | |
vshuf-v2di.c | Loading commit data... | |
vshuf-v2sf.c | Loading commit data... | |
vshuf-v2si.c | Loading commit data... | |
vshuf-v4df.c | Loading commit data... | |
vshuf-v4di.c | Loading commit data... | |
vshuf-v4hi.c | Loading commit data... | |
vshuf-v4sf.c | Loading commit data... | |
vshuf-v4si.c | Loading commit data... | |
vshuf-v8hi.c | Loading commit data... | |
vshuf-v8qi.c | Loading commit data... | |
vshuf-v8si.c | Loading commit data... |