1. 12 May, 2011 16 commits
  2. 11 May, 2011 24 commits
    • No gcc/ prefix in gcc/ChangeLog. · e77e2cbb
      From-SVN: r173686
      Paul Pluzhnikov committed
    • cfgrtl.c (commit_one_edge_insertion): Remove always-true test and reindent the subsequent block. · 898c90c0
      	* cfgrtl.c (commit_one_edge_insertion): Remove always-true test and
      	reindent the subsequent block.
      
      From-SVN: r173685
      Eric Botcazou committed
    • overloads_c++0x_neg.cc: Use dg-require-cmath. · cddebdb7
      2011-05-11  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	* testsuite/26_numerics/headers/cmath/overloads_c++0x_neg.cc: Use
      	dg-require-cmath.
      	* testsuite/tr1/8_c_compatibility/cmath/overloads_neg.cc: Likewise.
      
      From-SVN: r173684
      Paolo Carlini committed
    • re PR c++/48948 ([C++0x] constexpr friend function cannot be defined in-class) · 6eb47b98
      	PR c++/48948
      	* semantics.c (validate_constexpr_fundecl): Defer checking if
      	an argument type is being defined.
      	(is_valid_constexpr_fn): Add defer_ok parm.
      	(cxx_eval_call_expression): Adjust.
      	(check_deferred_constexpr_decls): New.
      	(literal_type_p): Make sure type isn't being defined.
      	(ensure_literal_type_for_constexpr_object): Handle type being defined.
      	* cp-tree.h: Declare check_deferred_constexpr_decls.
      	* decl.c (grokfndecl): Call validate_constexpr_fundecl here.
      	(start_preparsed_function, cp_finish_decl): Not here.
      	* class.c (finalize_literal_type_property): Don't call
      	validate_constexpr_fundecl.
      	(finish_struct): Call check_deferred_constexpr_decls.
      	* pt.c (tsubst_decl): Call validate_constexpr_fundecl.
      	(instantiate_class_template): Call check_deferred_constexpr_decls.
      
      From-SVN: r173683
      Jason Merrill committed
    • semantics.c (validate_constexpr_fundecl): Check DECL_TEMPLATE_INFO rather than… · 3c5283a7
      semantics.c (validate_constexpr_fundecl): Check DECL_TEMPLATE_INFO rather than DECL_TEMPLATE_INSTANTIATION.
      
      	* semantics.c (validate_constexpr_fundecl): Check DECL_TEMPLATE_INFO
      	rather than DECL_TEMPLATE_INSTANTIATION.
      	(cxx_eval_call_expression): Likewise.
      
      From-SVN: r173682
      Jason Merrill committed
    • semantics.c (register_constexpr_fundef): Add to hash table here. · 9b41f0d3
      	* semantics.c (register_constexpr_fundef): Add to hash table here.
      	(validate_constexpr_fundecl): Not here.
      
      From-SVN: r173681
      Jason Merrill committed
    • pt.c (build_non_dependent_expr): Don't check null_ptr_cst_p, do call… · f5ad54d7
      pt.c (build_non_dependent_expr): Don't check null_ptr_cst_p, do call maybe_constant_value in C++0x mode.
      
      	* pt.c (build_non_dependent_expr): Don't check null_ptr_cst_p,
      	do call maybe_constant_value in C++0x mode.
      	* semantics.c (cxx_eval_constant_expression): Handle TEMPLATE_DECL.
      
      From-SVN: r173679
      Jason Merrill committed
    • re PR c++/48745 ([C++0x] Segmentation fault with list-initialization, void… · 3e475d30
      re PR c++/48745 ([C++0x] Segmentation fault with list-initialization, void initializers and variadics)
      
      	PR c++/48745
      	* pt.c (value_dependent_expr_p): Handle CONSTRUCTOR.
      
      From-SVN: r173678
      Jason Merrill committed
    • re PR fortran/48889 (f951: internal compiler error: in gfc_is_constant_expr, at fortran/expr.c:906) · 0126595f
      2011-05-11  Tobias Burnus  <burnus@net-b.de>
      
              PR fortran/48889
              * expr.c (gfc_is_constant_expr): Use e->value.function.esym
              instead of e->symtree->n.sym, if available.
      
      2011-05-11  Tobias Burnus  <burnus@net-b.de>
      
              PR fortran/48889
              * gfortran.dg/generic_24.f90: New.
      
      From-SVN: r173674
      Tobias Burnus committed
    • Permit new of a function type. · 8da1c70b
      From-SVN: r173672
      Ian Lance Taylor committed
    • Don't crash ranging over call to builtin function. · 2d8f63a1
      From-SVN: r173671
      Ian Lance Taylor committed
    • hash_load_check_resize_trigger_imp.hpp (assert_valid): Replace… · cfca3f72
      hash_load_check_resize_trigger_imp.hpp (assert_valid): Replace _GLIBCXX_DEBUG_ASSERT calls with PB_DS_DEBUG_VERIFY.
      
      2011-05-11  François Dumont  <francois.cppdevs@free.fr>
      
              * include/ext/pb_ds/detail/resize_policy/
              hash_load_check_resize_trigger_imp.hpp (assert_valid): Replace
              _GLIBCXX_DEBUG_ASSERT calls with PB_DS_DEBUG_VERIFY.
              * include/ext/pb_ds/detail/binomial_heap_base_/erase_fn_imps.hpp,
              find_fn_imps.hpp, insert_fn_imps.hpp, binomial_heap_base_.hpp,
              constructors_destructor_fn_imps.hpp, split_join_fn_imps.hpp
              (PB_DS_ASSERT_VALID): Rename in PB_DS_ASSERT_VALID_COND.
              * include/ext/pb_ds/detail/debug_map_base.hpp,
              splay_tree_/splay_tree_.hpp, ov_tree_map_/ov_tree_map_.hpp,
              cc_hash_table_map_/cc_ht_map_.hpp, pat_trie_/pat_trie_.hpp,
              leaf.hpp, internal_node.hpp, gp_hash_table_map_/gp_ht_map_.hpp,
              bin_search_tree_/bin_search_tree_.hpp, list_update_map_/lu_map_.hpp,
              rb_tree_map_/rb_tree_.hpp (PB_DS_ASSERT_VALID, PB_DS_DEBUG_VERIFY,
              PB_DS_CHECK_KEY_EXISTS, PB_DS_CHECK_KEY_DOES_NOT_EXIST): Duplicate
              macro definitions move...
              * include/ext/pb_ds/detail/container_base_dispatch.hpp: ... here...
              * include/ext/pb_ds/detail/basic_tree_policy/traits.hpp: ... and here.
              * include/ext/pb_ds/detail/binary_heap_/binary_heap_.hpp,
              resize_policy.hpp, pairing_heap_/pairing_heap_.hpp,
              left_child_next_sibling_heap_/left_child_next_sibling_heap_.hpp,
              binomial_heap_/binomial_heap_.hpp, thin_heap_/thin_heap_.hpp,
              rc_binomial_heap_/rc_binomial_heap_.hpp, rc.hpp (PB_DS_ASSERT_VALID,
              PB_DS_DEBUG_VERIFY): Duplicate macro definitions move...
              * include/ext/pb_ds/detail/priority_queue_base_dispatch.hpp:
              ...here.
      
      From-SVN: r173670
      François Dumont committed
    • MAINTAINERS (Write After Approval): Add myself. · 6e91d9d6
      2011-05-11  Paul Pluzhnikov  <ppluzhnikov@google.com>
      
      	* MAINTAINERS (Write After Approval): Add myself.
      
      From-SVN: r173669
      Paul Pluzhnikov committed
    • install.texi (Configuration): Document --with-linker-hash-style. · 79bec923
      2011-05-11  Satoru Takabayashi  <satorux@google.com>
      	    Paul Pluzhnikov  <ppluzhnikov@google.com>
      
      	* gcc/doc/install.texi (Configuration): Document
      	--with-linker-hash-style.
      	* gcc/gcc.c (init_spec): Handle LINKER_HASH_STYLE.
      	* gcc/config.in: Add LINKER_HASH_STYLE.
      	* gcc/configure.ac: Add --with-linker-hash-style.
      	* gcc/configure: Regenerate.
      
      
      Co-Authored-By: Paul Pluzhnikov <ppluzhnikov@google.com>
      
      From-SVN: r173668
      Satoru Takabayashi committed
    • don't use build_function_type in the Ada FE · e5b00edf
      don't use build_function_type in the Ada FE
      	* gcc-interface/utils.c (def_fn_type): Don't call build_function_type;
      	call build_function_type_array or build_varargs_function_type_array
      	instead.
      	(create_subprog_type): Don't call build_function_type; call
      	build_function_type_vec instead.
      
      From-SVN: r173664
      Nathan Froyd committed
    • re PR bootstrap/48964 (LTO profiledbootstrap failure) · d0340959
      2011-05-11  Richard Guenther  <rguenther@suse.de>
      
      	PR middle-end/48964
      	* gimple.c (iterative_hash_canonical_type): Fix typo.
      
      From-SVN: r173663
      Richard Guenther committed
    • i386.c (legitimize_tls_address): Call gen_tls_dynamic_gnu2_{32,64} expanders… · cb032fee
      i386.c (legitimize_tls_address): Call gen_tls_dynamic_gnu2_{32,64} expanders directly for TARGET_GNU2_TLS.
      
      	* config/i386/i386.c (legitimize_tls_address)
      	<TLS_MODEL_GLOBAL_DYNAMIC>: Call gen_tls_dynamic_gnu2_{32,64}
      	expanders directly for TARGET_GNU2_TLS.  Determine pic and
      	__tls_get_addr symbol reference here.  Update call to
      	gen_tls_global_dynamic_{32,64} for added arguments.
      	<TLS_MODEL_LOCAL_DYNAMIC>: Call gen_tls_dynamic_gnu2_{32,64}
      	expanders directly for TARGET_GNU2_TLS.  Determine
      	__tls_get_addr symbol reference here.  Update call to
      	gen_tls_local_dynamic_base_{32,64} for added arguments.  Attach
      	unique UNSPEC REG_EQUIV to libcall block.
      	(ix86_tls_get_addr): Declare static.
      	* config/i386/i386-protos.h (ix86_tls_get_addr): Remove declaration.
      	* config/i386/i386.md (tls_global_dynamic_32): Add operand 2 and 3.
      	Do not determine pic and __tls_get_addr symbol reference here. Do not
      	call gen_tls_dynamic_gnu2_32 for TARGET_GNU2_TLS.
      	(tls_local_dynamic_base_32): Ditto for operands 1 and 2.
      	(tls_global_dynamic_64): Add operand 2.  Do not determine
      	__tls_get_addr symbol reference here.  Do not call
      	gen_tls_dynamic_gnu2_64 for TARGET_GNU2_TLS here.
      	(tls_local_dynamic_base64): Ditto for operand 1.
      
      From-SVN: r173662
      Uros Bizjak committed
    • function.c (expand_function_start): Initialize stack_check_probe_note only if… · 6d3cc8f0
      function.c (expand_function_start): Initialize stack_check_probe_note only if the generic stack checking mechanism...
      
      	* function.c (expand_function_start): Initialize stack_check_probe_note
      	only if the generic stack checking mechanism is used.
      
      From-SVN: r173661
      Eric Botcazou committed
    • re PR tree-optimization/15256 ([tree-ssa] Optimize manual bitfield manipilation.) · 51e020fc
      2011-05-11  Richard Guenther  <rguenther@suse.de>
      
      	PR tree-optimization/15256
      	* tree-ssa-forwprop.c (simplify_bitwise_binary): Canonicalize
      	(A & B) | C, combine (A op CST1) op CST2.
      	(tree_ssa_forward_propagate_single_use_vars): Only bother to
      	visit assigns that have uses.
      
      	* gcc.dg/tree-ssa/forwprop-14.c: New testcase.
      
      From-SVN: r173659
      Richard Guenther committed
    • split tree_type · 51545682
      split tree_type
      gcc/ada/
      	* gcc-interface/ada-tree.h (TYPE_OBJECT_RECORD_TYPE): Use TYPE_MINVAL.
      	(TYPE_GCC_MIN_VALUE): Use TYPE_MINVAL.
      	(TYPE_GCC_MAX_VALUE): Use TYPE_MAXVAL.
      
      gcc/cp/
      	* cp-tree.h (TYPENAME_TYPE_FULLNAME, TYPEOF_TYPE_EXPR): Use
      	TYPE_VALUES_RAW.
      	(UNDERLYING_TYPE_TYPE, DECLTYPE_TYPE_EXPR): Likewise.
      	(DECLTYPE_TYPE_ID_EXPR_OR_MEMBER_ACCESS_P): Likewise.
      	(TEMPLATE_TYPE_PARM_INDEX): Likewise.
      
      gcc/
      	* ggc-page.c (extra_order_size_table): Use struct
      	tree_type_non_common.
      	* lto-streamer-in.c (unpack_ts_type_value_fields): Rename to...
      	(unpack_ts_type_common_value_fields): ...this.  Update comment.
      	(unpack_value_fields): Adjust for renaming.
      	(lto_input_ts_type_tree_pointers): Split into...
      	(lto_input_ts_type_common_tree_pointer): ...this and...
      	(lto_input_ts_type_non_common_tree_pointers): ...this.
      	(lto_input_tree_pointers): Adjust for above split.
      	* lto-streamer-out.c (pack_ts_type_value_fields): Rename to...
      	(pack_ts_type_common_value_fields): ...this.  Update comment.
      	(lto_output_ts_type_tree_pointers): Split into...
      	(lto_output_ts_type_common_tree_pointers): ...this and...
      	(lto_output_ts_type_non_common_tree_pointers): ...this.
      	(lto_output_tree_pointers): Adjust for above split.
      	* lto-streamer.c (check_handled_ts_structures): Mark TS_TYPE_COMMON,
      	TS_TYPE_WITH_LANG_SPECIFIC, and TS_TYPE_NON_COMMON as handled.
      	* stor-layout.c (vector_type_mode): Adjust location of mode field.
      	* tree.h (MARK_TS_TYPE_COMMON, MARK_TS_TYPE_WITH_LANG_SPECIFIC):
      	Define.
      	(struct tree_type): Split into...
      	(struct tree_type_common: ...this and...
      	(struct tree_type_with_lang_specific): ...this and...
      	(struct tree_type_non_common): ...this.  Adjust accessor macros
      	accordingly.
      	(TYPE_VALUES_RAW): Define.
      	(union tree_node): Update for above changes.
      	* tree.c (tree_node_structure_for_code) [tcc_type]: Return
      	TS_TYPE_NON_COMMON.
      	(initialize_tree_contains_struct) [TS_TYPE]: Use TS_TYPE_COMMON.
      	Add TS_TYPE_WITH_LANG_SPECIFIC and TS_TYPE_NON_COMMON.
      	(tree_code_size) [tcc_type]: Use struct tree_type_non_common.
      	* treestructu.def (TS_TYPE): Remove.
      	(TS_TYPE_COMMON, TS_TYPE_WITH_LANG_SPECIFIC, TS_TYPE_NON_COMMON):
      	Define.
      
      gcc/java/
      	* java-tree.h (TYPE_ARGUMENT_SIGNATURE): Use TYPE_MINVAL.
      
      gcc/lto/
      	* lto.c (lto_ft_type): Use TYPE_MINVAL and TYPE_MAXVAL.  Adjust
      	location of binfo field.
      	(lto_fixup_prevailing_decls): Likewise.
      
      gcc/objc/
      	* objc-act.h (CLASS_NAME, CLASS_SUPER_NAME): Use proper accessors.
      	(CLASS_NST_METHODS, CLASS_CLS_METHODS): Likewise.
      	(PROTOCOL_NAME, PROTOCOL_NST_METHODS, PROTOCOL_CLS_METHODS): Likewise.
      
      From-SVN: r173658
      Nathan Froyd committed
    • re PR debug/48159 (ICE: SIGSEGV in build2_stat (tree.c:3802) with -ftree-loop-distribution -g) · b03c3082
      	PR debug/48159
      	* tree-ssa.c (reset_debug_uses): New function.
      	* tree-flow.h (reset_debug_uses): New prototype.
      	* tree-data-ref.c (stmts_from_loop): Ignore debug stmts.
      	* tree-loop-distribution.c (generate_loops_for_partition): Call
      	reset_debug_uses on the stmts that will be removed.  Keep around
      	all debug stmts, don't count them as bits in partition bitmap.
      	(generate_builtin): Don't count debug stmts or labels as bits in
      	partition bitmap.
      
      	* gcc.dg/pr48159-1.c: New test.
      	* gcc.dg/pr48159-2.c: New test.
      
      From-SVN: r173656
      Jakub Jelinek committed
    • gimple.c (gimple_type_hash_1): Merge with ... · b5e04de5
      2011-05-11  Richard Guenther  <rguenther@suse.de>
      
      	* gimple.c (gimple_type_hash_1): Merge with ...
      	(gimple_type_hash): ... this.
      	(gtc_visit): Remove mode parameter and simplify accordingly.
      	(gimple_types_compatible_p_1): Likewise.
      	(gimple_types_compatible_p): Likewise.
      	(iterative_hash_gimple_type): Likewise.
      	(visit): Likewise.
      	(gimple_type_eq): Adjust.
      
      From-SVN: r173655
      Richard Guenther committed
    • Support closing_branch_deps · fc6970e4
      From-SVN: r173654
      Revital Eres committed