OSDN Git Service

2010-04-27 Martin Jambor <mjambor@suse.cz>
[pf3gnuchains/gcc-fork.git] / gcc / ChangeLog
index 20e07e3..161bafb 100644 (file)
@@ -1,3 +1,182 @@
+2010-04-27  Martin Jambor  <mjambor@suse.cz>
+
+       PR middle-end/43812
+       * ipa.c (dissolve_same_comdat_group_list): New function.
+       (function_and_variable_visibility): Call
+       dissolve_same_comdat_group_list when comdat group contains external or
+       newly local nodes.
+       * cgraphunit.c (verify_cgraph_node): Verify that same_comdat_group
+       lists are circular and that they contain only DECL_ONE_ONLY nodes.
+
+2010-04-27  Eric Botcazou  <ebotcazou@adacore.com>
+
+       * varasm.c (decode_addr_const): Handle special case of INDIRECT_REF.
+       (const_hash_1) <VECTOR_CST>: New case.
+       (compare_constant) <VECTOR_CST>: Likewise.
+       <ADDR_EXPR>: Deal with LABEL_REFs.
+       (copy_constant) <VECTOR_CST>: New case.
+
+2010-04-27  Jan Hubicka  <jh@suse.cz>
+
+       * cgraph.c (cgraph_propagate_frequency): New function.
+       * cgraph.h (cgraph_propagate_frequency): Declare.
+       * ipa-inline.c (cgraph_clone_inlined_nodes): Call
+       cgraph_propagate_frequency.
+
+2010-04-27  Jakub Jelinek  <jakub@redhat.com>
+
+       * unwind-dw2.c (_Unwind_DebugHook): Add used and noclone attributes.
+
+2010-04-27  Bernd Schmidt  <bernds@codesourcery.com>
+
+       PR target/40657
+       * config/arm/arm.c (thumb1_extra_regs_pushed): New function.
+       (thumb1_expand_prologue, thumb1_output_function_prologue): Call it
+       here to determine which regs to push and how much stack to reserve.
+
+2010-04-27  Jie Zhang  <jie@codesourcery.com>
+
+       * doc/gimple.texi (gimple_statement_with_ops): Remove
+       addresses_taken field.
+       (gimple_statement_with_memory_ops): Likewise.
+
+2010-04-27  Jan Hubicka  <jh@suse.cz>
+
+       * tree-inline.c (eni_inlining_weights): Remove.
+       (estimate_num_insns): Special case more builtins.
+
+2010-04-27  Shujing Zhao  <pearly.zhao@oracle.com>
+       
+       PR c/32207
+       * c-typeck.c (build_binary_op): Move forward check for comparison
+       pointer with null pointer constant and adjust the diagnostic message.
+
+2010-04-27  Dave Korn  <dave.korn.cygwin@gmail.com>
+
+       PR lto/42776
+       * configure.ac (gcc_cv_as_section_has_align): Set if installed
+       binutils supports extended .section directive needed by LTO, or
+       warn if older binutils found.
+       (LTO_BINARY_READER): New AC_SUBST'd variable.
+       (LTO_USE_LIBELF): Likewise.
+       * gcc/config.gcc (lto_binary_reader): New target-specific configure
+       variable.
+       * gcc/Makefile.in (LTO_BINARY_READER): Import AC_SUBST'd autoconf var.
+       (LTO_USE_LIBELF): Likewise.
+       * configure: Regenerate.
+
+       * collect2.c (is_elf): Rename from this ...
+       (is_elf_or_coff): ... to this, and recognize and allow i386 COFF
+        object files in addition to ELF-formatted ones.
+       (scan_prog_file): Caller updated.  Also allow for LTO info marker
+       symbol to be prefixed or not by an extra underscore.
+
+       * config/i386/t-cygming (winnt.o): Also depend on LTO_STREAMER_H.
+       * config/i386/winnt.c: Also #include lto-streamer.h
+       (i386_pe_asm_named_section): Specify 1-byte section alignment for
+       LTO named sections.
+       (i386_pe_asm_output_aligned_decl_common): Add comment.
+       (i386_pe_maybe_record_exported_symbol): Allow decl arg to be NULL.
+
+2010-04-27  Hans-Peter Nilsson  <hp@bitrange.com>
+
+       PR target/43889
+       * config/mmix/mmix.md ("*divdi3_nonknuth", "*moddi3_nonknuth"):
+       Add missing earlyclobber for second alternative.
+
+2010-04-26  Bernd Schmidt  <bernds@codesourcery.com>
+
+       * df-problems.c (df_simulate_initialize_forwards): Set, don't clear,
+       bits for artificial defs at the top of the block.
+       * fwprop.c (single_def_use_enter_block): Don't call it.
+
+2010-04-26  Jack Howarth <howarth@bromo.med.uc.edu>
+
+       PR 43715
+       * gcc/configure.ac: Use "$gcc_cv_nm -g" on darwin
+       instead of "$gcc_cv_objdump -T".
+       Use "-undefined dynamic_lookup" on darwin.
+       * gcc/configure: Regenerate.
+
+2010-04-26  Jakub Jelinek  <jakub@redhat.com>
+
+       PR c/43893
+       * c-omp.c (c_finish_omp_for): Handle also EQ_EXPR.
+
+2010-04-26  Nathan Froyd  <froydnj@codesourcery.com>
+
+       * c-parser.c (struct c_token): Move location field up.
+       * c-tree.h (struct c_typespec): Move expr_const_operands field up.
+       (struct c_declspecs): Convert typespec_word, storage_class, and
+       default_int_p into bitfields.
+       (struct c_declarator): Move loc field up.
+
+2010-04-26  Nathan Froyd  <froydnj@codesourcery.com>
+
+       * cfgloop.h (struct loop): Move can_be_parallel field up.
+       * ipa-prop.h (struct ip_node_params): Move bitfields up.
+       * tree-ssa-loop-ivopts.c (struct version_info): Move inv_id field
+       down.
+       (struct iv_cand): Convert pos field into a bitfield.
+       * tree-vectorizer.h (struct _loop_vec_info): Move loop_line_number
+       field up.
+       (struct _stmt_vec_info): Shuffle fields for better packing.
+
+2010-04-26  Eric Botcazou  <ebotcazou@adacore.com>
+
+       * varasm.c (IN_NAMED_SECTION): Remove guard.
+       * config/arm/unknown-elf.h (IN_NAMED_SECTION): Rename to...
+       (IN_NAMED_SECTION_P): ...this.
+       (ASM_OUTPUT_ALIGNED_BSS): Adjust for above renaming.
+       (ASM_OUTPUT_ALIGNED_DECL_LOCAL): Likewise.
+
+2010-04-26  Eric Botcazou  <ebotcazou@adacore.com>
+
+       * gimplify.c (gimplify_cond_expr): Use THEN_ and ELSE_ local variables.
+       Use VOID_TYPE_P for all void type tests.  Adjust TYPE variable instead
+       of shadowing it.  Fix comments.
+
+2010-04-26  Jan Hubicka  <jh@suse.cz>
+
+       * cgraph.c (cgraph_create_node): Set node frequency to normal.
+       (cgraph_clone_node): Copy function frequency.
+       * cgraph.h (node_frequency): New enum
+       (struct cgraph_node): Add.
+       * final.c (rest_of_clean_state): Update.
+       * lto-cgraph.c (lto_output_node): Output node frequency.
+       (input_overwrite_node): Input node frequency.
+       * tre-ssa-loop-ivopts (computation_cost): Update.
+       * lto-streamer-out.c (output_function): Do not output function
+       frequency.
+       * predict.c (maybe_hot_frequency_p): Update and handle functions
+       executed once.
+       (cgraph_maybe_hot_edge_p): Likewise; use cgraph frequency instead of
+       attribute lookup.
+       (probably_never_executed_bb_p, optimize_function_for_size_p): Update.
+       (compute_function_frequency): Set noreturn functions to be executed
+       once.
+       (choose_function_section): Update.
+       * lto-streamer-in.c (input_function): Do not input function frequency.
+       * function.c (allocate_struct_function): Do not initialize function
+       frequency.
+       * function.h (function_frequency): Remove.
+       (struct function): Remove function frequency.
+       * ipa-profile.c (CGRAPH_NODE_FREQUENCY): Remove.
+       (try_update): Update.
+       * tree-inline.c (initialize_cfun): Do not update function frequency.
+       * passes.c (pass_init_dump_file): Update.
+       * i386.c (ix86_compute_frame_layout): Update.
+       (ix86_pad_returns): Update.
+
+2010-04-26  Jie Zhang  <jie@codesourcery.com>
+
+       PR tree-optimization/43833
+       * tree-vrp.c (range_int_cst_p): New.
+       (range_int_cst_singleton_p): New.
+       (extract_range_from_binary_expr): Optimize BIT_AND_EXPR case
+       when both operands are constants.  Use range_int_cst_p in
+       BIT_IOR_EXPR case.
+
 2010-04-26  Jan Hubicka  <jh@suse.cz>
 
        * cgraphunit.c (cgraph_copy_node_for_versioning): Fix profile updating.