diff options
Diffstat (limited to 'gcc/ChangeLog')
-rw-r--r-- | gcc/ChangeLog | 948 |
1 files changed, 922 insertions, 26 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 839cb0d6ab1..2820759a280 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,903 @@ +2014-06-17 Richard Biener <rguenther@suse.de> + + * genopinit.c (main): Use vec<>::qsort method. + * tree-ssa-loop-niter.c (discover_iteration_bound_by_body_walk): + Likewise. + * tree-vect-data-refs.c (vect_analyze_data_ref_accesses): Likewise. + +2014-06-17 Matthew Fortune <matthew.fortune@imgtec.com> + + * config/mips/mips-protos.h (mips_expand_fcc_reload): Remove. + * config/mips/mips.c (mips_expand_fcc_reload): Remove. + (mips_move_to_gpr_cost): Remove ST_REGS case. + (mips_move_from_gpr_cost): Likewise. + (mips_register_move_cost): Likewise. + (mips_secondary_reload_class): Likewise. + +2014-06-17 Richard Biener <rguenther@suse.de> + + * passes.def (pass_all_early_optimizations): Remove copy-prop pass. + (pass_all_optimizations): Move 3rd copy-prop pass from after + fre to before ifcombine/phiopt. + +2014-06-17 Richard Biener <rguenther@suse.de> + + * tree-switch-conversion.c (collect_switch_conv_info): Simplify + and allow all blocks to be forwarders. + +2014-06-17 Yufeng Zhang <yufeng.zhang@arm.com> + + PR target/61483 + * config/aarch64/aarch64.c (aarch64_layout_arg): Add new local + variable 'size'; calculate 'size' right in the front; use + 'size' to compute 'nregs' (when 'allocate_ncrn != 0') and + pcum->aapcs_stack_words. + +2014-06-17 Nick Clifton <nickc@redhat.com> + + * config/msp430/msp430.md (mulhisi3): Add a NOP after the DINT. + (umulhi3, mulsidi3, umulsidi3): Likewise. + +2014-06-17 Thomas Schwinge <thomas@codesourcery.com> + + PR middle-end/61508 + * fold-const.c (fold_checksum_tree) <TS_DECL_WITH_VIS>: Remove + check for section name. + +2014-06-17 Richard Biener <rguenther@suse.de> + + * tree-ssa-propagate.c: Include domwalk.h. + (substitute_and_fold): Outline main worker into a domwalker ... + (substitute_and_fold_dom_walker::before_dom_children): ... here. + Schedule stmts we can fully propagate for removal. Remove + poor-mans DCE. + (substitute_and_fold): Apply a dominator walk to perform + substitution. Process stmts scheduled for removal here. + +2014-06-17 Richard Biener <rguenther@suse.de> + + * tree-ssa-loop-im.c (determine_max_movement): Adjust cost + of PHI node moving. + +2014-06-17 Kugan Vivekanandarajah <kuganv@linaro.org> + + * config/arm/arm.c (arm_atomic_assign_expand_fenv): call + default_atomic_assign_expand_fenv for !TARGET_HARD_FLOAT. + (arm_init_builtins) : Initialize builtins __builtins_arm_set_fpscr and + __builtins_arm_get_fpscr only when TARGET_HARD_FLOAT. + * config/arm/vfp.md (set_fpscr): Make pattern conditional on + TARGET_HARD_FLOAT. + (get_fpscr) : Likewise. + +2014-06-16 Vladimir Makarov <vmakarov@redhat.com> + + PR rtl-optimization/61325 + * lra-constraints.c (valid_address_p): Add forward declaration. + (simplify_operand_subreg): Check address validity before and after + alter_reg of memory subreg. + +2014-06-16 Uros Bizjak <ubizjak@gmail.com> + + * config/i386/i386.c (decide_alg): Correctly handle + maximum size of stringop algorithm. + +2014-06-16 Yury Gribov <y.gribov@samsung.com> + + * asan.c (build_check_stmt): Fix maybe-uninitialized warning. + +2014-06-16 Vladimir Makarov <vmakarov@redhat.com> + + PR rtl-optimization/61522 + * lra-assigns.c (assign_by_spills): Check null targetm.spill_class. + +2014-06-16 Jan Hubicka <hubicka@ucw.cz> + + Revert: + * symtab.c (symtab_node::reset_section): New method. + * cgraph.c (cgraph_node_cannot_be_local_p_1): Accept non-local + for localization. + * cgraph.h (reset_section): Declare. + * ipa-inline-analysis.c (do_estimate_growth): Check for comdat groups; + do not consider comdat locals. + * cgraphclones.c (set_new_clone_decl_and_node_flags): Get section + for new symbol. + * ipa-visiblity.c (cgraph_externally_visible_p): Cleanup. + (update_visibility_by_resolution_info): Consider UNDEF; fix checking; + reset sections of symbols dragged out of the comdats. + (function_and_variable_visibility): Reset sections of localized symbols. + +2014-06-16 Richard Biener <rguenther@suse.de> + + PR tree-optimization/61482 + * tree-vrp.c (adjust_range_with_scev): Avoid setting of + [-INF(OVF), +INF(OVF)] range. + +2014-06-16 Ganesh Gopalasubramanian <Ganesh.Gopalasubramanian@amd.com> + + * config/i386/i386.c (ix86_expand_sse2_mulvxdi3): Issue + instructions "vpmuludq" and "vpaddq" instead of "vpmacsdql" for + handling 32-bit multiplication. + +2014-06-16 Chung-Lin Tang <cltang@codesourcery.com> + + PR middle-end/61430 + * lra-lives.c (process_bb_lives): Skip creating copy during + insn scan when src/dest has constrained to same regno. + +2014-06-15 Jan Hubicka <hubicka@ucw.cz> + + * tree-vect-data-refs.c (vect_can_force_dr_alignment_p): Check again + DECL_IN_CONSTANT_POOL and TREE_ASM_WRITTEN. + +2014-06-16 Yury Gribov <y.gribov@samsung.com> + + * asan.c (check_func): New function. + (maybe_create_ssa_name): Likewise. + (build_check_stmt_with_calls): Likewise. + (use_calls_p): Likewise. + (report_error_func): Change interface. + (build_check_stmt): Allow non-integer lengths; add support + for new parameter. + (asan_instrument): Likewise. + (instrument_mem_region_access): Moved code to build_check_stmt. + (instrument_derefs): Likewise. + (instrument_strlen_call): Likewise. + * cfgcleanup.c (old_insns_match_p): Add support for new functions. + * doc/invoke.texi: Describe new parameter. + * params.def: Define new parameter. + * params.h: Likewise. + * sanitizer.def: Describe new builtins. + +2014-06-16 Richard Biener <rguenther@suse.de> + + * tree-ssa-pre.c (eliminate_dom_walker::before_dom_children): + Make all defs available at the end. + (eliminate): If we remove a PHI node schedule cfg-cleanup. + +2014-06-18 Jakub Jelinek <jakub@redhat.com> + + PR plugins/45078 + * config.gcc (arm*-*-linux-*): Include vxworks-dummy.h in tm_file. + +2014-06-16 Richard Sandiford <rdsandiford@googlemail.com> + + PR bootstrap/61516 + * auto-inc-dec.c (merge_in_block): Fix location of insn_info + initialization. Replace remaining use of uid. + +2014-06-15 Jan Hubicka <hubicka@ucw.cz> + + * c-family/c-common.c (handle_tls_model_attribute): Use + set_decl_tls_model. + * c-family/c-common.c (handle_tls_model_attribute): Use + set_decl_tls_model. + * cgraph.h (struct varpool_node): Add tls_model. + * tree.c (decl_tls_model, set_decl_tls_model): New functions. + * tree.h (DECL_TLS_MODEL): Update. + (DECL_THREAD_LOCAL_P): Check that variable is static. + (decl_tls_model): Declare. + (set_decl_tls_model): Declare. + * tree-emutls.c (get_emutls_init_templ_addr): First build decl and then + set symbol prorperties. + (get_emutls_init_templ_addr): Cleanup. + (new_emutls_decl): Update. + * lto-cgraph.c (lto_output_varpool_node): Stream TLS model + (lto_input_varpool_node): Likewise. + * lto-streamer-out.c (hash_tree): Likewise. + * tree-streamer-in.c (unpack_ts_decl_with_vis_value_fields): Do + not stream DECL_TLS_MODEL. + * tree-profile.c (init_ic_make_global_vars): Use + set_decl_tls_model. + * tree-core.h (tree_decl_with_vis): Remove tls_model; + update comments. + +2014-06-15 Richard Sandiford <rdsandiford@googlemail.com> + + * df.h (DF_REF_REG_USE_P, DF_MWS_REG_USE_P): Remove null checks. + +2014-06-15 Richard Sandiford <rdsandiford@googlemail.com> + + * df.h (df_mw_hardreg, df_base_ref): Add a link pointer. + (df_insn_info): Turn defs, uses, eq_uses and mw_hardregs into linked + lists. + (df_scan_bb_info): Likewise artificial_defs and artificial_uses. + (DF_REF_NEXT_LOC, DF_MWS_NEXT): New macros. + (FOR_EACH_INSN_INFO_DEF, FOR_EACH_INSN_INFO_USE) + (FOR_EACH_INSN_INFO_EQ_USE, FOR_EACH_INSN_INFO_MW) + (FOR_EACH_ARTIFICIAL_USE, FOR_EACH_ARTIFICIAL_DEF) + (df_get_artificial_defs, df_get_artificial_uses) + (df_single_def, df_single_use): Update accordingly. + (df_refs_chain_dump): Take the first element in a linked list as + parameter, rather than a pointer to an array of pointers. + * df-core.c (df_refs_chain_dump, df_mws_dump): Likewise. + * df-problems.c (df_rd_bb_local_compute_process_def): Likewise. + (df_chain_create_bb_process_use): Likewise. + (df_md_bb_local_compute_process_def): Likewise. + * fwprop.c (process_defs, process_uses): Likewise. + (register_active_defs, update_uses): Likewise. + (forward_propagate_asm): Update for new df_ref linking. + * df-scan.c (df_scan_free_ref_vec, df_scan_free_mws_vec): Delete. + (df_null_ref_rec, df_null_mw_rec): Likewise. + (df_scan_free_internal): Don't free df_ref and df_mw_hardreg lists + explicitly. + (df_scan_free_bb_info): Remove check for null artificial_defs. + (df_install_ref_incremental): Adjust for new df_ref linking. + Use a single-element insertion rather than a full sort. + (df_ref_chain_delete_du_chain): Take the first element + in a linked list as parameter, rather than a pointer to an array of + pointers. + (df_ref_chain_delete, df_mw_hardreg_chain_delete): Likewise. + (df_add_refs_to_table, df_refs_verify, df_mws_verify): Likewise. + (df_insn_info_delete): Remove check for null defs and call to + df_scan_free_mws_vec. + (df_insn_rescan): Initialize df_ref and df_mw_hardreg lists to + null rather than df_null_*_rec. + (df_insn_rescan_debug_internal): Likewise, and update null + checks in the same way. Remove check for null defs. + (df_ref_change_reg_with_loc_1): Fix choice of list for defs. + Move a single element rather doing a full sort. + (df_mw_hardreg_chain_delete_eq_uses): Adjust for new df_mw_hardreg + linking. + (df_notes_rescan): Likewise. Use a merge rather than a full sort. + Initialize df_ref and df_mw_hardreg lists to null rather than + df_null_*_rec. + (df_ref_compare): Take df_refs as parameter, transferring the + old interface to... + (df_ref_ptr_compare): ...this new function. + (df_sort_and_compress_refs): Update accordingly. + (df_mw_compare): Take df_mw_hardregs as parameter, transferring the + old interface to... + (df_mw_ptr_compare): ...this new function. + (df_sort_and_compress_mws): Update accordingly. + (df_install_refs, df_install_mws): Return a linked list rather than + an array of pointers. + (df_refs_add_to_chains): Assert that old lists are empty rather + than freeing them. + (df_insn_refs_verify): Don't handle null defs speciailly. + * web.c (union_match_dups): Update for new df_ref linking. + +2014-06-15 Richard Sandiford <rdsandiford@googlemail.com> + + * df.h (df_ref_create, df_ref_remove): Delete. + * df-scan.c (df_ref_create, df_ref_compress_rec): Likewise. + (df_ref_remove): Likewise. + +2014-06-15 Richard Sandiford <rdsandiford@googlemail.com> + + * df.h (df_single_def, df_single_use): New functions. + * ira.c (find_moveable_pseudos): Use them. + +2014-06-15 Richard Sandiford <rdsandiford@googlemail.com> + + * df.h (FOR_EACH_INSN_INFO_MW): New macro. + * df-problems.c (df_note_bb_compute): Use it. + * regstat.c (regstat_bb_compute_ri): Likewise. + +2014-06-15 Richard Sandiford <rdsandiford@googlemail.com> + + * df.h (FOR_EACH_ARTIFICIAL_USE, FOR_EACH_ARTIFICIAL_DEF): New macros. + * cse.c (cse_extended_basic_block): Use them. + * dce.c (mark_artificial_use): Likewise. + * df-problems.c (df_rd_simulate_artificial_defs_at_top): Likewise. + (df_lr_bb_local_compute, df_live_bb_local_compute): Likewise. + (df_chain_remove_problem, df_chain_bb_dump): Likewise. + (df_word_lr_bb_local_compute, df_note_bb_compute): Likewise. + (df_simulate_initialize_backwards): Likewise. + (df_simulate_finalize_backwards): Likewise. + (df_simulate_initialize_forwards): Likewise. + (df_md_simulate_artificial_defs_at_top): Likewise. + * df-scan.c (df_reorganize_refs_by_reg_by_insn): Likewise. + * regrename.c (init_rename_info): Likewise. + * regstat.c (regstat_bb_compute_ri): Likewise. + (regstat_bb_compute_calls_crossed): Likewise. + +2014-06-15 Richard Sandiford <rdsandiford@googlemail.com> + + * df.h (DF_INSN_INFO_MWS, FOR_EACH_INSN_INFO_DEF): New macros. + (FOR_EACH_INSN_INFO_USE, FOR_EACH_INSN_INFO_EQ_USE): Likewise. + (FOR_EACH_INSN_DEF, FOR_EACH_INSN_USE, FOR_EACH_INSN_EQ_USE): Likewise. + * auto-inc-dec.c (find_inc, merge_in_block): Use them. + * combine.c (create_log_links): Likewise. + * compare-elim.c (find_flags_uses_in_insn): Likewise. + (try_eliminate_compare): Likewise. + * cprop.c (make_set_regs_unavailable, mark_oprs_set): Likewise. + * dce.c (deletable_insn_p, find_call_stack_args): Likewise. + (remove_reg_equal_equiv_notes_for_defs): Likewise. + (reset_unmarked_insns_debug_uses, mark_reg_dependencies): Likewise. + (word_dce_process_block, dce_process_block): Likewise. + * ddg.c (def_has_ccmode_p): Likewise. + * df-core.c (df_bb_regno_first_def_find): Likewise. + (df_bb_regno_last_def_find, df_find_def, df_find_use): Likewise. + * df-problems.c (df_rd_simulate_one_insn): Likewise. + (df_lr_bb_local_compute, df_live_bb_local_compute): Likewise. + (df_chain_remove_problem, df_chain_insn_top_dump): Likewise. + (df_chain_insn_bottom_dump, df_word_lr_bb_local_compute): Likewise. + (df_word_lr_simulate_defs, df_word_lr_simulate_uses): Likewise. + (df_remove_dead_eq_notes, df_note_bb_compute): Likewise. + (df_simulate_find_defs, df_simulate_find_uses): Likewise. + (df_simulate_find_noclobber_defs, df_simulate_defs): Likewise. + (df_simulate_uses, df_md_simulate_one_insn): Likewise. + * df-scan.c (df_reorganize_refs_by_reg_by_insn): Likewise. + * fwprop.c (local_ref_killed_between_p): Likewise. + (all_uses_available_at, free_load_extend): Likewise. + * gcse.c (update_bb_reg_pressure, calculate_bb_reg_pressure): Likewise. + * hw-doloop.c (scan_loop): Likewise. + * ifcvt.c (dead_or_predicable): Likewise. + * init-regs.c (initialize_uninitialized_regs): Likewise. + * ira-lives.c (mark_hard_reg_early_clobbers): Likewise. + (process_bb_node_lives): Likewise. + * ira.c (compute_regs_asm_clobbered, build_insn_chain): Likewise. + (find_moveable_pseudos): Likewise. + * loop-invariant.c (check_dependencies, record_uses): Likewise. + * recog.c (peep2_find_free_register): Likewise. + * ree.c (get_defs): Likewise. + * regstat.c (regstat_bb_compute_ri): Likewise. + (regstat_bb_compute_calls_crossed): Likewise. + * sched-deps.c (find_inc, find_mem): Likewise. + * sel-sched-ir.c (maybe_downgrade_id_to_use): Likewise. + (maybe_downgrade_id_to_use, setup_id_reg_sets): Likewise. + * shrink-wrap.c (requires_stack_frame_p): Likewise. + (prepare_shrink_wrap): Likewise. + * store-motion.c (compute_store_table, build_store_vectors): Likewise. + * web.c (union_defs, pass_web::execute): Likewise. + * config/i386/i386.c (increase_distance, insn_defines_reg): Likewise. + (insn_uses_reg_mem, ix86_ok_to_clobber_flags): Likewise. + +2014-06-13 Vladimir Makarov <vmakarov@redhat.com> + + * lra-assign.c (assign_by_spills): Add code to assign vector regs + to inheritance pseudos. + * config/i386/i386.c (ix86_spill_class): Add check on NO_REGS. + +2014-06-13 Peter Bergner <bergner@vnet.ibm.com> + + PR target/61415 + * config/rs6000/rs6000-builtin.def (BU_MISC_1): Delete. + (BU_MISC_2): Rename to ... + (BU_LDBL128_2): ... this. + * config/rs6000/rs6000.h (RS6000_BTM_LDBL128): New define. + (RS6000_BTM_COMMON): Add RS6000_BTM_LDBL128. + * config/rs6000/rs6000.c (rs6000_builtin_mask_calculate): Handle + RS6000_BTM_LDBL128. + (rs6000_invalid_builtin): Add long double 128-bit builtin support. + (rs6000_builtin_mask_names): Add RS6000_BTM_LDBL128. + * config/rs6000/rs6000.md (unpacktf_0): Remove define)expand. + (unpacktf_1): Likewise. + * doc/extend.texi (__builtin_longdouble_dw0): Remove documentation. + (__builtin_longdouble_dw1): Likewise. + * doc/sourcebuild.texi (longdouble128): Document. + +2014-06-13 Jeff Law <law@redhat.com> + + PR rtl-optimization/61094 + PR rtl-optimization/61446 + * ree.c (combine_reaching_defs): Get the mode for the copy from + the extension insn rather than the defining insn. + +2014-06-13 Dehao Chen <dehao@google.com> + + * dwarf2out.c (add_linkage_name): Emit more linkage name. + +2014-06-13 Thomas Schwinge <thomas@codesourcery.com> + + * doc/install.texi (--enable-linker-plugin-configure-flags) + (--enable-linker-plugin-flags): Document new flags. + +2014-06-13 Martin Jambor <mjambor@suse.cz> + + PR ipa/61186 + * ipa-devirt.c (possible_polymorphic_call_targets): Store NULL to + cache_token if returning early. + +2014-06-13 Nick Clifton <nickc@redhat.com> + + * config/rx/rx.h (JUMP_ALIGN): Return the log value if user + requested alignment is active. + (LABEL_ALIGN): Likewise. + (LOOP_ALIGN): Likewise. + +2014-06-13 Richard Biener <rguenther@suse.de> + + * tree-ssa-pre.c (eliminate_dom_walker::before_dom_children): + Rewrite to propagate the VN result into all uses where + possible and to remove stmts becoming dead because of that. + (eliminate): Generalize stmt removal handling, remove in + reverse dominator order to support proper debug stmt + generation. Update stmts before removing stmts. + * tree-ssa-propagate.c (propagate_tree_value): Remove bogus assert. + +2014-06-13 Thomas Preud'homme <thomas.preudhomme@arm.com> + + PR tree-optimization/61375 + * tree-ssa-math-opts.c (init_symbolic_number): Cancel optimization if + symbolic number cannot be represented in an uint64_t. + (find_bswap_or_nop_1): Likewise. + +2014-06-12 Jan Hubicka <hubicka@ucw.cz> + + * symtab.c (symtab_node::reset_section): New method. + * cgraph.c (cgraph_node_cannot_be_local_p_1): Accept non-local + for localization. + * cgraph.h (reset_section): Declare. + * ipa-inline-analysis.c (do_estimate_growth): Check for comdat groups; + do not consider comdat locals. + * cgraphclones.c (set_new_clone_decl_and_node_flags): Get section + for new symbol. + * ipa-visiblity.c (cgraph_externally_visible_p): Cleanup. + (update_visibility_by_resolution_info): Consider UNDEF; fix checking; + reset sections of symbols dragged out of the comdats. + (function_and_variable_visibility): Reset sections of + localized symbols. + +2014-06-12 Jan Hubicka <hubicka@ucw.cz> + + * tree-vect-data-refs.c (vect_can_force_dr_alignment_p): Reorg + to use symtab and decl_binds_to_current_def_p + * tree-vectorizer.c (increase_alignment): Increase alignment + of alias target, too. + +2014-06-12 Jakub Jelinek <jakub@redhat.com> + + PR middle-end/61486 + * gimplify.c (struct gimplify_omp_ctx): Add distribute field. + (gimplify_adjust_omp_clauses): Don't or in GOVD_LASTPRIVATE + if outer combined construct is distribute. + (gimplify_omp_for): For OMP_DISTRIBUTE set + gimplify_omp_ctxp->distribute. + * omp-low.c (scan_sharing_clauses) <case OMP_CLAUSE_SHARED>: For + GIMPLE_OMP_TEAMS, if decl isn't global in outer context, record + mapping into decl map. + +2014-06-12 Jason Merrill <jason@redhat.com> + + * common.opt (fabi-version): Change default to 0. + +2014-06-12 Jason Merrill <jason@redhat.com> + + * toplev.c (process_options): Reject -fabi-version=1. + +2014-06-12 Jeff Law <law@redhat.com> + + PR tree-optimization/61009 + * tree-ssa-threadedge.c (thread_through_normal_block): Correct return + value when we stop processing a block due to problematic PHIs. + +2014-06-12 Alan Lawrence <alan.lawrence@arm.com> + + * config/aarch64/arm_neon.h (vmlaq_n_f64, vmlsq_n_f64, vrsrtsq_f64, + vcge_p8, vcgeq_p8, vcgez_p8, vcgez_u8, vcgez_u16, vcgez_u32, vcgez_u64, + vcgezq_p8, vcgezq_u8, vcgezq_u16, vcgezq_u32, vcgezq_u64, vcgezd_u64, + vcgt_p8, vcgtq_p8, vcgtz_p8, vcgtz_u8, vcgtz_u16, vcgtz_u32, vcgtz_u64, + vcgtzq_p8, vcgtzq_u8, vcgtzq_u16, vcgtzq_u32, vcgtzq_u64, vcgtzd_u64, + vcle_p8, vcleq_p8, vclez_p8, vclez_u64, vclezq_p8, vclezd_u64, vclt_p8, + vcltq_p8, vcltz_p8, vcltzq_p8, vcltzd_u64): Remove functions as they + are not in the spec. + +2014-06-10 Alan Lawrence <alan.lawrence@arm.com> + + PR target/59843 + * config/aarch64/aarch64-modes.def: Add V1DFmode. + * config/aarch64/aarch64.c (aarch64_vector_mode_supported_p): + Support V1DFmode. + +2014-06-12 Eric Botcazou <ebotcazou@adacore.com> + + * tree-core.h (DECL_NONALIASED): Use proper spelling in comment. + +2014-06-12 Georg-Johann Lay <avr@gjlay.de> + + PR target/61443 + * config/avr/avr.md (push<mode>1): Avoid (subreg(mem)) when + loading from address spaces. + +2014-06-12 Martin Liska <mliska@suse.cz> + + PR ipa/61462 + * ipa-prop.c (ipa_make_edge_direct_to_target): Check that gimple call + statement is reachable. + +2014-06-11 Jan Hubicka <hubicka@ucw.cz> + + * symtab.c (section_hash): New hash. + (symtab_unregister_node): Clear section before freeing. + (hash_section_hash_entry): New haser. + (eq_sections): New function. + (symtab_node::set_section_for_node): New method. + (set_section_1): Update. + (symtab_node::set_section): Take string instead of tree as parameter. + (symtab_resolve_alias): Update. + * cgraph.h (section_hash_entry_d): New structure. + (section_hash_entry): New typedef. + (cgraph_node): Change comdat_group_ to x_comdat_group, + change section_ to x_section and turn into section_hash_entry; + update accestors; put set_section_for_node offline. + * tree.c (decl_section_name): Turn into string. + (set_decl_section_name): Change parameter to be string. + * tree.h (decl_section_name, set_decl_section_name): Update prototypes. + * sdbout.c (sdbout_one_type): Update. + * tree-vect-data-refs.c (vect_can_force_dr_alignment_p): Update. + * varasm.c (IN_NAMED_SECTION, get_named_section, resolve_unique_section, + hot_function_section, get_named_text_section, + USE_SELECT_SECTION_FOR_FUNCTIONS, default_function_rodata_section, + make_decl_rtl, default_unique_section): Update. + * config/c6x/c6x.c (c6x_in_small_data_p): Update. + (c6x_elf_unique_section): Update. + * config/nios2/nios2.c (nios2_in_small_data_p): Update. + * config/pa/pa.c (pa_function_section): Update. + * config/pa/pa.h (IN_NAMED_SECTION_P): Update. + * config/ia64/ia64.c (ia64_in_small_data_p): Update. + * config/arc/arc.c (arc_in_small_data_p): Update. + * config/arm/unknown-elf.h (IN_NAMED_SECTION_P): Update. + * config/mcore/mcore.c (mcore_unique_section): Update. + * config/mips/mips.c (mips16_build_function_stub): Update. + (mips16_build_call_stub): Update. + (mips_function_rodata_section): Update. + (mips_in_small_data_p): Update. + * config/score/score.c (score_in_small_data_p): Update. + * config/rx/rx.c (rx_in_small_data): Update. + * config/rs6000/rs6000.c (rs6000_elf_in_small_data_p): Update. + (rs6000_xcoff_asm_named_section): Update. + (rs6000_xcoff_unique_section): Update. + * config/frv/frv.c (frv_string_begins_with): Update. + (frv_in_small_data_p): Update. + * config/v850/v850.c (v850_encode_data_area): Update. + * config/bfin/bfin.c (DECL_SECTION_NAME): Update. + (bfin_handle_l1_data_attribute): Update. + (bfin_handle_l2_attribute): Update. + * config/mep/mep.c (mep_unique_section): Update. + * config/microblaze/microblaze.c (microblaze_elf_in_small_data_p): + Update. + * config/h8300/h8300.c (h8300_handle_eightbit_data_attribute): Update. + (h8300_handle_tiny_data_attribute): Update. + * config/m32r/m32r.c (m32r_in_small_data_p): Update. + (m32r_in_small_data_p): Update. + * config/alpha/alpha.c (alpha_in_small_data_p): Update. + * config/i386/i386.c (ix86_in_large_data_p): Update. + * config/i386/winnt.c (i386_pe_unique_section): Update. + * config/darwin.c (darwin_function_section): Update. + * config/lm32/lm32.c (lm32_in_small_data_p): Update. + * tree-emutls.c (get_emutls_init_templ_addr): Update. + (new_emutls_decl): Update. + * lto-cgraph.c (lto_output_node, input_node, input_varpool_node, + input_varpool_node): Update. + (ead_string_cst): Turn to ... + (read_string): ... this one. + * dwarf2out.c (secname_for_decl): Update. + * asan.c (asan_protect_global): Update. + +2014-06-11 DJ Delorie <dj@redhat.com> + + * config/rx/rx.h (FUNCTION_BOUNDARY): Adjust for RX100/200 4-byte + cache lines. + * config/rx/rx.c (rx_option_override): Likewise. + (rx_align_for_label): Likewise. + + * config/rx/rx.c (rx_max_skip_for_label): Don't skip anything if -Os. + +2014-06-11 Maciej W. Rozycki <macro@codesourcery.com> + + * config/mmix/mmix-protos.h (mmix_asm_output_source_line): Remove + prototype. + +2014-06-11 Richard Sandiford <rdsandiford@googlemail.com> + + * common.md: New file. + * doc/md.texi: Update description of generic, machine-independent + constraints. + * config/s390/constraints.md (e): Delete. + * Makefile.in (md_file): Include common.md. + * config/m32c/t-m32c (md_file): Likewise. + * genpreds.c (general_mem): New array. + (generic_constraint_letters): Remove constraints now defined by + common.md. + (add_constraint): Map TARGET_MEM_CONSTRAINT to general_mem. + Allow the first character to be '<' or '>' as well. + * genoutput.c (general_mem): New array. + (indep_constraints): Remove constraints now defined by common.md. + (note_constraint): Map TARGET_MEM_CONSTRAINT to general_mem. + Remove special handling of 'm'. + * ira-costs.c (record_reg_classes): Remove special handling of + constraints now defined by common.md. + * ira.c (ira_setup_alts, ira_get_dup_out_num): Likewise. + * ira-lives.c (single_reg_class): Likewise. + (ira_implicitly_set_insn_hard_regs): Likewise. + * lra-constraints.c (reg_class_from_constraints): Likewise. + (process_alt_operands, process_address, curr_insn_transform): Likewise. + * postreload.c (reload_cse_simplify_operands): Likewise. + * reload.c (push_secondary_reload, scratch_reload_class) + (find_reloads, alternative_allows_const_pool_ref): Likewise. + * reload1.c (maybe_fix_stack_asms): Likewise. + * targhooks.c (default_secondary_reload): Likewise. + * stmt.c (parse_output_constraint): Likewise. + * recog.c (preprocess_constraints): Likewise. + (constrain_operands, peep2_find_free_register): Likewise. + (asm_operand_ok): Likewise, but add a comment saying why 'o' + must be handled specially. + +2014-06-11 Richard Sandiford <rdsandiford@googlemail.com> + + * system.h (CONST_DOUBLE_OK_FOR_CONSTRAINT_P): Poison. + * genpreds.c (have_const_dbl_constraints): Delete. + (add_constraint): Don't set it. + (write_tm_preds_h): Don't call CONST_DOUBLE_OK_FOR_CONSTRAINT_P. + * ira-costs.c (record_reg_classes): Handle CONST_INT and CONST_DOUBLE + constraints using the lookup_constraint logic. + * ira-lives.c (single_reg_class): Likewise. + * ira.c (ira_setup_alts): Likewise. + * lra-constraints.c (process_alt_operands): Likewise. + * recog.c (asm_operand_ok, constrain_operands): Likewise. + * reload.c (find_reloads): Likewise. + +2014-06-11 Richard Sandiford <rdsandiford@googlemail.com> + + * genpreds.c (const_int_start, const_int_end): New variables. + (choose_enum_order): Output CONST_INT constraints before memory + constraints. + (write_tm_preds_h): Always define insn_const_int_ok_for_constraint. + Add CT_CONST_INT. + * ira-costs.c (record_reg_classes): Handle CT_CONST_INT. + * ira.c (ira_setup_alts): Likewise. + * lra-constraints.c (process_alt_operands): Likewise. + * recog.c (asm_operand_ok, preprocess_constraints): Likewise. + * reload.c (find_reloads): Likewise. + +2014-06-11 Richard Sandiford <rdsandiford@googlemail.com> + + * recog.h (operand_alternative): Remove offmem_ok, nonffmem_ok, + decmem_ok and incmem_ok. Reformat other bitfields for consistency. + * recog.c (preprocess_constraints): Update accordingly. + +2014-06-11 Richard Sandiford <rdsandiford@googlemail.com> + + * system.h (REG_CLASS_FROM_CONSTRAINT): Poison. + (REG_CLASS_FOR_CONSTRAINT, EXTRA_CONSTRAINT_STR): Likewise. + (EXTRA_MEMORY_CONSTRAINT, EXTRA_ADDRESS_CONSTRAINT): Likewise. + * genpreds.c (print_type_tree): New function. + (write_tm_preds_h): Remove REG_CLASS_FROM_CONSTRAINT, + REG_CLASS_FOR_CONSTRAINT, EXTRA_MEMORY_CONSTRAINT, + EXTRA_ADDRESS_CONSTRAINT and EXTRA_CONSTRAINT_STR. + Write out enum constraint_type and get_constraint_type. + * lra-constraints.c (satisfies_memory_constraint_p): Take a + constraint_num rather than a constraint string. + (satisfies_address_constraint_p): Likewise. + (reg_class_from_constraints): Avoid old constraint macros. + (process_alt_operands, process_address_1): Likewise. + (curr_insn_transform): Likewise. + * ira-costs.c (record_reg_classes): Likewise. + (record_operand_costs): Likewise. + * ira-lives.c (single_reg_class): Likewise. + (ira_implicitly_set_insn_hard_regs): Likewise. + * ira.c (ira_setup_alts, ira_get_dup_out_num): Likewise. + * postreload.c (reload_cse_simplify_operands): Likewise. + * recog.c (asm_operand_ok, preprocess_constraints): Likewise. + (constrain_operands, peep2_find_free_register): Likewise. + * reload.c (push_secondary_reload, scratch_reload_class): Likewise. + (find_reloads, alternative_allows_const_pool_ref): Likewise. + * reload1.c (maybe_fix_stack_asms): Likewise. + * stmt.c (parse_output_constraint, parse_input_constraint): Likewise. + * targhooks.c (default_secondary_reload): Likewise. + * config/m32c/m32c.c (m32c_matches_constraint_p): Avoid reference + to EXTRA_CONSTRAINT_STR. + * config/sparc/constraints.md (U): Likewise REG_CLASS_FROM_CONSTRAINT. + +2014-06-11 Richard Sandiford <rdsandiford@googlemail.com> + + * genpreds.c (write_constraint_satisfied_p_1): Replace with... + (write_constraint_satisfied_p_array): ...this new function. + (write_tm_preds_h): Replace write_constraint_satisfied_p_1 with + an array. + (write_insn_preds_c): Update accordingly. + +2014-06-11 Richard Sandiford <rdsandiford@googlemail.com> + + * genpreds.c (write_lookup_constraint): Rename to... + (write_lookup_constraint_1): ...this. + (write_lookup_constraint_array): New function. + (write_tm_preds_h): Define lookup_constraint as an inline function + that uses write_lookup_constraint_array where possible. + (write_insn_preds_c): Update for the changes above. + +2014-06-11 Richard Sandiford <rdsandiford@googlemail.com> + + * doc/md.texi (regclass_for_constraint): Rename to... + (reg_class_for_constraint): ...this. + * genpreds.c (num_constraints, enum_order, register_start) + (register_end, satisfied_start, memory_start, memory_end) + (address_start, address_end): New variables. + (add_constraint): Count the number of constraints. + (choose_enum_order): New function. + (write_enum_constraint_num): Iterate over enum_order. + (write_regclass_for_constraint): Rename to... + (write_reg_class_for_constraint_1): ...this and update output + accordingly. + (write_constraint_satisfied_p): Rename to... + (write_constraint_satisfied_p_1): ...this and update output + accordingly. Do nothing if all extra constraints are register + constraints. + (write_insn_extra_memory_constraint): Delete. + (write_insn_extra_address_constraint): Delete. + (write_range_function): New function. + (write_tm_preds_h): Define constraint_satisfied_p and + reg_class_for_constraint as inline functions that do a range check + before calling the out-of-line function. Use write_range_function + to implement insn_extra_{register,memory,address}_constraint, + the first of which is new. + (write_insn_preds_c): Update after above changes to write_* functions. + (main): Call choose_enum_order. + +2014-06-11 Thomas Preud'homme <thomas.preudhomme@arm.com> + + PR tree-optimization/61306 + * tree-ssa-math-opts.c (struct symbolic_number): Store type of + expression instead of its size. + (do_shift_rotate): Adapt to change in struct symbolic_number. Return + false to prevent optimization when the result is unpredictable due to + arithmetic right shift of signed type with highest byte is set. + (verify_symbolic_number_p): Adapt to change in struct symbolic_number. + (init_symbolic_number): Likewise. + (find_bswap_or_nop_1): Likewise. Return NULL to prevent optimization + when the result is unpredictable due to sign extension. + +2014-06-11 Terry Guo <terry.guo@arm.com> + + * config/arm/arm.md (*thumb1_adddi3): Move into new file thumb1.md. + (*thumb1_addsi3): Ditto. + (*thumb_subdi3): Ditto. + (thumb1_subsi3_insn): Ditto. + (*thumb_mulsi3): Ditto. + (*thumb_mulsi3_v6): Ditto. + (*thumb1_andsi3_insn): Ditto. + (thumb1_bicsi3): Ditto. + (*thumb1_iorsi3_insn): Ditto. + (*thumb1_xorsi3_insn): Ditto. + (*thumb1_ashlsi3): Ditto. + (*thumb1_ashrsi3): Ditto. + (*thumb1_lshrsi3): Ditto. + (*thumb1_rotrsi3): Ditto. + (*thumb1_negdi2): Ditto. + (*thumb1_negsi2): Ditto. + (*thumb1_abssi2): Ditto. + (*thumb1_neg_abssi2): Ditto. + (*thumb1_one_cmplsi2): Ditto. + (*thumb1_zero_extendhisi2): Ditto. + (*thumb1_zero_extendqisi2): Ditto. + (*thumb1_zero_extendqisi2_v6): Ditto. + (thumb1_extendhisi2): Ditto. + (thumb1_extendqisi2): Ditto. + (*thumb1_movdi_insn): Ditto. + (*thumb1_movsi_insn): Ditto. + (*thumb1_movhi_insn): Ditto. + (thumb_movhi_clobber): Ditto. + (*thumb1_movqi_insn): Ditto. + (*thumb1_movhf): Ditto. + (*thumb1_movsf_insn): Ditto. + (*thumb_movdf_insn): Ditto. + (movmem12b): Ditto. + (movmem8b): Ditto. + (cbranchqi4): Ditto. + (cbranchsi4_insn): Ditto. + (cbranchsi4_scratch): Ditto. + (*negated_cbranchsi4): Ditto. + (*tbit_cbranch): Ditto. + (*tlobits_cbranch): Ditto. + (*tstsi3_cbranch): Ditto. + (*cbranchne_decr1): Ditto. + (*addsi3_cbranch): Ditto. + (*addsi3_cbranch_scratch): Ditto. + (*thumb_cmpdi_zero): Ditto. + (cstoresi_eq0_thumb1): Ditto. + (cstoresi_ne0_thumb1): Ditto. + (*cstoresi_eq0_thumb1_insn): Ditto. + (*cstoresi_ne0_thumb1_insn): Ditto. + (cstoresi_nltu_thumb1): Ditto. + (cstoresi_ltu_thumb1): Ditto. + (thumb1_addsi3_addgeu): Ditto. + (*thumb_jump): Ditto. + (*call_reg_thumb1_v5): Ditto. + (*call_reg_thumb1): Ditto. + (*call_value_reg_thumb1_v5): Ditto. + (*call_value_reg_thumb1): Ditto. + (*call_insn): Ditto. + (*call_value_insn): Ditto. + (thumb1_casesi_internal_pic): Ditto. + (thumb1_casesi_dispatch): Ditto. + (*thumb1_indirect_jump): Ditto. + (prologue_thumb1_interwork): Ditto. + (*epilogue_insns): Ditto. + (consttable_1): Ditto. + (consttable_2): Ditto. + (tablejump): Ditto. + (*thumb1_tablejump): Ditto. + (thumb_eh_return): Ditto. + (define_peephole2): Two of them are thumb1 only and got moved into + new file thumb1.md. + (define_split): Six of them are thumb1 only and got moved into new + file thumb1.md. + * config/arm/thumb1.md: New file comprised of above thumb1 only + patterns. + +2014-06-11 Kyrylo Tkachov <kyrylo.tkachov@arm.com> + + * config.gcc (aarch64*-*-*): Add arm_acle.h to extra headers. + * Makefile.in (TEXI_GCC_FILES): Add aarch64-acle-intrinsics.texi to + dependencies. + * config/aarch64/aarch64-builtins.c (AARCH64_CRC32_BUILTINS): Define. + (aarch64_crc_builtin_datum): New struct. + (aarch64_crc_builtin_data): New. + (aarch64_init_crc32_builtins): New function. + (aarch64_init_builtins): Initialise CRC32 builtins when appropriate. + (aarch64_crc32_expand_builtin): New. + (aarch64_expand_builtin): Add CRC32 builtin expansion case. + * config/aarch64/aarch64.h (TARGET_CPU_CPP_BUILTINS): Define + __ARM_FEATURE_CRC32 when appropriate. + (TARGET_CRC32): Define. + * config/aarch64/aarch64.md (UNSPEC_CRC32B, UNSPEC_CRC32H, + UNSPEC_CRC32W, UNSPEC_CRC32X, UNSPEC_CRC32CB, UNSPEC_CRC32CH, + UNSPEC_CRC32CW, UNSPEC_CRC32CX): New unspec values. + (aarch64_<crc_variant>): New pattern. + * config/aarch64/arm_acle.h: New file. + * config/aarch64/iterators.md (CRC): New int iterator. + (crc_variant, crc_mode): New int attributes. + * doc/aarch64-acle-intrinsics.texi: New file. + * doc/extend.texi (aarch64): Document aarch64 ACLE intrinsics. + Include aarch64-acle-intrinsics.texi. + +2014-06-11 Evgeny Stupachenko <evstupac@gmail.com> + + * tree-vect-data-refs.c (vect_grouped_store_supported): New + check for stores group of length 3. + (vect_permute_store_chain): New permutations for stores group of + length 3. + * tree-vect-stmts.c (vect_model_store_cost): Change cost + of vec_perm_shuffle for the new permutations. + +2014-06-11 Jan Hubicka <hubicka@ucw.cz> + + * ipa-visibility.c (function_and_variable_visibility): Disable virtual + table rewriting temporarily on targets not supporting ONE_ONLY. + +2014-06-11 Richard Biener <rguenther@suse.de> + + PR middle-end/61437 + Revert + 2014-06-04 Richard Biener <rguenther@suse.de> + + * tree.h (may_be_aliased): Trust TREE_ADDRESSABLE from + TREE_PUBLIC and DECL_EXTERNAL decls. + +2014-06-10 Jan Hubicka <hubicka@ucw.cz> + + * varasm.c (set_implicit_section): New function. + (resolve_unique_section): Use it to set implicit section + for aliases, too. + (get_named_text_section): Use symtab_get_node (decl)->implicit_section + (default_function_section): Likewise. + (decl_binds_to_current_def_p): Constify argument. + * varasm.h (decl_binds_to_current_def_p): Update prototype. + * asan.c (asan_protect_global): Use + symtab_get_node (decl)->implicit_section. + * symtab.c (dump_symtab_base): Dump implicit sections. + (verify_symtab_base): Verify sanity of sectoins and comdats. + (symtab_resolve_alias): Alias share the section of its target. + (set_section_1): New function. + (symtab_node::set_section): Move here, recurse to aliases. + (verify_symtab): Check for duplicated symtab lists. + * tree-core.h (implicit_section_name_p): Remove. + * tree-vect-data-refs.c: Include varasm.h. + (vect_can_force_dr_alignment_p): Fix conditional on when + decl bints to current definition; use + symtab_get_node (decl)->implicit_section. + * cgraph.c (cgraph_make_node_local_1): Fix section set. + * cgraph.h (struct symtab_node): Add implicit_section. + (set_section): Rename to ... + (set_section_for_node): ... this one. + (set_section): Declare. + * tree.h (DECL_HAS_IMPLICIT_SECTION_NAME_P): Remove. + * lto-cgraph.c (lto_output_node, lto_output_varpool_node, + input_overwrite_node, input_varpool_node): Stream implicit_section. + * ipa.c (symtab_remove_unreachable_nodes): Do not check symtab before + removal; it will fail in LTO. + 2014-06-10 Kyrylo Tkachov <kyrylo.tkachov@arm.com> * config/aarch64/aarch64-simd.md (move_lo_quad_<mode>): @@ -88,8 +988,8 @@ 2014-06-10 Jan Hubicka <hubicka@ucw.cz> - * ipa-reference.c (is_proper_for_analysis): Exclude addressable and public - vars. + * ipa-reference.c (is_proper_for_analysis): Exclude addressable + and public vars. (intersect_static_var_sets): Remove. (propagate): Do not prune local statics. @@ -118,7 +1018,7 @@ PR middle-end/61141 * emit-rtl.c (reset_all_used_flags): In a sequence, check that XVECEXP (pat, 0, i) is an INSN before calling reset_insn_used_flags. - (verify_rtl_sharing): Likewise. + (verify_rtl_sharing): Likewise. 2014-06-09 Marc Glisse <marc.glisse@inria.fr> @@ -135,13 +1035,13 @@ PR target/61062 * config/arm/arm_neon.h (vtrn_s8, vtrn_s16, vtrn_u8, vtrn_u16, vtrn_p8, vtrn_p16, vtrn_s32, vtrn_f32, vtrn_u32, vtrnq_s8, vtrnq_s16, vtrnq_s32, - vtrnq_f32, vtrnq_u8, vtrnq_u16, vtrnq_u32, vtrnq_p8, vtrnq_p16, vzip_s8, - vzip_s16, vzip_u8, vzip_u16, vzip_p8, vzip_p16, vzip_s32, vzip_f32, - vzip_u32, vzipq_s8, vzipq_s16, vzipq_s32, vzipq_f32, vzipq_u8, - vzipq_u16, vzipq_u32, vzipq_p8, vzipq_p16, vuzp_s8, vuzp_s16, vuzp_s32, - vuzp_f32, vuzp_u8, vuzp_u16, vuzp_u32, vuzp_p8, vuzp_p16, vuzpq_s8, - vuzpq_s16, vuzpq_s32, vuzpq_f32, vuzpq_u8, vuzpq_u16, vuzpq_u32, - vuzpq_p8, vuzpq_p16): Correct mask for bigendian. + vtrnq_f32, vtrnq_u8, vtrnq_u16, vtrnq_u32, vtrnq_p8, vtrnq_p16, + vzip_s8, vzip_s16, vzip_u8, vzip_u16, vzip_p8, vzip_p16, vzip_s32, + vzip_f32, vzip_u32, vzipq_s8, vzipq_s16, vzipq_s32, vzipq_f32, + vzipq_u8, vzipq_u16, vzipq_u32, vzipq_p8, vzipq_p16, vuzp_s8, vuzp_s16, + vuzp_s32, vuzp_f32, vuzp_u8, vuzp_u16, vuzp_u32, vuzp_p8, vuzp_p16, + vuzpq_s8, vuzpq_s16, vuzpq_s32, vuzpq_f32, vuzpq_u8, vuzpq_u16, + vuzpq_u32, vuzpq_p8, vuzpq_p16): Correct mask for bigendian. 2014-06-09 Jan Hubicka <hubicka@ucw.cz> @@ -163,12 +1063,10 @@ * tree.c (decl_comdat_group, decl_comdat_group_id): Constify argument. (decl_section_name, set_decl_section_name): New accessors. (find_decls_types_r): Do not walk section name - * tree.h (DECL_SECTION_NAME): Implement using - decl_section_name. + * tree.h (DECL_SECTION_NAME): Implement using decl_section_name. (decl_comdat_group, decl_comdat_group_id): Constify. (decl_section_name, set_decl_section_name): Update. - * varpool.c (varpool_finalize_named_section_flags): Use - get_section. + * varpool.c (varpool_finalize_named_section_flags): Use get_section. * cgraph.c (cgraph_add_thunk): Reset node instead of rebuilding. (cgraph_make_node_local_1): Clear section and comdat group. * cgraph.h (set_comdat_group): Sanity check. @@ -176,8 +1074,7 @@ * ipa-comdats.c (ipa_comdats): Use get_section. * ipa.c (ipa_discover_readonly_nonaddressable_var): Likewise. * lto-streamer-out.c: Do not follow section names. - * c-family/c-common.c (handle_section_attribute): - Update. + * c-family/c-common.c (handle_section_attribute): Update. * lto-cgraph.c (lto_output_node): Output section. (lto_output_varpool_node): Likewise. (read_comdat_group): Rename to ... @@ -186,8 +1083,7 @@ (input_node, input_varpool_node): Input section names. * tree-emutls.c (get_emutls_init_templ_addr): Update. (new_emutls_decl): Update. - (secname_for_decl): Check section names only of static - vars. + (secname_for_decl): Check section names only of static vars. * config/mep/mep.c (mep_unique_section): Use set_decl_section_name. * config/i386/winnt.c (i386_pe_unique_section): Likewise. * config/i386/i386.c (x86_64_elf_unique_section): Likewise. @@ -196,7 +1092,7 @@ * config/mcore/mcore.c (mcore_unique_section): Likewise. * config/mips/mips.c (mips16_build_function_stub): Likewise. * config/v850/v850.c (v850_insert_attributes): Likewise. - * config/h8300/h8300.c: (h8300_handle_eightbit_data_attribute): + * config/h8300/h8300.c (h8300_handle_eightbit_data_attribute): Likewise. (h8300_handle_tiny_data_attribute): Likewise. * config/bfin/bfin.c (bfin_handle_l1_text_attribute): Likewise. @@ -209,8 +1105,8 @@ 2014-06-07 Jan Hubicka <hubicka@ucw.cz> - * varasm.c (use_blocks_for_decl_p): Check symbol table instead of alias - attribute. + * varasm.c (use_blocks_for_decl_p): Check symbol table + instead of alias attribute. (place_block_symbol): Recurse on aliases. 2014-06-07 Jan Hubicka <hubicka@ucw.cz> @@ -225,7 +1121,7 @@ 2014-06-07 Steven Bosscher <steven@gcc.gnu.org> - * gcse.c (can_assign_to_reg_without_clobbers_p): Do not let pointers + * gcse.c (can_assign_to_reg_without_clobbers_p): Do not let pointers from test_insn into GGC space escape via SET_SRC. 2014-06-07 Eric Botcazou <ebotcazou@adacore.com> @@ -661,7 +1557,7 @@ 2014-06-04 Matthew Fortune <matthew.fortune@imgtec.com> - * regcprop.c (copyprop_hardreg_forward_1): Account for + * regcprop.c (copyprop_hardreg_forward_1): Account for HARD_REGNO_CALL_PART_CLOBBERED. 2014-06-04 Richard Biener <rguenther@suse.de> @@ -8987,10 +9883,10 @@ PR tree-optimization/60577 * tree-core.h (struct tree_base): Document nothrow_flag use - in VAR_DECL_NONALIASED. - * tree.h (VAR_DECL_NONALIASED): New. + in DECL_NONALIASED. + * tree.h (DECL_NONALIASED): New. (may_be_aliased): Adjust. - * coverage.c (build_var): Set VAR_DECL_NONALIASED. + * coverage.c (build_var): Set DECL_NONALIASED. 2014-03-20 Eric Botcazou <ebotcazou@adacore.com> |