X-Git-Url: http://git.sourceforge.jp/view?p=pf3gnuchains%2Fgcc-fork.git;a=blobdiff_plain;f=gcc%2FChangeLog;h=90a411b8969cf08fe1c8a378ad3d1045f4f83663;hp=b81c9d69ee044a8c53878973c36378853e612541;hb=5ffca5d363321b3d47611a3088684a9aa6ff1112;hpb=218736b022f734565fbbcf9e8030de27bd9cf3ad diff --git a/gcc/ChangeLog b/gcc/ChangeLog index b81c9d69ee0..90a411b8969 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,10 +1,775 @@ +2014-05-07 Jakub Jelinek + + Backported from mainline + 2013-06-27 Jakub Jelinek + + PR target/57623 + * config/i386/i386.md (bmi2_bzhi_3): Swap AND arguments + to match RTL canonicalization. Swap predicates and + constraints of operand 1 and 2. + +2014-05-07 Richard Biener + + Backport from mainline + 2013-11-19 Richard Biener + + PR tree-optimization/59164 + * tree-vect-loop.c (vect_analyze_loop_operations): Adjust + check whether we can create an epilogue loop to reflect the + cases where we create one. + +2014-05-07 Richard Biener + + Backport from mainline + 2013-11-29 Richard Biener + + PR tree-optimization/59334 + * tree-ssa-dce.c (eliminate_unnecessary_stmts): Fix bug + in previous commit. + + 2013-11-28 Richard Biener + + PR tree-optimization/59330 + * tree-ssa-dce.c (eliminate_unnecessary_stmts): Simplify + and fix delayed marking of free calls not necessary. + + 2014-01-09 Richard Biener + + PR tree-optimization/59715 + * tree-cfg.h (split_critical_edges): Declare. + * tree-cfg.c (split_critical_edges): Export. + * tree-ssa-sink.c (execute_sink_code): Split critical edges. + +2014-05-07 Richard Biener + + PR tree-optimization/57864 + * tree-ssa-pre.c (phi_translate_1): Backport NAME case + simplification from mainline. Do not lookup the VN + value-number here. + +2014-05-07 Richard Biener + + Backport from mainline + 2013-08-29 Richard Biener + + PR tree-optimization/58246 + * tree-ssa-dce.c (mark_aliased_reaching_defs_necessary_1): Properly + handle the dominance check inside a basic-block. + +2014-05-06 Richard Biener + + Backport from mainline + 2013-05-27 Richard Biener + + PR tree-optimization/57417 + * tree-ssa-sccvn.c (set_ssa_val_to): Compare addresses using + get_addr_base_and_unit_offset. + +2014-04-25 Eric Botcazou + + PR target/60941 + * config/sparc/sparc.md (ashlsi3_extend): Delete. + +2014-04-23 Uros Bizjak + + Backport from mainline + 2014-04-21 Uros Bizjak + + PR target/60909 + * config/i386/i386.c (ix86_expand_builtin) + : Use temporary + register for target RTX. + +2014-04-07 Martin Jambor + + PR ipa/60640 + * ipa-cp.c (propagate_constants_accross_call): Do not propagate + accross thunks. + +2014-04-07 Dominique d'Humieres + + Backport from mainline + 2013-09-14 Iain Sandoe + + PR target/48094 + * config/darwin.c (darwin_objc2_section): Note if ObjC Metadata + is seen. + (darwin_objc1_section): Likewise. + (darwin_file_end): Emit Image Info section when required. + +2014-04-04 Richard Biener + + * tree-ssanames.c (make_ssa_name_fn): Fix assert. + +2014-04-01 Richard Biener + + * gimple.h (struct gimple_statement_base): Align subcode to + 16 bits. + +2014-04-01 Sebastian Huber + + * doc/invoke.texi (mapp-regs): Clarify. + +2014-03-23 Eric Botcazou + + PR rtl-optimization/60601 + * bb-reorder.c (fix_up_fall_thru_edges): Test EDGE_FALLTHRU everywhere. + +2014-03-20 Jakub Jelinek + + PR target/60568 + * config/i386/i386.c (x86_output_mi_thunk): Surround UNSPEC_GOT + into CONST, put pic register as first operand of PLUS. Use + gen_const_mem for both 32-bit and 64-bit PIC got loads. + +2014-03-19 Eric Botcazou + + * tree-dfa.c (get_ref_base_and_extent) : Remove space. + +2014-03-18 Kai Tietz + + PR rtl-optimization/56356 + * sdbout.c (sdbout_parms): Verify that parms' + incoming argument is valid. + (sdbout_reg_parms): Likewise. + +2014-03-18 Richard Biener + + Backport from mainline + 2013-11-05 Richard Biener + + PR middle-end/58941 + * tree-dfa.c (get_ref_base_and_extent): Merge common code + in MEM_REF and TARGET_MEM_REF handling. Make sure to + process trailing array detection before diving into the + view-converted object (and possibly apply some extra offset). + + 2012-05-07 Eric Botcazou + + * tree-dfa.c (get_ref_base_and_extent) : Do the offset + computation using the precision of the index type. + + 2012-05-31 Eric Botcazou + + * tree-dfa.c (get_ref_base_and_extent): Compute the offset using + double ints throughout. + +2014-03-18 Richard Biener + + Backport from mainline + 2013-08-27 Richard Biener + + PR tree-optimization/57521 + * tree-if-conv.c (if_convertible_bb_p): Verify that at least + one edge is non-critical. + (find_phi_replacement_condition): Make sure to use a non-critical + edge. Cleanup and remove old bug workarounds. + (bb_postdominates_preds): Remove. + (if_convertible_loop_p_1): Do not compute post-dominators. + (combine_blocks): Do not free post-dominators. + (main_tree_if_conversion): Likewise. + + 2013-09-03 Richard Biener + + PR middle-end/57656 + * fold-const.c (negate_expr_p): Fix division case. + (negate_expr): Likewise. + + 2013-11-19 Richard Biener + + PR tree-optimization/57517 + * tree-predcom.c (combinable_refs_p): Verify the combination + is always executed when the refs are. + +2014-03-17 Richard Biener + + Backport from mainline + 2013-05-21 Richard Biener + + PR tree-optimization/57303 + * tree-ssa-sink.c (statement_sink_location): Properly handle + self-assignments. + + 2013-12-02 Richard Biener + + PR tree-optimization/59139 + * tree-ssa-loop-niter.c (chain_of_csts_start): Properly match + code in get_val_for. + (get_val_for): Use gcc_checking_asserts. + + 2014-02-14 Richard Biener + + PR tree-optimization/60183 + * tree-ssa-phiprop.c (propagate_with_phi): Avoid speculating + loads. + (tree_ssa_phiprop): Calculate and free post-dominators. + +2014-03-14 Georg-Johann Lay + + Backport from 2014-03-14 trunk r208562. + + PR target/59396 + * config/avr/avr.c (avr_set_current_function): Pass function name + through default_strip_name_encoding before sanity checking instead + of skipping the first char of the assembler name. + +2014-02-24 John David Anglin + + * config/pa/pa.c (pa_output_move_double): Don't valididate when + adjusting offsetable addresses. + +2014-02-21 Uros Bizjak + + Backport from mainline + 2014-02-21 Jakub Jelinek + + * config/i386/i386.c (ix86_expand_vec_perm): Use V8SImode + mode for mask of V8SFmode permutation. + + Backport from 4.8 branch + 2014-02-20 Jakub Jelinek + + PR target/57896 + * config/i386/i386.c (expand_vec_perm_interleave2): Don't call + gen_reg_rtx if d->testing_p. + (expand_vec_perm_pshufb2, expand_vec_perm_even_odd_1, + expand_vec_perm_broadcast_1): Return early if d->testing_p and + we will certainly return true. + +2014-02-20 Terry Guo + + Backport from mainline + 2014-02-08 Terry Guo + + * doc/invoke.texi: Document ARM -march=armv7e-m. + +2014-02-19 H.J. Lu + + Backport from mainline + 2014-02-19 H.J. Lu + + PR target/60207 + * config/i386/i386.c (construct_container): Remove TFmode check + for X86_64_INTEGER_CLASS. + +2014-02-18 Kai Tietz + + Backport from mainline + PR target/60193 + * config/i386/i386.c (ix86_expand_prologue): Use + rax register as displacement for restoring %r10, %rax. + Additional fix wrong offset for restoring both-registers. + +2014-02-18 Eric Botcazou + + * ipa-prop.c (compute_complex_ancestor_jump_func): Replace overzealous + assertion with conditional return. + +2014-02-18 Jakub Jelinek + Uros Bizjak + + PR driver/60233 + * config/i386/driver-i386.c (host_detect_local_cpu): If + YMM state is not saved by the OS, also clear has_f16c. Move + CPUID 0x80000001 handling before YMM state saving checking. + +2014-02-13 Uros Bizjak + + Backport from mainline + 2014-02-13 Uros Bizjak + + * config/i386/sse.md (xop_vmfrcz2): Generate const0 in + operands[2], not operands[3]. + +2014-02-12 H.J. Lu + + Backport from mainline + 2014-02-12 H.J. Lu + Uros Bizjak + + PR target/60151 + * configure.ac (HAVE_AS_GOTOFF_IN_DATA): Pass --32 to GNU assembler. + +2014-02-05 James Greenhalgh + + * doc/invoke.texi: Fix thinko introduced by previous revision. + +2014-02-05 James Greenhalgh + + Backport from mainline. + 2014-02-05 James Greenhalgh + + PR target/59718 + * doc/invoke.texi (-march): Clarify documentation for ARM. + (-mtune): Likewise. + (-mcpu): Likewise. + +2014-02-04 Uros Bizjak + + Backport from mainline + 2014-02-02 Uros Bizjak + + PR target/60017 + * config/i386/i386.c (classify_argument): Fix handling of bit_offset + when calculating size of integer atomic types. + +2014-02-02 Uros Bizjak + + Backport from mainline + 2014-01-30 Jakub Jelinek + + * config/i386/f16cintrin.h (_cvtsh_ss): Avoid -Wnarrowing warning. + +2014-01-31 Richard Henderson + + PR middle-end/60004 + * tree-eh.c (lower_try_finally_switch): Delay lowering finally block + until after else_eh is processed. + +2014-01-29 Markus Trippelsdorf + + Backport from mainline + 2012-12-13 Jakub Jelinek + + PR gcov-profile/55650 + * coverage.c (coverage_obj_init): Return false if no functions + are being emitted. + +2014-01-25 Walter Lee + + Backport from mainline + 2014-01-25 Walter Lee + + * config/tilegx/sync.md (atomic_fetch_sub): Fix negation and + avoid clobbering a live register. + +2014-01-25 Walter Lee + + Backport from mainline + 2014-01-25 Walter Lee + + * config/tilegx/tilegx-c.c (tilegx_cpu_cpp_builtins): + Define __GCC_HAVE_SYNC_COMPARE_AND_SWAP_{1,2}. + * config/tilegx/tilepro-c.c (tilepro_cpu_cpp_builtins): + Define __GCC_HAVE_SYNC_COMPARE_AND_SWAP_{1,2,4,8}. + +2014-01-25 Walter Lee + + Backport from mainline + 2014-01-25 Walter Lee + + * config/tilegx/tilegx.c (tilegx_gen_bundles): Delete barrier + insns before bundling. + * config/tilegx/tilegx.md (tile_network_barrier): Update comment. + +2014-01-25 Walter Lee + + Backport from mainline + 2014-01-25 Walter Lee + + * config/tilegx/tilegx.c (tilegx_expand_builtin): Set + PREFETCH_SCHEDULE_BARRIER_P to true for prefetches. + * config/tilepro/tilepro.c (tilepro_expand_builtin): Ditto. + +2014-01-25 Walter Lee + + Backport from mainline + 2014-01-25 Walter Lee + + * config/tilepro/tilepro.md (ctzdi2): Use register_operand predicate. + (clzdi2): Ditto. + (ffsdi2): Ditto. + +2014-01-25 Walter Lee + + Backport from mainline + 2014-01-25 Walter Lee + + * config/tilegx/tilegx.c (tilegx_expand_to_rtl_hook): New. + (TARGET_EXPAND_TO_RTL_HOOK): Define. + +2014-01-22 Uros Bizjak + Jakub Jelinek + + PR target/59880 + * config/i386/i386.c (ix86_avoid_lea_for_addr): Return false + for SImode_address_operand operands. Return false + if operands[1] is a REG. + +2014-01-21 Andrey Belevantsev + + Backport from mainline + 2013-12-23 Andrey Belevantsev + + PR rtl-optimization/57422 + * sel-sched.c (mark_unavailable_hard_regs): Fix typo when calling + add_to_hard_reg_set. + +2014-01-19 John David Anglin + + * config/pa/pa.c (pa_attr_length_millicode_call): Correct length of + long non-pic millicode calls. + +2014-01-17 John David Anglin + + * config/pa/pa.c (pa_attr_length_indirect_call): Don't output a short + call to $$dyncall when TARGET_LONG_CALLS is true. + +2014-01-17 Charles Baylis + + Backport from mainline + 2013-12-19 Charles Baylis + + PR target/59142 + * config/arm/arm-ldmstm.ml: Use low_register_operand for Thumb + patterns. + * config/arm/ldmstm.md: Regenerate. + + 2013-12-19 Charles Baylis + + PR target/59142 + * config/arm/predicates.md (arm_hard_general_register_operand): + New predicate. + (arm_hard_register_operand): Remove. + * config/arm/arm-ldmstm.ml: Use arm_hard_general_register_operand + for all patterns. + * config/arm/ldmstm.md: Regenerate. + +2014-01-16 Jakub Jelinek + + PR target/59839 + * config/i386/i386.c (ix86_expand_builtin): If target doesn't + satisfy operand 0 predicate for gathers, use a new pseudo as + subtarget. + +2014-01-16 Richard Henderson + + PR debug/54694 + * reginfo.c (global_regs_decl): Globalize. + * rtl.h (global_regs_decl): Declare. + * ira.c (do_reload): Diagnose frame_pointer_needed and it + reserved via global_regs. + +2014-01-16 Marek Polacek + + Backport from mainline + 2014-01-16 Marek Polacek + + PR middle-end/59827 + * gimple-low.c (gimple_check_call_args): Don't use DECL_ARG_TYPE if + it is error_mark_node. + +2014-01-14 Uros Bizjak + + Revert: + 2014-01-08 Uros Bizjak + + * config/i386/i386.c (ix86_data_alignment): Calculate max_align + from prefetch_block tune setting. + +2014-01-10 Richard Earnshaw + + PR rtl-optimization/54300 + * regcprop.c (copyprop_hardreg_forward_1): Ensure any unused + outputs in a single-set are killed from the value chains. + +2014-01-10 Huacai Chen + + * config/mips/driver-native.c (host_detect_local_cpu): Handle new + kernel strings for Loongson-2E/2F/3A. + +2014-01-08 Uros Bizjak + + Backport from mainline + 2014-01-05 Uros Bizjak + + * config/i386/i386.c (ix86_data_alignment): Calculate max_align + from prefetch_block tune setting. + (nocona_cost): Correct size of prefetch block to 64. + +2013-12-28 Eric Botcazou + + * doc/invoke.texi (output file options): Add missing markers. + +2013-12-11 Kai Tietz + + PR target/56807 + * config/i386/i386.c (ix86_expand_prologue): plus_constant + takes no mode-argument. + +2013-12-10 Kai Tietz + + PR target/56807 + * config/i386/i386.c (ix86_expand_prologue): Address saved + registers stack-relative, not via frame-pointer. + +2013-12-03 Marek Polacek + + Backport from mainline + 2013-12-03 Marek Polacek + + PR c/59351 + * c-decl.c (build_compound_literal): Allow compound literals with + empty initial value. + +2013-12-01 Eric Botcazou + + * config/i386/winnt.c (i386_pe_asm_named_section): Be prepared for an + identifier node. + +2013-11-28 Uros Bizjak + + Backport from mainline + 2013-11-23 Uros Bizjak + + PR target/56788 + * config/i386/i386.c (bdesc_multi_arg) : + Declare as MULTI_ARG_1_SF instruction. + : Decleare as MULTI_ARG_1_DF instruction. + * config/i386/sse.md (*xop_vmfrcz2): Rename + from *xop_vmfrcz_. + * config/i386/xopintrin.h (_mm_frcz_ss): Use __builtin_ia32_movss + to merge scalar result with __A. + (_mm_frcz_sd): Use __builtin_ia32_movsd to merge scalar + result with __A. + +2013-11-19 Uros Bizjak + + Backport from mainline + 2013-11-18 Uros Bizjak + + * config/i386/i386.c (ix86_decompose_address): Use REG_P instead of + ix86_address_subreg_operand. Move subreg checks to + ix86_validate_address_register. Move address override check to + ix86_legitimate_address_p. + (ix86_validate_address_register): New function. + (ix86_legitimate_address_p): Call ix86_validate_address_register + to validate base and index registers. Add address override check + from ix86_decompose_address. + (ix86_decompose_address): Remove. + + Backport from mainline + 2013-11-17 Uros Bizjak + + PR target/59153 + * config/i386/i386.c (ix86_address_subreg_operand): Do not + reject non-integer subregs. + (ix86_decompose_address): Do not reject invalid CONST_INT RTXes. + Move check for invalid x32 constant addresses ... + (ix86_legitimate_address_p): ... here. + + Bacport from mainline + 2012-03-13 Uros Bizjak + + * config/i386/i386.c (ix86_decompose_address): Prevent %fs:(%reg) + addresses only when %reg is not in word mode. + +2013-11-10 Karlson2k + Kai Tietz + + Merged from trunk + PR plugins/52872 + * configure.ac: Adding for exported symbols check + and for rdynamic-check executable-extension. + * configure: Regenerated. + +2013-11-07 H.J. Lu + + PR target/59034 + * config/i386/i386.md (push peepholer/splitter): Use Pmode + with stack_pointer_rtx. + +2013-11-05 Uros Bizjak + + * config/i386/t-rtems (MULTILIB_MATCHES): Fix option typos. + +2013-10-26 Uros Bizjak + + Backport from mainline + 2013-10-22 Uros Bizjak + + PR target/58779 + * config/i386/i386.c (put_condition_code) : + Remove CCCmode handling. + : Return 'c' suffix for CCCmode. + : Return 'nc' suffix for CCCmode. + (ix86_cc_mode) : Do not generate overflow checks. + * config/i386/i386.md (*sub3_cconly_overflow): Remove. + (*sub3_cc_overflow): Ditto. + (*subsi3_zext_cc_overflow): Ditto. + +2013-10-26 Uros Bizjak + + Backport from mainline + 2013-10-19 Uros Bizjak + + PR target/58792 + * config/i386/i386.c (ix86_function_value_regno): Add DX_REG, + ST1_REG and XMM1_REG for 32bit and 64bit targets. Also add DI_REG + and SI_REG for 64bit SYSV ABI targets. + +2013-10-25 Richard Henderson + + PR rtl/58542 + * optabs.c (maybe_emit_atomic_exchange): Use create_input_operand + instead of create_convert_operand_to. + (maybe_emit_sync_lock_test_and_set): Likewise. + (expand_atomic_compare_and_swap): Likewise. + (maybe_emit_compare_and_swap_exchange_loop): Don't convert_modes. + +2013-10-25 Eric Botcazou + + PR rtl-optimization/58831 + * alias.c (init_alias_analysis): At the beginning of each iteration, + set the reg_seen[N] flag if static_reg_base_value[N] is non-null. + +2013-10-25 Eric Botcazou + + * recog.c (search_ofs): New static variable moved from... + (peep2_find_free_register): ...here. + (peephole2_optimize): Initialize it. + +2013-10-02 John David Anglin + + * config.gcc (hppa*64*-*-linux*): Don't add pa/t-linux to tmake_file. + +2013-09-23 Eric Botcazou + + * tree-ssa-ccp.c (insert_clobber_before_stack_restore): Recurse on copy + assignment statements. + +2013-09-20 John David Anglin + + * config/pa/pa.md: In "scc" insn patterns, change output template to + handle const0_rtx in reg_or_0_operand operands. + +2013-09-18 Daniel Morris + Paolo Carlini + + PR c++/58458 + * doc/implement-cxx.texi: Fix references to the C++ standards. + +2013-09-14 John David Anglin + + PR target/58382 + * config/pa/pa.c (pa_expand_prologue): Change mode in gen_rtx_POST_INC + calls to word_mode. + +2013-09-12 Terry Guo + + Backport from mainline + 2012-09-17 Richard Guenther + + PR lto/54598 + * tree-streamer-in.c (unpack_ts_real_cst_value_fields): Use ggc'ed + FIXED_VALUE_TYPE instead of struct fixed_value. + +2013-09-10 Richard Earnshaw + + PR target/58361 + * arm/vfp.md (combine_vcvt_f32_): Fix pattern to + support conditional execution. + (combine_vcvt_f64_): Likewise. + +2013-09-01 Uros Bizjak + + Backport from mainline + 2013-08-31 Uros Bizjak + + * config/alpha/alpha.c (alpha_emit_conditional_move): Update + "cmp" RTX before signed_comparison_operator check to account + for "code" changes. + +2013-09-01 John David Anglin + + * config/pa/pa.md: Allow "const 0" operand 1 in "scc" insns. + +2013-09-01 Iain Sandoe + + Backported from 4.8 + 2012-06-19 Steven Bosscher + + * doc/tm.texi.in (TARGET_OBJC_DECLARE_UNRESOLVED_CLASS_REFERENCE, + TARGET_OBJC_DECLARE_CLASS_DEFINITION): Add @hooks. + (ASM_DECLARE_CLASS_REFERENCE, ASM_DECLARE_UNRESOLVED_REFERENCE): + Remove. + * doc/tm.texi: Regenerate. + * config/darwin.h (ASM_OUTPUT_LABELREF): Remove special case for + .objc_class_name_*. + * config/darwin-c.c: Include target.h. + (darwin_objc_declare_unresolved_class_reference): New function. + (darwin_objc_declare_class_definition): New function. + (TARGET_OBJC_DECLARE_UNRESOLVED_CLASS_REFERENCE): Define. + (TARGET_OBJC_DECLARE_CLASS_DEFINITION): Define. + +2013-09-01 Iain Sandoe + + Backport from mainline: + 2013-07-22 Uros Bizjak + + * config/i386/i386.md (nonlocal_goto_receiver): Delete insn if + it is not needed after split. + + 2013-07-20 Iain Sandoe + + PR target/51784 + * config/i386/i386.c (output_set_got) [TARGET_MACHO]: Adjust to emit a + second label for nonlocal goto receivers. Don't output pic base labels + unless we're producing PIC; mark that action unreachable(). + (ix86_save_reg): If the function contains a nonlocal label, save the + PIC base reg. + * config/darwin-protos.h (machopic_should_output_picbase_label): New. + * gcc/config/darwin.c (emitted_pic_label_num): New GTY. + (update_pic_label_number_if_needed): New. + (machopic_output_function_base_name): Adjust for nonlocal receiver + case. + (machopic_should_output_picbase_label): New. + * config/i386/i386.md (enum unspecv): UNSPECV_NLGR: New. + (nonlocal_goto_receiver): New insn and split. + +2013-08-28 Uros Bizjak + + Backport from mainline + 2013-08-27 Christian Widmer + + PR target/57927 + * config/i386/driver-i386.c (host_detect_local_cpu): Add detection + of Ivy Bridge processors. + +2013-08-21 Richard Earnshaw + + PR target/56979 + * arm.c (aapcs_vfp_allocate): Decompose the argument if the + suggested mode for the assignment isn't compatible with the + registers required. + +2013-08-17 Uros Bizjak + + Backport from mainline + 2013-08-12 Perez Read + + PR target/58132 + * config/i386/i386.md (*movabs_1): Add PTR before + operand 0 for intel asm alternative. + (*movabs_2): Ditto for operand 1. + +2013-08-13 Marek Polacek + + Backport from 4.8: + 2013-0813 Marek Polacek + Jakub Jelinek + + PR tree-optimization/57980 + * tree-tailcall.c (process_assignment): Return false + when not dealing with integers or floats. + 2013-08-12 David Edelsohn Backport from mainline 2013-02-14 Steven Bosscher * collect2-aix.h: Define F_LOADONLY. - + 2013-08-02 Eric Botcazou * config/sparc/sparc.c (sparc_emit_membar_for_model) : Add