1. 01 May, 2010 4 commits
  2. 30 Apr, 2010 24 commits
  3. 29 Apr, 2010 12 commits
    • hubicka's avatar
      · 57305941
      hubicka authored
      	* gengtype.c (open_base_files): Add lto-streamer.h
      	* cgraph.h (cgraph_local_info): lto_file_data is now in GGC.
      	(pass_ipa_cp): GGC collect.
      	* toplev. (compile_file): Do not output symbols.
      	* ipa-inline.c (pass_ipa_inline): Add ggc collect.
      	* timevar.def (TV_VARPOOL, TV_IPA_LTO_DECL_INIT_IO,
      	* lto-section-in.c: Include ggc.h
      	(lto_new_in_decl_state): Alloc in GGC.
      	(lto_delete_in_decl_state): Likewise.
      	* ipa.c (pass_ipa_function_visibility, pass_ipa_whole_program): Collect.
      	* lto/lto.c (lto_read_in_decl_state): Use GGC.
      	(lto_wpa_write_files): Announce what we are writting.
      	(all_file_decl_data): New.
      	(read_cgraph_and_symbols): Use GGC; correct timevars.
      	(do_whole_program_analysis): Collect.
      	* lto/Make-lang.in (lto.o): Fix dependency.
      	* Makefile.in (GTFILES): Add lto-streamer.h.
      	* varpool.c (varpool_analyze_pending_decls): Use TV_VARPOOL.
      	(varpool_assemble_pending_decls): Use VAROUT.
      	* lto-streamer.h (lto_tree_ref_table): Annotate.
      	(lto_in_decl_state): Annotate.
      	(lto_file_decl_data): Annotate.
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@158912 138bc75d-0d04-0410-961f-82ee72b054a4
    • bernds's avatar
      PR target/42895 · dedfd669
      bernds authored
      	* doc/tm.texi (ADJUST_REG_ALLOC_ORDER): Renamed from
      	ORDER_REGS_FOR_LOCAL_ALLOC.  All instances of this macro changed.
      	(HONOR_REG_ALLOC_ORDER): Describe new macro.
      	* ira.c (setup_alloc_regs): Use ADJUST_REG_ALLOC_ORDER if defined.
      	* ira-color.c (assign_hard_reg): Take prologue/epilogue costs into
      	account only if HONOR_REG_ALLOC_ORDER is not defined.
      	* config/arm/arm.h (HONOR_REG_ALLOC_ORDER): Define.
      	* system.h (ORDER_REGS_FOR_LOCAL_ALLOC): Poison.
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@158911 138bc75d-0d04-0410-961f-82ee72b054a4
    • pault's avatar
      2010-04-29 Janus Weil <janus@gcc.gnu.org> · 09c509ed
      pault authored
      	PR fortran/43896
      	* symbol.c (add_proc_component,copy_vtab_proc_comps): Remove
      	initializers for PPC members of the vtabs.
      2010-04-29  Janus Weil  <janus@gcc.gnu.org>
      	PR fortran/42274
      	* symbol.c (add_proc_component,add_proc_comps): Correctly set the 'ppc'
      	attribute for all PPC members of the vtypes.
      	(copy_vtab_proc_comps): Copy the correct interface.
      	* trans.h (gfc_trans_assign_vtab_procs): Modified prototype.
      	* trans-expr.c (gfc_trans_assign_vtab_procs): Pass the derived type as
      	a dummy argument and make sure all PPC members of the vtab are
      	initialized correctly.
      	(gfc_conv_derived_to_class,gfc_trans_class_assign): Additional argument
      	in call to gfc_trans_assign_vtab_procs.
      	* trans-stmt.c (gfc_trans_allocate): Ditto.
      2010-04-29  Paul Thomas  <pault@gcc.gnu.org>
      	PR fortran/43326
      	* resolve.c (resolve_typebound_function): Renamed
      	resolve_class_compcall.Do all the detection of class references
      	(resolve_typebound_subroutine): resolve_class_typebound_call
      	renamed. Otherwise same as resolve_typebound_function.
      	(gfc_resolve_expr): Call resolve_typebound_function.
      	(resolve_code): Call resolve_typebound_subroutine.
      2010-04-29  Janus Weil  <janus@gcc.gnu.org>
      	PR fortran/43492
      	* resolve.c (resolve_typebound_generic_call): For CLASS methods
      	pass back the specific symtree name, rather than the target
      2010-04-29  Paul Thomas  <pault@gcc.gnu.org>
      	PR fortran/42353
      	* resolve.c (resolve_structure_cons): Make the initializer of
      	the vtab component 'extends' the same type as the component.
      2010-04-29  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
      	PR fortran/42680
      	* interface.c (check_interface1): Pass symbol name rather than NULL to
      	gfc_compare_interfaces.(gfc_compare_interfaces): Add assert to
      	trap MULL. (gfc_compare_derived_types): Revert previous change
      	incorporated incorrectly during merge from trunk, r155778.
      	* resolve.c (check_generic_tbp_ambiguity): Pass symbol name rather
      	than NULL to gfc_compare_interfaces.
      	* symbol.c (add_generic_specifics): Likewise.
      2010-02-29  Janus Weil  <janus@gcc.gnu.org>
      	PR fortran/42353
      	* interface.c (gfc_compare_derived_types): Add condition for vtype.
      	* symbol.c (gfc_find_derived_vtab): Sey access to private.
      	(gfc_find_derived_vtab): Likewise.
      	* module.c (ab_attribute): Add enumerator AB_VTAB.
      	(mio_symbol_attribute): Use new attribute, AB_VTAB.
      	(check_for_ambiguous): Likewise.
      2010-04-29  Paul Thomas  <pault@gcc.gnu.org>
      	    Janus Weil  <janus@gcc.gnu.org>
      	PR fortran/41829
      	* trans-expr.c (select_class_proc): Remove function.
      	(conv_function_val): Delete reference to previous.
      	(gfc_conv_derived_to_class): Add second argument to the call to
      	(gfc_conv_structure): Exclude proc_pointer components when
      	accessing $data field of class objects.
      	(gfc_trans_assign_vtab_procs): New function.
      	(gfc_trans_class_assign): Add second argument to the call to
      	* symbol.c (gfc_build_class_symbol): Add delayed_vtab arg and
      	implement holding off searching for the vptr derived type.
      	(add_proc_component): New function.
      	(add_proc_comps): New function.
      	(add_procs_to_declared_vtab1): New function.
      	(copy_vtab_proc_comps): New function.
      	(add_procs_to_declared_vtab): New function.
      	(void add_generic_specifics): New function.
      	(add_generics_to_declared_vtab): New function.
      	(gfc_find_derived_vtab): Add second argument to the call to
      	gfc_find_derived_vtab. Add the calls to
      	add_procs_to_declared_vtab and add_generics_to_declared_vtab.
      	* decl.c (build_sym, build_struct): Use new arg in calls to
      	* gfortran.h : Add vtype bitfield to symbol_attr. Remove the
      	definition of struct gfc_class_esym_list. Modify prototypes
      	of gfc_build_class_symbol and gfc_find_derived_vtab.
      	* trans-stmt.c (gfc_trans_allocate): Add second argument to the
      	call to gfc_find_derived_vtab.
      	* module.c : Add the vtype attribute.
      	* trans.h : Add prototype for gfc_trans_assign_vtab_procs.
      	* resolve.c (resolve_typebound_generic_call): Add second arg
      	to pass along the generic name for class methods.
      	(resolve_typebound_call): The same.
      	(resolve_compcall): Use the second arg to carry the generic
      	name from the above. Remove the reference to class_esym.
      	(check_members, check_class_members, resolve_class_esym,
      	hash_value_expr): Remove functions.
      	(resolve_class_compcall, resolve_class_typebound_call): Modify
      	to use vtable rather than member by member calls.
      	(gfc_resolve_expr): Modify second arg in call to
      	(resolve_select_type): Add second arg in call to
      	(resolve_code): Add second arg in call resolve_typebound_call.
      	(resolve_fl_derived): Exclude vtypes from check for late
      	procedure definitions. Likewise for checking of explicit
      	interface and checking of pass arg.
      	* iresolve.c (gfc_resolve_extends_type_of): Add second arg in
      	calls to gfc_find_derived_vtab.
      	* match.c (select_type_set_tmp): Use new arg in call to
      	* trans-decl.c (gfc_get_symbol_decl): Complete vtable if
      	* parse.c (endType): Finish incomplete classes.
      2010-04-29  Janus Weil  <janus@gcc.gnu.org>
      	PR fortran/42274
      	* gfortran.dg/class_16.f03: New test.
      2010-04-29  Janus Weil  <janus@gcc.gnu.org>
      	PR fortran/42274
      	* gfortran.dg/class_15.f03: New.
      2010-04-29  Paul Thomas  <pault@gcc.gnu.org>
      	PR fortran/43326
      	* gfortran.dg/dynamic_dispatch_9.f03: New test.
      2010-04-29  Janus Weil  <janus@gcc.gnu.org>
      	PR fortran/43492
      	* gfortran.dg/generic_22.f03 : New test.
      2010-04-29  Paul Thomas  <pault@gcc.gnu.org>
      	PR fortran/42353
      	* gfortran.dg/class_14.f03: New test.
      2010-04-29  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
      	PR fortran/42680
      	* gfortran.dg/interface_32.f90: New test.
      2009-04-29  Paul Thomas  <pault@gcc.gnu.org>
      	    Janus Weil  <janus@gcc.gnu.org>
      	PR fortran/41829
      	* gfortran.dg/dynamic_dispatch_5.f03 : Change to "run".
      	* gfortran.dg/dynamic_dispatch_7.f03 : New test.
      	* gfortran.dg/dynamic_dispatch_8.f03 : New test.
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@158910 138bc75d-0d04-0410-961f-82ee72b054a4
    • hjl's avatar
      Correct entry of fix for PR bootstrap/43936. · a7274b28
      hjl authored
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@158909 138bc75d-0d04-0410-961f-82ee72b054a4
    • manu's avatar
      2010-04-29 Jon Grant <04@jguk.org> · 2bd5037b
      manu authored
      	* collect2.c (vflag): Change type from int to bool.
      	(debug): Likewise.
      	(helpflag): New global bool.
      	(main): Set vflag and debug with boolean, not integer truth
      	values.  Accept new "--help" option and output usage text if
      	* collect2.h (vflag): Update prototype.
      	(debug): Likewise.
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@158908 138bc75d-0d04-0410-961f-82ee72b054a4
    • hjl's avatar
      Move flag_plugin_added out of invoke_plugin_callbacks. · ccb7e201
      hjl authored
      2010-04-29  H.J. Lu  <hongjiu.lu@intel.com>
      	PR bootstrap/43935
      	* plugin.h (flag_plugin_added): Moved out of
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@158905 138bc75d-0d04-0410-961f-82ee72b054a4
    • rguenth's avatar
      2010-04-29 Richard Guenther <rguenther@suse.de> · 08cfd855
      rguenth authored
      	PR bootstrap/43935
      	* plugin.h (invoke_plugin_callbacks): Annotate arguments
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@158901 138bc75d-0d04-0410-961f-82ee72b054a4
    • hjl's avatar
      Replace INSN_P with NONDEBUG_INSN_P. · b61508f5
      hjl authored
      2010-04-29  H.J. Lu  <hongjiu.lu@intel.com>
      	PR target/43921
      	* config/i386/i386.c (get_some_local_dynamic_name): Replace
      	(distance_non_agu_define): Likewise.
      	(distance_agu_use): Likewise.
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@158900 138bc75d-0d04-0410-961f-82ee72b054a4
    • bernds's avatar
      From Dominique d'Humieres <dominiq@lps.ens.fr> · 10760fe9
      bernds authored
      	PR bootstrap/43858
      	* ifcvt.c (dead_or_predicable): Use df_simulate_find_defs to compute
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@158898 138bc75d-0d04-0410-961f-82ee72b054a4
    • jamborm's avatar
      · 1263c11c
      jamborm authored
      Adde a missing Changelog entry to describe a change in
      gcc/lto-streamer-in.c committed yesterday.
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@158897 138bc75d-0d04-0410-961f-82ee72b054a4
    • rguenth's avatar
      2010-04-29 Brian Hackett <bhackett1024@gmail.com> · a3f551d2
      rguenth authored
      	* plugin.h (invoke_plugin_callbacks): New inline function.
      	* plugin.c (flag_plugin_added): New global flag.
      	(add_new_plugin): Initialize above flag.
      	(invoke_plugin_callbacks): Rename to ...
      	(invoke_plugin_callbacks_full): ... this.
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@158896 138bc75d-0d04-0410-961f-82ee72b054a4
    • hubicka's avatar
      · 0cddb138
      hubicka authored
      	* lto-symtab.c (lto_symtab_entry_def) Add vnode.
      	(lto_varpool_replace_node): New.
      	(lto_symtab_resolve_symbols): Resolve varpool nodes.
      	(lto_symtab_merge_decls_1): Prefer decls with varpool node.
      	(lto_symtab_merge_cgraph_nodes_1): Merge varpools.
      	* cgraph.h (varpool_node_ptr): New type.
      	(varpool_node_ptr): New vector.
      	(varpool_node_set_def): New structure.
      	(varpool_node_set): New type.
      	(varpool_node_set): New vector.
      	(varpool_node_set_element_def): New structure.
      	(varpool_node_set_element, const_varpool_node_set_element): New types.
      	(varpool_node_set_iterator): New type.
      	(varpool_node): Add prev pointers, add used_from_other_partition,
      	(varpool_node_set_new, varpool_node_set_find, varpool_node_set_add,
      	varpool_node_set_remove, dump_varpool_node_set, debug_varpool_node_set,
      	varpool_get_node, varpool_remove_node): Declare.
      	(vsi_end_p, vsi_next, vsi_node, vsi_start, varpool_node_in_set_p,
      	varpool_node_set_size): New inlines.
      	* cgraph.c (dump_cgraph_node): Dump asm names of aliases.
      	* tree-pass.h (varpool_node_set_def): Forward declare.
      	(ipa_opt_pass_d): Summary writting takes vnode sets too.
      	(ipa_write_optimization_summaries): Update prototype.
      	* ipa-cp.c (ipcp_write_summary): Update.
      	* ipa-reference.c (ipa_reference_write_summary): Update.
      	* lto-cgraph.c (lto_output_varpool_node): New static function.
      	(output_varpool): New function.
      	(input_varpool_node): New static function.
      	(input_varpool_1): New function.
      	(input_cgraph): Input varpool.
      	* ipa-pure-const.c (pure_const_write_summary): Update.
      	* lto-streamer-out.c (lto_output): Update, output varpool too.
      	(write_global_stream): Kill WPA hack.
      	(produce_asm_for_decls): Update.
      	(output_alias_pair_p): Handle variables.
      	(output_unreferenced_globals): Output only needed partition of varpool.
      	* ipa-inline.c (inline_write_summary): Update.
      	* lto-streamer-in.c (lto_input_tree_ref, lto_input_tree): Do not build cgraph.
      	* lto-section-in.c (lto_section_name): Add varpool and jump funcs.
      	* ipa.c (hash_varpool_node_set_element, eq_varpool_node_set_element,
      	varpool_node_set_new, varpool_node_set_add,
      	varpool_node_set_remove, varpool_node_set_find, dump_varpool_node_set,
      	debug_varpool_node_set): New functions.
      	* passes.c (rest_of_decl_compilation): when in LTO do not finalize.
      	(execute_one_pass): Process new decls too.
      	(ipa_write_summaries_2): Pass around vsets.
      	(ipa_write_summaries_1): Likewise.
      	(ipa_write_summaries): Build vset; be more selective about cgraph nodes
      	to add.
      	(ipa_write_optimization_summaries_1): Pass around vsets.
      	(ipa_write_optimization_summaries): Likewise.
      	* varpool.c (varpool_get_node): New.
      	(varpool_node): Update doubly linked lists.
      	(varpool_remove_node): New.
      	(dump_varpool_node): More dumping.
      	(varpool_enqueue_needed_node): Update doubly linked lists.
      	(decide_is_variable_needed): Kill ltrans hack.
      	(varpool_finalize_decl): Kill lto hack.
      	(varpool_assemble_decl): Skip decls in other partitions.
      	(varpool_assemble_pending_decls): Update doubly linkes lists.
      	(varpool_empty_needed_queue): Likewise.
      	(varpool_extra_name_alias): Likewise.
      	* lto-streamer.c (lto_get_section_name): Add vars section.
      	* lto-streamer.h (lto_section_type): Update.
      	(output_varpool, input_varpool): Declare.
      	* lto.c (lto_varpool_node_sets): New.
      	(lto_1_to_1_map): Partition varpool too.
      	(globalize_context_t, globalize_cross_file_statics,
      	lto_scan_statics_in_ref_table, lto_scan_statics_in_cgraph_node,
      	lto_scan_statics_in_remaining_global_vars): Remove.
      	(lto_promote_cross_file_statics): Rewrite.
      	(get_filename_for_set): Take vset argument.
      	(lto_wpa_write_files): Pass around vsets.
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@158854 138bc75d-0d04-0410-961f-82ee72b054a4