OSDN Git Service

* tree.h (memory_identifier_string): Remove.
[pf3gnuchains/gcc-fork.git] / gcc / ChangeLog
index e803c13..2221015 100644 (file)
@@ -1,9 +1,107 @@
 2010-05-14  Jan Hubicka  <jh@suse.cz>
 
+       * tree.h (memory_identifier_string): Remove.
+       * ipa-reference.c: Update comment; do not include gt-ipa-reference.h
+       (ipa_reference_global_vars_info_d): Remove statics_not_read and
+       statics_not_written.
+       (ipa_reference_optimization_summary_d): New structure.
+       (ipa_reference_optimization_summary_t): New type and vector.
+       (ipa_reference_vars_info_d): Embedd structures instead of using
+       pointers.
+       (reference_vars_to_consider): Remove out of GGC space.
+       (module_statics_escape): Remove.
+       (global_info_obstack): Rename to ...
+       (optimization_summary_obstack): ... this one.
+       (initialization_status_t): Remove.
+       (memory_identifier_string): Remove.
+       (get_reference_vars_info): Fix indenting.
+       (set_reference_vars_info): Likewise.
+       (get_reference_optimization_summary): New.
+       (set_reference_optimization_summary): New.
+       (get_global_reference_vars_info): Remove.
+       (ipa_reference_get_read_global): Remove.
+       (ipa_reference_get_written_global): Remove.
+       (ipa_reference_get_not_read_global): Update.
+       (ipa_reference_get_not_written_global): Update.
+       (is_proper_for_analysis): Outlaw addressable.
+       (propagate_bits): Update for new datastructures.
+       (analyze_variable): Remove.
+       (init_function_info): Update for new datastructures.
+       (clean_function_local_data): Remove.
+       (clean_function): Remove.
+       (copy_global_bitmap): Use optimizations_summary_obstack.
+       (duplicate_node_data): Duplicate optimization summary only.
+       (remove_node_data): Remove optimization summary only.
+       (generate_summary): Do not analyze variables; do not compute
+       module_statics_escape; do not prune solutions by it.
+       (read_write_all_from_decl): Fix typos in comments.
+       (propagate): Doscover readonly and nonaddressable first;
+       update for new datastructures; share global bitmaps.
+       * ipa-reference.h (ipa_reference_get_read_global,
+       ipa_reference_get_written_global): Remove.
+       * ipa-pure-const.c (check_stmt): Do not use memory_identifier_string.
+       * Makefile.in: Remove ipa-refereference from GT files.
+
+2010-05-14  Jakub Jelinek  <jakub@redhat.com>
+
+       PR debug/44112
+       * dwarf2out.c (resolve_one_addr): Check TREE_ASM_WRITTEN
+       for all SYMBOL_REF_DECLs.
+
+2010-05-14  Jan Hubicka  <jh@suse.cz>
+
+       * cgraph.h (ipa_discover_readonly_nonaddressable_vars): Declare.
+       (varpool_all_refs_explicit_p): New inline function.
+       * ipa-reference.c: Update comment.
+       (module_statics_written): Remove.
+       (get_static_decl): Remove.
+       (ipa_init): Do not initialize module_statics_written.
+       (analyze_function): Likewise.
+       (generate_summary): Likewise; do not compute module_statics_readonly
+       and do not update variable flags.
+       (propagate): Call ipa_discover_readonly_nonaddressable_vars.
+       * ipa.c: Inlucde flags.h
+       (cgraph_local_node_p): New.
+       (cgraph_remove_unreachable_nodes): Return early when not optimizing;
+       promote functions to local.
+       (ipa_discover_readonly_nonaddressable_vars): New function.
+       (function_and_variable_visibility): Use cgraph_local_node_p.
+       * varpool.c (varpool_finalize_decl): Set force_output for
+       DECL_PRESERVE_P vars.
+
+2010-05-14  Jan Hubicka  <jh@suse.cz>
+
+       * ipa.c (cgraph_remove_unreachable_nodes): Revert accidental commit.
+
+2010-05-14  Richard Guenther  <rguenther@suse.de>
+
+       PR tree-optimization/44119
+       * tree-ssa-pre.c (eliminate): Properly mark replacement of
+       a PHI node necessary.
+
+2010-05-14  Eric Botcazou  <ebotcazou@adacore.com>
+
+       * tree.h (TREE_ADDRESSABLE): Remove bogus usage for FIELD_DECL.
+
+2010-05-14  Jason Merrill  <jason@redhat.com>
+
+       PR c++/44127
+       * gimple.h (enum gf_mask): Add GF_CALL_NOTHROW.
+       (gimple_call_set_nothrow): New.
+       * gimple.c (gimple_build_call_from_tree): Call it.
+       (gimple_call_flags): Set ECF_NOTHROW from GF_CALL_NOTHROW.
+
+       PR c++/44127
+       * gimplify.c (gimplify_seq_add_stmt): No longer static.
+       * gimple.h: Declare it.
+       * gimple.c (gimple_build_eh_filter): No ops.
+
+2010-05-14  Jan Hubicka  <jh@suse.cz>
+
        * ipa.c (enqueue_cgraph_node): Update comment; do not re-enqueue
        nodes already in queue.
-       (cgraph_remove_unreachable_nodes): Cleanup; fix problem with re-enqueueing
-       node.
+       (cgraph_remove_unreachable_nodes): Cleanup; fix problem with
+       re-enqueueing node.
 
 2010-05-14  Jakub Jelinek  <jakub@redhat.com>
 
        Add check for  TARGET_SSE_PACKED_SINGLE_INSN_OPTIMAL
        to emit packed xor instead of packed double/packed integer
        xor for SSE and AVX when moving a zero value.
-       * config/i386/sse.md: Add check for TARGET_SSE_PACKED_SINGLE_INSN_OPTIMAL
-        to emit movaps instead of movapd/movdqa for SSE and AVX.
-       Add check for TARGET_SSE_PACKED_SINGLE_INSN_OPTIMAL to emit packed single
-       logical operations i.e and, or and xor instead of packed double logical
-       operations for SSE and AVX. 
+       * config/i386/sse.md: Add check for
+       TARGET_SSE_PACKED_SINGLE_INSN_OPTIMAL to emit movaps instead of
+       movapd/movdqa for SSE and AVX.
+       Add check for TARGET_SSE_PACKED_SINGLE_INSN_OPTIMAL to emit packed
+       single logical operations i.e and, or and xor instead of packed double
+       logical operations for SSE and AVX.
        * config/i386/i386-c.c: 
        (ix86_target_macros_internal): Add PROCESSOR_BDVER1.
        * config/i386/driver-i386.c: Turn on -mtune=native for BDVER1.
        (m_BDVER1): New macro.
        (m_AMD_MULTIPLE): Add m_BDVER1.
        (x86_tune_use_leave, x86_tune_push_memory, x86_tune_unroll_strlen,
-        x86_tune_deep_branch_prediction, x86_tune_use_sahf, x86_tune_movx,
-        x86_tune_use_simode_fiop, x86_tune_promote_qimode, 
-        x86_tune_add_esp_8, x86_tune_tune_sub_esp_4, x86_tune_sub_esp_8,
-        x86_tune_integer_dfmode_moves, x86_tune_partial_reg_dependency,
-        x86_tune_sse_partial_reg_dependency, x86_tune_sse_unaligned_load_optimal,
-        x86_tune_sse_unaligned_store_optimal, x86_tune_sse_typeless_stores,
-        x86_tune_memory_mismatch_stall, x86_tune_use_ffreep,
-        x86_tune_inter_unit_moves, x86_tune_inter_unit_conversions,
-        x86_tune_use_bt, x86_tune_pad_returns, x86_tune_slow_imul_imm32_mem,
-        x86_tune_slow_imul_imm8, x86_tune_fuse_cmp_and_branch): 
+       x86_tune_deep_branch_prediction, x86_tune_use_sahf, x86_tune_movx,
+       x86_tune_use_simode_fiop, x86_tune_promote_qimode,
+       x86_tune_add_esp_8, x86_tune_tune_sub_esp_4, x86_tune_sub_esp_8,
+       x86_tune_integer_dfmode_moves, x86_tune_partial_reg_dependency,
+       x86_tune_sse_partial_reg_dependency,
+       x86_tune_sse_unaligned_load_optimal,
+       x86_tune_sse_unaligned_store_optimal, x86_tune_sse_typeless_stores,
+       x86_tune_memory_mismatch_stall, x86_tune_use_ffreep,
+       x86_tune_inter_unit_moves, x86_tune_inter_unit_conversions,
+       x86_tune_use_bt, x86_tune_pad_returns, x86_tune_slow_imul_imm32_mem,
+       x86_tune_slow_imul_imm8, x86_tune_fuse_cmp_and_branch):
        Enable/disable for bdver1.
        (processor_target_table): Add bdver1_cost.
        (cpu_names): Add bdver1.
        (override_options): Set up PROCESSOR_BDVER1 for bdver1 entry in
         processor_alias_table.
-       (ix86_expand_vector_move_misalign): Change 
-        TARGET_SSE_UNALIGNED_MOVE_OPTIMAL to TARGET_SSE_UNALIGNED_LOAD_OPTIMAL.
-        Check for TARGET_SSE_UNALIGNED_STORE_OPTIMAL.
-        Check for TARGET_SSE_PACKED_SINGLE_INSN_OPTIMAL to emit movups instead
-        of movupd/movdqu for SSE and AVX.
+       (ix86_expand_vector_move_misalign): Change.
+       TARGET_SSE_UNALIGNED_MOVE_OPTIMAL to TARGET_SSE_UNALIGNED_LOAD_OPTIMAL.
+       Check for TARGET_SSE_UNALIGNED_STORE_OPTIMAL.
+       Check for TARGET_SSE_PACKED_SINGLE_INSN_OPTIMAL to emit movups instead
+       of movupd/movdqu for SSE and AVX.
        (ix86_tune_issue_rate): Add PROCESSOR_BDVER1.
        (ix86_tune_adjust_cost): Add code for bdver1.
        (standard_sse_constant_opcode): Add check for