1. 19 May, 2011 24 commits
    • hubicka's avatar
      · b2640e03
      hubicka authored
      	* gimple.c (gtc_visited, gtc_ob, type_pair_hash, type_pair_eq): Remove.
      	(GIMPLE_TYPE_PAIR_SIZE): New macro.
      	(type_pair_cache): New static var.
      	(lookup_type_pair): Use fixed sized custom hash; make inline.
      	(gtc_visit, gimple_types_compatible_p, gimple_register_type_1): Update
      	calls of lookup_type_pair.
      	(print_gimple_types_stats): Remove cache stats.
      	(free_gimple_type_tables): Free type_pair_cache instead of gtc_visited
      	and gtc_ob.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@173925 138bc75d-0d04-0410-961f-82ee72b054a4
      b2640e03
    • uros's avatar
      * config/i386/i386.c (option_override_internal): Enable TARGET_CMOVE · d9973cb4
      uros authored
      	when TARGET_RDRND is active.
      	(ix86_expand_builtin) <case IX86_BUILTIN_RDRAND{16,32,64}_STEP>:
      	Generate dummy SImode target register when target is NULL.
      
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@173921 138bc75d-0d04-0410-961f-82ee72b054a4
      d9973cb4
    • burnus's avatar
      2011-06-19 Tobias Burnus <burnus@net-b.de> · c16a0489
      burnus authored
              PR fortran/18918
              * trans-types.c (gfc_get_element_type): Handle scalar coarrays.
              (gfc_get_nodesc_array_type): Make a variant-type copy for scalar
              coarrays.
              * trans.c (gfc_build_array_ref): Return original type not
              * variant
              copy for scalar coarrays.
              * trans-array.c (gfc_conv_array_ref): Ditto.
      
      2011-06-19  Tobias Burnus  <burnus@net-b.de>
      
              PR fortran/18918
              * gfortran.dg/coarray_21.f90: New.
      
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@173920 138bc75d-0d04-0410-961f-82ee72b054a4
      c16a0489
    • paolo's avatar
      2011-05-19 Paolo Carlini <paolo.carlini@oracle.com> · 46262525
      paolo authored
      	* include/std/tuple (tuple_element<__i, const _Tp>,
      	tuple_element<__i, volatile _Tp>, tuple_element<__i,
      	const volatile _Tp>, tuple_size<const _Tp>, tuple_size<volatile _Tp>,
      	tuple_size<const volatile _Tp>): Add.
      	* include/std/utility (tuple_size<std::pair<_Tp1, _Tp2>>): Tweak.
      	* include/std/array (tuple_size<array<_Tp, _Nm>>): Likewise.
      	* testsuite/20_util/tuple/cv_tuple_size.cc: New.
      	* testsuite/20_util/tuple/cv_tuple_element.cc: Likewise.
      	* testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Tweak dg-warning
      	line number.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@173919 138bc75d-0d04-0410-961f-82ee72b054a4
      46262525
    • paolo's avatar
      2011-05-19 Paolo Carlini <paolo.carlini@oracle.com> · 68757038
      paolo authored
      	* include/std/tuple (tuple<>::operator=(tuple&&)): Specify as
              noexcept.
      	(__get_helper): Likewise.
      	(_Head_base<>::_M_head, _Tuple_impl<>::_M_head, _M_tail): Likewise.
      	* include/bits/move.h (swap): Likewise.
      	* include/bits/algorithmfwd.h (swap): Adjust.
      	* include/bits/stl_pair.h (pair<>::operator=(pair&&)): Spec noexcept.
      	* testsuite/util/testsuite_allocator.h (uneq_allocator): In C++0x
      	mode, prefer delete to access control to make the type not copy
      	assignable.
      	* testsuite/util/testsuite_tr1.h: Add test classes.
      	* testsuite/20_util/tuple/noexcept_swap.cc: New.
      	* testsuite/20_util/tuple/noexcept_move_assign.cc: Likewise.
      	* testsuite/25_algorithms/reverse/moveable.cc: Likewise, prefer
      	delete to access control.
      	* testsuite/25_algorithms/swap_ranges/moveable.cc: Likewise.
      	* testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust dg-warning
      	line numbers.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@173917 138bc75d-0d04-0410-961f...
      68757038
    • jsm28's avatar
      contrib: · bcbb3950
      jsm28 authored
      	* gcc_update (gcc/config/arm/arm-tables.opt): Also depend on
      	gcc/config/arm/arm-fpus.def.
      
      gcc:
      	* config/arm/arm-fpus.def: New.
      	* config/arm/genopt.sh: Generate Enum and EnumValue entries from
      	arm-fpus.def.
      	* config/arm/arm-tables.opt: Regenerate.
      	* config/arm/arm.c (all_fpus): Move contents to arm-fpus.def.
      	(arm_option_override): Don't decode FPU name to string here.
      	* config/arm/arm.opt (mfpu=): Use Enum.
      	* config/arm/t-arm ($(srcdir)/config/arm/arm-tables.opt, arm.o):
      	Update dependencies.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@173916 138bc75d-0d04-0410-961f-82ee72b054a4
      bcbb3950
    • jsm28's avatar
      * collect2.c: Include diagnostic.h. · 11091b4d
      jsm28 authored
      	(fatal_perror, fatal, error, fancy_abort): Remove.
      	(main): Set progname.  Call xmalloc_set_program_name and
      	diagnostic_initialize.
      	(maybe_run_lto_and_relink, main, collect_execute, scan_prog_file,
      	scan_libraries, resolve_lib_name): Call fatal_error instead of
      	fatal and fatal_perror.
      	* collect2.h (error, fatal, fatal_perror): Don't declare.
      	* tlink.c: Include diagnostic-core.h.
      	(recompile_files): Call fatal_error instead of fatal_perror.
      	* Makefile.in (COLLECT2_OBJS): Include diagnostic.o,
      	pretty-print.o and input.o.
      	(collect2.o, tlink.o): Update dependencies.
      
      testsuite:
      	* lib/prune.exe (prune_gcc_output): Expect "error:" in collect2
      	output.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@173915 138bc75d-0d04-0410-961f-82ee72b054a4
      11091b4d
    • ro's avatar
      * config/i386/i386.md (tls_initial_exec_64_sun): Add semicolon. · c2b88971
      ro authored
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@173914 138bc75d-0d04-0410-961f-82ee72b054a4
      c2b88971
    • ro's avatar
      PR target/40483 · 3468b0d6
      ro authored
      	* configure.ac (gcc_cv_as_comdat_group_group): Check for Sun as
      	COMDAT group syntax, both SPARC and x86 variants.
      	(HAVE_COMDAT_GROUP): Also define if gcc_cv_as_comdat_group_group.
      	* configure: Regenerate.
      	* config/sol2.h (TARGET_SOLARIS): Define.
      	(PUSHSECTION_FORMAT): Remove.
      	(SECTION_NAME_FORMAT): Define.
      	* config/sol2.c: Include hashtab.h.
      	(solaris_output_init_fini): Replace PUSHSECTION_FORMAT by its
      	expansion, using SECTION_NAME_FORMAT.
      	(solaris_comdat_htab): New variable.
      	(struct comdat_entry): Define.
      	(comdat_hash): New function.
      	(comdat_eq): New function.
      	(solaris_elf_asm_comdat_section): New function.
      	(solaris_define_comdat_signature): New function.
      	(solaris_code_end): New function.
      	* config/sol2-protos.h (solaris_elf_asm_comdat_section): Declare.
      	(solaris_code_end): Declare.
      	* config/t-sol2 (sol2.o): Add $HASHTAB_H dependency.
      	* config/i386/i386.c (ix86_code_end) [TARGET_SOLARIS]: Call
      	solaris_code_end.
      	(i386_solaris_elf_named_section): Wrap in TARGET_SOLARIS...
      3468b0d6
    • jakub's avatar
      PR c++/49043 · 14a77a22
      jakub authored
      	* decl.c (check_omp_return): Stop searching on sk_function_parms.
      
      	* testsuite/libgomp.c++/pr49043.C: New test.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@173907 138bc75d-0d04-0410-961f-82ee72b054a4
      14a77a22
    • rguenth's avatar
      2011-05-19 Richard Guenther <rguenther@suse.de> · 820edc7c
      rguenth authored
      	PR testsuite/49063
      	* gcc.dg/builtin-object-size-11.c: Use -std=gnu89.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@173906 138bc75d-0d04-0410-961f-82ee72b054a4
      820edc7c
    • ktietz's avatar
      2011-05-19 Kai Tietz <ktietz@redhat.com> · d515ee79
      ktietz authored
      	* tree-cfg.c (verify_gimple_assign_binary): Barf on
      	TRUTH_AND_EXPR, TRUTH_OR_EXPR, and TRUTH_XOR_EXPR.
      	(gimplify_expr): Move TRUTH_AND|OR|XOR_EXPR to its binary form.
      
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@173903 138bc75d-0d04-0410-961f-82ee72b054a4
      d515ee79
    • ro's avatar
      2011-05-19 Anatoly Sokolov <aesok@post.ru> · f5030be1
      ro authored
      	    Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
      
      	* config/t-sol2 (sol2.o): Add $(TARGET_H) dependency.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@173902 138bc75d-0d04-0410-961f-82ee72b054a4
      f5030be1
    • rguenth's avatar
      2011-05-19 Richard Guenther <rguenther@suse.de> · dda02ea2
      rguenth authored
      	PR middle-end/48985
      	* tree-object-size.c (addr_object_size): If the pointed-to
      	variable is a decl use DECL_SIZE_UNIT instead of TYPE_SIZE_UNIT.
      
      	* gcc.dg/builtin-object-size-11.c: New testcase.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@173901 138bc75d-0d04-0410-961f-82ee72b054a4
      dda02ea2
    • rguenth's avatar
      2011-05-19 Richard Guenther <rguenther@suse.de> · bddb3763
      rguenth authored
      	* gimple.c (gimple_types_compatible_p_1): Compare names of
      	the types themselves.
      	(iterative_hash_gimple_type): And hash them that way.
      	(gimple_register_type_1): If we register a main variant properly
      	initialize the leader to ourselves.
      
      	lto/
      	* lto.c (uniquify_nodes): First register all types before
      	fixing up the tree SCC.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@173900 138bc75d-0d04-0410-961f-82ee72b054a4
      bddb3763
    • paolo's avatar
      2011-05-19 Daniel Krugler <daniel.kruegler@googlemail.com> · 01bbe5aa
      paolo authored
      	* testsuite/util/testsuite_tr1.h: Add test classes.
      	* testsuite/20_util/is_nothrow_assignable/value.cc: Add.
      
      2011-05-19  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	* include/std/type_traits (is_assignable, is_copy_assignable,
      	is_move_assignable, is_nothrow_assignable, is_nothrow_copy_assignable,
      	is_nothrow_move_assignable): Add; minor tweaks elsewhere.
      	(has_nothrow_copy_assign): Remove.
      	* testsuite/util/testsuite_tr1.h: Add test classes.
      	* testsuite/20_util/is_assignable/requirements/typedefs.cc: Add.
      	* testsuite/20_util/is_assignable/requirements/
      	explicit_instantiation.cc: Likewise.
      	* testsuite/20_util/is_nothrow_assignable/value.cc: Likewise.
      	* testsuite/20_util/is_nothrow_assignable/requirements/typedefs.cc:
      	Likewise.
      	* testsuite/20_util/is_nothrow_assignable/requirements/
      	explicit_instantiation.cc: Likewise.
      	* testsuite/20_util/is_move_assignable/value.cc: Likewise.
      	* testsuite/20_util/is_move_assignable/requirements/typed...
      01bbe5aa
    • jsm28's avatar
      * zh_CN.po: Update. · 9e07df3b
      jsm28 authored
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@173897 138bc75d-0d04-0410-961f-82ee72b054a4
      9e07df3b
    • vries's avatar
      2011-05-19 Tom de Vries <tom@codesourcery.com> · f2263848
      vries authored
      	PR target/45098
      	* gcc.target/arm/ivopts.c: New test.
      	* gcc.target/arm/ivopts-2.c: New test.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@173896 138bc75d-0d04-0410-961f-82ee72b054a4
      f2263848
    • vries's avatar
      2011-05-19 Tom de Vries <tom@codesourcery.com> · 3403feba
      vries authored
      	* lib/lib/scanasm.exp (object-size): Fix target selector handling.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@173895 138bc75d-0d04-0410-961f-82ee72b054a4
      3403feba
    • vries's avatar
      2011-05-19 Tom de Vries <tom@codesourcery.com> · 055d6bb2
      vries authored
      	PR target/45098
      	* tree-ssa-loop-ivopts.c (get_expr_id): Factored new function out of
      	get_loop_invariant_expr_id.
      	(get_loop_invariant_expr_id): Use get_expr_id.
      	(parm_decl_cost): New function.
      	(determine_use_iv_cost_condition): Use get_expr_id and parm_decl_cost.
      	Improve bound cost estimation.  Use different inv_expr_id for elim and
      	express cases.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@173894 138bc75d-0d04-0410-961f-82ee72b054a4
      055d6bb2
    • vries's avatar
      2011-05-19 Tom de Vries <tom@codesourcery.com> · ee36045b
      vries authored
      	PR target/45098
      	* tree-ssa-loop-ivopts.c (determine_iv_cost): Prevent
      	cost_base.cost == 0.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@173893 138bc75d-0d04-0410-961f-82ee72b054a4
      ee36045b
    • ro's avatar
      * gcc.c-torture/execute/960321-1.x: Remove. · bdc52dc8
      ro authored
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@173890 138bc75d-0d04-0410-961f-82ee72b054a4
      bdc52dc8
    • jakub's avatar
      PR c++/48869 · 9b222de3
      jakub authored
      	* method.c (get_dtor, get_copy_ctor): Add COMPLAIN argument,
      	pass it down to locate_fn_flags.
      	* cp-tree.h (get_dtor, get_copy_ctor): Adjust prototypes.
      	* semantics.c (cxx_omp_create_clause_info): Adjust callers.
      	* cp-gimplify.c: Include splay-tree.h.
      	(splay_tree_compare_decl_uid, omp_var_to_track,
      	omp_cxx_notice_variable): New functions.
      	(struct cp_genericize_omp_taskreg): New type.
      	(struct cp_genericize_data): Add omp_ctx field.
      	(cp_genericize_r): Attempt to determine implicitly determined
      	firstprivate class type variables.
      	(cp_genericize): Clear omp_ctx.
      	* Make-lang.in (cp/cp-gimplify.o): Depend on $(SPLAY_TREE_H).
      
      	* testsuite/libgomp.c++/pr48869.C: New test.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@173888 138bc75d-0d04-0410-961f-82ee72b054a4
      9b222de3
    • gccadmin's avatar
      Daily bump. · 0b38bfa5
      gccadmin authored
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@173887 138bc75d-0d04-0410-961f-82ee72b054a4
      0b38bfa5
  2. 18 May, 2011 16 commits
    • redi's avatar
      2011-05-18 Jonathan Wakely <jwakely.gcc@gmail.com> · a66858b5
      redi authored
      	* include/bits/shared_ptr_base.h: Use noexcept. Define special member
      	functions as defaulted/deleted.
      	* include/bits/shared_ptr.h: Use noexcept.
      	* 20_util/shared_ptr/cons/43820_neg.cc: Adjust dg-error line numbers.
      	* 20_util/weak_ptr/comparison/cmp_neg.cc: Likewise.
      
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@173882 138bc75d-0d04-0410-961f-82ee72b054a4
      a66858b5
    • hjl's avatar
      Properly handle 256bit load cast. · 03f65847
      hjl authored
      gcc/
      
      2011-05-18  H.J. Lu  <hongjiu.lu@intel.com>
      
      	PR target/49002
      	* config/i386/sse.md (avx_<ssemodesuffix><avxsizesuffix>_<ssemodesuffix>):
      	Properly handle load cast.
      
      gcc/testsuite/
      
      2011-05-18  H.J. Lu  <hongjiu.lu@intel.com>
      
      	PR target/49002
      	* gcc.target/i386/pr49002-1.c: New test.
      	* gcc.target/i386/pr49002-2.c: Likewise.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@173880 138bc75d-0d04-0410-961f-82ee72b054a4
      03f65847
    • redi's avatar
      * doc/xml/manual/bitmap_allocator.xml: Fix typos. · 2d14544c
      redi authored
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@173879 138bc75d-0d04-0410-961f-82ee72b054a4
      2d14544c
    • jakub's avatar
      PR tree-optimization/49039 · 556a56dd
      jakub authored
      	* tree-vrp.c (extract_range_from_binary_expr): For
      	MIN_EXPR <~[a, b], ~[c, d]> and MAX_EXPR <~[a, b], ~[c, d]>
      	return ~[MAX_EXPR <a, c>, MIN_EXPR <b, d>].
      
      	* gcc.c-torture/execute/pr49039.c: New test.
      	* gcc.dg/tree-ssa/pr49039.c: New test.
      	* g++.dg/torture/pr49039.C: New test.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@173876 138bc75d-0d04-0410-961f-82ee72b054a4
      556a56dd
    • janus's avatar
      2011-05-18 Janus Weil <janus@gcc.gnu.org> · 3e223d53
      janus authored
      	PR fortran/48700
      	* trans-intrinsic.c (gfc_conv_intrinsic_move_alloc): Deallocate 'TO'
      	argument to avoid memory leaks.
      
      
      2011-05-18  Janus Weil  <janus@gcc.gnu.org>
      
      	PR fortran/48700
      	* gfortran.dg/move_alloc_4.f90: New.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@173874 138bc75d-0d04-0410-961f-82ee72b054a4
      3e223d53
    • vries's avatar
      2011-05-18 Tom de Vries <tom@codesourcery.com> · 9881cd2d
      vries authored
      	PR target/45098
      	* tree-ssa-loop-ivopts.c (computation_cost): Prevent cost of 0.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@173872 138bc75d-0d04-0410-961f-82ee72b054a4
      9881cd2d
    • paolo's avatar
      2011-05-18 Paolo Carlini <paolo.carlini@oracle.com> · 7643295e
      paolo authored
      	* libsupc++/initializer_list: Use noexcept specifier.
      	(initializer_list<>::size, begin, end): Qualify as const.
      	* include/bits/move.h (__addressof, forward, move, addressof): Specify
      	as noexcept.
      	* include/std/bitset: Use noexcept specifier throughout.
      	* include/debug/bitset: Update.
      	* include/profile/bitset: Likewise.
      
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@173871 138bc75d-0d04-0410-961f-82ee72b054a4
      7643295e
    • uros's avatar
      * config/i386/i386.md (*tls_global_dynamic_32_gnu): Split asm template. · b26e9e37
      uros authored
      	(*tls_global_dynamic_64): Ditto.
      	(*tls_local_dynamic_base_32_gnu): Ditto.
      	(*tls_local_dynamic_base_64): Ditto.
      	(tls_initial_exec_64_sun): Ditto.
      
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@173870 138bc75d-0d04-0410-961f-82ee72b054a4
      b26e9e37
    • jason's avatar
      PR c++/48948 · bf8126b6
      jason authored
      	PR c++/49015
      	* class.c (finalize_literal_type_property): Do check
      	for constexpr member functions of non-literal class.
      	(finish_struct): Don't call check_deferred_constexpr_decls.
      	* cp-tree.h: Don't declare it.
      	(DECL_DEFERRED_CONSTEXPR_CHECK): Remove.
      	* decl.c (grok_special_member_properties): Don't check it
      	(grokfnedcl): Don't call validate_constexpr_fundecl.
      	(start_preparsed_function): Do call it.
      	* pt.c (tsubst_decl): Don't call it.
      	(instantiate_class_template_1): Don't call
      	check_deferred_constexpr_decls.
      	* semantics.c (literal_type_p): Check for any incompleteness.
      	(ensure_literal_type_for_constexpr_object): Likewise.
      	(is_valid_constexpr_fn): Revert deferral changes.
      	(validate_constexpr_fundecl): Likewise.
      	(register_constexpr_fundef): Likewise.
      	(check_deferred_constexpr_decls): Remove.
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@173869 138bc75d-0d04-0410-961f-82ee72b054a4
      bf8126b6
    • shenders's avatar
      2011-05-18 Stuart Henderson <shenders@gcc.gnu.org> · 6437f74c
      shenders authored
          * gcc.target/bfin/mcpu-bf592.c: New test.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@173868 138bc75d-0d04-0410-961f-82ee72b054a4
      6437f74c
    • shenders's avatar
      2011-05-18 Stuart Henderson <shenders@gcc.gnu.org> · 0d7700ef
      shenders authored
          * doc/invoke.texi (Blackfin Options): -mcpu accepts bf592.
          * config/bfin/t-bfin-elf (MULTILIB_MATCHES): Select bf532-none for
          bf592-none.
          * config/bfin/t-bfin-linux (MULTILIB_MATCHES): Likewise.
          * config/bfin/t-bfin-uclinux (MULTILIB_MATCHES): Likewise.
          * config/bfin/bfin.c (bfin_cpus): Add bf592.
          * config/bfin/bfin.h (TARGET_CPU_CPP_BUILTINS): Define
          __ADSPBF592__ and __ADSPBF59x__ for     BFIN_CPU_BF592.
          * config/bfin/bfin-opts.h (bfin_cpu_type): Add BFIN_CPU_BF592.
          * config/bfin/elf.h (LIB_SPEC): Add bf592.
      
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@173867 138bc75d-0d04-0410-961f-82ee72b054a4
      0d7700ef
    • jsm28's avatar
      * config/arm/arm-opts.h (enum arm_fp16_format_type, enum · 8bbee4a9
      jsm28 authored
      	arm_abi_type, enum float_abi_type, enum arm_tp_type): Move from
      	arm.h.
      	* config/arm/arm.c (arm_float_abi, arm_fp16_format, arm_abi,
      	target_thread_pointer, arm_structure_size_boundary, struct
      	float_abi, all_float_abis, struct fp16_format, all_fp16_formats,
      	struct abi_name, arm_all_abis): Remove.
      	(arm_option_override) Don't process most enumerated option values
      	here.  Don't process target_fpe_name here.  Work with integer not
      	string for structure size boundary; use separate diagnostics for
      	each case.
      	* config/arm/arm.h (enum float_abi_type, enum
      	arm_fp16_format_type, enum arm_abi_type, enum arm_tp_type): Move
      	to arm-opts.h.
      	(arm_float_abi, arm_fp16_format, arm_abi, target_thread_pointer,
      	arm_structure_size_boundary): Remove.
      	* config/arm/arm.opt (mabi=): Use Enum and Init.
      	(arm_abi_type): New Enum and EnumValue entries.
      	(mfloat-abi=): Use Enum and Init.
      	(float_abi_type): New Enum and EnumValue entries.
      	(mfp=, mfpe=): Replace by separate Alias entries for each
      	argument.
      	(mfp16-format=): Use Enum and Init.
      	(arm_fp16_format_type): New Enum and EnumValue entries.
      	(mstructure-size-boundary=): Use UInteger and Init.
      	(mtp=): Use Enum and Init.
      	(arm_tp_type): New Enum and EnumValue entries.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@173864 138bc75d-0d04-0410-961f-82ee72b054a4
      8bbee4a9
    • rguenth's avatar
      2011-05-18 Richard Guenther <rguenther@suse.de> · b523dd6d
      rguenth authored
      	PR tree-optimization/49018
      	* gimple.c (gimple_has_side_effects): Volatile asms have side-effects.
      	* tree-ssa-ifcombine.c (bb_no_side_effects_p): Use
      	gimple_has_side_effects.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@173861 138bc75d-0d04-0410-961f-82ee72b054a4
      b523dd6d
    • rguenth's avatar
      2011-05-18 Richard Guenther <rguenther@suse.de> · ce89f696
      rguenth authored
      	* gimple.c (gimple_register_type_1): New function, split out from ...
      	(gimple_register_type): ... here.  Avoid infinite recursion.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@173857 138bc75d-0d04-0410-961f-82ee72b054a4
      ce89f696
    • irar's avatar
      · 39a5d6b1
      irar authored
              PR tree-optimization/41881
              * tree-vectorizer.h (struct _loop_vec_info): Add new field
              reduction_chains along with a macro for its access.
              * tree-vect-loop.c (new_loop_vec_info): Initialize
              reduction chains.
              (destroy_loop_vec_info): Free reduction chains.
              (vect_analyze_loop_2): Return false if
              vect_analyze_slp() returns false.
              (vect_is_slp_reduction): New function.
              (vect_is_simple_reduction_1): Call
              vect_is_slp_reduction.
              (vect_create_epilog_for_reduction): Support SLP
              reduction chains.
              * tree-vect-slp.c (vect_get_and_check_slp_defs): Allow
              different definition types for reduction chains.
              (vect_supported_load_permutation_p): Don't allow
              permutations for reduction chains.
              (vect_analyze_slp_instance): Support reduction chains.
              (vect_analyze_slp): Try to build SLP instance from
              reduction chains.
              (vect_get_constant_vectors):  Handle reduction chains.
              (vect_schedule_slp_instance): Mark the first statement
              of the reduction chain as reduction.
      
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@173856 138bc75d-0d04-0410-961f-82ee72b054a4
      39a5d6b1
    • irar's avatar
      · 21009880
      irar authored
              * tree-vect-loop-manip.c (vect_create_cond_for_alias_checks): Use new
              names for group elements access.
              * tree-vectorizer.h (struct _stmt_vec_info): Use interleaving info for
              reduction chains as well.  Remove data reference and interleaving
              related words from the fields names.
              * tree-vect-loop.c (vect_transform_loop): Use new names for group
              elements access.
              * tree-vect-data-refs.c (vect_get_place_in_interleaving_chain,
               vect_insert_into_interleaving_chain, vect_update_interleaving_chain,
              vect_update_interleaving_chain, vect_same_range_drs,
              vect_analyze_data_ref_dependence, vect_update_misalignment_for_peel,
              vect_verify_datarefs_alignment, vector_alignment_reachable_p,
              vect_peeling_hash_get_lowest_cost, vect_enhance_data_refs_alignment,
              vect_analyze_group_access, vect_analyze_data_ref_access,
              vect_create_data_ref_ptr, vect_transform_strided_load,
              vect_record_strided_load_vectors): Likewise.
              * tree-vect-stmts.c (vect_model_simple_cost, vect_model_store_cost,
              vect_model_load_cost, vectorizable_store, vectorizable_load,
              vect_remove_stores, new_stmt_vec_info): Likewise.
              * tree-vect-slp.c (vect_build_slp_tree, 
              vect_supported_slp_permutation_p, vect_analyze_slp_instance): Likewise.
      
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@173855 138bc75d-0d04-0410-961f-82ee72b054a4
      21009880