- 27 May, 2015 30 commits
-
-
From-SVN: r223774
Jason Merrill committed -
PR c++/66270 * tree.c (build_pointer_type_for_mode): Canonical type does not inherit can_alias_all. (build_reference_type_for_mode): Likewise. PR c++/66270 * g++.dg/ext/alias-canon3.C: New. From-SVN: r223773
Nathan Sidwell committed -
trans.c (elaborate_all_entities): Do not elaborate an incomplete type coming from a limited_with and whose... * gcc-interface/trans.c (elaborate_all_entities): Do not elaborate an incomplete type coming from a limited_with and whose non-limited view comes from the main unit. From-SVN: r223772
Eric Botcazou committed -
libgomp/ChangeLog: * config/linux/x86/futex.h (sys_futex0) [!__x86_64__]: Change operand "op" to long. [__PIC__]: Remove sys_futex0 function. libitm/ChangeLog: * config/linux/x86/futex_bits.h (sys_futex0) [!__x86_64__]: Change operand "op" to long. [__PIC__]: Remove sys_futex0 function. From-SVN: r223771
Uros Bizjak committed -
* expr.h (array_at_struct_end_p): Move to... (array_ref_element_size): Likewise. (component_ref_field_offset): Likewise. * tree.h (array_ref_element_size): ...here. (array_at_struct_end_p): Likewise. (component_ref_field_offset): Likewise. * expr.c (array_ref_element_size): Move to... (array_ref_low_bound): Likewise. (array_at_struct_end_p): Likewise. (array_ref_up_bound): Likewise. (component_ref_field_offset): Likewise. * tree.c (array_ref_element_size): ...here. (array_ref_low_bound): Likewise. (array_ref_up_bound): Likewise. (array_at_struct_end_p): Likewise. (component_ref_field_offset): Likewise. From-SVN: r223768
Eric Botcazou committed -
* gcc-interface/decl.c (gnat_to_gnu_entity) <E_Variable>: Move down code applying atomic checks to the object. From-SVN: r223767
Eric Botcazou committed -
gcc/Changelog: 2015-05-27 Gregor Richards <gregor.richards@uwaterloo.ca> Szabolcs Nagy <szabolcs.nagy@arm.com> * config/aarch64/aarch64-linux.h (MUSL_DYNAMIC_LINKER): Define. Co-Authored-By: Szabolcs Nagy <szabolcs.nagy@arm.com> From-SVN: r223766
Gregor Richards committed -
* config.host (i[34567]86-*-freebsd*, x86_64-*-freebsd*): Set md_unwind_header * config/i386/freebsd-unwind.h: New. From-SVN: r223765
John Marino committed -
PR bootstrap/66304 config/ * warnings.m4 (ACX_PROG_CXX_WARNING_OPTS) (ACX_PROG_CXX_WARNINGS_ARE_ERRORS) (ACX_PROG_CXX_WARNING_ALMOST_PEDANTIC): New. (ACX_PROG_CC_WARNING_OPTS, ACX_PROG_CC_WARNING_ALMOST_PEDANTIC) (ACX_PROG_CC_WARNINGS_ARE_ERRORS): Push into C language context. gcc/ * configure.ac: Use ACX_PROG_CXX_WARNING_OPTS, ACX_PROG_CXX_WARNING_ALMOST_PEDANTIC, and ACX_PROG_CXX_WARNINGS_ARE_ERRORS. * configure: Regenerate. From-SVN: r223763
Jason Merrill committed -
* auto-profile.c (afdo_calculate_branch_prob): Break once has_sample is true. From-SVN: r223762
Aditya Kumar committed -
From-SVN: r223761
Aditya Kumar committed -
2015-05-27 Richard Biener <rguenther@suse.de> PR tree-optimization/66272 Revert parts of 2014-08-15 Richard Biener <rguenther@suse.de> PR tree-optimization/62031 * tree-data-ref.c (dr_analyze_indices): Do not set DR_UNCONSTRAINED_BASE. (dr_may_alias_p): All indirect accesses have to go the formerly DR_UNCONSTRAINED_BASE path. * tree-data-ref.h (struct indices): Remove unconstrained_base member. (DR_UNCONSTRAINED_BASE): Remove. * gcc.dg/torture/pr66272.c: New testcase. From-SVN: r223759
Richard Biener committed -
* dwarf2out.c: Remove block_map. (gen_call_site_die): Replace block_map use with BLOCK_DIE. (gen_lexical_block_die): Same. (dwarf2out_function_decl): Remove block_map use. (dwarf2out_c_finalize): Same. * tree-core.h (struct tree_block): Add die field. * tree.h (BLOCK_DIE): New. From-SVN: r223758
Aldy Hernandez committed -
2015-05-27 Richard Biener <rguenther@suse.de> * gcc.dg/vect/slp-reduc-7.c: New testcase. From-SVN: r223756
Richard Biener committed -
2015-05-27 Robert Dewar <dewar@adacore.com> * sem_aux.adb: Minor rewording. 2015-05-27 Bob Duff <duff@adacore.com> * exp_prag.adb (Expand_Pragma_Abort_Defer): Make pragma Abort_Defer do nothing if Abort_Allowed is False. 2015-05-27 Arnaud Charlet <charlet@adacore.com> * exp_ch9.adb, sem_util.adb, sem_util.ads, s-stposu.adb, s-spsufi.ads, sem_elab.ads, g-comlin.ads, errout.ads, exp_ch6.adb, sem_ch4.adb, opt.ads, s-bignum.adb, output.ads, sem_ch13.adb, erroutc.ads, sem_disp.ads, exp_ch3.adb: Minor fixes of duplicate words in comments. 2015-05-27 Doug Rupp <rupp@adacore.com> * adaint.c (__gnat_tmp_name) [vxworks]: Robustify and use for rtp as well as kernel. 2015-05-27 Pierre-Marie de Rodat <derodat@adacore.com> * par_sco.adb (Process_Decision): Store sloc to condition/pragmas SCOs associations into a temporary table before moving them to the SCO_Raw_Hash_Table so that we can back them out just like we do for SCO entries that are simple decisions in an expression context. From-SVN: r223754
Arnaud Charlet committed -
PR target/65358 * expr.c (memory_load_overlap): New function. (emit_push_insn): When pushing partial args to the stack would clobber the register part load the overlapping part into a pseudo and put it into the hard reg after pushing. Change return type to bool. Add bool argument. * expr.h (emit_push_insn): Change return type to bool. Add bool argument. * calls.c (expand_call): Cancel sibcall optimization when encountering partial argument on targets with ARGS_GROW_DOWNWARD and !STACK_GROWS_DOWNWARD. (emit_library_call_value_1): Update callsite of emit_push_insn. (store_one_arg): Likewise. PR target/65358 * gcc.dg/pr65358.c: New test. From-SVN: r223753
Kyrylo Tkachov committed -
2015-05-27 Ed Schonberg <schonberg@adacore.com> * sem_ch6.adb (Process_Formals): A non-private formal type that is a limited view does not have a list of private dependents. 2015-05-27 Ed Schonberg <schonberg@adacore.com> * exp_ch5.adb (Expand_N_Case_Statement): If the expression in the case statement is a compile-time known value, we look for a corresponding alternative to optimize the case statement into a single case. If the type has a static predicate and the expression does not satisfy the predicate, there is no legal alternative and this optimization is not applicable. Excecution is erroneous, or else if assertions are enabled, an exception will be raised earlier, at the point the expression is elaborated. 2015-05-27 Robert Dewar <dewar@adacore.com> * sem_elab.adb (Check_Internal_Call_Continue): Suppress warning on Finalize, Adjust, or Initialize if type involved has Warnings_Off set. 2015-05-27 Ed Schonberg <schonberg@adacore.com> * sem_aux.adb, sem_aux.ads (First_Discriminant): Return empty when applied to a type with no known discriminants. From-SVN: r223752
Arnaud Charlet committed -
2015-05-26 Robert Dewar <dewar@adacore.com> * errout.ads, sem_ch4.adb, sem_ch6.adb: Minor reformatting. 2015-05-26 Bob Duff <duff@adacore.com> * sem_elab.adb (Check_A_Call): In the case where we're calling something in an instance of a generic package that is within this same unit (as the call), make sure we treat it as a call to an entity within the same unit. That is, call Check_Internal_Call, rather than putting "Elaborate_All(X)" on X, which would necessarily result in an elaboration cycle in static-elaboration mode. 2015-05-26 Eric Botcazou <ebotcazou@adacore.com> * freeze.ads (Is_Atomic_VFA_Aggregate): Adjust profile. * freeze.adb (Is_Atomic_VFA_Aggregate): Change Entity parameter into Node parameter and remove Type parameter. Look at Is_Atomic_Or_VFA both on the type and on the object. (Freeze_Entity): Adjust call to Is_Atomic_VFA_Aggregate. * exp_aggr.adb (Expand_Record_Aggregate): Likewise. (Process_Atomic_Independent_Shared_Volatile): Remove code propagating Atomic or VFA from object to locally-defined type. 2015-05-26 Bob Duff <duff@adacore.com> * exp_ch7.adb: Minor comment fix. From-SVN: r223751
Arnaud Charlet committed -
* lto-partition.c (new_partition): Reset number of symbols. (add_symbol_to_partition_1): Increment number of symbols. (undo_partition): Decrement number of symbols. (lto_balanced_map): Dump number of symbols and insns that belong to a partition. * lto-partition.h (struct ltrans_partition_def): Add symbol counter. From-SVN: r223750
Martin Liska committed -
On behalf of szabolcs.nagy@arm.com 2015-05-27 Gregor Richards <gregor.richards@uwaterloo.ca> * config/arm/linux-eabi.h (MUSL_DYNAMIC_LINKER): Define. From-SVN: r223749
Gregor Richards committed -
* Makefile.in: Add additional dependencies related to memory report enhancement. * alloc-pool.c (allocate_pool_descriptor): Use new ctor. * bitmap.c (struct bitmap_descriptor_d): Remove. (struct loc): Likewise. (struct bitmap_desc_hasher): Likewise. (bitmap_desc_hasher::hash): Likewise. (bitmap_desc_hasher::equal): Likewise. (get_bitmap_descriptor): Likewise. (bitmap_register): User new memory descriptor API. (register_overhead): Likewise. (bitmap_find_bit): Register nsearches and search_iter statistics. (struct bitmap_output_info): Remove. (print_statistics): Likewise. (dump_bitmap_statistics): Use new memory descriptor. * bitmap.h (struct bitmap_usage): New class. * genmatch.c: Extend header file inclusion. * genpreds.c: Likewise. * ggc-common.c (struct ggc_usage): New class. (struct ggc_loc_desc_hasher): Remove. (ggc_loc_desc_hasher::hash): Likewise. (ggc_loc_desc_hasher::equal): Likewise. (struct ggc_ptr_hash_entry): Likewise. (struct ptr_hash_hasher): Likewise. (ptr_hash_hasher::hash): Likewise. (ptr_hash_hasher::equal): Likewise. (make_loc_descriptor): Likewise. (ggc_prune_ptr): Likewise. (dump_ggc_loc_statistics): Use new memory descriptor. (ggc_record_overhead): Likewise. (ggc_free_overhead): Likewise. (final_cmp_statistic): Remove. (cmp_statistic): Likewise. (ggc_add_statistics): Liekwise. (ggc_prune_overhead_list): Likewise. * hash-map-traits.h: New file. * hash-map.h (struct default_hashmap_traits): Move the traits to a separate header file. * hash-set.h: Pass memory statistics info to ctor. * hash-table.c (void dump_hash_table_loc_statistics): New function. * hash-table.h (hash_table::hash_table): Add new ctor arguments. (hash_table::~hash_table): Register memory release operation. (hash_table::alloc_entries): Handle memory allocation operation. (hash_table::expand): Likewise. * inchash.c (iterative_hash_hashval_t): Move implementation to header file. (iterative_hash_host_wide_int): Likewise. * inchash.h (class hash): Likewise. * mem-stats-traits.h: New file. * mem-stats.h: New file. (mem_location): Add new class. (mem_usage): Likewise. (mem_alloc_description): Likewise. * sese.c: Add new header file inclusision. * toplev.c (dump_memory_report): Add report for hash_table, hash_map and hash_set. * tree-sra.c: Add new header file inclusision. * vec.c (struct vec_descriptor): Remove. (hash_descriptor): Likewise. (struct vec_usage): Likewise. (struct ptr_hash_entry): Likewise. (hash_ptr): Likewise. (eq_ptr): Likewise. (vec_prefix::register_overhead): Use new memory descriptor API. (vec_prefix::release_overhead): Likewise. (add_statistics): Remove. (dump_vec_loc_statistics): Use new memory descriptor API. * vec.h (struct vec_prefix): Likewise. (va_heap::reserve): Likewise. (va_heap::release): Likewise. * emit-rtl.c (gen_raw_REG): Fix passing MEM_STAT. From-SVN: r223748
Martin Liska committed -
* include/bits/stl_tree.h (_Rb_tree::_M_end()): Return _Base_ptr instead of downcasting. (_Rb_tree::_M_copy): Change second parameter to _Base_ptr. (_Rb_tree::_M_lower_bound, _Rb_tree:_M_upper_bound): Likewise. (_Rb_tree::_S_iter): Remove. (_Rb_tree::_S_lower_bound_tr, _Rb_tree::_S_upper_bound_tr): Remove. (_Rb_tree::_M_find_tr(const _Kt&) const): Call _M_lower_bound_tr instead of _S_lower_bound_tr (_Rb_tree::_M_find_tr(const _Kt&)): Call const overload. (_Rb_tree::_M_lower_bound_tr(const _Kt&) const): Do the search here instead of calling _S_lower_bound_tr. (_Rb_tree::_M_lower_bound_tr(const _Kt&)): Call const overload. (_Rb_tree::_M_upper_bound_tr(const _Kt&) const): Do the search here instead of calling _S_upper_bound_tr. (_Rb_tree::_M_upper_bound_tr(const _Kt&)): Call const overload. (_Rb_tree::_M_equal_range_tr(const _Kt&)): Likewise. (_Rb_tree::equal_range): Use _Base_ptr for end pointer. (_Rb_tree::_M_get_insert_unique_pos): Likewise. (_Rb_tree::_M_get_insert_equal_pos): Likewise. (_Rb_tree::_M_insert_equal_lower_node): Likewise. (_Rb_tree::_M_insert_unique, _Rb_tree::_M_emplace_unique, _Rb_tree::_M_emplace_hint_unique): Remove static_cast. From-SVN: r223746
Jonathan Wakely committed -
PR libstdc++/66017 * include/bits/stl_tree.h (_Rb_tree_node): Use __aligned_membuf. (_Rb_tree_iterator, _Rb_tree_const_iterator): Support construction from _Base_ptr. (_Rb_tree_const_iterator::_M_const_cast): Remove static_cast. (_Rb_tree::begin, _Rb_tree::end): Remove static_cast. * include/ext/aligned_buffer.h (__aligned_membuf): New type using alignment of _Tp as a member subobject, not as a complete object. * python/libstdcxx/v6/printers.py (StdRbtreeIteratorPrinter): Lookup _Link_type manually as it might not be in the debug info. From-SVN: r223745
Jonathan Wakely committed -
2015-05-27 Richard Biener <rguenther@suse.de> * tree-vect-stmts.c (vectorizable_load): Initialize slp_perm earlier and remove ??? comment. (vect_analyze_stmt): If we are analyzing a pure SLP stmt and got called from loop analysis bail out. Always pass the SLP node to the vectorizable_* functions. * tree-vect-loop.c (vect_analyze_loop_operations): Remove the premature SLP check here. * tree-vect-slp.c (vect_detect_hybrid_slp_stmts): Dump hybrid detected SLP stmts. (vect_detect_hybrid_slp_1): Likewise. From-SVN: r223743
Richard Biener committed -
gcc/fortran/ChangeLog: 2015-05-27 Andre Vehreschild <vehre@gmx.de> * trans-stmt.c (gfc_trans_allocate): Add missing location information for e3rhs. gcc/testsuite/ChangeLog: 2015-05-27 Andre Vehreschild <vehre@gmx.de> * gfortran.dg/allocate_with_source_5.f90: Correct errorneous semantic. * gfortran.dg/allocate_with_source_6.f90: New test. From-SVN: r223738
Andre Vehreschild committed -
2015-05-27 Chung-Lin Tang <cltang@codesourcery.com> libgomp/ * target.c (gomp_map_pointer): New function abstracting out GOMP_MAP_POINTER handling. (gomp_map_vars): Remove GOMP_MAP_POINTER handling code and use gomp_map_pointer(). From-SVN: r223737
Chung-Lin Tang committed -
* combine.c (find_split_point): Verify that the shift count is a constant when choosing (plus (ashift ...)) as a split point. From-SVN: r223736
Jeff Law committed -
* tree-ssa-threadupdate.c: Replace 8 space sequences with tabs. No functional changes. From-SVN: r223734
Jeff Law committed -
(ipa_polymorphic_call_context::get_dynamic_type): Short circuit the case when call target is already known. From-SVN: r223733
Jan Hubicka committed -
From-SVN: r223729
GCC Administrator committed
-
- 26 May, 2015 10 commits
-
-
* python/libstdcxx/v6/xmethods.py (UniquePtrMethodsMatcher): Add operator-> support. * testsuite/libstdc++-xmethods/unique_ptr.cc: Add tests for operator->. From-SVN: r223723
Doug Evans committed -
PR target/65979 * config/sh/sh.md (tstsi_t peephole2): Use gen_rtx_SET and take into account the case that operands[1] and operands[2] are the same register. From-SVN: r223721
Oleg Endo committed -
* gcc-interface/trans.c (Attribute_to_gnu) <Attr_Min/Attr_Max>: Do not bother about NaN's if Machine_Overflows is true. From-SVN: r223717
Eric Botcazou committed -
* gcc-interface/trans.c (gnat_to_gnu) <N_Object_Declaration>: Really force evaluation of the expression, if any, when the object has its elaboration delayed. Do not create a variable at global level. From-SVN: r223716
Eric Botcazou committed -
* gcc-interface/trans.c (Attribute_to_gnu) <Attr_Machine>: Do not apply extra-precision trick to literals. Build SAVE_EXPR manually. * gcc-interface/misc.c (enumerate_modes): Add bypass for x86/x86-64. From-SVN: r223715
Eric Botcazou committed -
* gcc-interface/ada-tree.h (DECL_GLOBAL_NONCONSTANT_RENAMING_P): Delete (DECL_RENAMED_OBJECT): Adjust comment. * gcc-interface/gigi.h (record_global_nonconstant_renaming): Delete. (invalidate_global_nonconstant_renamings): Likewise. (gnat_constant_reference_p): Likewise. (rewrite_fn): New function type. (gnat_rewrite_reference): Declare. (call_is_atomic_load): New inline predicate. * gcc-interface/decl.c (elaborate_reference_1): New function. (elaborate_reference): Likewise. (gnat_to_gnu_entity): Call elaborate_reference to elaborate renamings and simplify associated code. Set const_flag to true consistently in conjunction with used_by_ref. * gcc-interface/trans.c (Identifier_to_gnu): Always replace renaming pointers by renamed objects. (outer_atomic_access_required_p): Deal with renamings. (Compilation_Unit_to_gnu): Do not call invalidate_global_nonconstant_renamings. (gnat_to_gnu) <N_Object_Renaming_Declaration>: Adjust comment. (gnat_gimplify_expr): Deal with atomic loads. * gcc-interface/utils.c (global_nonconstant_renamings): Delete. (destroy_gnat_utils): Do not call invalidate_global_nonconstant_renamings. (record_global_nonconstant_renaming): Delete. (invalidate_global_nonconstant_renamings): Likewise. * gcc-interface/utils2.c (call_is_atomic_load): Move to gigi.h. (build_load_modify_store): Build a copy of the destination. (gnat_stabilize_reference_1): Adjust. (gnat_stabilize_reference): Call gnat_stabilize_reference_1 through gnat_rewrite_reference and move bulk of code to... (gnat_rewrite_reference): ...here. New global function. (gnat_constant_reference_p): Delete. From-SVN: r223709
Eric Botcazou committed -
* gcc-interface/gigi.h (gnat_stabilize_reference): Adjust prototype. * gcc-interface/decl.c (gnat_to_gnu_entity): Do not rely on const_flag to detect constant renamings. Be prepared for specific pattern of renamed object based on function calls. Create a constant object for the renaming of a NULL_EXPR or of a CONSTRUCTOR. Adjust calls to gnat_stabilize_reference and tidy up. Remove redundant tests. (elaborate_expression_1): Remove obsolete test and tidy up. * gcc-interface/trans.c (Call_to_gnu): Do not stabilize In/Out or Out parameters passed by reference. (gnat_to_gnu) <N_Selected_Component>: Remove redundant protection again side-effects. Use gnat_protect_expr instead of gnat_stabilize_reference for general protection against side-effects. * gcc-interface/utils2.c (gnat_stable_expr_p): New predicate. (gnat_save_expr): Invoke it. (gnat_protect_expr): Likewise. (gnat_stabilize_reference_1): Likewise. Remove useless propagation of TREE_THIS_NOTRAP. (gnat_stabilize_reference): Remove parameter and adjust throughout. Delete ADDR_EXDR, COMPOUND_EXPR and CONSTRUCTOR cases. Restrict CALL_EXPR case to atomic loads and tweak ERROR_MARK case. From-SVN: r223708
Eric Botcazou committed -
2015-05-26 Andreas Tobler <andreast@gcc.gnu.org> * testsuite/libjava.jni/jni.exp (gcj_jni_get_cxxflags_invocation): Add libiconv for FreeBSD to cxxflags. From-SVN: r223706
Andreas Tobler committed -
line-map.c (LINE_MAP_MAX_COLUMN_NUMBER LINE_MAP_MAX_LOCATION_WITH_COLS,LINE_MAP_MAX_SOURCE_LOCATION): New constants. libcpp/ChangeLog: 2015-05-26 Manuel López-Ibáñez <manu@gcc.gnu.org> * line-map.c (LINE_MAP_MAX_COLUMN_NUMBER LINE_MAP_MAX_LOCATION_WITH_COLS,LINE_MAP_MAX_SOURCE_LOCATION): New constants. (linemap_line_start): Use them. (linemap_position_for_column): Use them. From-SVN: r223705
Manuel López-Ibáñez committed -
PR middle-end/66251 * tree-vect-stmts.c (vect_model_store_cost): Handled strided group stores. (vect_create_vectorized_demotion_stmts): Always set STMT_VINFO_VEC_STMT, also with SLP. (vectorizable_store): Handle strided group stores. testsuite/: PR middle-end/66251 * gcc.dg/vect/pr66251.c: New test. From-SVN: r223704
Michael Matz committed
-