- 10 Sep, 2007 18 commits
-
-
exp_ch3.adb (Predef_Spec_Or_Body): When the type is abstract, only create an abstract subprogram in the case of 'Input. 2007-09-10 Gary Dismukes <dismukes@adacore.com> Thomas Quinot <quinot@adacore.com> * exp_ch3.adb (Predef_Spec_Or_Body): When the type is abstract, only create an abstract subprogram in the case of 'Input. For 'Output we now create a real spec/body when the type is abstract, since it can potentially be called. (Predefined_Primitive_Bodies): Now allow the creation of a predefined body for 'Output when the type is abstract (only the creation of the body for 'Input is excluded when the type is abstract). (Stream_Operation_OK): Add an additional condition in the return statement, so that False will be returned for TTS_Stream_Input if the associated tagged type is an abstract extension. Add comments for return statement. (Expand_N_Object_Declaration): For the case of a shared passive variable, insert init proc call only after the shared variable procedures have been processed, because the IP call needs to undergo shared passive variable reference expansion, which requires these procedures to be available (and elaborated). From-SVN: r128335
Gary Dismukes committed -
2007-09-10 Vasiliy Fofanov <fofanov@adacore.com> * adaint.c (__gnat_translate_vms): new function. From-SVN: r128334
Vasiliy Fofanov committed -
2007-09-10 Emmanuel Briot <briot@adacore.com> * s-regpat.adb (Parse_Character_Class): Fix handling of empty character classes ("[]"). From-SVN: r128333Emmanuel Briot committed -
2007-09-10 Robert Dewar <dewar@adacore.com> * exp_atag.ads, exp_atag.adb, mlib-tgt-tru64.adb, mlib-tgt-aix.adb, mlib-tgt-irix.adb, mlib-tgt-hpux.adb, mlib-tgt-linux.adb, mlib-tgt-solaris.adb, mlib-tgt-vms-alpha.adb, mlib-tgt-vms-ia64.adb, mlib-tgt-mingw.adb, mlib-tgt-vxworks.adb, ali.adb, ali.ads, ali-util.adb, ali-util.ads, atree.h, back_end.adb, back_end.ads, bcheck.adb, bcheck.ads, binde.adb, binde.ads, binderr.adb, binderr.ads, bindgen.adb, bindgen.ads, bindusg.adb, bindusg.ads, butil.adb, butil.ads, checks.adb, checks.ads, clean.adb, clean.ads, comperr.adb, comperr.ads, cstand.adb, cstand.ads, debug_a.adb, debug_a.ads, elists.h, errout.adb, erroutc.ads, errutil.adb, errutil.ads, err_vars.ads, eval_fat.adb, eval_fat.ads, exp_sel.ads, exp_sel.adb, exp_aggr.adb, exp_aggr.ads, expander.adb, expander.ads, exp_attr.ads, exp_ch10.ads, exp_ch11.adb, exp_ch12.adb, exp_ch12.ads, exp_ch13.adb, exp_ch13.ads, exp_ch2.adb, exp_ch2.ads, exp_ch3.ads, exp_ch4.adb, exp_ch4.ads, exp_ch5.adb, exp_ch5.ads, exp_ch6.adb, exp_ch6.ads, exp_ch7.adb, exp_ch7.ads, exp_ch8.adb, exp_ch8.ads, exp_ch9.adb, exp_ch9.ads, exp_code.adb, exp_code.ads, exp_dbug.adb, exp_dbug.ads, exp_disp.ads, exp_dist.adb, exp_dist.ads, exp_fixd.adb, exp_fixd.ads, exp_imgv.adb, exp_imgv.ads, exp_intr.adb, exp_intr.ads, exp_pakd.adb, exp_pakd.ads, exp_prag.adb, exp_prag.ads, exp_smem.adb, exp_strm.adb, exp_strm.ads, exp_tss.adb, exp_tss.ads, exp_util.adb, exp_util.ads, exp_vfpt.adb, exp_vfpt.ads, fmap.adb, fmap.ads, fname-sf.adb, fname-sf.ads, fname-uf.adb, fname-uf.ads, frontend.adb, frontend.ads, get_targ.adb, get_targ.ads, gnat1drv.adb, gnat1drv.ads, gnatbind.adb, gnatbind.ads, gnatbl.c, gnatchop.adb, gnatclean.adb, gnatcmd.adb, gnatcmd.ads, gnatdll.adb, gnatfind.adb, gnatkr.adb, gnatkr.ads, gnatlbr.adb, gnatlink.adb, gnatlink.ads, gnatls.adb, gnatls.ads, gnatmake.adb, gnatmake.ads, gnatmem.adb, gnatname.adb, gnatname.ads, gnatprep.adb, gnatprep.ads, gnatsym.adb, gnatxref.adb, gprep.adb, gprep.ads, hlo.adb, hlo.ads, impunit.adb, impunit.ads, inline.adb, inline.ads, itypes.adb, itypes.ads, layout.adb, layout.ads, lib-load.adb, lib-load.ads, lib-util.adb, lib-util.ads, lib-writ.adb, lib-writ.ads, lib-xref.adb, lib-xref.ads, live.adb, live.ads, make.adb, make.ads, makeutl.ads, makeutl.adb, makeusg.adb, makeusg.ads, mdll.adb, mdll.ads, mdll-fil.adb, mdll-fil.ads, mdll-utl.adb, mdll-utl.ads, memroot.adb, memroot.ads, mlib.adb, mlib.ads, mlib-fil.adb, mlib-fil.ads, mlib-prj.adb, mlib-prj.ads, mlib-tgt.adb, mlib-tgt.ads, mlib-utl.adb, mlib-utl.ads, namet.h, nmake.adt, osint.adb, osint.ads, osint-b.adb, osint-b.ads, osint-c.adb, osint-c.ads, osint-l.adb, osint-l.ads, osint-m.adb, osint-m.ads, par.adb, par.ads, par-ch10.adb, par-ch11.adb, par-ch12.adb, par-ch13.adb, par-ch2.adb, par-ch3.adb, par-ch4.adb, par-ch5.adb, par-ch6.adb, par-ch7.adb, par-ch8.adb, par-ch9.adb, par-endh.adb, par-labl.adb, par-load.adb, par-prag.adb, par-sync.adb, par-tchk.adb, par-util.adb, prep.adb, prep.ads, prepcomp.adb, prepcomp.ads, prj.adb, prj.ads, prj-attr.adb, prj-attr.ads, prj-com.ads, prj-dect.adb, prj-dect.ads, prj-err.adb, prj-err.ads, prj-ext.adb, prj-ext.ads, prj-makr.adb, prj-makr.ads, prj-nmsc.adb, prj-nmsc.ads, prj-pars.adb, prj-pars.ads, prj-part.adb, prj-part.ads, prj-pp.adb, prj-pp.ads, prj-proc.adb, prj-proc.ads, prj-strt.adb, prj-strt.ads, prj-tree.adb, prj-tree.ads, prj-util.adb, prj-util.ads, restrict.adb, restrict.ads, rtsfind.adb, rtsfind.ads, scn.adb, scn.ads, scng.adb, scng.ads, sdefault.ads, sem.ads, sem_aggr.ads, sem_attr.adb, sem_case.adb, sem_case.ads, sem_cat.adb, sem_cat.ads, sem_ch10.adb, sem_ch10.ads, sem_ch11.adb, sem_ch11.ads, sem_ch12.ads, sem_ch13.adb, sem_ch13.ads, sem_ch2.adb, sem_ch2.ads, sem_ch3.adb, sem_ch3.ads, sem_ch4.ads, sem_ch5.adb, sem_ch5.ads, sem_ch6.adb, sem_ch6.ads, sem_ch7.adb, sem_ch7.ads, sem_ch8.adb, sem_ch8.ads, sem_ch9.adb, sem_ch9.ads, sem_disp.adb, sem_disp.ads, sem_dist.adb, sem_dist.ads, sem_elab.adb, sem_elab.ads, sem_elim.adb, sem_elim.ads, sem_eval.adb, sem_eval.ads, sem_intr.adb, sem_intr.ads, sem_maps.adb, sem_maps.ads, sem_mech.adb, sem_mech.ads, sem_prag.adb, sem_prag.ads, sem_res.adb, sem_res.ads, sem_smem.adb, sem_smem.ads, sem_type.adb, sem_type.ads, sem_util.adb, sem_util.ads, sem_vfpt.adb, sem_vfpt.ads, sem_warn.adb, sem_warn.ads, sfn_scan.ads, sinfo-cn.adb, sinfo-cn.ads, sinput-c.adb, sinput-c.ads, sinput-d.adb, sinput-d.ads, sinput-l.adb, sinput-l.ads, sinput-p.adb, sinput-p.ads, snames.h, sprint.adb, sprint.ads, stringt.h, style.ads, styleg.adb, styleg.ads, styleg-c.adb, styleg-c.ads, stylesw.adb, stylesw.ads, switch.adb, switch.ads, switch-b.adb, switch-b.ads, switch-c.adb, switch-c.ads, switch-m.adb, switch-m.ads, symbols.adb, symbols.ads, targparm.adb, tbuild.adb, tbuild.ads, tempdir.adb, tempdir.ads, tree_gen.adb, tree_gen.ads, treepr.adb, treepr.ads, treeprs.adt, ttypef.ads, ttypes.ads, types.h, uintp.h, urealp.h, usage.adb, usage.ads, validsw.adb, validsw.ads, vxaddr2line.adb, xeinfo.adb, xnmake.adb, xref_lib.adb, xref_lib.ads, xr_tabls.adb, xr_tabls.ads, xsinfo.adb, xtreeprs.adb, xsnames.adb, vms_conv.ads, vms_conv.adb, xgnatugn.adb, gprmake.adb, makegpr.ads, makegpr.adb, prj-attr-pm.ads, prj-attr-pm.adb, mlib-tgt-lynxos.adb, mlib-tgt-darwin.adb, symbols-vms.adb, symbols-processing-vms-alpha.adb, symbols-processing-vms-ia64.adb, mlib-tgt-specific.adb, mlib-tgt-specific.ads, mlib-tgt-vms.adb, mlib-tgt-vms.ads: Replace headers with GPL v3 headers. From-SVN: r128332
Robert Dewar committed -
2007-09-10 Tobias Burnus <burnus@net-b.de> PR fortran/31547 * gfortran.texi: Document when CPP is called. * intrinsic.texi (IOR): Fix typos. From-SVN: r128331
Tobias Burnus committed -
From-SVN: r128330
Arnaud Charlet committed -
* a-numaux-x86.adb (Logarithmic_Pow): Do not silently clobber x87 registers. From-SVN: r128329
Eric Botcazou committed -
PR target/33369 * gcc/config/i386/sse.md (ashr<mode>3): Change op2 mode to SImode. Use 'N' operand constraint for op2. (lshr<mode>3): Ditto. (ashl<mode>3): Ditto. (vec_shl_<mode>): Use const_0_to_255_mul_8_operand predicate for op2. (vec_shr_<mode>): Use const_0_to_255_mul_8_operand predicate for op2. * gcc/config/i386/i386.c (ix86_expand_builtin) [IX86_BUILTIN_PSLL?128, IX86_BUILTIN_PSRA*?128, IX86_BUILTIN_PSRL?128]: Convert op1 to SImode. testsuite/ChangeLog: PR target/33369 * gcc.dg/vect/pr33369.c: New test. From-SVN: r128328
Uros Bizjak committed -
* decl.c (gnat_to_gnu_entity) <object>: Deal with variable built for a debug renaming declaration specially. From-SVN: r128327
Eric Botcazou committed -
s390.md ("fixuns_trunc<BFP:mode><GPR:mode>2"): Change mode macro in the last real_2expN parameter to uppercase. 2007-09-10 Andreas Krebbel <krebbel1@de.ibm.com> * config/s390/s390.md ("fixuns_trunc<BFP:mode><GPR:mode>2"): Change mode macro in the last real_2expN parameter to uppercase. From-SVN: r128326Andreas Krebbel committed -
2007-09-10 Paul Thomas <pault@gcc.gnu.org> PR fortran/33370 * trans-expr.c (copyable_array_p): Add tests that expression is a variable, that it has no subreferences and that it is a full array. (gfc_trans_assignment): Change conditions to suit modifications to copyable_array_p. 2007-09-10 Paul Thomas <pault@gcc.gnu.org> PR fortran/33370 * gfortran.dg/array_memcpy_5.f90: New test. From-SVN: r128325
Paul Thomas committed -
* tree-pass.h (pass_cselim): Declare new pass. * passes.c (init_optimization_passes): Link in pass_cselim. * tree-ssa-phiopt.c (tree_ssa_phiopt_worker): Renamed from tree_ssa_phiopt; add do_store_elim parameter, handle it by calling cond_store_replacement. (condstoretemp): New static variable. (cond_store_replacement): New function. (tree_ssa_phiopt, tree_ssa_cs_elim): New wrappers around tree_ssa_phiopt_worker. (struct name_to_bb): New. (get_non_trapping, name_to_bb_hash, name_to_bb_eq, add_or_mark_expr, nt_init_block, nt_fini_block): New static functions. (seen_ssa_names, nontrap_set): New static variables. (gate_cselim, pass_cselim): Define new pass. * common.opt (ftree-cselim): New flag. * toplev.c (process_options): Set flag_tree_cselim if required. From-SVN: r128324Michael Matz committed -
simplify-rtx.c (simplify_relational_operation_1): For recent canonicalization, don't recurse if op1 equals both PLUS arguments. * simplify-rtx.c (simplify_relational_operation_1): For recent canonicalization, don't recurse if op1 equals both PLUS arguments. From-SVN: r128323
Hans-Peter Nilsson committed -
* optabs.c (expand_sync_operation): Use plus insn if minus CONST_INT_P(val). (expand_sync_fetch_operation): Ditto. From-SVN: r128322
David Daney committed -
From-SVN: r128321
Danny Smith committed -
2007-09-09 H.J. Lu <hongjiu.lu@intel.com> * i386.md (*floatsisf2_mixed_vector): Use cvtdq2ps instead of cvtpq2ps. (*floatsisf2_sse_vector): Likewise. From-SVN: r128320
H.J. Lu committed -
From-SVN: r128319
Krister Walfridsson committed -
From-SVN: r128317
GCC Administrator committed
-
- 09 Sep, 2007 22 commits
-
-
From-SVN: r128314
Hans-Peter Nilsson committed -
2007-09-09 H.J. Lu <hongjiu.lu@intel.com> * config/i386/i386.h (ix86_tune_indices): Rename X86_USE_VECTOR_CONVERTS to X86_TUNE_USE_VECTOR_CONVERTS. (TARGET_USE_VECTOR_CONVERTS): Updated. * config/i386/i386.c: Likewise. From-SVN: r128313
H.J. Lu committed -
PR c++/33324 * init.c (build_new_1): Use POINTER_PLUS_EXPR instead of MINUS_EXPR to calculate cookie_ptr. From-SVN: r128312
David Daney committed -
From-SVN: r128309
Sandra Loosemore committed -
2007-09-09 Sandra Loosemore <sandra@codesourcery.com> Nigel Stephens <nigel@mips.com> gcc/ * doc/invoke.texi (Overall Options): Add .sx file extension as a synonym for .S. * cppspec.c (known_suffixes): Likewise. * gcc.c (default_compilers): Likewise. Co-Authored-By: Nigel Stephens <nigel@mips.com> From-SVN: r128308Sandra Loosemore committed -
* acinclude.m4 (GLIBCXX_CHECK_SYSTEM_ERROR): Add ECANCELED for cygwin. * configure: Regenerate. * config/os/generic/error_constants.h: Guard. * testsuite/19_diagnostics/headers/system_error/ types_std_c++0x.cc: Same. From-SVN: r128307
Roger Sayle committed -
PR target/30315 * config/i386/i386.h (CANONICALIZE_COMPARISON): Delete. * simplify-rtx.c (simplify_relational_operation_1): Add the canonicalization from i386.h. * doc/md.texi (Canonicalization of Instructions): Document it. From-SVN: r128305
Rask Ingemann Lambertsen committed -
2007-09-09 Benjamin Kosnik <bkoz@redhat.com> * testsuite/25_algorithms/binary_search.cc: Move... * testsuite/25_algorithms/binary_search/2.cc: ...here. * testsuite/25_algorithms/sort.cc: Move... * testsuite/25_algorithms/sort/1.cc: ...here. * testsuite/25_algorithms/partial_sort_copy/2.cc: ...here. * testsuite/25_algorithms/nth_element/3.cc: ...here. * testsuite/25_algorithms/partial_sort/2.cc: ...here. * testsuite/25_algorithms/stable_sort/2.cc: ...here. * testsuite/25_algorithms/min_max.cc: Move... * testsuite/25_algorithms/min/1.cc: ...here. * testsuite/25_algorithms/min/2.cc: ...here. * testsuite/25_algorithms/max/1.cc: ...here. * testsuite/25_algorithms/max/2.cc: ...here. From-SVN: r128303
Benjamin Kosnik committed -
2007-09-09 Andreas Tobler <a.tobler@schweiz.org> PR libgcj/33326 * testsuite/lib/libjava.exp (libjava_arguments): Append the test spec only for linux targets. From-SVN: r128302
Andreas Tobler committed -
* i386.h (ix86_tune_indices): Add X86_USE_VECTOR_CONVERTS. (TARGET_USE_VECTOR_CONVERTS): New. * i386.md: New post-reload splitters for converting SF to DF and DF to SF. (floatsi* expander): Special case vector conversions. (floatsisf2_mixed_vector, floatsisf2_sse_vector_nointernunit, floatsisf2_sse_vector_internunit, floatsisf2_sse_vector, floatsidf2_mixed_vector, floatsidf2_sse_vector): New. (floatsisf2_mixed, floatsisf2_sse, floatsidf2_mixed, floatsidf2_sse): Disable when doing vector converts. (floatsi<mode>2_i387): Disable when * sse.md (vec_dupv2df): Export. * i386.c (ix86_tune_features): Enable SSE conversions. Co-Authored-By: Dwarakanath Rajagopal <dwarak.rajagopal@amd.com> From-SVN: r128301
Jan Hubicka committed -
tree-ssa-operands.c (add_virtual_operand): Only mark stores as has_volatile_ops if alias information is not available. 2007-09-09 Richard Guenther <rguenther@suse.de> * tree-ssa-operands.c (add_virtual_operand): Only mark stores as has_volatile_ops if alias information is not available. * gcc.c-torture/compile/20070906-1.c: New testcase. From-SVN: r128300
Richard Guenther committed -
From-SVN: r128299
Revital Eres committed -
* interpret-run.cc (invokevirtual_resolved): Nullcheck object on TOS. From-SVN: r128298Andrew Haley committed -
* gcc.dg/vect/costmodel/ppc/costmodel-vect-outer-fir.c: Add noinline attribute. * gcc.dg/vect/costmodel/ppc/costmodel-fast-math-vect-pr29925.c, gcc.dg/vect/costmodel/spu/costmodel-fast-math-vect-pr29925.c, gcc.dg/vect/costmodel/x86_64/costmodel-fast-math-vect-pr29925.c: Likewise. From-SVN: r128297
Ira Rosen committed -
* gnat.dg/specs/uc1.ads: Compile with -gnatws. From-SVN: r128296
Eric Botcazou committed -
* gnat.dg/addr2_p.ads: Bump size of array to 9. From-SVN: r128295Eric Botcazou committed -
* tree-vectorizer.h (stmt_vinfo_set_inside_of_loop_cost, stmt_vinfo_set_outside_of_loop_cost): New functions. * tree-vect-transform.c (vect_get_cost_fields): Remove. (vect_model_simple_cost): Call stmt_vinfo_set_inside/outside_of_loop_cost to set the relevant cost field instead of calling vect_get_cost_fields. (vect_model_store_cost, vect_model_load_cost): Likewise. From-SVN: r128294
Ira Rosen committed -
From-SVN: r128293
Revital Eres committed -
From-SVN: r128292
Revital Eres committed -
From-SVN: r128291
Uros Bizjak committed -
2007-09-09 Uros Bizjak <ubizjak@gmail.com> * config/i386/i386.md (X87MODEF12, SSEMODEF): Remove mode iterators. Substitute all uses with ... (MODEF): New mode iterator. (*cmpfp_<mode>_cc): Remove operand constraints from pre-regalloc define_insn_and_split splitter pattern. (fix_trunc<mode>_fisttp_i387_1): Ditto. (*fix_trunc<mode>_i387_1): Ditto. (*fistdi2_1): Ditto. (*fist<mode>2_1): Ditto. (frndintxf2_floor): Ditto. (*fist<mode>2_floor_1): Ditto. (frndintxf2_ceil): Ditto. (*fist<mode>2_ceil_1): Ditto. (frndintxf2_trunc): Ditto. (frndintxf2_mask_pm): Ditto. (prologue): Use (const_int 0) as never generated filler insn. (epilogue): Ditto. (sibcall_epilogue): Ditto. (eh_return_si): Ditto. (eh_return_di): Ditto. (add<mode>3): Rename from adddf3 and addsf3. Macroize expander using MODEF mode iterator. (sub<mode>3): Rename from subdf3 and subsf3. Macroize expander using MODEF mode iterator. (mul<mode>3): Rename from muldf3 and mulsf3. Macroize expander using MODEF mode iterator. (nearbyint<mode>2): Rename from nearbyintdf2 and nearbyintsf2. Macroize expander using MODEF mode iterator. (zero_extendsidi2): Remove operand constraints from expander. (smuldi3_highpart): Ditto. (indirect_jump): Ditto. (tablejump): Ditto. (rsqrtsf2): Ditto. * config/i386/sse.md (storentv4sf): Ditto. (storentv2df): Ditto. (storentv2di): Ditto. (storentsi): Ditto. (sse2_cvtpd2ps): Ditto. (vec_interleave_highv16qi): Ditto. (vec_interleave_lowv16qi): Ditto. (vec_interleave_highv8hi): Ditto. (vec_interleave_lowv8hi): Ditto. (vec_interleave_highv4si): Ditto. (vec_interleave_lowv4si): Ditto. (vec_interleave_highv2di): Ditto. (vec_interleave_lowv2di): Ditto. (sse2_maskmovdqu): Ditto. * config/i386/mmx.md (mmx_maskmovq): Ditto. From-SVN: r128290Uros Bizjak committed -
* tree-vectorizer.h (enum vect_def_type): Start enumeration from 1. (struct _slp_tree, struct _slp_instance): Define new data structures along macros for their access. (struct _loop_vec_info): Define new fields: strided_stores, slp_instances, and slp_unrolling_factor along macros for their access. (enum slp_vect_type): New. (struct _stmt_vec_info): Define new field, slp_type, and macros for its access. (STMT_VINFO_STRIDED_ACCESS): New macro. (vect_free_slp_tree): Declare. (vectorizable_load): Add an argument of type slp_tree. (vectorizable_store, vectorizable_operation, vectorizable_conversion, vectorizable_assignment): Likewise. (vect_model_simple_cost, vect_model_store_cost, vect_model_load_cost): Declare (make extern). * tree-vectorizer.c (new_stmt_vec_info): Initiliaze the new field. (new_loop_vec_info): Likewise. (destroy_loop_vec_info): Free memory allocated for SLP structures. * tree-vect-analyze.c: Include recog.h. (vect_update_slp_costs_according_to_vf): New. (vect_analyze_operations): Add argument for calls to vectorizable_ () functions. For not pure SLP stmts with strided access check that the group size is power of 2. Update the vectorization factor according to SLP. Call vect_update_slp_costs_according_to_vf. (vect_analyze_group_access): New. (vect_analyze_data_ref_access): Call vect_analyze_group_access. (vect_free_slp_tree): New functions. (vect_get_and_check_slp_defs, vect_build_slp_tree, vect_print_slp_tree, vect_mark_slp_stmts, vect_analyze_slp_instance, vect_analyze_slp, vect_make_slp_decision, vect_detect_hybrid_slp_stmts, vect_detect_hybrid_slp): Likewise. (vect_analyze_loop): Call vect_analyze_slp, vect_make_slp_decision and vect_detect_hybrid_slp. * tree-vect-transform.c (vect_estimate_min_profitable_iters): Take SLP costs into account. (vect_get_cost_fields): New function. (vect_model_simple_cost): Make extern, add SLP parameter and handle SLP. (vect_model_store_cost, vect_model_load_cost): Likewise. (vect_get_constant_vectors): New function. (vect_get_slp_vect_defs, vect_get_slp_defs, vect_get_vec_defs_for_stmt_copy, vect_get_vec_defs_for_stmt_copy, vect_get_vec_defs): Likewise. (vectorizable_reduction): Don't handle SLP for now. (vectorizable_call): Don't handle SLP for now. Add argument to vect_model_simple_cost. (vectorizable_conversion): Handle SLP (call vect_get_vec_defs to get SLPed and vectorized defs). Fix indentation and spacing. (vectorizable_assignment): Handle SLP. (vectorizable_induction): Don't handle SLP for now. (vectorizable_operation): Likewise. (vectorizable_type_demotion): Add argument to vect_model_simple_cost. (vectorizable_type_promotion): Likewise. (vectorizable_store, vectorizable_load): Handle SLP. (vectorizable_condition): Don't handle SLP for now. (vect_transform_stmt): Add a new argument for SLP. Check that there is no SLP transformation required for unsupported cases. Add SLP argument for supported cases. (vect_remove_stores): New function. (vect_schedule_slp_instance, vect_schedule_slp): Likewise. (vect_transform_loop): Schedule SLP instances. * Makefile.in: (tree-vect-analyze.o): Depend on recog.h. From-SVN: r128289
Ira Rosen committed
-