OSDN Git Service

PR bootstrap/40408
[pf3gnuchains/gcc-fork.git] / gcc / ChangeLog
index 9efd188..461458c 100644 (file)
@@ -1,3 +1,378 @@
+2009-06-10  Ian Lance Taylor  <iant@google.com>
+
+       PR bootstrap/40408
+       * graphite.c (add_conditions_to_domain): Change SWITCH_EXPR to
+       GIMPLE_SWITCH.
+
+2009-06-10  Revital Eres  <eres@il.ibm.com>
+
+       * passes.c (init_optimization_passes): Reschedule
+       predictive-commoning pass before complete unroll pass.
+
+2009-06-10  Martin Jambor  <mjambor@suse.cz>
+
+       * cgraph.c (cgraph_node_can_be_local_p): New function.
+       (cgraph_make_node_local): New function.
+       * cgraph.h (cgraph_node_can_be_local_p): Declare.
+       (cgraph_make_node_local): Declare.
+
+2009-06-10  Nathan Froyd  <froydnj@codesourcery.com>
+
+       * tree.h (tree_base): Add packed_flag and user_align fields.
+       Decrease size of spare field.
+       (TYPE_USER_ALIGN): Use user_align from tree_base.
+       (DECL_USER_ALIGN): Likewise.
+       (TYPE_PACKED): Use packed_flag from tree_base.
+       (DECL_PACKED): Likewise.
+       (tree_type): Delete packed_flag and user_align fields.  Widen
+       precision field.  Widen mode field and shuffle fields to align
+       mode on an 8-bit boundary.
+       (tree_decl_common): Delete decl_flag_1 and user_align fields.
+       Renumber decl_flag_* fields.  Fix comments.  Widen
+       decl_common_unused field.
+       (DECL_HAS_VALUE_EXPR_P): Adjust for renumbering of decl_flag_*
+       fields.
+       (DECL_EXTERNAL): Likewise.
+       (DECL_BIT_FIELD): Likewise.
+       (DECL_NONADDRESSABLE_P): Likewise.
+       (TYPE_DECL_SUPRESS_DEBUG): Likewise.
+       * config/arm/arm-modes.def (XImode): Make it an INT_MODE.
+
+2009-06-10  Ian Lance Taylor  <iant@google.com>
+
+       * vec.h (DEF_VEC_ALLOC_I): Use DEF_VEC_NONALLOC_FUNCS_I.
+       (DEF_VEC_ALLOC_P): Use DEF_VEC_NONALLOC_FUNCS_P.
+       (DEF_VEC_ALLOC_O): Use DEF_VEC_NONALLOC_FUNCS_O.
+       (DEF_VEC_ALLOC_FUNC_P): Only define VEC_OP (T,A,alloc).
+       (DEF_VEC_NONALLOC_FUNCS_P): New macro, broken out of old
+       DEF_VEC_ALLOC_FUNC_P.
+       (DEF_VEC_ALLOC_FUNC_O): Only define VEC_OP (T,A,alloc).
+       (DEF_VEC_NONALLOC_FUNCS_O): New macro, broken out of old
+       DEF_VEC_ALLOC_FUNC_O.
+       (DEF_VEC_ALLOC_FUNC_I): Only define VEC_OP (T,A,alloc).
+       (DEF_VEC_NONALLOC_FUNCS_I): New macro, broken out of old
+       DEF_VEC_ALLOC_FUNC_I.
+       (vec_stack_p_reserve, vec_stack_p_reserve_exact): Declare.
+       (vec_stack_p_reserve_exact_1): Declare.
+       (vec_stack_o_reserve, vec_stack_o_reserve_exact): Declare.
+       (vec_stack_free): Declare.
+       (VEC_stack_alloc): Define.
+       (DEF_VEC_ALLOC_P_STACK, DEF_VEC_ALLOC_FUNC_P_STACK): Define.
+       (DEF_VEC_ALLOC_O_STACK, DEF_VEC_ALLOC_FUNC_O_STACK): Define.
+       (DEF_VEC_ALLOC_I_STACK, DEF_VEC_ALLOC_FUNC_I_STACK): Define.
+       * vec.c (void_p): New type.  Call DEF_VEC_P and DEF_VEC_ALLOC_P
+       for void_p.
+       (stack_vecs): New static variable.
+       (vec_stack_p_reserve_exact_1): New function.
+       (vec_stack_o_reserve_1): New static function.
+       (vec_stack_p_reserve, vec_stack_p_reserve_exact): New functions.
+       (vec_stack_o_reserve, vec_stack_o_reserve_exact): New functions.
+       (vec_stack_free): New function.
+       * df-scan.c (df_ref): Use DEF_VEC_P and DEF_VEC_ALLOC_P_STACK.
+       (VEC_df_ref_stack_alloc): Define.
+       (df_mw_hardreg_ptr): New type.  Use DEF_VEC_P and
+       DEF_VEC_ALLOC_P_STACK.
+       (VEC_df_mw_hardreg_ptr_stack_alloc): Define.
+       (struct df_collection_rec): Change _vec fields to VEC.  Remove
+       _use fields.
+       (df_free_collection_rec): Adjust for new fields.
+       (df_insn_rescan): Use new df_collection_rec fields.
+       (df_notes_rescan, df_canonize_collection_rec): Likewise.
+       (df_ref_create_structure, df_ref_record): Likewise.
+       (df_get_conditional_uses, df_get_call_refs): Likewise.
+       (df_insn_refs_collect, df_bb_refs_collect): Likewise.
+       (df_bb_refs_record, df_record_entry_block_defs): Likewise.
+       (df_record_exit_block_uses, df_bb_verify): Likewise.
+       (df_swap_refs): Change ref_vec parameter to VEC.  Change all
+       callers.
+       (df_sort_and_compress_refs): Change ref_vec parameter to VEC.
+       Remove count parameter.  Change return type to void.  Change all
+       callers.
+       (df_sort_and_compress_mws): Change mw_vec parameter to VEC.
+       Remove count parameter.  Change return type to void.  Change all
+       callers.
+       (df_install_refs): Change old_vec parameter to VEC.  Remove count
+       parameter.  Change all callers.
+       (df_install_mws): Change old_vec parameter to VEC.  Remove count
+       parameter.  Change all callers.
+       (df_refs_verify): Change new_rec parameter to VEC.  Change call
+       callers.
+       (df_mws_verify): Likewise.
+
+2009-06-10  Alexandre Oliva  <aoliva@redhat.com>
+
+       * gcc.c (compare_files): Cast munmap argumento to caddr_t.
+
+2009-06-10  H.J. Lu  <hongjiu.lu@intel.com>
+
+       * doc/extend.texi: Add description for __builtin_ia32_crc32di.
+
+2009-06-10  Anthony Green  <green@moxielogic.com>
+
+       * config/moxie/crti.asm: New file.
+       * config/moxie/crtn.asm: New file.
+       * config/moxie/moxie.c: New file.
+       * config/moxie/moxie.h: New file.
+       * config/moxie/sfp-machine.h: New file.
+       * config/moxie/moxie-protos.h: New file.
+       * config/moxie/t-moxie: Created.
+       * config/moxie/t-moxie-softfp: Created.
+       * config/moxie/moxie.md: Created.
+       * config/moxie/constraints.md: Created.
+       * config.gcc: Add moxie support.
+       * doc/md.texi (Machine Constraints): Add moxie constraints.
+       * doc/contrib.texi (Contributors): Mention moxie port.
+       * doc/install.texi (Specific): Mention the moxie port.
+
+2009-06-09  Ian Lance Taylor  <iant@google.com>
+
+       * system.h (HAVE_DESIGNATED_INITIALIZERS): Don't define if
+       compiling with C++.
+       * optabs.c (optab_table): Only use designated initializers if
+       HAVE_DESIGNATED_INITIALIZERS is defined.
+       (convert_optab_table): Likewise.
+       (init_optabs): Always call init_insn_codes if
+       HAVE_DESIGNATED_INITIALIZERS is not defined.
+
+2009-06-09  Ian Lance Taylor  <iant@google.com>
+
+       * targhooks.c (default_builtin_vectorized_function): Change fn
+       parameter to unsigned int.
+       (default_builtin_vectorized_conversion): Change code parameter to
+       unsigned int.
+       (default_builtin_reciprocal): Change fn parameter to unsigned int.
+       * targhooks.h: Update declarations.
+       * config/rs6000/rs6000.c (rs6000_builtin_conversion): Change code
+       parameter to unsigned int.
+
+       * c-typeck.c (comptypes_check_enum_int): New static function.
+       (comptypes_internal): Add enum_and_int_p parameter.  Change all
+       callers.
+       (comp_target_types): Add location parameter.  Change all callers.
+       (tagged_types_tu_compatible_p): Add enum_and_int_p parameter.
+       Change all callers.
+       (function_types_compatible_p, type_lists_compatible_p): Likewise.
+       (build_conditional_expr): Add colon_loc parameter.  Change all
+       callers.
+       (convert_for_assignment): Add location parameter.  Change all
+       callers.
+       * c-parser.c (c_parser_conditional_expression): Pass location of
+       colon to build_conditional_expr.
+       * c-tree.h (build_conditional_expr): Update declaration.
+
+2009-06-09  Sebastian Pop  <sebastian.pop@amd.com>
+
+       * graphite.c: Revert previous patch.
+
+2009-06-09  Sebastian Pop  <sebastian.pop@amd.com>
+
+       PR bootstrap/40103
+       * graphite.c: Remove pragma GCC diagnostic warning "-Wc++-compat".
+
+2009-06-09  Ghassan Shobaki  <ghassan.shobaki@amd.com>
+
+        * tree-ssa-loop-prefetch.c
+        (loop_prefetch_arrays): Fixed a portability problem in printf format
+        string.
+
+2009-06-09  Martin Jambor  <mjambor@suse.cz>
+
+       PR tree-optimization/40351
+       * tree-sra.c (propagate_subacesses_accross_link): Check that a refrence
+       to a potential artifical subaccess can be constructed.
+
+2009-06-08  Kaz Kojima  <kkojima@gcc.gnu.org>
+
+       * config/sh/sh-protos.h (sh_optimization_options): Declare.
+       (sh_override_options): Likewise.
+       * config/sh/sh.c: Include params.h.
+       (sh_optimization_options): New.
+       (sh_override_options): Likewise.
+       * config/sh/sh.c (OPTIMIZATION_OPTIONS): Use sh_optimization_options.
+       (OVERRIDE_OPTIONS): Use sh_override_options.
+
+2009-06-08  Jakub Jelinek  <jakub@redhat.com>
+
+       * dwarf2out.c (emit_cfa_remember): New variable.
+       (add_fde_cfi): If emit_cfa_remember, recurse to add
+       DW_CFA_remember_state first.
+       (dwarf2out_begin_epilogue): Don't add_fde_cfi DW_CFA_remember_state,
+       instead just set emit_cfa_remember.
+
+2009-06-08  Jan Hubicka  <jh@suse.cz>
+
+       PR debug/40126
+       * dwarf2out.c (dwarf2out_abstract_function): Free decl_loc_table.
+
+2009-06-08  Jan Hubicka  <jh@suse.cz>
+
+       PR middle-end/39834
+       * cgraphunit.c (save_inline_function_body): Do not copy transform hooks
+       for saved inline bodies.
+       * ipa-passes.c (do_per_function): Do not add the hoks multiple times
+       for given function.
+
+2009-06-08  Adam Nemet  <anemet@caviumnetworks.com>
+
+       * jump.c (returnjump_p): Handle delayed branches.  Add missing
+       function comment.
+
+2009-06-08  Jan Hubicka  <jh@suse.cz>
+
+       PR middle-end/40102
+       * cgraph.c (cgraph_create_edge_including_clones): Also asume that the
+       original node might've been modified.
+       * tree-inline.c (copy_bb): Do not assume that all clones are the same.
+
+2009-06-08  Jakub Jelinek  <jakub@redhat.com>
+
+       * tree-object-size.c (addr_object_size): Add OSI argument.
+       Handle also INDIRECT_REF with SSA_NAME inside of it as base address.
+       (compute_builtin_object_size, expr_object_size): Adjust callers.
+       (plus_stmt_object_size): Call addr_object_size instead of
+       compute_builtin_object_size.
+
+2009-06-08  Ghassan Shobaki  <ghassan.shobaki@amd.com>
+            Dwarakanath Rajagopal  <dwarak.rajagopal@amd.com>
+       
+       * tree-ssa-loop-prefetch.c 
+       (gather_memory_references): Introduced a counter for the number of 
+       memory references.
+       (anything_to_prefetch_p): Introduced a counter for the number of 
+       prefetches.
+       (is_loop_prefetching_profitable): New function with a cost model 
+       for prefetching.
+       (loop_prefetch_arrays): Use the new cost model to determine if 
+       prefetching is profitable.
+       * params.def (MIN_INSN_TO_PREFETCH_RATIO, 
+       PREFETCH_MIN_INSN_TO_MEM_RATIO): New parameters.
+       * params.h (MIN_INSN_TO_PREFETCH_RATIO, 
+       PREFETCH_MIN_INSN_TO_MEM_RATIO): New parameters.
+       * doc/invoke.texi (MIN_INSN_TO_PREFETCH_RATIO, 
+       PREFETCH_MIN_INSN_TO_MEM_RATIO): New parameters.
+       
+2009-06-08  Michael Matz  <matz@suse.de>
+
+       PR debug/40012
+       * cfgexpand.c (set_rtl): Store place also in DECL_RTL, if all
+       partitions use the same.
+       (expand_one_var): Deal with DECL_RTL sometimes begin set also
+       for basevars of SSA_NAMEs.
+       (expand_used_vars): Reset TREE_USED for basevars of SSA_NAMEs,
+       to not expand them twice.
+       (gimple_expand_cfg): Clear DECL_RTL for those decls that have
+       multiple places.
+
+2009-06-08  Alexandre Oliva  <aoliva@redhat.com>
+
+       * common.opt (fcompare-debug=, fcompare-debug-second): New.
+       (fdump-final-insns=, gtoggle): New.
+       * doc/invoke.texi: Document them.
+       * final.c (rest_of_clean_state): Dump final insn stream.
+       * gcc.c (invoke_as): Hook in -fcompare-debug.
+       (static_spec_functions): Add compare-debug-dump-opt,
+       compare-debug-self-opt and compare-debug-auxbase-opt.
+       (compare_debug, compare_debug_second, compare_debug_opt): New.
+       (switches_debug_check, n_switches_debug_check): New.
+       (debug_auxbase_opt, debug_check_temp_file): New.
+       (process_command): Handle -fno-compare-debug, -fcompare-debug and
+       -fcompare-debug=*.
+       (do_self_spec): Handle arguments after switches.
+       (do_spec_1): Add .gk extension to temp file basenames for compare.
+       (check_live_switch): Take SWITCH_IGNORE into account, and earlier.
+       (cc1_options): Use it instead of normal auxbase computation for
+       the second compare-debug compilation.
+       (compare_files): New.
+       (main): Set up and implement compare debug mode.
+       (compare_debug_dump_opt_spec_function): New.
+       (compare_debug_self_opt_spec_function): New.
+       (compare_debug_auxbase_opt_spec_function): New.
+       * toplev.c (process_options): Handle flag_gtoggle,
+       flag_dump_final_insns.
+       * coverage.c (coverage_begin_output): Don't overwrite .gcno file
+       during -fcompare-debug-second compilation.
+
+2009-06-07  Ian Lance Taylor  <iant@google.com>
+
+       * dwarf2.h (enum dwarf_location_atom): Add
+       INTERNAL_DW_OP_tls_addr.
+       * dwarf2out.c (INTERNAL_DW_OP_tls_addr): Don't #define.
+
+       * c-common.c (c_do_switch_warnings): Don't exit early for -Wswitch
+       with no default node.  Change warning with %H to warning_at.
+       Don't clear warn_switch around case checking.
+       * doc/invoke.texi (Warning Options): Clarify distinction between
+       -Wswitch and -Wswitch-enum.
+
+2009-06-07  Bernhard Reutner-Fischer  <aldot@gcc.gnu.org>
+
+       * tree-pass.h (TODO_update_ssa_any): Document internal use only.
+
+2009-06-07  Bernhard Reutner-Fischer  <aldot@gcc.gnu.org>
+
+       * gbl-ctors.h: Add header guard.
+
+2009-06-07  Bernhard Reutner-Fischer  <aldot@gcc.gnu.org>
+
+       * tree-flow.h (make_value_handle, set_value_handle, sort_vuses,
+       sort_vuses_heap, vn_lookup_or_add, vn_lookup_or_add_with_stmt,
+       vn_lookup_or_add_with_vuses, vn_add, vn_add_with_vuses,
+       vn_lookup_with_stmt, vn_lookup, vn_lookup_with_vuses): Remove
+       prototypes for removed functions.
+       (expressions_equal_p): Move to ...
+       * tree-ssa-sccvn.h: ... here and ...
+       * matrix-reorg.c: ... adjust includes.
+
+2009-06-07  Bernhard Reutner-Fischer  <aldot@gcc.gnu.org>
+
+       * ipa-struct-reorg.c (do_reorg_1): Fix whitespace in dump output.
+
+2009-06-07  Bernhard Reutner-Fischer  <aldot@gcc.gnu.org>
+
+       * c-decl.c (finish_decl): Use bool for variable was_incomplete.
+       (finish_function): Remove erroneous whitespace.
+
+2009-06-07  Bernhard Reutner-Fischer  <aldot@gcc.gnu.org>
+
+       * tree-cfg.c (gimple_merge_blocks): Commentary typo fix.
+       (verify_stmts): Print statement who's gimple_bb is set to a wrong BB
+
+2009-06-07  Bernhard Reutner-Fischer  <aldot@gcc.gnu.org>
+
+       * errors.c (internal_error): Commentary typo fix.
+       * gimple-iterator.c (gsi_insert_seq_on_edge): Ditto.
+       * tree-ssa-pre.c: Ditto.
+
+2009-06-07  Bernhard Reutner-Fischer  <aldot@gcc.gnu.org>
+
+       * basic-block.h (ENTRY_BLOCK, EXIT_BLOCK): Document that neither of
+       them is supposed to hold actual statements.
+
+2009-06-06  Ian Lance Taylor  <iant@google.com>
+
+       * doc/extend.texi (Attribute Syntax): Document that C++ labels on
+       empty statements can now have attributes.
+
+2009-06-05  Shujing Zhao  <pearly.zhao@oracle.com>
+
+       * config/mips/mips.c: Use REG_P and CONST_INT_P where applicable.
+       * config/mips/mips.md: Ditto.
+
+2009-06-05  Nathan Froyd  <froydnj@codesourcery.com>
+
+       * config/rs6000/eabi.asm (__eabi_convert): Don't define if
+       _RELOCATABLE.
+       (__eabi_uconvert): Likewise.
+
+2009-06-05  Nathan Froyd  <froydnj@codesourcery.com>
+
+       * config/rs6000/ppc-asm.h: Protect auto-host.h inclusion and
+       CFI_* definitions with IN_GCC.
+
+2009-06-05  David Edelsohn  <edelsohn@gnu.org>
+
+       * xcoffout.h (xcoffout_source_line): Update prototype.
+
 2009-06-05  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
 
        * builtins.c (do_mpc_ckconv, do_mpc_arg1): Use
        * tree.c (tree_nonartificial_location): Rewrite using
        block_nonartificial_location.
 
-       * gcc.dg/pr40340-1.c: New test.
-       * gcc.dg/pr40340-2.c: New test.
-       * gcc.dg/pr40340-3.c: New test.
-       * gcc.dg/pr40340-4.c: New test.
-       * gcc.dg/pr40340-5.c: New test.
-       * gcc.dg/pr40340.h: New file.
-
 2009-06-05  Revital Eres  <eres@il.ibm.com>
            Leehod Baruch  <leehod@il.ibm.com>