- 12 May, 2011 16 commits
-
-
* go-gcc.cc (Gcc_backend::local_variable): Add is_address_taken parameter. (Gcc_backend::parameter_variable): Likewise. From-SVN: r173712
Ian Lance Taylor committed -
gimplify.c (gimple_boolify): Re-boolify expression arguments even if expression type is of kind BOOLEAN_TYPE. 2011-05-12 Kai Tietz <ktietz@redhat.com> * gimplify.c (gimple_boolify): Re-boolify expression arguments even if expression type is of kind BOOLEAN_TYPE. (gimplify_boolean_expr): Removed. (gimplify_expr): Boolify truth opcodes AND, ANDIF, OR, ORIF, and XOR. Additional take care that we keep expression's type. * tree-cfg.c (verify_gimple_assign_binary): Adjust check for type of TRUTH_AND|OR|XOR_EXPR. From-SVN: r173711
Kai Tietz committed -
PR tree-optimization/48975 * tree-if-conv.c (combine_blocks): Call free_bb_predicate on all bbs here and free and clear ifc_bbs at the end. * gcc.dg/pr48975.c: New test. From-SVN: r173709
Jakub Jelinek committed -
2011-05-12 Tobias Burnus <burnus@net-b.de> PR fortran/48972 * resolve.c (resolve_intrinsic): Don't resolve module intrinsics multiple times. 2011-05-12 Tobias Burnus <burnus@net-b.de> PR fortran/48972 * gfortran.dg/iso_c_binding_compiler_3.f90: New. From-SVN: r173708
Tobias Burnus committed -
* cp-tree.h (DECL_DEFERRED_CONSTEXPR_CHECK): New. * semantics.c (validate_constexpr_fundecl): Set it. (check_deferred_constexpr_decls): Clear it. (register_constexpr_fundef): Make sure it isn't set. * decl.c (grok_special_member_properties): Check it. From-SVN: r173707
Jason Merrill committed -
* gcc-interface/trans.c (call_to_gnu): In the by-reference case, if the type of the parameter is an unconstrained array, convert the actual to the type of the formal in the In Out and Out cases as well. From-SVN: r173706
Eric Botcazou committed -
2011-05-12 Richard Guenther <rguenther@suse.de> * gimple.c (gtc_visit): Compare TREE_ADDRESSABLE, handle NULLPTR_TYPE similar to VOID_TYPE. Defer type-leader lookup until after simple checks. (gimple_types_compatible_p): Likewise. (iterative_hash_gimple_type): Always hash pointer targets and function return and argument types. (iterative_hash_canonical_type): Do not hash TYPE_QUALS, hash TYPE_ALIGN. Do not hash TYPE_MIN/MAX_VALUE. (gimple_canonical_types_compatible_p): Compare TREE_ADDRESSABLE, handle NULLPTR_TYPE similar to VOID_TYPE. Handle non-aggregates completely in the simple compare section. (gimple_register_canonical_type): Query the cache again after registering. From-SVN: r173704
Richard Guenther committed -
2011-05-12 Richard Guenther <rguenther@suse.de> PR tree-optimization/48172 * tree-vect-loop-manip.c (vect_vfa_segment_size): Do not exclude the number of iterations from the segment size calculation. (vect_create_cond_for_alias_checks): Adjust. * gcc.dg/vect/pr48172.c: New testcase. From-SVN: r173703
Richard Guenther committed -
PR debug/48967 * var-tracking.c (use_narrower_mode_test) <case REG>: Return 1 if validate_subreg fails. * g++.dg/opt/pr48967.C: New test. From-SVN: r173701
Jakub Jelinek committed -
PR lto/48952 * lto.c (do_whole_program_analysis): Do not register cgraph hooks. From-SVN: r173700
Jan Hubicka committed -
ira.c (clarify_prohibited_class_mode_regs): Prevent the function from accessing beyond the end of REGNO_REG_CLASS array by... * ira.c (clarify_prohibited_class_mode_regs): Prevent the function from accessing beyond the end of REGNO_REG_CLASS array by stopping the loop early. From-SVN: r173699
Hariharan Sandanagobalane committed -
From-SVN: r173697
Joseph Myers committed -
(ADD_RX_BUILTIN1, ADD_RX_BUILTIN2, ADD_RX_BUILTIN3): Install created builtin into rx_builtins array. (rx_builtin_decl): New function. (TARGET_BUITLIN_DECL): Define. Include gt-rx.h. Co-Authored-By: Nick Clifton <nickc@redhat.com> From-SVN: r173696
DJ Delorie committed -
* config/rx/rx.h (HAVE_PRE_DECREMENT): Fix typo. * config/rx/rx.c (CC_FLAG_FP): Fix comment. (rx_is_legitimate_address): Add pre-decrement and post-increment addressing in HImode and QImode. Fix test for out of range REG+INT addressing. (rx_legitimate_constant_p): Rename ro rx_is_legitimate_constant. (rx_align_for_label): Test label before extracting its usage count. (rx_adjust_insn_lengths): Fix selection of insn codes. (TARGET_LEGITIMNATE_CONSTANT_P): Use renamed function. Co-Authored-By: Nick Clifton <nickc@redhat.com> From-SVN: r173695
DJ Delorie committed -
From-SVN: r173692
Jason Merrill committed -
From-SVN: r173691
GCC Administrator committed
-
- 11 May, 2011 24 commits
-
-
From-SVN: r173686
Paul Pluzhnikov committed -
* cfgrtl.c (commit_one_edge_insertion): Remove always-true test and reindent the subsequent block. From-SVN: r173685
Eric Botcazou committed -
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 -
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 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. (validate_constexpr_fundecl): Not here. From-SVN: r173681
Jason Merrill committed -
From-SVN: r173680
Jason Merrill committed -
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 initializers and variadics) PR c++/48745 * pt.c (value_dependent_expr_p): Handle CONSTRUCTOR. From-SVN: r173678
Jason Merrill committed -
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 -
From-SVN: r173672
Ian Lance Taylor committed -
From-SVN: r173671
Ian Lance Taylor committed -
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 -
2011-05-11 Paul Pluzhnikov <ppluzhnikov@google.com> * MAINTAINERS (Write After Approval): Add myself. From-SVN: r173669
Paul Pluzhnikov committed -
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 * 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 -
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 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 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 -
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 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 -
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 -
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 -
From-SVN: r173654
Revital Eres committed
-