1. 24 Jul, 2012 5 commits
    • lto-tree.h (lang_decl): Add variable_size GTY option. · 0229aee9
      gcc/lto/ChangeLog:
      
      2012-07-24  Uros Bizjak  <ubizjak@gmail.com>
      
      	* lto-tree.h (lang_decl): Add variable_size GTY option.
      
      gcc/go/ChangeLog:
      
      2012-07-24  Uros Bizjak  <ubizjak@gmail.com>
      
      	* go-lang.c (lang_decl): Add variable_size GTY option.
      
      gcc/c/ChangeLog:
      
      2012-07-24  Uros Bizjak  <ubizjak@gmail.com>
      
      	* c-lang.h (lang_decl): Add variable_size GTY option.
      
      From-SVN: r189804
      Uros Bizjak committed
    • sbitmap.h (SBITMAP_ELT_BITS): Use "1u" trick as for BITMAP_WORD_BITS. · 7aa6d18a
      gcc/
      	* sbitmap.h (SBITMAP_ELT_BITS): Use "1u" trick as for BITMAP_WORD_BITS.
      	Move test to check that there is a popcount function for the the number
      	of bits in SBITMAP_ELT_BITS to sbitmap.c.
      	* sbitmap.c: Test SBITMAP_ELT_BITS, not HOST_BITS_PER_WIDEST_FAST_INT.
      	MEM_STAT_INFO): Define in terms of their ALONE counterparts.
      
      	* configure.ac (GATHER_STATISTICS): Always define, non-zero if enabled.
      	* configure: Regenerate.
      	* statistics.h (GATHER_STATISTICS): Error out if it is not defined.
      	(GCC_MEM_STAT_ARGUMENTS): New define.
      	(ALONE_MEM_STAT_DECL): Define in terms of GCC_MEM_STAT_ARGUMENTS.
      	(ALONE_FINAL_MEM_STAT_DECL, ALONE_FINAL_PASS_MEM_STAT): New defines.
      	(MEM_STAT_DECL, FINAL_MEM_STAT_DECL, PASS_MEM_STAT, FINAL_PASS_MEM_STAT,
      	* ggc-internal.h (ggc_record_overhead): Use FINAL_MEM_STAT_DECL.
      	* ggc.h (ggc_record_overhead, ggc_free_overhead,
      	ggc_prune_overhead_list): Remove internal prototypes, they are defined
      	already in ggc-internal.h.
      	* ggc-common.c (struct loc_descriptor): Remove #ifdef GATHER_STATISTICS
      	wrappers.
      	(add_statistics): Likewise.
      	(dump_ggc_loc_statistics): Likewise. Return if GATHER_STATISTICS is 0. 
      	* ggc-zone.c (struct page_entry): Remove #ifdef GATHER_STATISTICS
      	wrappers around "survived" and "stats" members.
      	(alloc_large_page): Always initialize survived.
      	(ggc_internal_alloc_zone_stat): Likewise.
      	Remove #ifdef GATHER_STATISTICS wrappers.  Record overhead if
      	GATHER_STATISTICS is non-0.
      	(ggc_free): Convert #ifdef GATHER_STATISTICS to if-code.
      	(sweep_pages): Always increase survived.
      	(ggc_collect_1): Convert #ifdef GATHER_STATISTICS to if-code.
      	(calculate_average_page_survival): Always define.
      	(ggc_collect): Convert #ifdef GATHER_STATISTICS to if-code.
      	(ggc_print_statistics): Likewise.
      	(ggc_pch_read): Likewise.
      	* ggc-page.c (struct globals): Always define "stats" member.
      	(ggc_internal_alloc_stat): Convert #ifdef GATHER_STATISTICS to if-code.
      	(ggc_free): Likewise.
      	(ggc_collec): Likewise.
      	(ggc_print_statistics): Likewise.
      	* bitmap.h (struct bitmap_head_def): Always define "desc" member.
      	(bitmap_initialize_stat): Convert #ifdef GATHER_STATISTICS to if-code.
      	* gimple.h (enum gimple_alloc_kind): Always define.
      	(gimple_alloc_kind): Likewise.
      	* tree-flow.h (phinodes_print_statistics): Always define.
      	(ssanames_print_statistics): Likewise.
      	* vec.h (vec_heap_free): Always define.
      	(VEC_stack_alloc): Define if GATHER_STATISTICS is non-0.
      	* alloc-pool.c (alloc_pool_descriptor): Always define.
      	(create_alloc_pool): Convert #ifdef GATHER_STATISTICS to if-code.
      	(empty_alloc_pool): Likewise.
      	(pool_alloc): Likewise.
      	(pool_free): Likewise.
      	(dump_alloc_pool_statistics): Likewise.
      	(print_statistics): Always define.
      	* bitmap.c (struct bitmap_descriptor): Always define.
      	(bitmap_register): Pass ALONE_FINAL_PASS_MEM_STAT.
      	(register_overhead): Always define.
      	(bitmap_element_free): Convert #ifdef GATHER_STATISTICS to if-code.
      	(bitmap_element_allocate): Likewise.
      	(bitmap_elt_clear_from): Likewise.
      	(bitmap_obstack_alloc_stat): Likewise.
      	(bitmap_gc_alloc_stat): Likewise.
      	(bitmap_obstack_free): Likewise.
      	(bitmap_find_bit): Likewise.
      	(bitmap_ior_and_into):  Likewise.
      	(bitmap_print): Likewise.
      	(dump_bitmap_statistics): Likewise. Return if GATHER_STATISTICS is 0.
      	* gimple.c (gimple_alloc_counts, gimple_alloc_sizes): Always define.
      	(gimple_alloc_kind_names): Likewise.
      	(gimple_alloc_stat): Convert #ifdef GATHER_STATISTICS to if-code.
      	(dump_gimple_statistics): Likewise. Return if GATHER_STATISTICS is 0.
      	* rtl.c (rtx_alloc_counts, rtx_alloc_sizes, rtvec_alloc_counts,
      	rtvec_alloc_sizes): Always define.
      	(rvec_alloc): Convert #ifdef GATHER_STATISTICS to if-code.
      	(rtx_alloc_stat): Likewise.
      	(dump_rtx_statistics): Likewise. Return if GATHER_STATISTICS is 0.
      	* tree.c (_obstack_allocated_p, tree_code_counts, tree_node_counts,
      	tree_node_sizes, tree_node_kind_names): Always define.
      	(record_node_allocation_statistics): Convert #ifdef GATHER_STATISTICS
      	to if-code.
      	(type_hash_canon): Likewise.
      	(dump_tree_statistics): Likewise.
      	* tree-ssanames.c (ssa_name_nodes_reused, ssa_name_nodes_created):
      	Always define.
      	(ssanames_print_statistics): Likewise.
      	(make_ssa_name_fn): Convert #ifdef GATHER_STATISTICS to if-code.
      	* tree-phinodes.c (phi_nodes_reused, phi_nodes_created): Always define.
      	(phinodes_print_statistics): Likewise.
      	(allocate_phi_node): Convert #ifdef GATHER_STATISTICS to if-code.
      	* vec.c (struct vec_descriptor): Always define.
      	(hash_descriptor, eq_descriptor, ptr_hash_entry, hash_ptr, eq_ptr,
      	vec_descriptor, rester_overhead, free_overhead): Likewise.
      	(cmp_statistic): Likewise.
      	(vec_heap_free): Convert #ifdef GATHER_STATISTICS to if-code.
      	(vec_heap_o_reserve_1): Likewise.
      	(dump_vec_loc_statistics): Likewise.
      
      cp/
      	* cp/class.c (n_vtables, n_vtable_entries, n_vtable_searches,
      	n_vtable_elems, n_convert_harshness, n_compute_conversion_costs,
      	n_inner_fields_searched): Always define.
      	(build_primary_vtable): Convert #ifdef GATHER_STATISTICS to if-code.
      	(print_class_statistics): Convert #ifdef GATHER_STATISTICS to if-code.
      	* cp/tree.c (depth_reached): Always define global.
      	(cxx_print_statistics): Convert #ifdef GATHER_STATISTICS to if-code.
      	* cp/pt.c (depth_reached): Always define.
      	(push_tinst_level): Convert #ifdef GATHER_STATISTICS to if-code.
      	* cp/search.c (n_fields_searched, n_calls_lookup_field,
      	n_calls_lookup_field_1, n_calls_lookup_fnfields,
      	n_calls_lookup_fnfields_1, n_calls_get_base_type,
      	n_outer_fields_searched, n_contexts_saved): Always define.
      	(lookup_field_1): Convert #ifdef GATHER_STATISTICS to if-code.
      	(lookup_member): Likewise.
      	(lookup_fnfields_idx_nolazy): Likewise.
      	(print_search_statistics): Likewise.
      	(reinit_search_statistics): Unconditionally re-set counters.
      	* cp/lex.c (retrofit_lang_decl): Convert #ifdef GATHER_STATISTICS
      	to if-code.
      	(cxx_dup_lang_specific_decl): Likewise.
      	(copy_lang_type): Likewise.
      	(cxx_make_type): Likewise.
      
      From-SVN: r189803
      Steven Bosscher committed
    • re PR middle-end/53616 (416.gamess in SPEC CPU 2006 miscompiled) · 38ad2d07
      2012-07-24  Richard Guenther  <rguenther@suse.de>
      
      	PR tree-optimization/53616
      	* tree-loop-distribution.c (ldist_gen): Do not change
      	partition ordering when merging partitions.
      
      From-SVN: r189802
      Richard Guenther committed
    • re PR target/53914 (poor code generated for offset addressing on ppc32) · d32d6b75
      	PR target/53914
      	PR target/54009
      	* config/rs6000/constraints.md (Y): Use mem_operand_gpr.
      	* config/rs6000/predicates.md (word_offset_memref_operand): Delete.
      	Adjust all rs6000_legitimate_offset_address_p calls.
      	* config/rs6000/rs6000-protos.h (mem_operand_gpr): Declare.
      	(rs6000_secondary_reload_gpr): Declare.
      	(rs6000_legitimate_offset_address_p): Update prototype.
      	(rs6000_offsettable_memref_p): Delete.
      	(rs6000_secondary_reload_ppc64): Delete.
      	* config/rs6000/rs6000.c (address_offset): New function.
      	(mem_operand_gpr): Likewise.
      	(rs6000_legitimate_offset_address_p): Add worst_case param.  When
      	not worst_case assume class of regs with least restrictive offsets.
      	Adjust all calls.
      	(legitimate_lo_sum_address_p): Simplify register mode tests.
      	(rs6000_legitimize_address): Likewise.  Assume best case offset
      	addressing.  Combine ELF and MACHO lo_sum code.
      	(rs6000_mode_dependent_address): Correct offset addressing limits.
      	(rs6000_offsettable_memref_p): Make static, add reg_mode param.
      	Use reg_mode to help rs6000_legitimate_offset_address_p.
      	(rs6000_secondary_reload): Use address_offset.  Handle 32-bit multi
      	gpr load/store when offset too large.
      	(rs6000_secondary_reload_gpr): Renamed rs6000_secondary_reload_ppc64.
      	(rs6000_split_multireg_move): Adjust rs6000_offsettable_memref_p calls.
      	* config/rs6000/rs6000.md (movdf_hardfloat32): Use 'Y' constraint
      	for gpr load/store.  Order alternatives as r->Y,Y->r,r->r and
      	d->m,m->d,d->d.  Correct size of gpr load/store.
      	(movdf_softfloat32): Use 'Y' constraint for gpr load/store.  Order
      	alternatives.
      	(movti_ppc64): Likewise.
      	(movdi_internal32): Likewise.  Also disparage fprs.
      	(movdi_mfpgpr, movdi_internal64): Likewise.
      	(movtf_internal): Use 'm' for fpr load/store.  Order alternatives.
      	(movtf_softfloat): Order alternatives.
      	(extenddftf2_internal): Use 'm' and 'Y' for store.
      	(movti_power, movti_string): Use 'Y' for gpr load/store.  Order.
      	(stack_protect_setdi, stack_protect_testdi): Likewise.
      	(movdf_hardfloat64_mfpgpr, movdf_hardfloat64): Order alternatives.
      	(movdf_softfloat64): Likewise.
      	(reload_<mode>_store): Adjust reload_di_store to provide
      	reload_si_store as well.
      	(reload_<mode>_load): Likewise.
      
      From-SVN: r189801
      Alan Modra committed
    • Daily bump. · 71922d52
      From-SVN: r189800
      GCC Administrator committed
  2. 23 Jul, 2012 26 commits
    • re PR target/51244 ([SH] Inefficient conditional branch and code around T bit) · ef812306
      	PR target/51244
      	* config/sh/predicates.md (general_movsrc_operand,
      	general_movdst_operand): Reject T_REG.
      	* config/sh/sh.md (*extendqisi2_compact_reg, *extendhisi2_compact_reg,
      	movsi_i, movsi_ie, movsi_i_lowpart, *movqi_reg_reg, *movhi_reg_reg):
      	Remove T_REG alternatives.
      	(*negtstsi): New insn.
      
      From-SVN: r189797
      Oleg Endo committed
    • re PR target/53511 (SH Target: Add support for fma patterns) · 5734aefd
      	PR target/53511
      	* config/sh/sh.md (mulsf3_ie): Delete.
      	(mulsf3_i4): Rename to mulsf3_i.
      	(mulsf3): Emit mulsf3_i insn.
      
      From-SVN: r189796
      Oleg Endo committed
    • sh.md (addc1, subc1): Delete. · dad6fafd
      	* config/sh/sh.md (addc1, subc1): Delete.
      	(adddi3_compact): Use addc instead of addc1.
      	(subdi3_compact): Use subc instead of subc1.
      
      From-SVN: r189795
      Oleg Endo committed
    • i386-protos.c (ix86_lea_outperforms): Remove prototype. · 8046c604
      	* config/i386/i386-protos.c (ix86_lea_outperforms): Remove prototype.
      	* config/i386/i386.c (ix86_lea_outperforms): Make static.  Make
      	split_cost argument signed.
      	(ix86_avoid_lea_for_add): Cleanup.
      	(ix86_use_lea_for_mov): Use INVALID_REGNUM instead of -1.
      	(ix86_avoid_lea_for_addr): Ditto.  Make split_cost signed.
      	Use gen_lowpart instead of gen_rtx_SUBREG.  Cleanup.
      
      From-SVN: r189792
      Uros Bizjak committed
    • * config/arm/arm.c (arm_reorg): Ensure all insns are split. · 7839a79c
      From-SVN: r189790
      Ulrich Weigand committed
    • re PR target/53961 (internal compiler error: in memory_address_length, at config/i386/i386.c:23341) · 7a49d85e
      	PR target/53961
      	* config/i386/i386.md (*lea): Add asserts to detect invalid addresses.
      	* config/i386/i386.c (ix86_print_operand_address): Ditto.
      	(ix86_decompose_address): Allow (zero_extend:DI (subreg:SI (...)))
      	addresses.  Prevent zero extensions of CONST_INT operands.
      
      From-SVN: r189787
      Uros Bizjak committed
    • sbitmap.h (struct int_list): Remove. · 3c2c4f22
      	* sbitmap.h (struct int_list): Remove.
      	(sbitmap_intersect_of_predsucc, sbitmap_union_of_predsucc):
      	Remove prototypes of non-existing function.
      	(sbitmap_intersect_of_predecessors, sbitmap_intersect_of_successors,
      	sbitmap_union_of_predecessors, sbitmap_union_of_successors): Remove
      	unused defines.
      	(sbitmap_intersection_of_succs, sbitmap_intersection_of_preds,
      	sbitmap_union_of_succs, sbitmap_union_of_preds): Move prototypes to...
      	* basic-block.h: ... here.
      	* sbitmap.c: Do not include basic-block.h.
      	(sbitmap_intersection_of_succs, sbitmap_intersection_of_preds,
      	sbitmap_union_of_succs, sbitmap_union_of_preds): Move functions to...
      	* cfganal.c: ... here.
      	* bt-load.c (compute_out, link_btr_uses): Update for above changes.
      	* gcse.c (compute_code_hoist_vbeinout): Likewise.
      	* lcm.c (compute_antinout_edge, compute_available): Likewise.
      	* Makefile.in: Fix sbitmap.o dependencies.
      
      From-SVN: r189785
      Steven Bosscher committed
    • armv7m-1.c: New test. · 87d84e1e
      	gcc/testsuite/
      	* g++.dg/other/armv7m-1.c: New test.
      
      From-SVN: r189784
      Paul Brook committed
    • frv-protos.h (frv_ifcvt_machdep_init): Prototype. · afa63532
      	* config/frv/frv-protos.h (frv_ifcvt_machdep_init): Prototype.
      	* config/frv/frv.c (frv_ifcvt_machdep_init): Change type of
      	(unused) parameter to void *.
      
      Co-Authored-By: Nick Clifton <nickc@redhat.com>
      
      From-SVN: r189783
      Jan-Benedict Glaw committed
    • tree-ssa-alias.c (dump_alias_info): Walk over local decls instead of referenced vars. · fdc030e8
      2012-07-23  Richard Guenther  <rguenther@suse.de>
      
      	* tree-ssa-alias.c (dump_alias_info): Walk over local decls
      	instead of referenced vars.
      
      From-SVN: r189782
      Richard Guenther committed
    • coverage.c: Refer to "notes file" instead of "graph file" in all comments. · efbb59b2
      gcc/
      	* coverage.c: Refer to "notes file" instead of "graph file"
      	in all comments.  Explain history of bbg prefix.
      	* gcov-io.h: Likewise.
      	* gcov.c: Likewise.
      	(find_source): Likewise in fnotice.
      	(read_graph_file): Likewise.
      	(read_count_file): Likewise.
      	* doc/gcov.texi: Document -fprofile-dir flag.  Add "notes file"
      	and "data file" explicitly in the explanation of the files.
      
      libgcc/
      	* libgcov.c (__gcov_ior_profiler): Benign comment fix.
      
      From-SVN: r189781
      Steven Bosscher committed
    • 20101011-1.c (__aeabi_idiv0): Define for ARM. · fa0f4017
      	gcc/testsuite/
      	* gcc.c-torture/execute/20101011-1.c (__aeabi_idiv0): Define for
      	ARM.
      	(DO_TEST): Define to 1 for appropriate ARM targets.
      
      From-SVN: r189780
      Julian Brown committed
    • re PR tree-optimization/53881 (ICE in hoist_edge_and_branch_if_true) · 25632d2e
      gcc/
      	PR tree-optimization/53881
      	* tree-cfg.c (group_case_labels_stmt): Look up the basic block
      	for each label and compare them instead of labels.
      
      testsuite/
      	PR tree-optimization/53881
      	* gcc.dg/pr53881.c: Renamed to ...
      	* gcc.dg/pr53881-1.c: ... this.
      	* gcc.dg/pr53881-2.c: New test.
      
      From-SVN: r189779
      Steven Bosscher committed
    • opts.c (common_handle_option): Do not set flag_value_profile_transformations for… · 9696c529
      opts.c (common_handle_option): Do not set flag_value_profile_transformations for -fprofile-generate.
      
      	* opts.c (common_handle_option): Do not set 
      	flag_value_profile_transformations for -fprofile-generate.
      	* profile.c (instrument_values): Use COUNTER_FOR_HIST_TYPE.
      	(BB_TO_GCOV_INDEX): Remove.
      	(output_location): Don't use it.
      	(branch_prob): Likewise.  Don't fiddle with the index of
      	ENTRY_BLOCK_PTR and EXIT_BLOCK_PTR.  Use clear_aux_for_blocks.
      	(find_spanning_tree):
      	* gcov.c (struct function_info): Document that blocks 0 and 1
      	are the entry resp. exit blocks in gcov, too, like in GCC itself.
      	(solve_flow_graph): Use ENTRY_BLOCK and EXIT_BLOCK for special
      	blocks identification.
      	(output_lines): Likewise.
      	* value-prof.c (gimple_value_profile_transformations): Do not
      	test flag_value_profile_transformations again.
      	(gimple_ic_transform): Take a gimple_stmt_iterator like all other
      	transformation functions.
      	(gimple_values_to_profile):
      	Don't test flag_value_profile_transformations
      	* tree-profile.c (tree_profiling): Assert that the cgraph is in
      	the CGRAPH_STATE_IPA_SSA state.
      	Do not set, or look at, after_tree_profile.
      	* function.h (struct function): Remove after_tree_profile bit.
      	* omp-low.c (expand_omp_taskreg): Don't set after_tree_profile.
      	* tree-inline.c (initialize_cfun): Don't copy it.
      	* lto-streamer-out.c (output_struct_function_base): Don't stream it.
      	* lto-streamer-in.c (input_struct_function_base): Likewise.
      
      From-SVN: r189778
      Steven Bosscher committed
    • [multiple changes] · 678400b3
      2012-07-23  Tristan Gingold  <gingold@adacore.com>
              
      	* gcc-interface/trans.c (Handled_Sequence_Of_Statements_to_gnu): Use    
      	End_Label sloc when possible for sloc of the TRY_CATCH_EXPR node.    
      
      2012-07-23  Olivier Hainque  <hainque@adacore.com>
      
      	* gcc-interface/Makefile.in: Adjust processing of Linker_Options for
      	VxWorks.
      	* gcc-interface/Make-lang.in: Update dependencies.
      
      From-SVN: r189777
      Arnaud Charlet committed
    • [multiple changes] · c4250ab1
      2012-07-23  Arnaud Charlet  <charlet@adacore.com>
      
      	* s-tasinf-linux.ads: Fix typo.
      
      2012-07-23  Thomas Quinot  <quinot@adacore.com>
      
      	* exp_ch7.adb, switch-m.adb, exp_ch3.adb, freeze.adb: Minor reformatting
      
      2012-07-23  Ed Schonberg  <schonberg@adacore.com>
      
      	* exp_ch5.adb (Expand_Iterator_Loop_Over_Array): If original
      	loop carries an identifier, preserve it when rewriting it as a
      	standard loop to validate exit statements that may reference
      	that name in the body of the loop.
      
      2012-07-23  Thomas Quinot  <quinot@adacore.com>
      
      	* exp_ch9.adb: Minor code cleanup.
      
      From-SVN: r189776
      Arnaud Charlet committed
    • [multiple changes] · d7a44b14
      2012-07-23  Ed Schonberg  <schonberg@adacore.com>
      
      	* sem_ch4.adb (Analyze_Selected_Component): When checking for
      	potential ambiguities with class-wide operations on synchronized
      	types, attach the copied node properly to the tree, to prevent
      	errors during expansion.
      
      2012-07-23  Yannick Moy  <moy@adacore.com>
      
      	* sem_ch5.adb (Analyze_Loop_Statement): Make sure the loop body
      	is analyzed in Alfa mode.
      
      2012-07-23  Ed Schonberg  <schonberg@adacore.com>
      
      	* sem_res.adb: Adjust previous change.
      
      2012-07-23  Vincent Pucci  <pucci@adacore.com>
      
      	* sem_ch9.adb (Allows_Lock_Free_Implementation): Flag
      	Lock_Free_Given renames previous flag Complain. Description
      	updated. Henceforth, catch every error messages issued by this
      	routine when Lock_Free_Given is True.  Declaration restriction
      	updated: No non-elementary parameter instead (even in parameter)
      	New subprogram body restrictions implemented: No allocator,
      	no address, import or export rep items, no delay statement,
      	no goto statement, no quantified expression and no dereference
      	of access value.
      
      2012-07-23  Hristian Kirtchev  <kirtchev@adacore.com>
      
      	* checks.adb (Determine_Range): Add local variable Btyp. Handle
      	the case where the base type of an enumeration subtype is
      	private. Replace all occurrences of Base_Type with Btyp.
      	* exp_attr.adb (Attribute_Valid): Handle the case where the
      	base type of an enumeration subtype is private. Replace all
      	occurrences of Base_Type with Btyp.
      	* sem_util.adb (Get_Enum_Lit_From_Pos): Add local variable
      	Btyp. Handle the case where the base type of an enumeration
      	subtype is private. Replace all occurrences of Base_Type with
      	Btyp.
      
      From-SVN: r189775
      Arnaud Charlet committed
    • [multiple changes] · 50878404
      2012-07-23  Ed Schonberg  <schonberg@adacore.com>
      
      	* par-ch6.adb (P_Mode): in Ada 2005, a mode indicator can apply
      	to a formal object of an anonymous access type.
      
      2012-07-23  Ed Schonberg  <schonberg@adacore.com>
      
      	* sem_ch4.adb (Try_Container_Indexing): A user-defined indexing
      	aspect can have more than one index, e.g. to describe indexing
      	of a multidimensional object.
      
      2012-07-23  Hristian Kirtchev  <kirtchev@adacore.com>
      
      	* exp_ch4.adb (Apply_Accessibility_Check): Reimplemented. The check is
      	now more complex and contains optional finalization part and mandatory
      	deallocation part.
      
      2012-07-23  Gary Dismukes  <dismukes@adacore.com>
      
      	* a-cihama.adb, a-cihase.adb, a-cimutr.adb, a-ciorma.adb, a-ciormu.adb,
      	a-ciorse.adb, a-coinho.adb, a-coinve.adb, a-cidlli.adb: Unsuppress
      	Accessibility_Check for Element_Type allocators.
      
      2012-07-23  Vasiliy Fofanov  <fofanov@adacore.com>
      
      	* projects.texi: Fix typo.
      
      2012-07-23  Ed Schonberg  <schonberg@adacore.com>
      
      	* sem_res.adb (Resolve_Explicit_Derenference): If prefix is
      	overloaded, remove those interpretations whose designated type
      	does not match the context, to avoid spurious ambiguities that
      	may be caused by the Ada 2012 conversion rule for anonymous
      	access types.
      
      From-SVN: r189774
      Arnaud Charlet committed
    • [multiple changes] · 473e20df
      2012-07-23  Vincent Celier  <celier@adacore.com>
      
      	* g-spitbo.adb (Substr (String)): Return full string and do not
      	raise exception when Start is 1 and Len is exactly the length
      	of the string parameter.
      	* g-spitbo.ads: Fix spelling error in the name of exception
      	Index_Error.
      
      2012-07-23  Ed Schonberg  <schonberg@adacore.com>
      
      	* par.adb: new subprogram Get_Aspect_Specifications.
      	* par-ch6.adb (P_Subprogram): handle subprogram bodies with aspect
      	specifications.
      	* par-ch13.adb (Get_Aspect_Specifications): extracted from
      	P_Aspect_Specifications. Collect aspect specifications in some
      	legal context, but do not attach them to any declaration. Used
      	when parsing subprogram declarations or bodies that include
      	aspect specifications.
      	* sem_ch6.adb (Analyze_Subprogram_Body_Helper): If aspects are
      	present, analyze them, or reject them if the subprogram as a
      	previous spec.
      
      2012-07-23  Vasiliy Fofanov  <fofanov@adacore.com>
      
      	* gnat_ugn.texi: Omit section on other platforms/runtimes support
      	in gnattest for vms version.
      
      2012-07-23  Ed Schonberg  <schonberg@adacore.com>
      
      	* sem_ch13.adb (Analyze_Aspect_Specifications):
      	Handle properly aspects that can be specified on a subprogram
      	body: CPU, Priority, and Interrupt_Priority.
      
      2012-07-23  Claire Dross  <dross@adacore.com>
      
      	* a-cfdlli.ads: Switch definition of Constant_Reference_Type
      	and Empty_List.
      
      2012-07-23  Thomas Quinot  <quinot@adacore.com>
      
      	* par_sco.adb (Process_Decisions.Output_Header): For the guard
      	on an alternative in a SELECT statement, use the First_Sloc
      	of the guard expression (not its topmost sloc) as the decision
      	location, because this is what is referenced by dominance markers.
      
      2012-07-23  Hristian Kirtchev  <kirtchev@adacore.com>
      
      	* exp_ch7.adb (Requires_Hooking): Examine the original expression
      	of an object declaration node because a function call that
      	returns on the secondary stack may have been rewritten into
      	something else.
      
      2012-07-23  Vincent Pucci  <pucci@adacore.com>
      
      	* sem_dim.adb (Analyze_Dimension_Has_Etype): For identifier, propagate
      	dimension when entity is a non-dimensionless constant.
      	(Analyze_Dimension_Object_Declaration): Propagate
      	dimension from the expression to the entity when type is a
      	dimensioned type and object is a constant.
      
      2012-07-23  Ed Schonberg  <schonberg@adacore.com>
      
      	* sem_attr.adb (Analyze_Attribute, case 'Old): if the prefix
      	is not an entity name, expand at once so that code generated by
      	the expansion of the prefix is not generated before the constant
      	that captures the old value is properly inserted and analyzed.
      
      2012-07-23  Thomas Quinot  <quinot@adacore.com>
      
      	* exp_ch9.adb (Ensure_Statement_Present): Mark generated NULL
      	statement as Comes_From_Source so that GIGI does not eliminate it.
      
      From-SVN: r189773
      Arnaud Charlet committed
    • [multiple changes] · 219d9cc7
      2012-07-23  Hristian Kirtchev  <kirtchev@adacore.com>
      
      	* sem_ch12.adb (Insert_Freeze_Node_For_Instance): Inst is now
      	a local variable. Retrieve the related instance when processing
      	a subprogram instantiation. Such instances appear as wrapper
      	packages.
      
      2012-07-23  Vincent Pucci  <pucci@adacore.com>
      
      	* system-aix64.ads, system-aix.ads, system-darwin-ppc.ads,
      	system-hpux.ads, system-linux-alpha.ads,
      	system-linux-hppa.ads, system-linux-ppc.ads,
      	system-linux-s390.ads, system-linux-s390x.ads,
      	system-linux-sh4.ads, system-linux-sparc.ads,
      	system-lynxos-ppc.ads, system-mingw.ads,
      	system-solaris-sparc.ads, system-solaris-sparcv9.ads,
      	system-vms_64.ads, * system-vxworks-arm.ads, system-vxworks-m68k.ads,
      	system-vxworks-mips.ads, system-vxworks-ppc.ads,
      	system-vxworks-sparcv9.ads: Support_Atomic_Primitives set to False.
      	* system-darwin-x86.ads, system-darwin-x86_64.ads,
      	system-freebsd-x86.ads, system-freebsd-x86_64.ads,
      	system-hpux-ia64.ads, system-linux-ia64.ads, system-linux-x86.ads,
      	system-linux-x86_64.ads, system-lynxos-x86.ads,
      	system-mingw-x86_64.ads, system-solaris-x86.ads,
      	system-solaris-x86_64.ads, system-vms-ia64.ads,
      	system-vxworks-x86.ads: Support_Atomic_Primitives set to True.
      	* s-atopri.adb (Lock_Free_Read_X): New body.
      	(Lock_Free_Try_Write_X): Support_Atomic_Primitives check added.
      	(Lock_Free_Try_Write_64): New body.
      	* s-atopri.ads: New type uint.
      	(Sync_Compare_And_Swap_64): __sync_val_compare_and_swap_8 intrinsic
      	import.
      	(Lock_Free_Read_X): Body moved to s-atopri.adb.
      	(Lock_Free_Try_Write_64): Similar to other Lock_Free_Try_Write_X
      	routines.
      	* targparm.adb: New enumeration literal SAP
      	(Support_Atomic_Primitives) for type Targparm_Tags. New constant
      	SAP_Str. New component SAP_Str'Access for array Targparm_Str.
      	(Get_Target_Parameters): Parse Support_Atomic_Primitives_On_Target
      	flag.
      	* targparm.ads: New back-end code generation flag
      	Support_Atomic_Primitives_On_Target
      
      2012-07-23  Vincent Pucci  <pucci@adacore.com>
      
      	* gnat_ugn.texi: Dimensionality checking documentation updated.
      
      2012-07-23  Ed Schonberg  <schonberg@adacore.com>
      
      	* sem_prag.adb (Make_Inline): If the pragma applies to a
      	subprogram renaming, set inline flags on both the renamed entity
      	and on the renaming, so that some ASIS queries can be handled
      	consistently in the absence of expansion.
      
      From-SVN: r189772
      Arnaud Charlet committed
    • [multiple changes] · db914ff8
      2012-07-23  Fedor Rybin  <frybin@adacore.com>
      
      	* gnat_ugn.texi: Removing obsolete limitation of gnattest
      	to support only ada05.	Updating gnattest support for other
      	platforms/run-times section to reflect the usage of taget
      	prefix in gnattest calls.  Fixing missed obsolete --stub-default
      	option name.
      
      2012-07-23  Robert Dewar  <dewar@adacore.com>
      
      	* uintp.adb: Minor reformatting.
      
      2012-07-23  Olivier Hainque  <hainque@adacore.com>
      
      	* system-vxworks-ppc.ads: Replace the default
      	Linker_Options requesting crtbe by a commented out request for
      	-nostartfiles.
      
      2012-07-23  Vincent Celier  <celier@adacore.com>
      
      	* prj-nmsc.adb (Check_Naming): Do not get the exceptions names
      	in a virtual project.
      
      From-SVN: r189771
      Arnaud Charlet committed
    • layout.adb, [...]: Minor reformatting. · 2557e054
      2012-07-23  Robert Dewar  <dewar@adacore.com>
      
      	* layout.adb, sem_prag.adb, sem.ads, freeze.adb,
      	switch-m.adb, exp_disp.adb, system-vxworks-ppc.ads, exp_ch6.adb: Minor
      	reformatting.
      
      From-SVN: r189770
      Robert Dewar committed
    • trans.c: (Handled_Sequence_Of_Statements_to_gnu): Set location on TRY_CATCH_EXPR. · 63ed669f
      2012-07-23  Tristan Gingold  <gingold@adacore.com>
      
      	* gcc-interface/trans.c: (Handled_Sequence_Of_Statements_to_gnu): Set   
      	location on TRY_CATCH_EXPR.
      
      From-SVN: r189769
      Tristan Gingold committed
    • i386.c (ix86_avoid_lea_for_addr): Prevent zero-extended addresses here ... · 78aaa514
      	* config/i386/i386.c (ix86_avoid_lea_for_addr): Prevent zero-extended addresses here ...
      	(ix86_avoid_lea_for_add): ... not here.
      
      From-SVN: r189768
      Uros Bizjak committed
    • runtime: correct a logic error in hashmap growth. · 0abcd2ef
      The bug prevented maps to grow properly to sizes
      larger than 1.3 million.
      
      From Rémy Oudompheng.
      
      From-SVN: r189766
      Ian Lance Taylor committed
    • Daily bump. · 8dbe2ebd
      From-SVN: r189765
      GCC Administrator committed
  3. 22 Jul, 2012 9 commits
    • sh.h (TARGET_DYNSHIFT): New macro. · a594120b
      	* config/sh/sh.h (TARGET_DYNSHIFT): New macro.
      	(SH_DYNAMIC_SHIFT_COST): Use it.
      	* config/sh/sh.c (expand_ashiftrt, shl_sext_kind): Likewise.
      	(sh_dynamicalize_shift_p): Add TARGET_DYNSHIFT condition.
      	Add sanity check for input value.  Add function description.
      	* config/sh/sh.md (ashlsi3, ashlsi3_std, ashrsi3_d, lshrsi3,
      	lshrsi3_d): Use TARGET_DYNSHIFT.
      
      From-SVN: r189760
      Oleg Endo committed
    • sh.md (negc): Delete expander. · 7222fdd8
      	* config/sh/sh.md (negc): Delete expander.
      	(*negc): Rename insn to negc.
      
      From-SVN: r189759
      Oleg Endo committed
    • Handle recent changes in default atomics for cris*-*-linux*. · 8a0678fa
      	* gcc.target/cris/torture/sync-mis-xchg-i-1ml.c,
      	gcc.target/cris/torture/sync-mis-xchg-i-2ml.c,
      	gcc.target/cris/torture/sync-mis-xchg-i-3ml.c,
      	gcc.target/cris/torture/sync-mis-xchg-s-1ml.c,
      	gcc.target/cris/torture/sync-mis-op-i-1ml.c,
      	gcc.target/cris/torture/sync-mis-op-i-2ml.c,
      	gcc.target/cris/torture/sync-mis-op-i-3ml.c,
      	gcc.target/cris/torture/sync-mis-op-s-1ml.c: New tests.
      	* gcc.target/cris/torture/sync-mis-op-i-2a.c: Make sure
      	-mno-unaligned-atomic-may-use-library is in effect for
      	cris*-*-linux*.
      	* gcc.target/cris/torture/sync-mis-xchg-i-1.c,
      	gcc.target/cris/torture/sync-mis-xchg-i-2.c,
      	gcc.target/cris/torture/sync-mis-xchg-i-3.c,
      	gcc.target/cris/torture/sync-mis-xchg-i-2a.c,
      	gcc.target/cris/torture/sync-mis-xchg-s-1.c,
      	gcc.target/cris/torture/sync-mis-op-i-1.c,
      	gcc.target/cris/torture/sync-mis-op-i-2.c,
      	gcc.target/cris/torture/sync-mis-op-i-1a.c,
      	gcc.target/cris/torture/sync-mis-op-i-3.c,
      	gcc.target/cris/torture/sync-mis-op-i-3a.c,
      	gcc.target/cris/torture/sync-mis-op-s-1a.c,
      	gcc.target/cris/torture/sync-mis-xchg-i-1a.c,
      	gcc.target/cris/torture/sync-mis-xchg-i-3a.c,
      	gcc.target/cris/torture/sync-mis-xchg-s-1a.c: Similar.
      	* gcc.target/cris/torture/sync-mis-op-s-1.c: Ditto.
      	(main): Remove local variable x.
      	[mis_ok]: Check that atomics don't fail.
      
      From-SVN: r189757
      Hans-Peter Nilsson committed
    • re PR target/53961 (internal compiler error: in memory_address_length, at config/i386/i386.c:23341) · 888b670f
      	PR target/53961
      	* config/i386/i386.md (*lea): New insn pattern.
      	(*lea_1): Remove.
      	(*lea<mode>_2): Ditto.
      	(*lea_{3,4,5,6}_zext): Ditto.
      	* config/i386/constraints.md (j): Remove address constraint.
      	* config/i386/i386.c (ix86_decompose_address): Allow SImode subreg
      	of an address.
      	(ix86_print_operand_address): Handle SImode subreg of an address.
      	(ix86_avoid_lea_for_add): Reject zero-extended addresses for now.
      
      From-SVN: r189756
      Uros Bizjak committed
    • Emit executable-stack note correctly for CRIS targets. · 922a784c
      	* config/cris/cris.c (cris_file_end): New function.
      	(TARGET_ASM_FILE_END): Define.
      
      From-SVN: r189755
      Hans-Peter Nilsson committed
    • NetLogic Microsystems Inc. · eb448bee
      2012-07-22  Chung-Lin Tang  <cltang@codesourcery.com>
      	    Maxim Kuvyrkov  <maxim@codesourcery.com>
      	    NetLogic Microsystems Inc.
      
      	* config/mips/mips.c (mips_issue_rate): Handle XLP.
      	* config/mips/mips.md: Include xlp.md.
      	* config/mips/xlp.md: New file.
      
      
      Co-Authored-By: Maxim Kuvyrkov <maxim@codesourcery.com>
      
      From-SVN: r189754
      Chung-Lin Tang committed
    • vrp72.c: New test. · e5337b35
      2012-07-21  Andrew Pinski  <apinski@cavium.com>
      
      	*  gcc.dg/tree-ssa/vrp72.c: New test.
      	*  gcc.dg/tree-ssa/vrp73.c: New test.
      	*  gcc.dg/tree-ssa/vrp74.c: New test.
      	*  gcc.dg/tree-ssa/vrp75.c: New test.
      
      From-SVN: r189753
      Andrew Pinski committed
    • alias-21.c: New testcase. · 40287ad3
      2012-07-21  Andrew Pinski  <apinski@cavium.com>
      
      	* gcc.dg/tree-ssa/alias-21.c: New testcase.
      	* gcc.dg/tree-ssa/alias-22.c: New testcase.
      
      From-SVN: r189752
      Andrew Pinski committed
    • Daily bump. · d524f43e
      From-SVN: r189751
      GCC Administrator committed