diff options
Diffstat (limited to 'gcc-4.6/gcc/ChangeLog.google-4_6')
-rw-r--r-- | gcc-4.6/gcc/ChangeLog.google-4_6 | 474 |
1 files changed, 470 insertions, 4 deletions
diff --git a/gcc-4.6/gcc/ChangeLog.google-4_6 b/gcc-4.6/gcc/ChangeLog.google-4_6 index 309acfb..ae66f55 100644 --- a/gcc-4.6/gcc/ChangeLog.google-4_6 +++ b/gcc-4.6/gcc/ChangeLog.google-4_6 @@ -1,15 +1,481 @@ -2011-12-05 Jing Yu <jingyu@google.com> +2012-02-14 Jing Yu <jingyu@google.com> + + Backport r184226 from google/main (Google ref 42402-p2) + * config/arm/arm.h: Emit GNU-stack note for all arm targets by + default. + +2012-02-10 Wei Guozhi <carrot@google.com> + Backported r183933 from mainline + 2012-02-06 Jakub Jelinek <jakub@redhat.com> + + * calls.c (mem_overlaps_already_clobbered_arg_p): If val is + CONST_INT_P, subtract resp. add crtl->args.pretend_args_size to it. + +2012-02-01 Dehao Chen <dehao@google.com> + + * predict.c (predict_iv_comparison): Add new parameter, ensure that + the loop_iv_base and compare_base are identical. + +2012-01-31 Dehao Chen <dehao@google.com> + + * predict.c (strips_small_constant): New + (get_base_value): New + (find_ssa_name_in_assign_stmt): New + (is_comparison_with_loop_invariant_p): New + (expr_coherent_p): New + (predict_iv_comparison): New + (predict_loops): Add heuristic for loop-nested branches that compare an + induction variable to a loop bound variable. + * predict.def (PRED_LOOP_IV_COMPARE): New macro + +2012-01-23 Diego Novillo <dnovillo@google.com> + + Merge from gcc-4_6-branch rev 182961. + +2012-01-20 Sterling Augustine <saugustine@google.com> + Backport from google/main + + * gcc/dwarf2out.c (break_out_comdat_types): Call add_AT_lineptr with + DW_AT_GNU_pubnames and DW_AT_GNU_pubtypes. + +2012-01-12 Rong Xu <xur@google.com> + Backport r183142 from google/main + + * gcc/profile.c (compute_value_histograms): ignore the + histrogram when the counters not found in gcda file. + +2012-01-11 Sriraman Tallam <tmsriram@google.com> + + Add new target builtins: __builtin_cpu_is_amdfam15h_bdver1 and + __builtin_cpu_is_amdfam15h_bdver2, to check for AMD Family 15h + (0x15) processors, version 1 and 2 respectively. + + * i386.c (IX86_BUILTIN_CPU_IS_AMDFAM15H_BDVER1): New enum value. + (IX86_BUILTIN_CPU_IS_AMDFAM15H_BDVER2): New enum value. + (IX86_BUILTIN_CPU_IS_AMDFAM10H): Rename IX86_BUILTIN_CPU_IS_AMDFAM10. + (IX86_BUILTIN_CPU_IS_AMDFAM10H_BARCELONA): Rename IX86_BUILTIN_CPU_IS_AMDFAM10_BARCELONA. + (IX86_BUILTIN_CPU_IS_AMDFAM10H_SHANGHAI): Rename IX86_BUILTIN_CPU_IS_AMDFAM10_SHANGHAI. + (IX86_BUILTIN_CPU_IS_AMDFAM10H_ISTANBUL): Rename IX86_BUILTIN_CPU_IS_AMDFAM10_ISTANBUL. + (fold_builtin_cpu): Process IX86_BUILTIN_CPU_IS_AMDFAM15H_BDVER1 + and IX86_BUILTIN_CPU_IS_AMDFAM15H_BDVER2. + (M_AMDFAM10H): Rename M_AMDFAM10. + (M_AMDFAM10H_BARCELONA): Rename M_AMDFAM10_BARCELONA. + (M_AMDFAM10H_SHANGHAI): Rename M_AMDFAM10_SHANGHAI. + (M_AMDFAM10H_ISTANBUL): Rename M_AMDFAM10_ISTANBUL. + (ix86_init_platform_type_builtins): Make new builtins __builtin_cpu_is_amdfam15_bdver1 + and __builtin_cpu_is_amdfam15_bdver2. + (ix86_expand_builtin): Expand IX86_BUILTIN_CPU_IS_AMDFAM15_BDVER1 and + IX86_BUILTIN_CPU_IS_AMDFAM15_BDVER2. + * testsuite/gcc.target/builtin_target.c (fn1): Call new builtins. + +2012-01-10 Rong Xu <xur@google.com> + + Backport r183081 from google/main + + * gcc/profile.c (compute_value_histograms): handle the + case when INDIR_CALL counters not available in gcda files. + + +2012-01-09 Dehao Chen <dehao@google.com> + + * ipa-inline.c (cgraph_node_opt_info): Print profile info if available + (dump_inline_decision): Disable einline dump at OPT_INFO_MIN + +2012-01-04 Sterling Augustine <saugustine@google.com> + + Backport from google/main + + * dwarf2out.c (add_pubname): Move conditional clause from outer to + inner if-statement. + (dwarf2out_finish): Fix conditions to output DW_AT_GNU_pubnames and + DW_AT_GNU_pubtypes. Move decision to output pubnames and pubtypes from + here... + (output_pubnames): ...to here. + (pubtypes_section_empty): Delete unused function. + +2012-01-02 Dehao Chen <dehao@google.com> + + * ipa-inline.c (cgraph_node_opt_info): Print more concise info when + dumping inline decisions. + +2011-12-19 Sterling Augustine <saugustine@google.com> + + Backport from google/main + + * dwarf2out.c (DEBUG_PUBNAMES_SECTION_LABEL, + DEBUG_PUBTYPES_SECTION_LABEL): Define. + (debug_pubnames_section_label, debug_pubtypes_section_label): + Declare. + (is_namespace_die, is_class_die): New functions. + (add_enumerator_pubname): New function. + (add_pubname): Call is_namespace_die, is_cu_die, and is_class_die in + conditional. + (add_pubtype): Call is_namespace_die. Rework name calculation. Call + type_tag, lang_hooks.dwarf_name and add_enumerator_pubname. + (output_pubnames): Output debug_pubnames_section_label or + debug_pubtypes_section_label. + (base_type_die): Call add_pubtype. + (gen_namespace_die): Call add_pubname_string and lang_hooks.dwarf_name. + (dwarf2_out_init): Generate debug_pubnames_section_label and + debug_pubtypes_section_label. + (pubtypes_section_empty): New function. + (dwarf2_out_finish): Call add_AT_lineptr if pubnames or pubtypes is + non-empty. When dealing with pubnames, change assertion to conditional. + Call pubtypes_section_empty. Likewise when dealing with pubtypes. + Move code checking for empty section to... + (pubtypes_section_empty): Here. + * target.def: Switch boolean to enable pubnames and pubtypes. + +2011-12-17 Sriraman Tallam <tmsriram@google.com> + + * mversn-dispatch.c (make_name): Use '.' to concatenate to suffix + mangled names. + (clone_function): Do not make clones ctors/dtors. Recompute dominance + info. + (make_bb_flow): New function. + (get_selector_gimple_seq): New function. + (make_selector_function): New function. + (make_attribute): New function. + (make_ifunc_function): New function. + (copy_decl_attributes): New function. + (dispatch_using_ifunc): New function. + (purge_function_body): New function. + (function_can_make_abnormal_goto): New function. + (make_function_not_cloneable): New function. + (do_auto_clone): New function. + (pass_auto_clone): New gimple pass. + (make_specialized_call_to_clone): Fix clone names. + * passes.c (init_optimization_passes): Add pass_auto_clone to list. + * tree-pass.h (pass_auto_clone): New pass. + * params.def (PARAM_MAX_FUNCTION_SIZE_FOR_AUTO_CLONING): New param. + * target.def (mversion_function): New target hook. + * config/i386/i386.c (ix86_option_override_internal): Check correctness + of ix86_mv_arch_string. + (add_condition_to_bb): New function. + (make_empty_function): New function. + (make_condition_function): New function. + (is_loop_form_vectorizable): New function. + (is_loop_stmts_vectorizable): New function. + (any_loops_vectorizable_with_load_store): New function. + (mversionable_for_core2_p): New function. + (ix86_mversion_function): New function. + * config/i386/i386.opt (mvarch): New option. + * doc/tm.texi (TARGET_MVERSION_FUNCTION): Document. + * doc/tm.texi.in (TARGET_MVERSION_FUNCTION): Document. + * testsuite/gcc.dg/automversn_1.c: New test case. + * testsuite/gcc.dg/mversn2.c: Fix cloned names. + * testsuite/g++.dg/mversn8.C: Ditto. + * testsuite/g++.dg/mversn10a.C: Ditto. + * testsuite/g++.dg/mversn15.C: Ditto. + * testsuite/g++.dg/mversn10.C: Ditto. + * testsuite/g++.dg/mversn16.C: Ditto. + +2011-12-17 Sriraman Tallam <tmsriram@google.com> + + * gcc/config/i386/i386.c + (IX86_BUILTIN_CPU_IS_INTEL_COREI7): New enum value. + (IX86_BUILTIN_CPU_IS_AMDFAM10): New enum value. + (fold_builtin_cpu): Fold the new builtins. + (ix86_init_platform_type_builtins): Make new buitins + __builtin_cpu_is_intel_corei7 and + __builtin_cpu_is_amdfam10. + * testsuite/gcc.target/i386/builtin_target.c (fn1): + Call the new builtins. + +2011-12-17 Easwaran Raman <eraman@google.com> + Backport r182443 from google/main. + + 2011-12-17 Easwaran Raman <eraman@google.com> + + * common.opt (fsized-delete): New option. + +2011-12-16 Rong Xu <xur@google.com> + Backport r182416 from google/main. + + 2011-12-16 Rong Xu <xur@google.com> + + * libgcc/libgcov.c (gcov_merge_gcda_file): reset summary_pos. + +2011-12-16 Dehao Chen <dehao@google.com> + + * ipa-inline.c (dump_inline_decision): New function. + (cgraph_node_call_chain): New function. + (cgraph_node_opt_info): New function. + (cgraph_mark_inline_edge): Dump inline decisions to stderr. + +2011-12-14 Sriraman Tallam <tmsriram@google.com> + + Backport r182344 from google/main. + + 2011-12-14 Sriraman Tallam <tmsriram@google.com> + + Do not vectorize loops on Core2 that need to use unaligned + vector load/stores. + * tree-vect-stmts.c (is_vector_load_store_slow): New function. + (vectorizable_load): Return false if the load + is unaligned and slow. + (vectorizable_store): Ditto. + * target.def (TARGET_SLOW_UNALIGNED_VECTOR_MEMOP): New target hook. + * doc/m.texi.in: Document new target hook: + TARGET_SLOW_UNALIGNED_VECTOR_MEMOP + * doc/m.texi: Regenerate. + * config/i386/i386.c (ix86_slow_unaligned_vector_memop): New function. + (TARGET_SLOW_UNALIGNED_VECTOR_MEMOP): New macro. + +2011-12-12 Teresa Johnson <tejohnson@google.com> + + +2011-12-11 Diego Novillo <dnovillo@google.com> + + Merge from gcc-4_6-branch rev 182135. + +2011-11-30 Doug Kwan <dougkwan@google.com> Backport r171347 and r181549 from trunk. 2011-03-23 Julian Brown <julian@codesourcery.com> * expr.c (expand_expr_real_1): Only use BLKmode for volatile accesses which are not naturally aligned. - + 2011-11-20 Joey Ye <joey.ye@arm.com> + + * expr.c (expand_expr_real_1): Correctly handle strict volatile + bitfield loads smaller than mode size. + +2011-11-23 Teresa Johnson <tejohnson@google.com> + + Backport r181671 from google/main. + +2011-11-18 Diego Novillo <dnovillo@google.com> + + Rollback revisiong 179815 from gcc-4_6-branch. + +2011-11-16 Rong Xu <xur@google.com> + + Backport r181432 from google/main. + +2011-11-10 DeLesley Hutchins <delesley@google.com> + + * tree-threadsafe-analyze.c: + factors out code to get function decl. + (get_fdecl_from_gimple_stmt): new factored-out function + (handle_call_gs): original definition of code + (get_lock_returned_by_call): call new function + (get_trylock_info): call new function + (handle_unlock_primitive_attr): use passed fdecl + +2011-11-10 DeLesley Hutchins <delesley@google.com> + + * tree-threadsafe-analyze.c (get_canonical_lock_expr): + Add support for pointer arithmetic operations + +2011-11-04 Rong Xu <xur@google.com> + + Backport r181129 from google/main. + +2011-11-06 Teresa Johnson <tejohnson@google.com> + + Backport r180925 from google/main. + +2011-11-06 Teresa Johnson <tejohnson@google.com> + + Backport r180783 from trunk. + +2011-11-04 DeLesley Hutchins <delesley@google.com> + * tree-threadsafe-analyze.c: + Ignores invalid attributes, issues a warning, recovers gracefully. + * common.opt: + Adds new thread safety warning. + +2011-11-04 Rong Xu <xur@google.com> + + Backport r180971 from google/main. + +2011-11-04 Rong Xu <xur@google.com> + + Backport r180973 from google/main. + +2011-11-04 Rong Xu <xur@google.com> + + Backport r180269 from google/main. + +2011-11-02 Diego Novillo <dnovillo@google.com> + + Merge from gcc-4_6-branch rev 180729. + +2011-10-25 Xinliang David Li <davidxl@google.com> + + * profile.c (compute_branch_probablies): recompute + function frequency summary after profile annotation. + +2011-10-24 Diego Novillo <dnovillo@google.com> + + Merge from gcc-4_6-branch rev 180298. + +2011-10-21 Diego Novillo <dnovillo@google.com> + + Merge from gcc-4_6-branch rev 179421. + +2011-10-17 Dehao Chen <dehao@google.com> + + Add a flag (-frecord-gcc-switches-in-elf) to record compiler + command line options to .gnu.switches.text sections of + the object file. + * coverage.c (write_opts_to_asm): Write the options to + .gnu.switches.text sections. + * common.opt: Ditto. + * opts.h: Ditto. + +2011-10-14 DeLesley Hutchins <delesley@google.com> + + * tree-threadsafe-analyze.c (get_canonical_lock_expr): + Bugfix: add lock to hash set, even if it refers to a base class + +2011-10-14 DeLesley Hutchins <delesley@google.com> + + * tree-threadsafe-analyze.c (remove_lock_from_lockset): + Bugfix: shared lock now removed properly when the universal lock + is in the exclusive lock set. + +2011-09-30 Sharad Singhai <singhai@google.com> + + * gcc.c (cc1_options): Add -fno-early-inlining for improved coverage. + +2011-09-30 Easwaran Raman <eraman@google.com> + + * tree-profile.c (gcov_sample_counter_decl): Add GTY marker. + (gcov_sampling_rate_decl): Likewise. + (add_sampling_to_edge_counters): Do not free + instrumentation_to_be_sampled. + (cleanup_instrumentation_sampling): New function. + (tree_profiling): Call cleanup_instrumentation_sampling at the end. + +2011-09-30 DeLesley Hutchins <delesley@google.com> + + * tree-threadsafe-analyze.c (process_function_attrs): + Detect clones and suppress warnings. + +2011-09-27 Sriraman Tallam <tmsriram@google.com> + + * output.h (SECTION_EXCLUDE): New flag for exclude sections. + * varasm.c (default_elf_asm_named_section): Add "e" to section flags + marked as SECTION_EXCLUDE. + * final.c (rest_of_handle_final): Exclude .gnu.callgraph sections. + +2011-09-22 Sriraman Tallam <tmsriram@google.com> + + * cgraphbuild.c (remove_cgraph_callee_edges): Preserve callee edges if + callgraph profiles are needed. + * final.c (rest_of_handle_final): Rename .note.callgraph sections as + .gnu.callgraph sections. + * tree-optimize.c (gate_all_optimizations): Set + cgraph_callee_edges_final_cleanup to true. + (cgraph_callee_edges_final_cleanup): New global variable. + * params.def (PARAM_NOTE_CGRAPH_SECTION_EDGE_THRESHOLD): Fix comment. + +2011-09-22 Guozhi Wei <carrot@google.com> + + Backport r178995 from trunk. + + 2011-09-20 Wei Guozhi <carrot@google.com> + + PR rtl-optimization/49452 + * postreload.c (reload_combine): Invalidate use information when + across volatile insn. + +2011-09-21 Diego Novillo <dnovillo@google.com> + + Merge from gcc-4_6-branch rev 179031. + +2011-09-15 Easwaran Raman <eraman@google.com> + + Backport r178898 from google/main. + + 2011-09-15 Easwaran Raman <eraman@google.com> + + * Makefile.in (PLUGIN_HEADERS): Add l-ipo.h. + +2011-09-15 Easwaran Raman <eraman@google.com> + + Backport r176741 from trunk. + + 2011-07-22 Romain Geissler <romain.geissler@gmail.com> - * expr.c (expand_expr_real_1): Correctly handle strict volatile - bitfield loads smaller than mode size. + PR plugins/45348 + PR plugins/48425 + PR plugins/46577 + * Makefile.in: Do not flatten c-family directory when installing + plugin headers. + +2011-09-15 Diego Novillo <dnovillo@google.com> + + Merge from gcc-4_6-branch rev 178854. + +2011-9-13 DeLesley Hutchins <delesley@google.com> + + * tree-threadsafe-analyze.c (get_canonical_lock_expr): + don't remove & on recursive call + +2011-09-01 Sriraman Tallam <tmsriram@google.com> + + * config/i386/i386.c (build_struct_with_one_bit_fields): New function. + (make_var_decl): New function. + (get_field_from_struct): New function. + (fold_builtin_target): New function. + (ix86_fold_builtin): New function. + (ix86_expand_builtin): Expand new builtins by folding them. + (TARGET_FOLD_BUILTIN): New macro. + (IX86_BUILTIN_CPU_SUPPORTS_CMOV): New enum value. + (IX86_BUILTIN_CPU_SUPPORTS_MMX): New enum value. + (IX86_BUILTIN_CPU_SUPPORTS_POPCOUNT): New enum value. + (IX86_BUILTIN_CPU_SUPPORTS_SSE): New enum value. + (IX86_BUILTIN_CPU_SUPPORTS_SSE2): New enum value. + (IX86_BUILTIN_CPU_SUPPORTS_SSE3): New enum value. + (IX86_BUILTIN_CPU_SUPPORTS_SSSE3): New enum value. + (IX86_BUILTIN_CPU_SUPPORTS_SSE4_1): New enum value. + (IX86_BUILTIN_CPU_SUPPORTS_SSE4_2): New enum value. + (IX86_BUILTIN_CPU_INIT): New enum value. + (IX86_BUILTIN_CPU_IS_AMD): New enum value. + (IX86_BUILTIN_CPU_IS_INTEL): New enum value. + (IX86_BUILTIN_CPU_IS_INTEL_ATOM): New enum value. + (IX86_BUILTIN_CPU_IS_INTEL_CORE2): New enum value. + (IX86_BUILTIN_CPU_IS_INTEL_COREI7_NEHALEM): New enum value. + (IX86_BUILTIN_CPU_IS_INTEL_COREI7_WESTMERE): New enum value. + (IX86_BUILTIN_CPU_IS_INTEL_COREI7_SANDYBRIDGE): New enum value. + (IX86_BUILTIN_CPU_IS_AMDFAM10_BARCELONA): New enum value. + (IX86_BUILTIN_CPU_IS_AMDFAM10_SHANGHAI): New enum value. + (IX86_BUILTIN_CPU_IS_AMDFAM10_ISTANBUL): New enum value. + * config/i386/libgcc-glibc.ver (__cpu_indicator_init): Export symbol. + (__cpu_model): Export symbol. + (__cpu_features): Export symbol. + * config/i386/i386-builtin-types.def: New function type. + +2011-08-24 Mark Heffernan <meheff@google.com> + + * params.def (hot-bb-count-fraction): Change default value. + +2011-08-24 David Li <davidxl@google.com> + + * profile.c (compute_branch_probabilities): Partially revert + change in r176997 which led to perf regression of important + apps. + +2011-08-23 Mark Heffernan <meheff@google.com> + + * basic-block.h (maybe_hot_frequency_p): Add prototype. + * cgraph.c (dump_cgraph_node): Add field to dump. + (cgraph_clone_node) Handle new field. + * cgraph.h (cgraph_node): New field max_bb_count. + * cgraphbuild.c (rebuild_cgraph_edges): Compute max_bb_count. + * cgraphunit.c (cgraph_copy_node_for_versioning) Handle new field. + * common.opt (finline-hot-caller): New option. + * ipa-inline.c (cgraph_mark_inline_edge) Update max_bb_count. + (edge_hot_enough_p) New function. + (cgraph_decide_inlining_of_small_functions) Call edge_hot_enough_p. + * predict.c (maybe_hot_frequency_p): Remove static keyword and + guard with profile_info check. + * testsuite/gcc.dg/tree-prof/inliner-1.c: Add flag. + * testsuite/gcc.dg/tree-prof/lipo/inliner-1_0.c: Add flag. 2011-08-16 Guozhi Wei <carrot@google.com> |