diff options
Diffstat (limited to 'gcc-4.7/gcc/ChangeLog')
-rw-r--r-- | gcc-4.7/gcc/ChangeLog | 5973 |
1 files changed, 0 insertions, 5973 deletions
diff --git a/gcc-4.7/gcc/ChangeLog b/gcc-4.7/gcc/ChangeLog deleted file mode 100644 index b84d28656..000000000 --- a/gcc-4.7/gcc/ChangeLog +++ /dev/null @@ -1,5973 +0,0 @@ -2012-09-20 Release Manager - - * GCC 4.7.2 released. - -2012-09-15 Andi Kleen <ak@linux.intel.com> - - Backport from mainline - 2012-09-07 Andi Kleen <ak@linux.intel.com> - - * gcc/lto-streamer.h (res_pair): Add. - (lto_file_decl_data): Replace resolutions with respairs. - Add max_index. - * gcc/lto/lto.c (lto_resolution_read): Remove max_index. Add rp. - Initialize respairs. - (lto_file_finalize): Set up resolutions vector lazily from respairs. - -2012-09-14 Walter Lee <walt@tilera.com> - - Backport from mainline. - 2012-09-14 Walter Lee <walt@tilera.com> - - * doc/invoke.texi (Option Summary): fix typesetting for -mcpu - option for TILEPro and TILE-Gx. - -2012-09-13 Uros Bizjak <ubizjak@gmail.com> - - * config/i386/i386.h (x86_prefetchw): New global variable. - (TARGET_PREFETCHW): New macro. - * config/i386/i386.c (PTA_PREFETCHW): Ditto. - (processor_alias_table): Add PTA_PREFETCHW to - bdver1, bdver2 and btver1. - (ix86_option_override_internal): Set x86_prefetchw for - PTA_PREFETCHW targets. - * config/i386/i386.md (prefetch): Expand to prefetchw - for TARGET_PREFETCHW. - (*prefetch_3dnow_<mode>): Also enable for TARGET_PREFETCHW. - - Backport from mainline - 2012-08-13 Uros Bizjak <ubizjak@gmail.com> - - * config/i386/i386.md (prefetch): Do not assert mode of operand 0. - (*prefetch_sse_<mode>): Do not set mode of address_operand predicate. - Rename to ... - (*prefetch_sse): ... this. - (*prefetch_3dnow_<mode>): Do not set mode of address_operand predicate. - Rename to ... - (*prefetch_3dnow): ... this. - -2012-09-13 Jakub Jelinek <jakub@redhat.com> - - PR c/54559 - * c-typeck.c (c_finish_return): Do convert to BOOLEAN_TYPE or - COMPLEX_TYPE with in_late_binary_op set temporarily to true. - -2012-09-12 Teresa Johnson <tejohnson@google.com> - - Backport from mainline. - 2012-09-12 Teresa Johnson <tejohnson@google.com> - - PR gcov-profile/54487 - * configure.ac (HOST_HAS_F_SETLKW): Set based on compile - test using F_SETLKW with fcntl. - * configure, config.in: Regenerate. - -2012-09-12 Uros Bizjak <ubizjak@gmail.com> - - Backport from mainline - 2012-09-12 Ganesh Gopalasubramanian <Ganesh.Gopalasubramanian@amd.com> - - * config/i386/i386.md : Comments on fma4 instruction selection - reflect requirement on register pressure based cost model. - - * config/i386/driver-i386.c (host_detect_local_cpu): fma4 - flag is set-reset as informed by the cpuid flag. - - * config/i386/i386.c (processor_alias_table): fma4 - flag is enabled for bdver2. - -2012-09-12 Christian Bruel <christian.bruel@st.com> - - * config/sh/newlib.h (NO_IMPLICIT_EXTERN_C): Define. - -2012-09-12 Jakub Jelinek <jakub@redhat.com> - - * config.gcc: Obsolete picochip-*. - -2012-09-11 Richard Guenther <rguenther@suse.de> - - PR debug/54534 - * cgraph.h (varpool_can_remove_if_no_refs): Restore dependence - on flag_toplevel_reorder. - -2012-09-10 Richard Henderson <rth@redhat.com> - - * config/alpha/predicates.md (small_symbolic_operand): Disallow - large offsets. - -2012-09-10 Georg-Johann Lay <avr@gjlay.de> - - Backport from 2012-09-10 mainline r191132. - - PR target/54536 - * config/avr/avr-mcus.def (at90usb1287): Set LIBRARY_NAME to "usb1287". - -2012-09-10 Markus Trippelsdorf <markus@trippelsdorf.de> - - PR middle-end/54515 - * tree-sra.c (disqualify_base_of_expr): Check for possible - NULL_TREE returned by get_base_address() - -2012-09-07 Richard Guenther <rguenther@suse.de> - - Backport from mainline - 2012-06-26 Jan Hubicka <jh@suse.cz> - - PR lto/53572 - * cgraph.h (varpool_can_remove_if_no_refs): Fix handling of - used symbols. - -2012-09-07 Richard Guenther <rguenther@suse.de> - - Backport from mainline - 2012-07-13 Richard Guenther <rguenther@suse.de> - - PR tree-optimization/53922 - * tree-vrp.c (value_inside_range): Change prototype to take - min/max instead of value-range. - (range_includes_zero_p): Likewise. Return the result from - value_inside_range. - (extract_range_from_binary_expr_1): Adjust to handle dont-know - return value from range_includes_zero_p. - (extract_range_from_unary_expr_1): Likewise. - (compare_range_with_value): Likewise. - (vrp_meet_1): Likewise. - -2012-09-07 Richard Guenther <rguenther@suse.de> - - PR middle-end/53667 - * tree-ssa-structalias.c (handle_rhs_call): Properly clobber - EAF_NOESCAPED arguments. Transitively close non-EAF_DIRECT - arguments separately. - -2012-09-07 Jakub Jelinek <jakub@redhat.com> - - Backported from mainline - 2012-09-06 Jakub Jelinek <jakub@redhat.com> - - PR rtl-optimization/54455 - * sel-sched-ir.c (maybe_tidy_empty_bb): Give up if previous fallthru - bb ends up with asm goto referencing bb's label. - -2012-09-07 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com> - - Backport from mainline. - 2012-08-29 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com> - Richard Earnshaw <richard.earnshaw@arm.com> - - PR target/54252 - * config/arm/arm.c (neon_dereference_pointer): Adjust nelems by - element size. Use elem_type from the formal parameter. New parameter - fcode. - (neon_expand_args): Adjust call to neon_dereference_pointer. - -2012-09-06 Uros Bizjak <ubizjak@gmail.com> - - * config/i386/sse.md (<sse4_1_avx2>_pblendvb): Use - reg_not_xmm0_operand_maybe_avx as operand 0 constraint. - -2012-09-06 Uros Bizjak <ubizjak@gmail.com> - - Backport from mainline - 2012-08-11 Uros Bizjak <ubizjak@gmail.com> - - * config/i386/i386.md (isa): Add fma and fma4. - (enabled): Handle fma and fma4. - * config/i386/sse.md (*fma_fmadd_<mode>): Merge *fma4_fmadd_<mode>. - (*fma_fmsub_<mode>): Merge *fma4_fmsub_<mode>. - (*fma_fnmadd_<mode>): Merge *fma4_fnmadd_<mode>. - (*fma_fnmsub_<mode>): Merge *fma4_fnmsub_<mode>. - (*fma_fmaddsub_<mode>): Merge *fma4_fmaddsub_<mode>. - (*fma_fmsubadd_<mode>): Merge *fma4_fmsubadd_<mode>. - - 2012-08-10 Uros Bizjak <ubizjak@gmail.com> - - * config/i386/sse.md (*fma_fmadd_<mode>, *fma_fmsub_<mode>, - *fma_fnmadd_<mode>, *fma_fnmsub_<mode>, *fma_fmaddsub_<mode>, - *fma_fmsubadd_<mode>): Move FMA3 insn patterns before FMA4 patterns. - -2012-09-06 Richard Guenther <rguenther@suse.de> - - PR tree-optimization/54498 - * tree-ssa-alias.h (get_continuation_for_phi): Add flag to - abort when reaching an already visited region. - * tree-ssa-alias.c (maybe_skip_until): Likewise. And do it. - (get_continuation_for_phi_1): Likewise. - (walk_non_aliased_vuses): When we translated the reference, - abort when we re-visit a region. - * tree-ssa-pre.c (translate_vuse_through_block): Adjust. - -2012-09-06 Andrew Pinski <apinski@cavium.com> - - PR tree-opt/54494 - * tree-inline.c (remap_gimple_op_r): Copy TREE_SIDE_EFFECTS also. - -2012-09-05 Jakub Jelinek <jakub@redhat.com> - - PR middle-end/54486 - * builtins.c (fold_builtin_strspn, fold_builtin_strcspn): Use - build_int_cst with size_type_node instead of size_int. - -2012-09-05 Georg-Johann Lay <avr@gjlay.de> - - Backport from 2012-09-05 mainline r190697. - - PR target/54461 - * config.gcc (tm_file,target=avr-*-*): Add avr/avrlibc.h if - configured --with-avrlibc. - (tm_defines,target=avr-*-*): Add WITH_AVRLIBC if configured - --with-avrlibc. - * config/avr/avrlibc.h: New file. - * config/avr/avr-c.c: Build-in define __WITH_AVRLIBC__ if - configured --with-avrlibc. - * doc/invoke.texi (AVR Built-in Macros): Document __WITH_AVRLIBC__ - -2012-09-05 Bin Cheng <bin.cheng@arm.com> - - Backport from 2012-09-04 mainline r190919 - - PR target/45070 - * config/arm/arm.c (thumb1_extra_regs_pushed): Handle return value - of size less than 4 bytes by using macro ARM_NUM_INTS. - (thumb1_unexpanded_epilogue): Use macro ARM_NUM_INTS. - -2012-09-04 Richard Henderson <rth@redhat.com> - - * alias.c (read_dependence): Return true for ALIAS_SET_MEMORY_BARRIER. - -2012-09-04 Georg-Johann Lay <avr@gjlay.de> - - Backport from 2012-09-04 mainline r190920 - - PR target/54476 - * config/avr/avr.c (avr_expand_delay_cycles): Mask operand with SImode. - -2012-09-04 Senthil Kumar Selvaraj <senthil_kumar.selvaraj@atmel.com> - - Backport from 2012-09-04 mainline r190914 - - PR target/54220 - * config/avr/avr.c (TARGET_ALLOCATE_STACK_SLOTS_FOR_ARGS): New - define to... - (avr_allocate_stack_slots_for_args): ...this new static function. - -2012-09-03 H.J. Lu <hongjiu.lu@intel.com> - - Backported from mainline - 2012-08-23 H.J. Lu <hongjiu.lu@intel.com> - - PR driver/54335 - * doc/invoke.texi: Add -da and remove -dm. - -2012-09-03 Jakub Jelinek <jakub@redhat.com> - - Backported from mainline - 2012-09-01 Jakub Jelinek <jakub@redhat.com> - - PR target/54436 - * config/i386/i386.md (*mov<mode>_insv_1_rex64, *movsi_insv_1): If - operands[1] is CONST_INT_P, convert it to QImode before printing. - - 2012-08-31 Jakub Jelinek <jakub@redhat.com> - - PR c/54428 - * c-convert.c (convert): Don't call fold_convert_loc if - TYPE_MAIN_VARIANT of a COMPLEX_TYPE is the same, unless e - is a COMPLEX_EXPR. Remove TYPE_MAIN_VARIANT check from - COMPLEX_TYPE -> COMPLEX_TYPE conversion. - - 2012-08-24 Jakub Jelinek <jakub@redhat.com> - - PR c/54363 - * gimplify.c (optimize_compound_literals_in_ctor): Only recurse - if init is a CONSTRUCTOR. - -2012-09-02 Eric Botcazou <ebotcazou@adacore.com> - - PR rtl-optimization/54369 - * config/mips/mips.c (mips_reorg): Invoke cleanup_barriers before - calling dbr_schedule. - * config/sparc/sparc.c (sparc_reorg): Likewise. - -2012-08-31 Kirill Yukhin <kirill.yukhin@intel.com> - - Backport from mainline - 2012-08-23 Yuri Rumyantsev <ysrumyan@gmail.com> - - * config/i386/i386.c (ia32_multipass_dfa_lookahead) : Add - case for Atom processor. - -2012-08-28 Uros Bizjak <ubizjak@gmail.com> - - Backport from mainline - 2012-08-27 Uros Bizjak <ubizjak@gmail.com> - - PR target/46254 - * config/i386/predicates.md (cmpxchg8b_pic_memory_operand): Return - true for TARGET_64BIT or !flag_pic. - * config/i386/sync.md (*atomic_compare_and_swap_doubledi_pic): Remove. - (atomic_compare_and_swap_double<mode>): Change operand 2 predicate - to cmpxchg8b_pic_memory_operand. Use DWIH mode iterator. - Add insn constraint. Conditionally emit xchg asm insns. - (atomic_compare_and_swap<mode>): Update calls. Check only - cmpxchg8b_pic_memory_operand in memory address fixup. - (DCASMODE): Remove. - (CASHMODE): Rename from DCASHMODE. - (doublemodesuffix): Update modes. - (regprefix): New mode attribute. - - (unspecv) <UNSPECV_CMPXCHG_{1,2,3,4}>: Remove. - <UNSPECV_CMPXCHG>: New constant. - (atomic_compare_and_swap<mode>_1): Rename from - atomic_compare_and_swap_single<mode>. Update calls and - unspec_volatile constants. - (atomic_compare_and_swap<mode>_doubleword): Rename from - atomic_compare_and_swap_double<mode>. Update calls and - unspec_volatile constants. - -2012-08-28 Walter Lee <walt@tilera.com> - - Backport from mainline - 2012-08-28 Walter Lee <walt@tilera.com> - - * confg/tilegx/tilegx.md: Fix code style. - (*zero_extendsidi_truncdisi): Fix typo. - * config/tilegx/tilegx.c: Fix code style. - (tilegx_function_profiler): Fix typo. - -2012-08-27 Walter Lee <walt@tilera.com> - - Backport from mainline - 2012-08-27 Walter Lee <walt@tilera.com> - - * doc/md.texi (TILE-Gx): Fix typo. - -2012-08-27 Walter Lee <walt@tilera.com> - - Backport from mainline - 2012-08-27 Walter Lee <walt@tilera.com> - - * config/tilegx/tilegx.c (tilegx_function_profiler): Fix typo. - * config/tilepro/tilepro.c (tilepro_function_profiler): Ditto. - -2012-08-27 Walter Lee <walt@tilera.com> - - Backport from mainline - 2012-08-27 Walter Lee <walt@tilera.com> - - * config/tilegx/tilegx.md (*bfins): Rename to insn_bfins. - (insn_bfins): Delete. - -2012-08-27 Walter Lee <walt@tilera.com> - - Backport from mainline - 2012-08-27 Walter Lee <walt@tilera.com> - - * config/tilegx/sync.md (atomic_compare_and_swap_bare<mode>, - atomic_exchange_bare<mode>, - atomic_fetch_<fetchop_name>_bare<mode>): Set type to X1_remote. - * config/tilegx/tilegx-generic.md (X1_remote): New insn_reservation. - * config/tilegx/tilegx.md (type): Add X1_remove. - (insn_cmpexch<four_if_si>, insn_exch<four_if_si>, - insn_fetchadd<four_if_si>, insn_fetchaddgez<four_if_si>, - insn_fetchand<four_if_si>, insn_fetchor<four_if_si>): Set type to - X1_remote. - -2012-08-25 Eric Botcazou <ebotcazou@adacore.com> - - PR rtl-optimization/54088 - * jump.c (delete_related_insns): Robustify latest change. - -2012-08-21 Richard Guenther <rguenther@suse.de> - - Backport from mainline - 2012-08-16 Richard Guenther <rguenther@suse.de> - - PR middle-end/54146 - * tree-ssa-loop-niter.c (find_loop_niter_by_eval): Free the - exit vector. - * ipa-pure-const.c (analyze_function): Use FOR_EACH_LOOP_BREAK. - * cfgloop.h (FOR_EACH_LOOP_BREAK): Fix. - * tree-ssa-structalias.c (handle_lhs_call): Properly free rhsc. - * tree-ssa-loop-im.c (analyze_memory_references): Adjust. - (tree_ssa_lim_finalize): Free all mem_refs. - * tree-ssa-sccvn.c (extract_and_process_scc_for_name): Free - scc when bailing out. - * modulo-sched.c (sms_schedule): Use FOR_EACH_LOOP_BREAK. - * ira-build.c (loop_with_complex_edge_p): Free loop exit vector. - * graphite-sese-to-poly.c (scop_ivs_can_be_represented): Use - FOR_EACH_LOOP_BREAK. - - 2012-08-17 Richard Guenther <rguenther@suse.de> - - * tree-sra.c (modify_function): Free redirect_callers vector. - * ipa-split.c (split_function): Free args_to_pass vector. - * tree-vect-stmts.c (vectorizable_operation): Do not pre-allocate - vec_oprnds. - (new_stmt_vec_info): Do not pre-allocate STMT_VINFO_SAME_ALIGN_REFS. - * tree-vect-slp.c (vect_free_slp_instance): Free the instance. - (vect_analyze_slp_instance): Free everything. - (destroy_bb_vec_info): Free the SLP instances. - - 2012-08-17 Richard Guenther <rguenther@suse.de> - - * params.def (integer-share-limit): Decrease from 256 to 251, - add rationale. - - 2012-08-21 Richard Guenther <rguenther@suse.de> - - * tree-ssa-loop-im.c (tree_ssa_lim_finalize): Properly free - the affine expansion cache. - -2012-08-20 Patrick Marlier <patrick.marlier@gmail.com> - - Backported from trunk - 2012-08-20 Patrick Marlier <patrick.marlier@gmail.com> - - PR middle-end/53992 - * omp-low.c (lower_omp_1): Handle GIMPLE_TRANSACTION. - -2012-08-20 Ramana Radhakrishnan <ramana.radhakrishnan@linaro.org> - - Backport from mainline. - 2012-08-15 Ramana Radhakrishnan <ramana.radhakrishnan@linaro.org> - - PR target/54212 - * config/arm/neon.md (vec_set<mode>_internal VD,VQ): Do not - mark as predicable. Adjust asm template. - (vec_setv2di_internal): Likewise. - (vec_extract<mode> VD, VQ): Likewise. - (vec_extractv2di): Likewise. - (neon_vget_lane<mode>_sext_internal VD, VQ): Likewise. - (neon_vset_lane<mode>_sext_internal VD, VQ): Likewise. - (neon_vdup_n<mode> VX, V32): Likewise. - (neon_vdup_nv2di): Likewise. - -2012-08-17 Walter Lee <walt@tilera.com> - - Backport from mainline - 2012-08-17 Walter Lee <walt@tilera.com> - - * config/tilegx/feedback.h (FEEDBACK_ENTER_EXPLICIT): Define. - (FEEDBACK_ENTER): Define. - (FEEDBACK_REENTER): Define. - (FEEDBACK_ENTRY): Define. - * config/tilepro/feedback.h: (FEEDBACK_ENTER_EXPLICIT): Define. - (FEEDBACK_ENTER): Define. - (FEEDBACK_REENTER): Define. - (FEEDBACK_ENTRY): Define. - -2012-08-16 Walter Lee <walt@tilera.com> - - Backport from mainline - 2012-08-16 Walter Lee <walt@tilera.com> - - * config.gcc (tilegx-*-linux*): Add feedback.h. - (tilepro-*-linux*): Likewise. - * config/tilegx/feedback.h: New file. - * config/tilepro/feedback.h: New file. - -2012-08-08 Pavel Chupin <pavel.v.chupin@intel.com> - - Backport from mainline r189840 and r187586: - 2012-07-25 Sergey Melnikov <sergey.melnikov@intel.com> - - * config/i386/i386.md (stack_protect_set): Disable the pattern - for Android since Android libc (bionic) does not provide random - value for stack protection guard at gs:0x14. Guard value - will be provided from external symbol (default implementation). - (stack_protect_set_<mode>): Likewise. - (stack_protect_test): Likewise. - (stack_protect_test_<mode>): Likewise. - * gcc/defaults.h: Define macro TARGET_HAS_BIONIC to 0 - target does - not have Bionic by default - * config/linux.h: Redefine macro TARGET_HAS_BIONIC to (OPTION_BIONIC) - Macro OPTION_BIONIC is defined in this file and provides Bionic - accessibility status - - 2012-05-16 Igor Zamyatin <igor.zamyatin@intel.com> - - * configure.ac: Stack protector enabling for Android targets. - * configure: Regenerate. - -2012-08-13 Jakub Jelinek <jakub@redhat.com> - - Backported from trunk - 2012-07-19 Jakub Jelinek <jakub@redhat.com> - - PR rtl-optimization/53942 - * function.c (assign_parm_setup_reg): Avoid zero/sign extension - directly from likely spilled non-fixed hard registers, move them - to pseudo first. - -2012-08-11 Uros Bizjak <ubizjak@gmail.com> - - * config/i386/sse.md (xop_phaddbq): Fix vec_select selectors. - (xop_phaddubq): Ditto. - -2012-08-10 Ulrich Weigand <ulrich.weigand@linaro.org> - - Backport from mainline - 2012-07-30 Ulrich Weigand <ulrich.weigand@linaro.org> - Richard Earnshaw <rearnsha@arm.com> - - * target.def (vector_alignment): New target hook. - * doc/tm.texi.in (TARGET_VECTOR_ALIGNMENT): Document new hook. - * doc/tm.texi: Regenerate. - * targhooks.c (default_vector_alignment): New function. - * targhooks.h (default_vector_alignment): Add prototype. - * stor-layout.c (layout_type): Use targetm.vector_alignment. - * config/arm/arm.c (arm_vector_alignment): New function. - (TARGET_VECTOR_ALIGNMENT): Define. - - * tree-vect-data-refs.c (vect_update_misalignment_for_peel): Use - vector type alignment instead of size. - * tree-vect-loop-manip.c (vect_do_peeling_for_loop_bound): Use - element type size directly instead of computing it from alignment. - Fix variable naming and comment. - -2012-08-09 Uros Bizjak <ubizjak@gmail.com> - - Backport from mainline - 2012-08-09 Uros Bizjak <ubizjak@gmail.com> - - * config/alpha/alpha.c (alpha_pad_noreturn): Rename to ... - (alpha_pad_function_end): ... this. Also insert NOP between - sibling call and GP load. - (alpha_reorg): Update call to alpha_pad_function_end. Expand comment. - -2012-08-09 H.J. Lu <hongjiu.lu@intel.com> - - Backport from mainline - 2012-08-08 Richard Sandiford <rdsandiford@googlemail.com> - H.J. Lu <hongjiu.lu@intel.com> - - PR rtl-optimization/54157 - * combine.c (gen_lowpart_for_combine): Don't return identity - for CONST or symbolic reference. - -2012-08-06 Uros Bizjak <ubizjak@gmail.com> - - Backport from mainline - 2012-07-23 Uros Bizjak <ubizjak@gmail.com> - - * config/i386/i386-protos.h (ix86_lea_outperforms): Remove prototype. - * config/i386/i386.c (ix86_lea_outperforms): Make static. Make - split_cost argument signed. - (ix86_use_lea_for_mov): Use INVALID_REGNUM instead of -1. - (ix86_avoid_lea_for_addr): Ditto. - - 2012-07-27 Uros Bizjak <ubizjak@gmail.com> - - * config/i386/i386.c (ix86_avoid_lea_for_addr): Return false if - the address has less than two components. - -2012-08-02 Steve Ellcey <sellcey@mips.com> - - Backport from mainline - 2012-07-19 Steve Ellcey <sellcey@mips.com> - - * config/mips/mips.c (mips_set_mips16_mode): Clear SYNCI_MASK in - MIPS16 mode. - -2012-08-02 Uros Bizjak <ubizjak@gmail.com> - - Backport from mainline - 2012-07-24 Uros Bizjak <ubizjak@gmail.com> - - PR target/53961 - * config/i386/i386.c (ix86_legitimate_address_p): Move check for - negative constant address for TARGET_X32 ... - (ix86_decompose_address): ... here. Reject constant addresses - that don't satisfy x86_64_immediate_operand predicate. - - 2012-07-23 Uros Bizjak <ubizjak@gmail.com> - - PR target/53961 - * config/i386/i386.md (*lea): Add asserts to detect invalid addresses. - * config/i386/i386.c (ix86_print_operand_address): Ditto. - (ix86_decompose_address): Allow (zero_extend:DI (subreg:SI (...))) - addresses. Prevent zero extensions of CONST_INT operands. - - 2012-07-22 Uros Bizjak <ubizjak@gmail.com> - - PR target/53961 - * config/i386/i386.md (*lea): New insn pattern. - (*lea_1): Remove. - (*lea<mode>_2): Ditto. - (*lea_{3,4,5,6}_zext): Ditto. - * config/i386/predicates.md (lea_address_operand): Do not reject - zero-extended address operands. - * config/i386/constraints.md (j): Remove address constraint. - * config/i386/i386.c (ix86_decompose_address): Allow SImode subreg - of an address. - (ix86_print_operand_address): Handle SImode subreg of an address. - (ix86_avoid_lea_for_addr): Reject zero-extended addresses for now. - -2012-08-01 Uros Bizjak <ubizjak@gmail.com> - - Backport from mainline - 2012-03-09 Uros Bizjak <ubizjak@gmail.com> - - PR target/52530 - * config/i386/i386.c (ix86_print_operand): Handle 'E' operand modifier. - (ix86_print_operand_address): Handle UNSPEC_LEA_ADDR. Do not fallback - to set code to 'q'. - * config/i386/i386.md (UNSPEC_LEA_ADDR): New unspec. - (*movdi_internal_rex64): Use %E operand modifier for lea. - (*movsi_internal): Ditto. - (*lea_1): Ditto. - (*lea<mode>_2): Ditto. - (*lea_{3,4,5,6}_zext): Ditto. - (*tls_global_dynamic_32_gnu): Ditto. - (*tls_global_dynamic_64): Ditto. - (*tls_dynamic_gnu2_lea_32): Ditto. - (*tls_dynamic_gnu2_lea_64): Ditto. - (pro_epilogue_adjust_stack_<mode>_add): Ditto. - -2012-08-01 Uros Bizjak <ubizjak@gmail.com> - - Backport from mainline - 2012-08-01 Uros Bizjak <ubizjak@gmail.com> - - * config/i386/i386.c (ix86_address_subreg_operand): Reject - stack pointer. - (ix86_print_operand_address): Assert that parts.base and parts.index - are non-NULL after call to simplify_subreg. - -2012-07-22 Oleg Endo <olegendo@gcc.gnu.org> - - PR target/33135 - * config/sh/sh.opt (mieee): Use Var instead of Mask. Correct - description. - * config/sh/sh.c (sh_option_override): Do not change - flag_finite_math_only. Set TARGET_IEEE to complement of - flag_finite_math_only. - * doc/invoke.texi (SH options): Add mno-ieee. Correct - description of mieee and mno-ieee behavior. - -2012-07-20 Kirill Yukhin <kirill.yukhin@intel.com> - - PR target/53877 - * config/i386/lzcntintrin.h (_lzcnt_u32): New. - (_lzcnt_u64): Ditto. - -2012-07-20 Andrey Belevantsev <abel@ispras.ru> - - Backport from mainline - 2012-03-06 Andrey Belevantsev <abel@ispras.ru> - - PR rtl-optimization/52250 - * sel-sched-ir.c (maybe_tidy_empty_bb): Try harder to find a bb - to put note list into. Unconditionally call move_bb_info. - (move_bb_info): Do not assert the blocks being in the same region, - just drop the note list if they are not. - -2012-07-19 Eric Botcazou <ebotcazou@adacore.com> - - * config/sparc/sparc.md (adddi3_insn_sp32): Add earlyclobber. - -2012-07-19 Eric Botcazou <ebotcazou@adacore.com> - - * tree-ssa-forwprop.c (combine_conversions): Punt if the RHS of the - defining statement is a SSA name that occurs in abnormal PHIs. - -2012-07-19 Eric Botcazou <ebotcazou@adacore.com> - - * gimple-fold.c (canonicalize_constructor_val): Strip only useless type - conversions. - -2012-07-19 Richard Guenther <rguenther@suse.de> - Eric Botcazou <ebotcazou@adacore.com> - - * tree-ssa-ccp.c (valid_lattice_transition): Clarify comment - about transition from invariant to known bits. - (likely_value): Addresses with UNDEFINED components are UNDEFINED. - -2012-07-19 Jakub Jelinek <jakub@redhat.com> - - PR middle-end/54017 - * tree-cfgcleanup.c (cleanup_omp_return): Remove. - (cleanup_tree_cfg_bb): Don't call it. - * omp-low.c (expand_omp_sections): Fix up the !exit_reachable case - handling. - -2012-07-19 Christian Bruel <christian.bruel@st.com> - - PR target/54029 - * config/sh/sh.c (gen_far_branch): Set JUMP_LABEL for return jumps. - -2012-07-18 Ralf Corsépius <ralf.corsepius@rtems.org> - - * config.gcc (v850-*-rtems*): New target. - * config/v850/rtems.h: New. - * config/v850/t-rtems: New. - -2012-07-18 Nick Clifton <nickc@redhat.com> - - * doc/invoke.texi (ARM Options): Document -munaligned-access. - -2012-07-15 Uros Bizjak <ubizjak@gmail.com> - - PR target/53961 - - Backport from mainline - 2012-04-25 Jakub Jelinek <jakub@redhat.com> - - PR target/53110 - * config/i386/i386.md (and<mode>3): For andq $0xffffffff, reg - instead expand it as zero extension. - -2012-07-14 Uros Bizjak <ubizjak@gmail.com> - - * config/i386/i386.md (QImode and HImode cmove splitters): Merge - QImode and HImode splitters. Use ix86_comparison_operator. - Explicitly match FLAGS_REG. - (DFmode cmove splitter): Explicitly match FLAGS_REG. - -2012-07-13 Richard Sandiford <rdsandiford@googlemail.com> - Steven Bosscher <steven@gcc.gnu.org> - Bernd Schmidt <bernds@codesourcery.com> - - PR rtl-optimization/53908 - * df-problems.c (can_move_insns_across): When doing - memory-reference book-keeping, handle call insns. - -2012-07-10 Uros Bizjak <ubizjak@gmail.com> - - Backport from mainline - 2012-07-03 Uros Bizjak <ubizjak@gmail.com> - - PR target/53811 - * config/i386/i386.c (x86_output_mi_thunk): Check if fnaddr satisfies - sibcall_insn_operand. Move it to a temporary register if not. - - 2012-07-06 Uros Bizjak <ubizjak@gmail.com> - - PR target/53853 - * config/i386/i386.c (x86_output_mi_thunk): For CM_LARGE_PIC model, - emit PIC sequence for fnaddr symbol reference in advance. - -2012-07-09 Jason Merrill <jason@redhat.com> - - PR c++/53882 - * tree.c (type_contains_placeholder_1): Handle NULLPTR_TYPE. - (type_hash_eq): Likewise. - - PR c++/53826 - * tree.c (build_zero_cst): Handle NULLPTR_TYPE. - -2012-07-07 Ulrich Weigand <ulrich.weigand@linaro.org> - - * combine.c (force_to_mode) [LSHIFTRT]: Avoid undefined behaviour - due to negative shift amount. - -2012-07-06 Kai Tietz <ktietz@redhat.com> - - Backport from mainline. - PR bootstrap/52947 - * config/i386/mingw32.h (NATIVE_SYSTEM_HEADER_DIR): Define it always - as "/mingw/include". - -2012-07-06 Nick Clifton <nickc@redhat.com> - - * config/mn10300/mn10300.c (mn10300_encode_section_info): Call - default_encode_section_info. - -2012-07-06 Richard Guenther <rguenther@suse.de> - - Backport from mainline - 2012-03-30 Richard Guenther <rguenther@suse.de> - - PR middle-end/52786 - * double-int.c (rshift_double): Remove not needed cast. - - 2012-03-28 Richard Guenther <rguenther@suse.de> - - PR middle-end/50708 - * double-int.h (rshift_double): Remove. - * double-int.c (lshift_double): Use absu_hwi to make count - positive. - (rshift_double): Make static, take unsigned count argument, - remove handling of negative count argument. - (double_int_rshift): Dispatch to lshift_double. - -2012-07-06 Richard Guenther <rguenther@suse.de> - - Backport from mainline - 2012-06-18 Richard Guenther <rguenther@suse.de> - - PR tree-optimization/53693 - * tree-vect-patterns.c (vect_operation_fits_smaller_type): - Reject operands with more than one use. - -2012-07-06 Richard Guenther <rguenther@suse.de> - - Backport from mainline - 2012-04-11 Richard Guenther <rguenther@suse.de> - - PR middle-end/52621 - * tree-chrec.c (evolution_function_is_invariant_rec_p): Properly - consider loop nesting. - (evolution_function_is_univariate_p): Properly check the remainder - for chrecs. - -2012-07-05 Pat Haugen <pthaugen@us.ibm.com> - - Backport from mainline - 2012-05-24 Pat Haugen <pthaugen@us.ibm.com> - - * config/rs6000/rs6000.c (rs6000_option_override_internal): Change - rs6000_sched_costly_dep default to true_store_to_load_dep_costly. - (adjacent_mem_locations): Move some code to and call... - (get_memref_parts): ...new function. - (mem_locations_overlap): New function. - (rs6000_adjust_priority): Adjust calls to is_load_insn/is_store_insn. - (is_mem_ref): Rename to... - (find_mem_ref): ...this. Return MEM rtx. - (get_store_dest): Remove function. - (is_load_insn1, is_load_insn, is_store_insn1, is_store_insn): Add - new parameter and adjust calls. - (rs6000_is_costly_dependence): Update calls for extra arg. Make sure - mem refs overlap for true_store_to_load_dep_costly. - (rs6000_sched_reorder2): Update calls for extra arg. Adjust args - passed to adjacent_mem_locations. - (is_costly_group): Walk resolved dependency list. - (force_new_group): Emit group ending nop for Power6/Power7. - * config/rs6000/rs6000.md (UNSPEC_GRP_END_NOP): New enum value. - (group_ending_nop): New define_insn. - -2012-07-04 Richard Guenther <rguenther@suse.de> - - PR middle-end/53433 - * gimple-fold.c (get_base_constructor): Do not return an - error_mark_node DECL_INITIAL. - -2012-07-04 Uros Bizjak <ubizjak@gmail.com> - - Backport from mainline - 2012-07-03 Uros Bizjak <ubizjak@gmail.com> - - * config/i386/i386.c (ix86_option_override_internal): Fix wrong - code model string in the error message. - -2012-07-04 Tristan Gingold <gingold@adacore.com> - - Backport from mainline. - 2012-06-25 Tristan Gingold <gingold@adacore.com> - - * config/i386/winnt.c (i386_pe_seh_end_prologue): Move code to ... - (seh_cfa_adjust_cfa): ... that function. - (seh_emit_stackalloc): Do not emit out of range values. - * config/i386/i386.md: Delete unused UNSPEC_REG_SAVE, - UNSPEC_DEF_CFA constants. - * config/i386/i386.h (SEH_MAX_FRAME_SIZE): Define. - * config/i386/i386.c (ix86_frame_pointer_required): Required - for very large frames on SEH target. - (ix86_compute_frame_layout): Save area is before frame pointer - on SEH target. Handle very large frames. - (ix86_expand_prologue): Likewise. - -2012-07-04 Richard Guenther <rguenther@suse.de> - - * tree.c (find_decls_types_r): Handle TYPE_CONTEXT the same - as in free_lang_data_in_type. - -2012-07-02 Martin Jambor <mjambor@suse.cz> - - Backport from mainline. - 2012-07-02 Martin Jambor <mjambor@suse.cz> - - PR middle-end/38474 - * ipa-prop.c (compute_known_type_jump_func): Put BINFO check before a - dynamic type change check. - -2012-06-29 Eric Botcazou <ebotcazou@adacore.com> - - * tree-eh.c (lower_try_finally_switch): Really put the location of the - last statement of the finally block onto the switch. - -2012-06-29 Ramana Radhakrishnan <ramana.radhakrishnan@linaro.org> - - * configure: Regenerate. - - Backport from mainline. - 2012-03-15 Ramana Radhakrishnan <ramana.radhakrishnan@linaro.org> - - * config.gcc (target_type_format_char): New. Document it. Set it for - arm*-*-* . - * configure.ac (gnu_unique_option): Use target_type_format_char - in test. Comment rationale. - -2012-06-29 Ramana Radhakrishnan <ramana.radhakrishnan@linaro.org> - - Backport from mainline. - 2012-05-30 Ramana Radhakrishnan <ramana.radhakrishnan@linaro.org> - - * config/arm/arm.c (arm_evpc_neon_vrev): Adjust off by one error. - -2012-06-28 Georg-Johann Lay <avr@gjlay.de> - - Backport from 2012-06-28 mainline r189049 - - PR 53595 - * config/avr/avr.c (avr_hard_regno_call_part_clobbered): New. - * config/avr/avr-protos.h (avr_hard_regno_call_part_clobbered): New. - * config/avr/avr.h (HARD_REGNO_CALL_PART_CLOBBERED): Forward to - avr_hard_regno_call_part_clobbered. - -2012-06-28 Richard Guenther <rguenther@suse.de> - - PR middle-end/53790 - * expr.c (expand_expr_real_1): Verify if the type is complete - before inspecting its size. - -2012-06-27 Nick Clifton <nickc@redhat.com> - - * config/rx/rx.md (comparesi3_extend): Remove = modifier from - input operand. - -2012-06-26 Alexandre Oliva <aoliva@redhat.com> - - PR debug/53682 - * cselib.c (promote_debug_loc): Don't crash on NULL argument. - -2012-06-26 Nick Clifton <nickc@redhat.com> - - * config/rx/rx.md (simple_return): Use the simple_return rtx. - -2012-06-25 Jakub Jelinek <jakub@redhat.com> - - PR target/53759 - * config/i386/sse.md (sse_loadlps): Use x m x constraints instead - of x x x in the vmovlps load alternative. - -2012-06-22 Richard Guenther <rguenther@suse.de> - - * gcov-iov.c: Include bconfig.h and system.h. - -2012-06-22 Richard Guenther <rguenther@suse.de> - - PR gcov-profile/53744 - * gcov-iov.c (main): Treat "" and "prerelease" the same. - -2012-06-22 Eric Botcazou <ebotcazou@adacore.com> - - * tree-ssa-live.c (remove_unused_scope_block_p): Remove again - DECL_IGNORED_P non-reg vars even if they are used. - -2012-06-19 Jason Merrill <jason@redhat.com> - - PR c++/52637 - * dwarf2out.c (modified_type_die): Use scope_die_for. - (gen_type_die_with_usage, dwarf2out_finish): Likewise. - (uses_local_type_r, uses_local_type): New. - (scope_die_for): Keep a type that uses a local type in local scope. - Use get_context_die for namespace and type scope. - -2012-06-19 Richard Guenther <rguenther@suse.de> - - PR middle-end/53470 - * tree.c (free_lang_data_in_type): Do not clear TYPE_CONTEXT but - replace it with the first non-BLOCK context. - -2012-06-18 Vladimir Makarov <vmakarov@redhat.com> - - PR rtl-optimization/53700 - - Backport from mainline - 2012-03-29 Vladimir Makarov <vmakarov@redhat.com> - - * ira-color.c (setup_left_conflict_sizes_p): Process all - conflicting objects. - -2012-06-18 Venkataramanan Kumar <venkataramanan.kumar@amd.com> - - Backport from mainline - 2012-05-09 Uros Bizjak <ubizjak@gmail.com> - - PR target/52908 - * config/i386/sse.md (vec_widen_smult_hi_v4si): Expand using - xop_pmacsdqh insn pattern instead of xop_mulv2div2di3_high. - (vec_widen_smult_lo_v4si): Expand using xop_pmacsdql insn pattern - instead of xop_mulv2div2di3_low. - (xop_p<macs>dql): Fix vec_select selector. - (xop_p<macs>dqh): Ditto. - (xop_mulv2div2di3_low): Remove insn_and_split pattern. - (xop_mulv2div2di3_high): Ditto. - -2012-06-17 Uros Bizjak <ubizjak@gmail.com> - - Backport from mainline: - 2012-06-17 Uros Bizjak <ubizjak@gmail.com> - - * config/i386/sse.md (vcvtph2ps): Fix vec_select selector. - -2012-06-16 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> - - Backport from mainline: - 2012-06-03 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> - - * config/pa/pa.h (MAX_PCREL17F_OFFSET): Define. - * config/pa/pa.c (pa_attr_length_millicode_call): Use - MAX_PCREL17F_OFFSET instead of fixed offset. - (pa_attr_length_call): Likewise. - (pa_attr_length_indirect_call): Likewise. - -2012-06-15 Walter Lee <walt@tilera.com> - - Backport from mainline: - 2012-06-15 Walter Lee <walt@tilera.com> - - * config/tilegx/sync.md (atomic_fetch_<fetchop_name><mode>): Fix typo. - - 2012-06-14 Maxim Kuvyrkov <maxim@codesourcery.com> - - * config/tilegx/sync.md (atomic_fetch_sub<mode>): Fix typo. - -2012-06-15 Aldy Hernandez <aldyh@redhat.com> - - Backport from mainline: - - 2012-05-31 Aldy Hernandez <aldyh@redhat.com> - * tree-ssa-loop-im.c (execute_sm): Do not check flag_tm. - * gimple.h (block_in_transaction): Check for flag_tm. - -2012-06-14 Aldy Hernandez <aldyh@redhat.com> - - PR tree-optimization/52558 - - Backport from mainline: - 2012-05-21 Aldy Hernandez <aldyh@redhat.com> - * gimple.h (gimple_set_in_transaction): Remove. - (gimple_in_transaction): Look in BB instead. - (gimple_statement_base): Remove in_transaction field. - * basic-block.h (enum bb_flags): Add BB_IN_TRANSACTION. - * trans-mem.c (compute_transaction_bits): Place transaction bit - information into basic blocks. - - 2012-05-31 Aldy Hernandez <aldyh@redhat.com> - - PR tree-optimization/52558 - * cfg.c (alloc_aux_for_edge): Fix comment. - (alloc_aux_for_edge): Remove static. - * basic-block.h (alloc_aux_for_edge): Protoize. - * tree-ssa-loop-im.c (execute_sm_if_changed): New. - (execute_sm_if_changed_flag): New. - (execute_sm_if_changed_flag_set): New. - (execute_sm): Do not generate data races unless requested. - (tree_ssa_lim_initialize): Call alloc_aux_for_edges. - (tree_ssa_lim_finalize): Call free_aux_for_edges. - * gimple.h (block_in_transaction): New. - (gimple_in_transaction): Use block_in_transaction. - -2012-06-14 Jakub Jelinek <jakub@redhat.com> - - Backported from mainline - 2012-06-12 Jakub Jelinek <jakub@redhat.com> - - PR rtl-optimization/53589 - * cfgrtl.c (force_nonfallthru_and_redirect): Do asm_goto_edge - discovery even when e->dest != target. If any LABEL_REF points - to e->dest label, redirect it to target's label. - - 2012-06-07 Jakub Jelinek <jakub@redhat.com> - - PR middle-end/53580 - * omp-low.c (scan_omp_1_stmt): If check_omp_nesting_restrictions - returns false, replace stmt with GIMPLE_NOP. - (check_omp_nesting_restrictions): Instead of issuing warnings, - issue errors and return false if any errors were reported. - -2012-06-14 Richard Guenther <rguenther@suse.de> - - * BASE-VER: Set to 4.7.2. - * DEV-PHASE: Set to prerelease. - -2012-06-12 Christian Bruel <christian.bruel@st.com> - - PR target/53621 - * config/sh/sh.c (sh_option_override): Don't force - flag_omit_frame_pointer and maccumulate_outgoing_args. - * config/sh/sh.opt (maccumulate-outgoing-args): Init as Var. - -2012-06-14 Release Manager - - * GCC 4.7.1 released. - -2012-06-13 Uros Bizjak <ubizjak@gmail.com> - - * config/ia64/sync.md (fetchop_name): Change ior attribute to "or". - -2012-06-13 Richard Henderson <rth@redhat.com> - - * config/rs6000/sync.md (atomic_load, atomic_store): Use INT1 mode - iterator instead of INT. - -2012-06-08 Richard Henderson <rth@redhat.com> - - PR c++/53602 - * combine-stack-adj.c (force_move_args_size_note): Add ARGS_SIZE - note to a clobber insn when no other insn is available. - -2012-06-04 Paolo Carlini <paolo.carlini@oracle.com> - - PR c++/53524 - * doc/invoke.texi (Wenum-compare): Update documentation. - -2012-06-04 Edmar Wienskoski <edmar@freescale.com> - - PR target/53559 - * config/rs6000/altivec.md (altivec_stvlx): Change machine mode of - operands. - (altivec_stvlxl): Ditto. - (altivec_stvrx): Ditto. - (altivec_stvrxl): Ditto. - -2012-06-04 Aldy Hernandez <aldyh@redhat.com> - - PR middle-end/47530 - * trans-mem.c (expand_block_edges): Do not skip the first - statement when resetting the BB. - -2012-06-04 Richard Guenther <rguenther@suse.de> - - PR middle-end/53471 - * dwarf2out.c (dwarf2out_finish): If generating LTO do not - create new assembler names. - -2012-06-04 Richard Guenther <rguenther@suse.de> - - Backport from mainline - 2012-04-25 Jakub Jelinek <jakub@redhat.com> - - PR middle-end/52979 - * stor-layout.c (get_best_mode): Don't return mode with bitsize - larger than maxbits. Don't compute maxbits modulo align. - Also check that unit bytes long store at bitpos / unit * unit - doesn't affect bits beyond bitregion_end. - * expmed.c (store_bit_field_1): Avoid trying insv if OP_MODE MEM - would not fit into bitregion_start ... bitregion_end + 1 bit - region. - (store_split_bit_field): Decrease unit close to end of bitregion_end - if access is restricted in order to avoid mutual recursion. - -2012-06-04 Georg-Johann Lay <avr@gjlay.de> - - Backport from 2012-06-04 mainline r188172 - - PR target/46261 - * config/avr/avr-stdint.h: New file. - * config.gcc (avr-*-*,tm_file): Use avr/avr-stdint.h instead of - newlib-stdint.h - -2012-06-04 Jakub Jelinek <jakub@redhat.com> - - PR tree-optimization/53550 - * tree-ssa-loop-niter.c (number_of_iterations_cond): If type - is POINTER_TYPE_P, use sizetype as step type instead of type. - -2012-06-04 Richard Guenther <rguenther@suse.de> - Eric Botcazou <ebotcazou@adacore.com> - - Backport from mainline - 2012-04-03 Eric Botcazou <ebotcazou@adacore.com> - - * expr.c (get_bit_range): Add OFFSET parameter and adjust BITPOS. - Change type of BITOFFSET to signed. Make sure the lower bound of - the computed range is non-negative by adjusting OFFSET and BITPOS. - (expand_assignment): Adjust call to get_bit_range. - - 2012-03-27 Eric Botcazou <ebotcazou@adacore.com> - - * expr.c (get_bit_range): Return the null range if the enclosing record - is part of a larger bit field. - - 2012-03-20 Richard Guenther <rguenther@suse.de> - - * stor-layout.c (finish_bitfield_representative): Fallback - to conservative maximum size if the padding up to the next - field cannot be computed as a constant. - (finish_bitfield_layout): If we cannot compute the distance - between the start of the bitfield representative and the - bitfield member start a new representative. - * expr.c (get_bit_range): The distance between the start of - the bitfield representative and the bitfield member is zero - if the field offsets are not constants. - - 2012-03-16 Richard Guenther <rguenther@suse.de> - - * stor-layout.c (finish_bitfield_representative): Fall back - to the conservative maximum size if we cannot compute the - size of the tail padding. - - 2012-03-14 Richard Guenther <rguenther@suse.de> - - * tree.h (DECL_BIT_FIELD_REPRESENTATIVE): New define. - * stor-layout.c (start_bitfield_representative): New function. - (finish_bitfield_representative): Likewise. - (finish_bitfield_layout): Likewise. - (finish_record_layout): Call finish_bitfield_layout. - * tree.c (free_lang_data_in_decl): Only free DECL_QUALIFIER - for QUAL_UNION_TYPE fields. - * tree-streamer-in.c (lto_input_ts_field_decl_tree_pointers): - Stream DECL_BIT_FIELD_REPRESENTATIVE. - * tree-streamer-out.c (write_ts_field_decl_tree_pointers): Likewise. - - PR middle-end/52080 - PR middle-end/52097 - PR middle-end/48124 - * expr.c (get_bit_range): Unconditionally extract bitrange - from DECL_BIT_FIELD_REPRESENTATIVE. - (expand_assignment): Adjust call to get_bit_range. - -2012-06-01 Eric Botcazou <ebotcazou@adacore.com> - - PR middle-end/53501 - * fold-const.c (fold_binary_loc): Refine previous change. - -2012-06-01 Oleg Endo <olegendo@gcc.gnu.org> - - Backport from mainline - 2012-03-27 Chung-Lin Tang <cltang@codesourcery.com> - - PR target/52667 - * config/sh/sh.c (find_barrier): Add equality check of last_got to - avoid going above orig insn. Update comments. - -2012-06-01 Oleg Endo <olegendo@gcc.gnu.org> - - Backport from mainline - 2012-03-21 Kaz Kojima <kkojima@gcc.gnu.org> - - PR target/52642 - * config/sh/sh.c (sh_expand_prologue): Emit blockage at the end of - prologue for unwinder and profiler. - -2012-06-01 Oleg Endo <olegendo@gcc.gnu.org> - - Backport from mainline - 2012-03-03 Kaz Kojima <kkojima@gcc.gnu.org> - - * config/sh/sh.md (abssi2): Add TARGET_SH1 condition. - -2012-06-01 Oleg Endo <olegendo@gcc.gnu.org> - - Backport from mainline - 2012-03-03 Kaz Kojima <kkojima@gcc.gnu.org> - - * config/sh/sh.c (sh_dwarf_register_span): Don't apply - DBX_REGISTER_NUMBER. - -2012-06-01 Oleg Endo <olegendo@gcc.gnu.org> - - Backport from mainline - 2012-03-03 Kaz Kojima <kkojima@gcc.gnu.org> - - * config/sh/sh.c (shiftcosts): Return MAX_COST when the first - operand is CONST_INT. Take COSTS_N_INSNS into account. - (sh_rtx_costs): Don't apply COSTS_N_INSNS to the return value of - shiftcosts. - -2012-05-31 Georg-Johann Lay <avr@gjlay.de> - - * config/avr/avr.opt (-msp8): Document it. - * doc/invoke.texi (AVR Options): Copy from trunk docu. - -2012-05-31 Richard Guenther <rguenther@suse.de> - - PR middle-end/48493 - * expr.c (expand_assignment): Do not use movmisalign on - non-memory. - -2012-05-30 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> - - PR target/52999 - * config/pa/pa.c (TARGET_SECTION_TYPE_FLAGS): Define. - (pa_section_type_flags): New. - (pa_legitimate_constant_p): Revert previous change. - -2012-05-30 Aldy Hernandez <aldyh@redhat.com> - - Backport from mainline - 2012-05-25 Aldy Hernandez <aldyh@redhat.com> - - PR middle-end/53008 - * trans-mem.c (ipa_tm_create_version_alias): Output new_node if - accessed indirectly. - (ipa_tm_create_version): Same. - -2012-05-30 Jason Merrill <jason@redhat.com> - - PR c++/53220 - * c-typeck.c (array_to_pointer_conversion): Give -Wc++-compat warning - about array compound literals. - -2012-05-30 Richard Guenther <rguenther@suse.de> - - PR middle-end/53501 - * fold-const.c (fold_binary_loc): Make sure to call - fold_plusminus_mult_expr with the original sign of operands. - -2012-05-30 Eric Botcazou <ebotcazou@adacore.com> - - * explow.c (probe_stack_range): Restore simple control flow and stop - again when the probe cannot be generated if HAVE_check_stack. - -2012-05-30 Jakub Jelinek <jakub@redhat.com> - - PR rtl-optimization/53519 - * combine.c (simplify_shift_const_1) <case NOT>: Use constm1_rtx - instead of GEN_INT (GET_MODE_MASK (mode)) as second operand of XOR. - -2012-05-29 Richard Guenther <rguenther@suse.de> - - PR tree-optimization/53516 - * tree-data-ref.c (stmt_with_adjacent_zero_store_dr_p): Reject - bitfield accesses. - * tree-vect-data-refs.c (vect_analyze_data_refs): Likewise. - -2012-05-28 Bill Schmidt <wschmidt@linux.ibm.com> - - Backport from mainline - 2012-05-28 Richard Guenther <rguenther@suse.de> - - PR tree-optimization/53438 - * tree-sra.c (analyze_access_subtree): Correct bitfield exclusion. - -2012-05-26 Eric Botcazou <ebotcazou@adacore.com> - - Backport from mainline - 2012-03-10 Chung-Lin Tang <cltang@codesourcery.com> - - PR rtl-optimization/52528 - * combine.c (can_combine_p): Add setting of subst_low_luid - before call to expand_field_assignment(). - -2012-05-26 Martin Jambor <mjambor@suse.cz> - - Backport from mainline - 2012-05-23 Martin Jambor <mjambor@suse.cz> - - * ipa-inline-analysis.c (inline_merge_summary): Free operand_map. - -2012-05-25 Eric Botcazou <ebotcazou@adacore.com> - - PR lto/52178 - * tree-inline.c (remap_gimple_op_r): Fix handling of FIELD_DECL. - * tree.c (RETURN_TRUE_IF_VAR): Do not return true for PLACEHOLDER_EXPR. - -2012-05-25 Alexander Ivchenko <alexander.ivchenko@intel.com> - - PR target/53435 - * config/i386/i386.c (ix86_expand_vec_perm): Use correct op. - (ix86_expand_vec_perm): Use int mode instead of float. - -2012-05-25 Eric Botcazou <ebotcazou@adacore.com> - - PR ada/52362 - * config.gcc (i[34567]86-*-mingw* | x86_64-*-mingw*): Set gas and - gnu_ld variables to yes. - * configure.ac (HAVE_GNU_LD): Move to after config.gcc inclusion. - (HAVE_GNU_AS): Likewise. - * config.in: Regenerate. - * configure: Likewise. - -2012-05-25 Ramana Radhakrishnan <ramana.radhakrishnan@linaro.org> - - Backport from mainline - 2012-03-12 Richard Guenther <rguenther@suse.de> - * config/arm/arm.c (neon_dereference_pointer): Do not call - covert during RTL expansion. - -2012-05-24 Bill Schmidt <wschmidt@linux.vnet.ibm.com> - - Backport from mainline - 2012-05-18 Bill Schmidt <wschmidt@linux.vnet.ibm.com> - - PR target/53385 - * config/rs6000/rs6000.c (print_operand): Revise code that unsafely - relied on signed overflow behavior. - -2012-05-24 Richard Guenther <rguenther@suse.de> - - PR middle-end/53460 - * tree-profile.c (tree_profiling): Cleanup the CFG if - execute_fixup_cfg requests it. - -2012-05-24 Jakub Jelinek <jakub@redhat.com> - - PR tree-optimization/53465 - * tree-vrp.c (extract_range_from_cond_expr): First copy_value_range - vr0 into *vr, then vrp_meet that. - (vrp_meet): If one vr type is VR_UNDEFINED, ensure the result doesn't - have any equivalences. - (vrp_visit_phi_node): Call copy_value_range instead of vrp_meet the - first time. - -2012-05-23 Eric Botcazou <ebotcazou@adacore.com> - - * gimple.c (gimple_types_compatible_p_1) <ARRAY_TYPE>: Remove bogus - size handling. - (gimple_canonical_types_compatible_p) <ARRAY_TYPE>: Likewise. - (iterative_hash_gimple_type): Adjust comment. - (iterative_hash_canonical_type): Likewise. Hash the bounds of the - domain for an array type instead of the domain type itself. - -2012-05-23 Georg-Johann Lay <avr@gjlay.de> - - Backport from 2012-05-23 mainline r187803 - - PR target/53448 - * config/avr/avr.h (ASM_OUTPUT_ALIGN): Don't inhibit .p2align 1. - * config/avr/elf.h (ASM_OUTPUT_BEFORE_CASE_LABEL): Use - ASM_OUTPUT_ALIGN. - -2012-05-23 Ganesh Gopalasubramanian <Ganesh.Gopalasubramanian@amd.com> - - Backport from 2012-05-03 mainline r187075 - - * config/i386/driver-i386.c (host_detect_local_cpu): Reset - has_fma4 for AMD processors with both fma3 and fma4 support. - -2012-05-22 Richard Guenther <rguenther@suse.de> - - PR tree-optimization/53408 - * tree-vect-loop.c (vectorizable_induction): Properly check - the restriction that we cannot handle induction results from - the inner loop outside of the outer loop. - -2012-05-21 Jakub Jelinek <jakub@redhat.com> - - PR tree-optimization/53436 - * omp-low.c (omp_build_component_ref): New function. - (build_receiver_ref, build_sender_ref, create_task_copyfn): Use it. - - PR tree-optimization/53366 - * tree-vect-slp.c (vect_supported_load_permutation_p): Don't shortcut - tests if complex_numbers == 2, but there are non-complex number loads - too. - - PR tree-optimization/53409 - * tree-vect-loop.c (vect_analyze_loop_operations): Don't check - vinfo_for_stmt (op_def_stmt) if op_def_stmt isn't inside loop. - - PR tree-optimization/53410 - * fold-const.c (fold_binary_loc): Use build_zero_cst (type) - instead of build_int_cst (type, 0) where vector types might be - involved. - -2012-05-21 Joseph Myers <joseph@codesourcery.com> - - PR c/53418 - * c-typeck.c (build_conditional_expr): Remove C_MAYBE_CONST_EXPR - from folded operands before wrapping another around the - conditional expression. - -2012-05-21 Dave Boutcher <daveboutcher@gmail.com> - Patrick Marlier <patrick.marlier@gmail.com> - - * trans-mem.c (ipa_tm_transform_clone): Transform functions with - indirect calls. - -2012-05-21 H.J. Lu <hongjiu.lu@intel.com> - - Backport from mainline - 2012-05-21 H.J. Lu <hongjiu.lu@intel.com> - - PR target/53416 - * config/i386/i386.md (UNSPEC_RDRAND): Renamed to ... - (UNSPECV_RDRAND): This. - (rdrand<mode>_1): Updated. - -2012-05-20 H.J. Lu <hongjiu.lu@intel.com> - - Backport from mainline - 2012-05-20 H.J. Lu <hongjiu.lu@intel.com> - - * config/i386/driver-i386.c (host_detect_local_cpu): Support - RDRND, F16C and FSGSBASE. - -2012-05-19 Eric Botcazou <ebotcazou@adacore.com> - - Backport from mainline - 2012-05-14 Eric Botcazou <ebotcazou@adacore.com> - - * tree-ssa-pre.c (can_value_number_call): Delete. - (compute_avail): Skip all statements with side effects. - <GIMPLE_CALL>: Skip calls to internal functions. - -2012-05-18 David S. Miller <davem@davemloft.net> - - Backport r185385 from mainline - 2012-03-14 Richard Guenther <rguenther@suse.de> - - PR middle-end/52584 - * tree-vect-generic.c (type_for_widest_vector_mode): Take - element type instead of mode, use build_vector_type_for_mode - instead of the langhook, build a vector of proper signedness. - (expand_vector_operations_1): Adjust. - -2012-05-18 Olivier Hainque <hainque@adacore.com> - - * Makefile.in (FLAGS_TO_PASS): Pass $(libexecsubdir) instead of - $(libsubdir) as libexecsubdir. - -2012-05-16 Andrew Pinski <apinski@cavium.com> - - * gimple-fold.c (get_maxval_strlen): Move COND_EXPR handling under - GIMPLE_ASSIGN. - -2012-05-16 David S. Miller <davem@davemloft.net> - - * jump.c (delete_related_insns): If we remove a CALL, make sure - we delete it's NOTE_INSN_CALL_ARG_LOCATION note too. - -2012-05-16 Richard Henderson <rth@redhat.com> - - PR debug/52727 - * combine-stack-adj.c (prev_active_insn_bb): New. - (next_active_insn_bb): New. - (force_move_args_size_note): New. - (combine_stack_adjustments_for_block): Use it. - -2012-05-16 Olivier Hainque <hainque@adacore.com> - - * Makefile.in (install-no-fixedincludes): New target, former toplevel - gcc-no-fixedincludes. Stash "include-fixed" in addition to "include". - Add comments and improve stamp preservation across the whole sequence. - (stmp-int-hdrs): Use move-if-change + cp -p to setup fix_dir/limits.h. - -2012-05-16 Richard Guenther <rguenther@suse.de> - - PR tree-optimization/53364 - * tree-ssa-alias.c (indirect_ref_may_alias_decl_p): Properly - detect a view-conversion of the decl. - -2012-05-15 Jakub Jelinek <jakub@redhat.com> - - PR target/53358 - * config/i386/i386.md (*addqi_2 peephole with QImode addition): Check - that operands[2] is either immediate, or q_regs_operand. - -2012-05-15 Bin Cheng <bin.cheng@arm.com> - - Backport r187139 from mainline. - 2012-05-04 Bin Cheng <bin.cheng@arm.com> - - PR rtl-optimization/52804 - * reload1.c (reload_reg_reaches_end_p): Check whether successor - reload with type RELOAD_FOR_INPUT_ADDRESS kills reload register - of current one with type RELOAD_FOR_INPADDR_ADDRESS. - Same stands for reloads with type RELOAD_FOR_OUTPUT_ADDRESS and - RELOAD_FOR_OUTADDR_ADDRESS. - -2012-05-14 Uros Bizjak <ubizjak@gmail.com> - - PR target/46098 - * config/i386/i386.c (ix86_expand_special_args_builtin): Always - generate target register for "load" class builtins. - - Revert: - 2010-10-22 Uros Bizjak <ubizjak@gmail.com> - - PR target/46098 - * config/i386/sse.md (*avx_movu<ssemodesuffix><avxmodesuffix>): - Rename from avx_movu<ssemodesuffix><avxmodesuffix>. - (avx_movu<ssemodesuffix><avxmodesuffix>): New expander. - (*<sse>_movu<ssemodesuffix>): Rename from <sse>_movu<ssemodesuffix>. - (<sse>_movu<ssemodesuffix>): New expander. - (*avx_movdqu<avxmodesuffix>): Rename from avx_movdqu<avxmodesuffix>. - (avx_movdqu<avxmodesuffix>): New expander. - (*sse2_movdqu): Rename from sse2_movdqu. - (sse2_movdqu): New expander. - -2012-05-14 Jakub Jelinek <jakub@redhat.com> - - * dwarf2out.c (dwarf2out_define, dwarf2out_undef): Treat - lineno 1 the same as lineno 0 before first start file directive. - (optimize_macinfo_range): Likewise. - - * dwarf2out.c (have_macinfo): Define. - (dwarf2out_finish): Don't emit DW_AT_GNU_macros or DW_AT_macro_info - attribute, don't force empty compilation unit and don't emit any - .debug_macinfo/.debug_macro section if macinfo_table is empty. - -2012-05-13 Uros Bizjak <ubizjak@gmail.com> - - Backport from mainline - 2012-05-12 Uros Bizjak <ubizjak@gmail.com> - - * config/alpha/alpha.c (alpha_emit_conditional_branch): Handle - ORDERED and UNORDERED conditions. - -2012-05-12 Eric Botcazou <ebotcazou@adacore.com> - - * function.c (requires_stack_frame_p): If the function can throw - non-call exceptions, return true if the insn can throw internally. - -2012-05-10 Eric Botcazou <ebotcazou@adacore.com> - - * gimplify.c (gimplify_decl_expr): For a TYPE_DECL, also gimplify the - DECL_ORIGINAL_TYPE if it is present. - -2012-05-09 Georg-Johann Lay <avr@gjlay.de> - - Backport from 2012-05-12 mainline r187342. - - PR target/53256 - * config/avr/elf.h (ASM_DECLARE_FUNCTION_NAME): Remove. - * config/avr/avr-protos.h (avr_asm_declare_function_name): Remove. - * config/avr/avr.h (struct machine_function): Add attributes_checked_p. - * config/avr/avr.c (avr_asm_declare_function_name): Remove. - (expand_prologue): Move initialization of cfun->machine->is_naked, - is_interrupt, is_signal, is_OS_task, is_OS_main from here to... - (avr_set_current_function): ...this new static function. - (TARGET_SET_CURRENT_FUNCTION): New define. - (avr_function_ok_for_sibcall): Use cfun->machine->is_* instead of - checking attributes of current_function_decl. - (avr_regs_to_save): Ditto. - (signal_function_p): Rename to avr_signal_function_p. - (interrupt_function_p): Rename to avr_interrupt_function_p. - - * doc/extend.texi (Function Attributes): Better explanation of - 'interrupt' and 'signal' for AVR. Move 'ifunc' down to establish - alphabetical order. - -2012-05-09 Matthias Klose <doko@ubuntu.com> - - * gcc-ar.c (main): Don't check for execute bits for the plugin. - -2012-05-08 Hans-Peter Nilsson <hp@axis.com> - - PR target/53272 - * config/cris/cris.c (cris_normal_notice_update_cc): For TARGET_V32, - when a constant source operand matches an "I" constraint, the "no - CC0 change" applies to a register-destination only, not a - strict_low_part-destination. - -2012-05-07 Ramana Radhakrishnan <ramana.radhakrishnan@linaro.org> - - Backport from mainline: - 2012-04-19 Ramana Radhakrishnan <ramana.radhakrishnan@linaro.org> - - * config/arm/sync.md (sync_optab): Change ior attribute to "or". - -2012-05-07 Jakub Jelinek <jakub@redhat.com> - - PR tree-optimization/53239 - * tree-vrp.c (get_value_range): Set VR of - SSA_NAME_IS_DEFAULT_DEF of DECL_BY_REFERENCE RESULT_DECL - to nonnull. - -2012-05-07 Richard Guenther <rguenther@suse.de> - - PR tree-optimization/53195 - * tree-inline.c (setup_one_parameter): Properly add referenced - vars from the parameters new known value. - -2012-05-06 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> - - Backport from mainline: - 2012-04-27 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> - - PR target/52999 - * config/pa/pa.c (pa_legitimate_constant_p): Don't put function labels - in constant pool. - -2012-05-04 Ian Lance Taylor <iant@google.com> - - * tree-vect-patterns.c (vect_single_imm_use): Correct return - values from false to NULL. - -2012-05-04 Uros Bizjak <ubizjak@gmail.com> - - Backport from mainline - 2012-05-04 Uros Bizjak <ubizjak@gmail.com> - - PR target/53228 - * config/i386/i386.h (X86_ARCH_CMOV): Rename from X86_ARCH_CMOVE. - (TARGET_CMOV): Rename from TARGET_CMOVE. - (TARGET_CMOVE): New define. - * config/i386/i386.c (ix86_option_override_internal): Use TARGET_CMOV. - Do not set TARGET_CMOVE here. - -2012-05-04 Ulrich Weigand <ulrich.weigand@linaro.org> - - Backport from mainline: - - 2012-05-04 Ulrich Weigand <ulrich.weigand@linaro.org> - - PR tree-optimization/52633 - * tree-vect-patterns.c (vect_vect_recog_func_ptrs): Swap order of - vect_recog_widen_shift_pattern and vect_recog_over_widening_pattern. - (vect_recog_over_widening_pattern): Remove handling of code that was - already detected as over-widening pattern. Remove special handling - of "unsigned" cases. Instead, support general case of conversion - of the shift result to another type. - - 2012-05-04 Ulrich Weigand <ulrich.weigand@linaro.org> - - * tree-vect-patterns.c (vect_single_imm_use): New function. - (vect_recog_widen_mult_pattern): Use it instead of open-coding loop. - (vect_recog_over_widening_pattern): Likewise. - (vect_recog_widen_shift_pattern): Likewise. - - 2012-04-10 Ulrich Weigand <ulrich.weigand@linaro.org> - - PR tree-optimization/52870 - * tree-vect-patterns.c (vect_recog_widen_mult_pattern): Verify that - presumed pattern statement is within the same loop or basic block. - -2012-05-04 Richard Guenther <rguenther@suse.de> - - * common.opt (flto-report): Do not mark as Optimization. - -2012-05-04 Eric Botcazou <ebotcazou@adacore.com> - - PR target/48496 - * recog.c (constrain_operands): If extra constraints are present, also - accept pseudo-registers with equivalent memory locations during reload. - -2012-05-03 Michael Meissner <meissner@linux.vnet.ibm.com> - - Backport from the mainline - 2012-05-03 Michael Meissner <meissner@linux.vnet.ibm.com> - - PR target/53199 - * config/rs6000/rs6000.md (bswapdi splitters): If - -mavoid-indexed-addresses (or -mcpu=power6 which sets it by - default) is used, generate an alternate sequence that does not - depend on using indexed addressing. - -2012-05-03 David S. Miller <davem@davemloft.net> - - PR target/52684 - * config/sparc/sparc.c (emit_soft_tfmode_libcall): If we pass a - MEM directly into a libcall, mark it's MEM_EXPR as addressable. - (sparc_emit_float_lib_cmp): Likewise. - -2012-05-04 Martin Jambor <mjambor@suse.cz> - - Backport from mainline - 2012-05-02 Martin Jambor <mjambor@suse.cz> - - PR lto/52605 - * dwarf2out.c (dwarf2out_decl): Only lookup die representing context - of a variable when the contect is a function. - -2012-05-03 Jakub Jelinek <jakub@redhat.com> - - PR plugins/53126 - * gcc-ar.c (main): If GCC_EXEC_PREFIX is set in env, - append program name to it and pass that as first argument - to make_relative_prefix. Always pass standard_libexec_prefix - as last argument to make_relative_prefix. If - make_relative_prefix returns NULL, fall back to - standard_libexec_prefix. - - PR debug/53174 - * tree-predcom.c (remove_stmt): Call reset_debug_uses on stmts being - removed. - - PR target/53187 - * config/arm/arm.c (arm_select_cc_mode): If x has MODE_CC class - mode, return that mode. - -2012-05-03 Richard Guenther <rguenther@suse.de> - - PR tree-optimization/53144 - * tree-ssa-sccvn.c (vn_reference_lookup_or_insert_constant_for_pieces): - Rename to ... - (vn_reference_lookup_or_insert_for_pieces): ... this. Properly deal - with SSA name values. - (vn_reference_lookup_3): Adjust callers. - -2012-05-02 Jakub Jelinek <jakub@redhat.com> - - PR tree-optimization/53163 - * tree-ssa-phiopt.c (cond_if_else_store_replacement): Don't ignore - return value from compute_all_dependences. - - PR rtl-optimization/53160 - * ree.c (combine_reaching_defs): Handle the case where cand->insn - has been modified by ree pass already. - -2012-05-01 Uros Bizjak <ubizjak@gmail.com> - - Backport from mainline - 2012-04-30 Uros Bizjak <ubizjak@gmail.com> - - PR middle-end/53136 - * ipa-prop.c (ipa_print_node_jump_functions): Wrap multiple - calls to cgraph_node_name in xstrdup. - (ipa_make_edge_direct_to_target): Ditto. - * tree-sra.c (convert_callers_for_node): Ditto. - * lto-symtab.c (lto_cgraph_replace_node): Ditto. - * ipa-cp.c (perhaps_add_new_callers): Ditto. - * cgraphunit.c (cgraph_redirect_edge_call_stmt_to_callee): Ditto. - (cgraph_materialize_all_clones): Ditto. - * ipa-inline.c (report_inline_failed_reason): Ditto. - (want_early_inline_function_p): Ditto. - (edge_badness): Ditto. - (update_edge_key): Ditto. - (flatten_function): Ditto. - (ipa_inline): Ditto. - (inline_always_inline_functions): Ditto. - (early_inline_small_functions): Ditto. - -2012-04-30 Andreas Tobler <andreast@fgznet.ch> - - Backport from mainline - 2012-03-21 Andreas Tobler <andreast@fgznet.ch> - - * configure.ac (HAVE_LD_NO_DOT_SYMBOLS): Add powerpc64-*-freebsd*. - Introduce emul_name to select the right linker emulation for - powerpc64-*-freebsd*. - * configure: Regenerate. - * config.gcc: Add bits to support powerpc64-*-freebsd*. - * config/rs6000/freebsd.h (POWERPC_FREEBSD): Define. - * config/rs6000/freebsd64.h: New file. - * config/rs6000/rs6000.c (rs6000_option_override_internal): Use - POWERPC_FREEBSD. - (rs6000_savres_strategy): Likewise. - (rs6000_savres_routine_name): Likewise. - (rs6000_elf_file_end): Likewise. - * config/rs6000/t-freebsd64: New file. - * config/rs6000/sysv4.h (SUBTARGET_OVERRIDE_OPTIONS): Set the - rs6000_current_abi for 64-bit FreeBSD to ABI_AIX. - -2012-04-30 Uros Bizjak <ubizjak@gmail.com> - - Backport from mainline - 2012-04-27 Paolo Bonzini <bonzini@gnu.org> - - PR target/53138 - * config/i386/i386.md (x86_mov<mode>cc_0_m1_neg): Add clobber. - -2012-04-30 Eric Botcazou <ebotcazou@adacore.com> - - * config/i386/i386.c (ix86_handle_struct_attribute): Use the proper - predicate to discriminate types. - -2012-04-27 Richard Guenther <rguenther@suse.de> - - PR c/51527 - * convert.c (convert_to_integer): Avoid infinite recursion for - target-defined built-in types. - -2012-04-26 Hans-Peter Nilsson <hp@axis.com> - - PR target/53120 - * config/cris/cris.md ("*andhi_lowpart_v32") - ("*andqi_lowpart_v32"): Change first input-only operand from - a (match_operand ...) to (match_dup 0). Drop alternatives with - const_int-matching constraints for redundancy. - ("*andhi_lowpart_non_v32", "*andqi_lowpart_non_v32"): Ditto. Drop - three-operand alternative. - -2012-04-26 Uros Bizjak <ubizjak@gmail.com> - - Backport from mainline - 2012-04-23 Uros Bizjak <ubizjak@gmail.com> - - * config/i386/i386.md (*add<mode>_2): Add r/r/0 alternative. - (*addsi_2_zext): Ditto. - (*add<mode>_3): Ditto. - (*addsi_3_zext): Ditto. - (*add<mode>_5): Ditto. - -2012-04-25 Jakub Jelinek <jakub@redhat.com> - - PR c/52880 - * c-typeck.c (set_nonincremental_init, - set_nonincremental_init_from_string): Pass true instead of false - as IMPLICIT to add_pending_init. - -2012-04-24 Georg-Johann Lay <avr@gjlay.de> - - Backport from 2012-04-24 mainline r186768. - - PR target/53065 - * config/avr/avr.h (HARD_REGNO_CALL_PART_CLOBBERED): New hook define. - -2012-04-24 Richard Guenther <rguenther@suse.de> - - PR tree-optimization/53085 - * tree-ssa-pre.c (eliminate): Do not eliminate volatile redundant - stores. - -2012-04-24 Jakub Jelinek <jakub@redhat.com> - - PR middle-end/53084 - * varasm.c (compute_reloc_for_constant): Handle ADDR_EXPR - of MEM_REF. - (output_addressed_constants): Likewise. - - PR middle-end/52999 - * varasm.c (get_section): Don't ICE for section conflicts with - built-in section kinds. - -2012-04-23 David Edelsohn <dje.gcc@gmail.com> - - * config/rs6000/sync.md (fetchop_name): Change ior attribute to "or". - -2012-04-23 Georg-Johann Lay <avr@gjlay.de> - - * doc/extend.texi (AVR Named Address Spaces): Fix typos. - -2012-04-23 Richard Guenther <rguenther@suse.de> - - PR c/53060 - * c-typeck.c (build_binary_op): Fix typo. - -2012-04-23 Jakub Jelinek <jakub@redhat.com> - - PR tree-optimizations/52891 - * tree-vect-patterns.c (adjust_bool_pattern): Use - build_nonstandard_type even if rhs1 has unsigned INTEGER_TYPE, - but with non-standard precision. - -2012-04-22 Ian Lance Taylor <iant@google.com> - - * godump.c (go_output_typedef): Dump size of structs. - -2012-04-20 Ulrich Weigand <ulrich.weigand@linaro.org> - - Backport from mainline: - - * config/arm/arm.c (arm_print_operand): Fix invalid alignment - hints for 'A' operand types. - -2012-04-19 Georg-Johann Lay <avr@gjlay.de> - - Backport from 2012-04-19 mainline r186588. - - PR target/53033 - * config/avr/avr.c (avr_out_load_psi): Fix assembler template for - the case *(X+const). - -2012-04-18 Uros Bizjak <ubizjak@gmail.com> - - * config/alpha/sync.md (fetchop_name): Change ior attribute to "or". - -2012-04-17 Uros Bizjak <ubizjak@gmail.com> - - PR target/53020 - * config/i386/sync.md (atomic_<code><mode>): Rename to - atomic_<logic><mode>. - -2012-04-16 Uros Bizjak <ubizjak@gmail.com> - - Backport from mainline - 2012-04-12 Uros Bizjak <ubizjak@gmail.com> - - PR target/52932 - * config/i386/avx2intrin.h (_mm256_permutevar8x32_ps): Change second - argument type to __m256i. Update call to __builtin_ia32_permvarsf256. - * config/i386/sse.md (avx2_permvarv8sf): Change operand 1 to V8SI. - (avx2_permvarv8sf, avx2_permvarv8si): Switch operands 1 and 2. - * config/i386/i386.c (bdesc_args) <__builtin_ia32_permvarsf256>: - Update builtin type to V8SF_FTYPE_V8SF_V8SI. - (ix86_expand_vec_perm): Update calls to gen_avx2_permvarv8si and - gen_avx2_permvarv8sf. - -2012-04-16 Martin Jambor <mjambor@suse.cz> - - Backported from mainline - - 2012-04-13 Martin Jambor <mjambor@suse.cz> - PR middle-end/52939 - - * gimple-fold.c (gimple_get_virt_method_for_binfo): Bail out if - fold_ctor_reference returns a zero constant. - -2012-04-13 H.J. Lu <hongjiu.lu@intel.com> - - Backported from mainline - 2012-04-13 H.J. Lu <hongjiu.lu@intel.com> - - * config/i386/i386-c.c (ix86_target_macros): Define _ILP32 - and __ILP32__ for x32. - -2012-04-13 Tom de Vries <tom@codesourcery.com> - - Backport from mainline r186418. - - 2012-04-13 Tom de Vries <tom@codesourcery.com> - - * tree-ssa-tail-merge.c (gsi_advance_bw_nondebug_nonlocal): Add - parameters vuse and vuse_escaped. - (find_duplicate): Init vuse1, vuse2 and vuse_escaped. Pass to - gsi_advance_bw_nondebug_nonlocal. Return if vuse_escaped and - vuse1 != vuse2. - -2012-04-13 Richard Guenther <rguenther@suse.de> - - PR tree-optimization/52969 - * tree-if-conv.c (predicate_mem_writes): Properly gimplify - the condition for the COND_EXPR and handle predicate negation - by swapping the COND_EXPR arms. - -2012-04-13 Richard Guenther <rguenther@suse.de> - - PR c/52862 - * convert.c (convert_to_pointer): Remove special-casing of - zero. - -2012-04-12 Michael Meissner <meissner@linux.vnet.ibm.com> - - Backport from mainline - 2012-04-12 Michael Meissner <meissner@linux.vnet.ibm.com> - - PR target/52775 - * config/rs6000/rs6000.h (TARGET_FCFID): Add TARGET_PPC_GPOPT to - the list of options to enable the FCFID instruction. - (TARGET_EXTRA_BUILTINS): Adjust comment. - -2012-04-12 Richard Guenther <rguenther@suse.de> - - PR tree-optimization/52943 - * tree-chrec.h (chrec_is_positive): Remove. - * tree-scalar-evolution.c (chrec_is_positive): Move ... - * tree-data-ref.c (chrec_is_positive): ... here. Make static. - Return false for a constant zero instead of negative. - (analyze_siv_subscript_cst_affine): Handle zero difference - in the initial condition explicitely. - -2012-04-10 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> - - PR middle-end/52894 - * varasm.c (process_pending_assemble_externals): Set - pending_assemble_externals_processed true. - (assemble_external): Call assemble_external_real if the pending - assemble externals have been processed. - -2012-04-09 Eric Botcazou <ebotcazou@adacore.com> - - PR target/52717 - * config/sparc/sparc.c (sparc_file_end): Set TREE_PUBLIC explicitly on - the DECL generated for the special GOT helper. - -2012-04-06 Walter Lee <walt@tilera.com> - - Backport from mainline - 2012-03-07 Walter Lee <walt@tilera.com> - - * config/tilegx/tilegx.c (tilegx_expand_prologue): Don't generate - REG_CFA_* notes for the stack pointer. - (tilegx_expand_epilogue): Restore stack pointer by adjusting it by - EH_RETURN_STACKADJ_RTX. - * config/tilepro/tilepro.c (tilepro_expand_prologue): Don't - generate REG_CFA_* notes for the stack pointer. - (tilepro_expand_epilogue): Restore stack pointer by adjusting it - by EH_RETURN_STACKADJ_RTX. - -2012-04-06 Matt Turner <mattst88@gmail.com> - - * doc/install.texi: Correct typo "-mno-lsc" -> "-mno-llsc". - -2012-04-06 Eric Botcazou <ebotcazou@adacore.com> - - * config/ia64/ia64.c (ia64_load_pair_ok): Return 0 if the second member - of the destination isn't also a FP_REGS register. - -2012-04-03 Richard Guenther <rguenther@suse.de> - - Backport from mainline - 2012-03-02 Richard Guenther <rguenther@suse.de> - - PR tree-optimization/52406 - * tree-data-ref.h: Update documentation about DR_BASE_OBJECT. - (struct indices): Add unconstrained_base member. - (struct dr_alias): Remove unused vops member. - (DR_UNCONSTRAINED_BASE): New define. - * tree-data-ref.c (dr_analyze_indices): For COMPONENT_REFs - add indices to allow their disambiguation. Make DR_BASE_OBJECT - be an artificial access that covers the whole indexed object, - or mark it with DR_UNCONSTRAINED_BASE if we cannot do so. Canonicalize - plain decl base-objects to their MEM_REF variant. - (dr_may_alias_p): When the base-object of either data reference - has unknown size use only points-to information. - (compute_affine_dependence): Make dumps easier to read and - more verbose. - * tree-vect-data-ref.c (vector_alignment_reachable_p): Use - DR_REF when looking for packed references. - (vect_supportable_dr_alignment): Likewise. - -2012-04-03 Richard Guenther <rguenther@suse.de> - - Backport from mainline - 2012-03-15 Richard Guenther <rguenther@suse.de> - - PR middle-end/52580 - * tree-data-ref.c (subscript_dependence_tester_1): Check - all dimensions for non-conflicting access functions. - -2012-04-03 Richard Guenther <rguenther@suse.de> - - Backport from mainline - 2012-03-06 Richard Guenther <rguenther@suse.de> - - PR middle-end/52493 - * tree-ssa-alias.c (ptr_derefs_may_alias_p): Robustify. - - 2012-03-23 Richard Guenther <rguenther@suse.de> - - PR tree-optimization/52678 - * tree-vectorizer.h (struct _stmt_vec_info): Add - loop_phi_evolution_part member. - (STMT_VINFO_LOOP_PHI_EVOLUTION_PART): New define. - * tree-vect-loop.c (vect_analyze_scalar_cycles_1): Initialize - STMT_VINFO_LOOP_PHI_EVOLUTION_PART. - * tree-vect-loop-manip.c (vect_update_ivs_after_vectorizer): - Use the cached evolution part and the PHI nodes value from - the loop preheader edge instead of re-analyzing the evolution. - - 2012-03-26 Richard Guenther <rguenther@suse.de> - - PR tree-optimization/52701 - * tree-vect-loop.c (vect_analyze_scalar_cycles_1): Always - compute and set the evolution part of PHI nodes. - - 2012-03-30 Richard Guenther <rguenther@suse.de> - - PR tree-optimization/52754 - * tree-ssa-forwprop.c (forward_propagate_addr_expr_1): Only - propagate arbitrary addresses into really plain dereferences. - -2012-04-03 Jakub Jelinek <jakub@redhat.com> - - PR tree-optimization/52835 - * tree-data-ref.c (build_rdg): Return NULL if - compute_data_dependences_for_loop failed. - -2012-03-31 Eric Botcazou <ebotcazou@adacore.com> - - * tree-cfg.c (call_can_make_abnormal_goto): New predicate. - (stmt_can_make_abnormal_goto): Use it. - (is_ctrl_altering_stmt): Likewise. - -2012-03-31 Martin Jambor <mjambor@suse.cz> - - Backported from mainline - 2012-03-30 Martin Jambor <mjambor@suse.cz> - - * tree-ssa-ccp.c (insert_clobbers_for_var): Do not assert that there - is a builtin_stack_save in a dominating BB. - -2012-03-29 Uros Bizjak <ubizjak@gmail.com> - - * config/i386/sse.md (avx_h<plusminus_insn>v4df3): Fix results - crossing 128bit lane boundary. - -2012-03-29 Uros Bizjak <ubizjak@gmail.com> - - Backported from mainline - 2012-03-27 Uros Bizjak <ubizjak@gmail.com> - - PR target/52698 - * config/i386/i386-protos.h (ix86_legitimize_reload_address): - New prototype. - * config/i386/i386.h (LEGITIMIZE_RELOAD_ADDRESS): New define. - * config/i386/i386.c: Include reload.h. - (ix86_legitimize_reload_address): New function. - -2012-03-28 Martin Jambor <mjambor@suse.cz> - - Backported from mainline - 2012-03-27 Martin Jambor <mjambor@suse.cz> - - PR middle-end/52693 - * tree-sra.c (sra_modify_assign): Do not call - load_assign_lhs_subreplacements when working with an unscalarizable - region. - -2012-03-28 Jakub Jelinek <jakub@redhat.com> - - PR middle-end/52691 - * tree-ssa-ccp.c (optimize_stdarg_builtin): Optimize - __builtin_va_start to __builtin_next_arg if the latter is - builtin_decl_explicit_p rather than when it is not. - - PR middle-end/52750 - * tree-vect-generic.c (vector_element): Perform multiplication - for pos in bitsizetype type instead of idx type. - -2012-03-28 Georg-Johann Lay <avr@gjlay.de> - - Backport from 2012-03-28 mainline r185910. - - PR target/52692 - * config/avr/avr.c (TARGET_BUILTIN_DECL): New define. - (avr_builtin_decl): New static function. - (struct avr_builtin_description, avr_bdesc): Move up. - Add GTY marker. Add field fndecl. Remove redundant field id. - (avr_init_builtins): Initialize avr_bdesc[ID].fndecl. - (avr_expand_builtin): Code cleanup because .id is removed. - -2012-03-28 Aurelien Buhrig <aurelien.buhrig.gcc@gmail.com> - - PR middle-end/51893 - * expmed.c (store_bit_field_1): Fix wordnum value for big-endian - targets. - -2012-03-28 Georg-Johann Lay <avr@gjlay.de> - - Backport from 2012-03-28 mainline r185907. - - PR target/52737 - * config.gcc (tm_file): Remove avr/multilib.h. - - * doc/invoke.texi (AVR Options): Adjust - documentation of -mtiny-stack. - - * config/avr/genmultilib.awk: Remove code to generate multilib.h. - (BEGIN): Use -msp8 as multilib option instead of -mtiny-stack. - * config/avr/t-avr: Remove generation of multilib.h. - * config/avr/t-multilib: Regenerate. - * config/avr/multilib.h: Remove. - * config/avr/avr.opt (-msp8): New option. - (avr_sp8): New variable. - * config/avr/driver-avr.c (avr_device_to_sp8): New function. - * config/avr/avr.h (AVR_HAVE_SPH): New define. - (AVR_HAVE_8BIT_SP): Also set by avr_sp8 i.e. -msp8. - (avr_device_to_sp8): New prototype. - (EXTRA_SPEC_FUNCTIONS): Add { "device_to_sp8", avr_device_to_sp8 } - (DRIVER_SELF_SPECS): New define. - * config/avr/avr-c.c (avr_cpu_cpp_builtins): New built-in defines: - __AVR_SP8__, __AVR_HAVE_SPH__. - * config/avr/avr.c (output_movhi): Use AVR_HAVE_SPH instead of - AVR_HAVE_8BIT_SP to decide if SP_H is present. - (avr_file_start): Ditto. - -2012-03-28 Jakub Jelinek <jakub@redhat.com> - - PR target/52736 - * config/i386/sse.md (sse2_loadlpd splitter): Use offset 0 - instead of 8 in adjust_address. - -2012-03-27 Eric Botcazou <ebotcazou@adacore.com> - - * expmed.c (store_bit_field): Assert that BITREGION_START is a multiple - of a unit before computing the offset in units. - -2012-03-27 Richard Guenther <rguenther@suse.de> - - PR middle-end/52720 - * fold-const.c (try_move_mult_to_index): Handle &x.array more - explicitely. - -2012-03-24 Eric Botcazou <ebotcazou@adacore.com> - - PR target/52610 - * config/sparc/sparc.h (ASM_CPU_SPEC): Pass -Av8 if -mcpu=leon. - -2012-03-24 Steven Bosscher <steven@gcc.gnu.org> - - PR middle-end/52640 - * varasm.c: Include pointer-set.h. - (pending_assemble_externals_set): New pointer set. - (process_pending_assemble_externals): Destroy the pointer set. - (assemble_external): See if decl is in pending_assemble_externals_set, - and add it to pending_assemble_externals if necessary. - (init_varasm_once): Allocate pending_assemble_externals_set. - -2012-03-23 Michael Meissner <meissner@linux.vnet.ibm.com> - - Backported from mainline - 2012-03-06 Michael Meissner <meissner@linux.vnet.ibm.com> - - PR target/50310 - * config/rs6000/vector.md (vector_uneq<mode>): Add support for - UNEQ, LTGT, ORDERED, and UNORDERED IEEE vector comparisons. - (vector_ltgt<mode>): Likewise. - (vector_ordered<mode>): Likewise. - (vector_unordered<mode>): Likewise. - * config/rs6000/rs6000.c (rs6000_emit_vector_compare_inner): Likewise. - -2012-03-23 Joern Rennecke <joern.rennecke@embecosm.com> - - * config/epiphany/epiphany.c (epiphany_function_value_regno_p): - Make static. - -2012-03-22 Kaz Kojima <kkojima@gcc.gnu.org> - - Backported from mainline - 2012-03-02 Kaz Kojima <kkojima@gcc.gnu.org> - - PR target/48596 - PR target/48806 - * config/sh/sh.c (sh_register_move_cost): Increase cost between - GENERAL_REGS and FP_REGS for SImode. - -2012-03-22 Jakub Jelinek <jakub@redhat.com> - - PR middle-end/52547 - * tree-nested.c (convert_tramp_reference_stmt): Call declare_vars - on any new_local_var_chain vars declared during recursing on - GIMPLE_OMP_PARALLEL or GIMPLE_OMP_TASK body. - -2012-03-22 Georg-Johann Lay <avr@gjlay.de> - - Backport from 2012-03-22 mainline r185692. - - PR target/52496 - * config/avr/avr.md (unspec): Remove UNSPEC_MEMORY_BARRIER. - (unspecv): Add UNSPECV_MEMORY_BARRIER. - (cli_sei): Use unspec_volatile instead of unspec for memory barrier. - (delay_cycles_1, delay_cycles_2): Ditto. - (delay_cycles_3, delay_cycles_4): Ditto. - (nopv, *nopv): Ditto. - (sleep, *sleep): Ditto. - (wdr, *wdr): Ditto. - - Backport from 2012-03-21 mainline r185605. - - PR rtl-optimization/52543 - PR target/52461 - * config/avr/avr-protos.h (avr_load_lpm): New prototype. - * config/avr/avr.c (avr_mode_dependent_address_p): New function. - (TARGET_MODE_DEPENDENT_ADDRESS_P): New define. - (avr_load_libgcc_p): Restrict to __flash loads. - (avr_out_lpm): Only handle 1-byte loads from __flash. - (avr_load_lpm): New function. - (avr_find_unused_d_reg): Remove. - (avr_out_lpm_no_lpmx): Remove. - (adjust_insn_length): Handle ADJUST_LEN_LOAD_LPM. - * config/avr/avr.md (unspec): Add UNSPEC_LPM. - (load_<mode>_libgcc): Use UNSPEC_LPM instead of MEM. - (load_<mode>, load_<mode>_clobber): New insns. - (mov<mode>): For multi-byte move from non-generic - 16-bit address spaces: Expand to load_<mode> resp. - load_<mode>_clobber. - (load<mode>_libgcc): Remove expander. - (split-lpmx): Remove split. - - Backport from 2012-03-13 mainline r185329. - - PR target/52488 - * config/avr/avr.c (avr_prologue_setup_frame): Cut down stack - offset (size) to a value the insns can deal with. - (expand_epilogue): Ditto. - - Backport from 2012-03-12 mainline r185256. - - PR target/52499 - * config/avr/avr.c (avr_mode_code_base_reg_class): Change return - type from reg_class_t to enum reg_class. - * config/avr/avr-protos.h (avr_mode_code_base_reg_class): Ditto. - - Backport from 2012-03-12 mainline r185253. - - PR target/52148 - * config/avr/avr.c (avr_out_movmem): Fix typo in output template - for the case ADDR_SPACE_FLASH and AVR_HAVE_LPMX introduced in - r184615 from 2012-02-28. - - Backport from 2012-03-08 mainline r185105. - - * config/avr/avr.md (*addhi3, addhi3_clobber): Add "w" alternative - for constants in [-63,63]. - - Backport from 2012-03-08 mainline r185100. - - PR target/52496 - * config/avr/avr.c (avr_mem_clobber): New static function. - (avr_expand_delay_cycles): Add memory clobber operand to - delay_cycles_1, delay_cycles_2, delay_cycles_3, delay_cycles_4. - * config/avr/avr.md (unspec): Add UNSPEC_MEMORY_BARRIER. - (enable_interrupt, disable_interrupt): New expander. - (nopv, sleep, wdr): New expanders. - (delay_cycles_1): Add memory clobber. - (delay_cycles_2): Add memory clobber. - (delay_cycles_3): Add memory clobber. - (delay_cycles_4): Add memory clobber. - (cli_sei): New insn from former "enable_interrupt", - "disable_interrupt" with memory clobber. - (*wdt): New insn from former "wdt" with memory clobber. - (*nopv): Similar, but for "nopv". - (*sleep): Similar, but for "sleep". - - Backport from 2012-03-07 mainline r185043. - - PR target/52484 - * config/avr/avr.md (xload<mode>_A): Add R22... to register footprint. - - Backport from 2012-03-07 mainline r185032. - - PR target/52506 - * gcc/config/avr/avr.c (expand_epilogue): Fix order of restoration - to: RAMPZ, RAMPY, RAMPX, RAMPD. - (expand_prologue): Only clear RAMPZ if it has effect on RAM-read. - - Backport from 2012-03-07 mainline r185031. - - PR target/52505 - * config/avr/avr.c (avr_out_xload): Don't read unintentionally - from RAM. - * config/avr/avr.md (xload_8): Adjust insn length. - - Backport from 2012-03-07 mainline r185030. - - PR target/52461 - * gcc/config/avr/avr.c (avr_out_lpm): Clear RAMPZ after usage - if RAMPZ affects reading from RAM. - - Backport from 2012-03-05 mainline r184919. - - * config/avr/avr.md (*umaddqihi4.2): New insn-and-split. - -2012-03-22 Georg-Johann Lay <avr@gjlay.de> - - Backport from mainline r185259. - - PR other/52545 - * output.h (SECTION_EXCLUDE, SECTION_MACH_DEP): Don't use - SECTION_MACH_DEP reserved bits for SECTION_EXCLUDE. - -2012-03-22 Jakub Jelinek <jakub@redhat.com> - - Backported from mainline - 2012-03-13 Jakub Jelinek <jakub@redhat.com> - - PR c/52577 - * c-parser.c (c_parser_postfix_expression) - <case RID_BUILTIN_SHUFFLE>: Call mark_exp_read on argument values. - - * config/i386/smmintrin.h: Avoid /* within a comment. - * config/i386/nmmintrin.h: Likewise. - -2012-03-22 Richard Guenther <rguenther@suse.de> - - * BASE-VER: Set to 4.7.1. - * DEV-PHASE: Set to prerelease. - -2012-03-22 Release Manager - - * GCC 4.7.0 released. - -2012-03-16 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> - - * doc/install.texi (Specific, *-*-solaris2*): Improve wording. - -2012-03-15 Jakub Jelinek <jakub@redhat.com> - Andrew Pinski <apinski@cavium.com> - - PR middle-end/52592 - * builtins.c (expand_builtin_int_roundingfn_2): If expanding - BUILT_IN_IR{INT,OUND}* using optab fails, emit lr{int,ound}* - calls instead of __builtin_ir{int,ound}*. - -2012-03-14 Jakub Jelinek <jakub@redhat.com> - - PR c++/52582 - * config/rs6000/rs6000.c (call_ABI_of_interest): Return true - if c_node is NULL. - -2012-03-13 Joseph Myers <joseph@codesourcery.com> - - * doc/invoke.texi (-std=c99), doc/standards.texi (C language): - Refer to GCC 4.7 version of c99status.html. - -2012-03-12 Michael Meissner <meissner@linux.vnet.ibm.com> - - Backport from mainline - 2012-03-09 Michael Meissner <meissner@linux.vnet.ibm.com> - - * config/rs6000/linux64.h (OPTION_TARGET_CPU_DEFAULT): Do not - redefine to be NULL if the current bit-size is different from the - configured bit-size. - - * config/rs6000/rs6000.c (rs6000_option_override_internal): If the - cpu is defaulted, use PROCESSOR_DEFAULT and PROCESSOR_DEFAULT64 to - set the default tuning. Add asserts to make sure the cpu and tune - indexes are defined. Fix tests for cpu/tune index to use >= 0 to - test whether the index is set, instead of > 0. - (rs6000_file_start): Do not reset the default cpu if the current - bit-size is different from the configured bit-size. - -2012-03-12 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> - - * doc/install.texi (Specific, i?86-*-solaris2.[89]): Update - binutils reference. - (Specific, i?86-*-solaris2.10): Remove GCC 4.0 reference. - Update binutils references. - (Specific, *-*-solaris2*): Mention bundled GCC in Solaris 10 and 11. - Update binutils reference. - Update Sun as/GNU ld caveat. - Document binutils largefile requirement for LTO plugin. - Remove reference to alternate libpthread. - -2012-03-12 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> - - * doc/install.texi (Specific, alpha*-dec-osf5.1): Update binutils - reference. - (Specific, mips-sgi-irix6): Likewise. - -2012-03-08 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> - - * configure.ac (gcc_cv_as_ix86_tlsldmplt): Add label. - * configure: Regenerate. - -2012-03-07 Richard Henderson <rth@redhat.com> - - * config/m68k/m68k.h (ISA_HAS_TAS): New. - * config/m68k/sync.md (atomic_test_and_set): Use it. - (atomic_test_and_set_1): Likewise. - -2012-03-07 Ralf Corsépius <ralf.corsepius@rtems.org> - - PR target/51417 - * Makefile.in: Let install-gcc-ar depend on installdirs, - gcc-ar$(exeext), gcc-nm$(exeext), gcc-ranlib$(exeext). - Don't double canonicalize if cross-compiling. - -2012-03-06 Aldy Hernandez <aldyh@redhat.com> - - * trans-mem.c: New typedef for tm_region_p. - Define vector types for tm_region_p. - (tm_region_init): Replace region_worklist to a vector called - bb_regions. - -2012-03-06 Aldy Hernandez <aldyh@redhat.com> - - PR middle-end/52463 - * trans-mem.c (tm_region_init): Use last_basic_block. - -2012-03-05 Richard Henderson <rth@redhat.com> - - PR tree-opt/52242 - Revert: 2011-11-26 Richard Henderson <rth@redhat.com> - * omp-low.c (expand_omp_atomic): Assume anything aligned to - BIGGEST_ALIGNMENT is aligned. - -2012-03-05 Oleg Endo <olegendo@gcc.gnu.org> - - * config/sh/sh.c (TARGET_ATOMIC_TEST_AND_SET_TRUEVAL): New hook. - -2012-03-05 Richard Henderson <rth@redhat.com> - - PR target/52481 - * config/m68k/sync.md (atomic_test_and_set): Use expand_simple_unop - instead of calling negqi2 directly. - -2012-03-05 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> - - * config/mips/iris6.h [!USED_FOR_TARGET] (long_intmax): Declare. - (INTMAX_TYPE): Use it. - (UINTMAX_TYPE): Likewise. - (SUBTARGET_OVERRIDE_OPTIONS): Define. - (irix6_c_common_override_options): Declare. - (C_COMMON_OVERRIDE_OPTIONS): Define. - * config/mips/mips.c [TARGET_IRIX6] (long_intmax): Define. - * config/mips/irix6-c.c: New file. - * config/mips/t-irix6 (irix6-c.o): New target. - * config.gcc (mips-sgi-irix6.5): Set c_target_objs, - cxx_target_objs. - -2012-03-02 Richard Henderson <rth@redhat.com> - - * optabs.c (expand_atomic_test_and_set): Honor - atomic_test_and_set_trueval even when atomic_test_and_set - optab is not in use. - -2012-03-02 Peter Bergner <bergner@vnet.ibm.com> - - Backport from mainline - 2012-03-02 Peter Bergner <bergner@vnet.ibm.com> - - * config/rs6000/vsx.md (vsx_set_<mode>): Reorder operands. - -2012-03-02 Richard Guenther <rguenther@suse.de> - - * DEV-PHASE: Set to prerelease. - -2012-03-01 Richard Earnshaw <rearnsha@arm.com> - - * config.gcc (obsolete): Add all ARM targets using the FPA. - (with_fpu): Obsolete selection of the FPA or Maverick on ARM. - * doc/install.texi: Avoid references to obsolete ARM ports. - -2012-03-01 Joern Rennecke <joern.rennecke@embecosm.com> - - * config/epiphany/epiphany.md (movmisalign<mode>): New patterns. - -2012-03-01 Jeremy Bennett <jeremy.bennett@embecosm.com> - Joern Rennecke <joern.rennecke@embecosm.com> - - * doc/extend.texi: Expand and update information on interrupt - attribute for Epiphany. - -2012-03-01 Oleg Endo <olegendo@gcc.gnu.org> - - * config/sh/sh-protos.h: Update copyright notice dates. - * config/sh/sh.h: Likewise. - * config/sh/sh.md: Likewise. - * config/sh/constraints.md: Likewise. - * config/sh/predicates.md: Likewise. - -2012-03-01 Oleg Endo <olegendo@gcc.gnu.org> - - * config/sh/sh-protos.h (tertiary_reload_operand): Remove dead function. - * config/sh/sh.c (tertiary_reload_operand): Likewise. - -2012-03-01 Oleg Endo <olegendo@gcc.gnu.org> - - * config/sh/constraints.md: Fix comment typo. - -2012-03-01 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> - - PR target/52408 - * config/pa/pa.md (zvdep_imm32): Change type of variable x from int to - unsigned HOST_WIDE_INT. - (zvdep_imm64): Likewise. - (vdepi_ior): Change type of variable x from int to HOST_WIDE_INT. - (vdepi_and): Likewise. - Likewise for unamed 64-bit patterns. - * config/pa/predicates.md (lhs_lshift_cint_operand): Update comment. - -2012-03-01 Alexandre Oliva <aoliva@redhat.com> - - PR debug/52001 - PR rtl-optimization/52417 - * cselib.c (cselib_any_perm_equivs): New variable. - (cselib_reset_table): Check that it's not set when not - preserving constants. - (cselib_add_permanent_equiv): Set it. - (cselib_have_permanent_equivalences): New. - (cselib_init, cselib_finish): Reset it. - * cselib.h (cselib_have_permanent_equivalences): Declare. - * alias.c (get_addr): Restore earlier behavior when there - aren't permanent equivalences. - -2012-03-01 Steven Bosscher <steven@gcc.gnu.org> - - * config/mn10300/mn10300-modes.def: Fix copyright notice. - * config/v850/v850-modes.def: Fix copyright notice. - -2012-03-01 Georg-Johann Lay <avr@gjlay.de> - - * doc/extend.texi (AVR Built-in Functions): Document - __builtin_avr_flash_segment. - - * config/avr/builtins.def (__builtin_avr_flash_segment): New entry. - * config/avr/avr.md (flash_segment, flash_segment1): New expanders. - (*split.flash_segment): New insn-and-split. - * config/avr/avr.c (avr_init_builtins): Add local variables: - const_memx_void_node, const_memx_ptr_type_node, - char_ftype_const_memx_ptr. - -2012-03-01 Jakub Jelinek <jakub@redhat.com> - - PR tree-optimization/52445 - * tree-ssa-phiopt.c (struct name_to_bb): Remove ssa_name field, - add ssa_name_ver, offset and size fields and change store field - to bool. - (name_to_bb_hash, name_to_bb_eq): Adjust for the above changes. - (add_or_mark_expr): Likewise. Only consider previous stores - with the same size and offset. - (nt_init_block): Only look at gimple_assign_single_p stmts, - doesn't look at rhs2. - -2012-03-01 Richard Guenther <rguenther@suse.de> - - PR middle-end/52443 - * tree-cfg.c (verify_gimple_assign_unary): Allow any - conversions from integral types to pointer types. - -2012-03-01 Georg-Johann Lay <avr@gjlay.de> - - * config/avr/avr-c.c (avr_cpu_cpp_builtins): Restore built-in - defines for __UINT24_MAX__, __INT24_MAX__, __INT24_MIN__ - unintentionally removed in r184616. - -2012-03-01 Venkataramanan Kumar <venkataramanan.kumar@amd.com> - - * doc/invoke.texi: Document AMD bdver2 and remove mentioning - 3DNow from bdver1. - -2012-02-29 Jakub Jelinek <jakub@redhat.com> - Uros Bizjak <ubizjak@gmail.com> - - PR target/52437 - * config/i386/sse.md (vec_set<mode>_0): Swap "*r" and "fF" - alternatives, add "e" constraint to the new last alternative - and ! to last 3 alternatives. - -2012-02-29 Eric Botcazou <ebotcazou@adacore.com> - - * dwarf2out.c (modified_type_die): Set DW_AT_GNAT_descriptive_type and - DW_AT_artificial attributes at the end of the processing. - (gen_array_type_die): Likewise. - (gen_enumeration_type_die): Likewise. - (gen_struct_or_union_type_die): Likewise. - (add_gnat_descriptive_type_attribute): Do not suppress debug info for - the parent type. - -2012-02-29 Jakub Jelinek <jakub@redhat.com> - - PR middle-end/52419 - * expr.c (expand_assignment): If doing misaligned store that doesn't - cover all mode bits, perform a RMW cycle. - - PR tree-optimization/52429 - * tree-parloops.c (separate_decls_in_region_debug): Return early - if var is LABEL_DECL. - -2012-02-29 Bill Schmidt <wschmidt@linux.vnet.ibm.com> - - PR tree-optimization/52424 - * tree-ssa-dom.c (dom_opt_leave_block): Push a marker before - calling dom_thread_across_edge. - -2012-02-29 Georg-Johann Lay <avr@gjlay.de> - - * config/avr/avr.c: Move definition of TARGET macros to end of file. - -2012-02-29 Georg-Johann Lay <avr@gjlay.de> - - * config/avr/avr-protos.h (avr_output_bld): Remove unused prototype. - * config/avr/avr.c (avr_output_bld): Remove unused function. - (avr_out_sbxx_branch): Use "%T" to print bit position. - -2012-02-29 Georg-Johann Lay <avr@gjlay.de> - - * config/avr/avr.md: Untabify. - -2012-02-29 Georg-Johann Lay <avr@gjlay.de> - - * config/avr/avr.md (eqne): New code iterator. - (*dec-and-branchsi): Use it in text peephole's condition. - (*dec-and-branchhi): Ditto. - (*dec-and-branchqi): Ditto. - -2012-02-29 Georg-Johann Lay <avr@gjlay.de> - - PR target/49939 - * config/avr/avr.h (ASM_SPEC): Add -mno-skip-bug if we know that - the device does not have the skip-bug. - -2012-02-29 Oleg Endo <olegendo@gcc.gnu.org> - - * doc/invoke.texi (-msoft-atomic): Add more detailed description. - (-mbranch-cost, -mcbranchdi -mcmpeqdi -mfused-madd - -mpretend-cmove): New. - -2012-02-29 Jakub Jelinek <jakub@redhat.com> - - PR bootstrap/52397 - * df.h (struct df_d): Adjust comment that hard_regs_live_count - doesn't count DEBUG_INSN refs. - * df-scan.c (df_ref_create_structure): Don't set DF_HARD_REG_LIVE - for DEBUG_INSN refs. - -2012-02-28 Ulrich Weigand <Ulrich.Weigand@de.ibm.com> - - Partially revert: - - 2012-02-20 Richard Guenther <rguenther@suse.de> - PR tree-optimization/52298 - * tree-vect-stmts.c (vectorizable_load): Properly use - STMT_VINFO_DR_STEP instead of DR_STEP when vectorizing - outer loops. - -2012-02-28 Aldy Hernandez <aldyh@redhat.com> - - PR middle-end/51752 - * gimple.h (gimple_in_transaction): New. - (gimple_set_in_transaction): New. - (struct gimple_statement_base): Add in_transaction field. - * tree-ssa-loop-im.c: (movement_possibility): Restrict movement of - transaction loads. - (tree_ssa_lim_initialize): Compute transaction bits. - * tree.h (compute_transaction_bits): Protoize. - * trans-mem.c (tm_region_init): Use the heap to store BB - auxilliary data. - (compute_transaction_bits): New. - -2012-02-28 Bernhard Reutner-Fischer <aldot@gcc.gnu.org> - - * gcc.c (display_help): Document --help=common and sort entries - alphabetically. - -2012-02-28 Bernhard Reutner-Fischer <aldot@gcc.gnu.org> - - * doc/install.texi: Document check-$LANG specific shortcuts - -2012-02-28 Matthew Gretton-Dann <matthew.gretton-dann@arm.com> - - PR target/51534 - * config/arm/arm.c (neon_builtin_data): Add entries for vcgeu - and vcgtu. - * config/arm/arm_neon.h: Regenerate. - * config/arm/neon.md (unspec): Add UNSPEC_VCGEU, and UNSPEC_VCGTU. - (neon_vcgeu): New insn. - (neon_vcgtu): Likewise. - * config/arm/neon.ml (s_8_32, u_8_32): New lists. - (ops): Unsigned comparison intrinsics call a different - builtin. - -2012-02-28 Richard Guenther <rguenther@suse.de> - - PR target/52407 - * config/i386/i386.c (ix86_expand_vector_set): Fix element - ordering for the VEC_CONCAT for two element vectors for - V2SFmode, V2SImode and V2DImode. - -2012-02-28 Richard Earnshaw <rearnsha@arm.com> - - PR target/49448 - * config.gcc (arm*-*-linux*): Use an unambiguous pattern for - detecting big-endian triplets. - -2012-02-28 Richard Earnshaw <rearnsha@arm.com> - - * arm.c (aapcs_vfp_is_call_or_return_candidate): Only use the machine - mode if there is no type information available. - -2012-02-28 Thomas Koenig <tkoenig@gcc.gnu.org> - - PR tree-optimization/53207 - * doc/invoke.texi: Document as experimental and relying on graphite. - -2012-02-28 Georg-Johann Lay <avr@gjlay.de> - - * config/avr/avr-devices.c (avr_mcu_type): Adjust NULL part - of initializer to changes from r184614. - -2012-02-28 Richard Guenther <rguenther@suse.de> - - PR tree-optimization/52395 - * tree-sra.c (build_ref_for_offset): Also look at the base - TYPE_ALIGN when figuring out the alignment of the replacement. - -2012-02-28 Richard Guenther <rguenther@suse.de> - - PR tree-optimization/52402 - * ipa-prop.c (ipa_modify_call_arguments): Properly use - mis-aligned types when creating the accesses at the call site. - -2012-02-28 Georg-Johann Lay <avr@gjlay.de> - - * config/avr/builtins.def: New file. - * config/avr/t-avr (avr.o, avr-c.o): Depend on it. - * config/avr/avr.c (enum avr_builtin_id): Use it. - (avr_init_builtins): Use it. And use avr_bdesc. - (bdesc_1arg): Remove. - (bdesc_2arg): Remove. - (bdesc_3arg): Remove. - (struct avr_builtin_description): Add field n_args. - (avr_bdesc): New static variable using builtins.def. - (avr_expand_builtin): Use it. - Don't call avr_expand_delay_cycles if op0 is not CONST_INT. - (avr_fold_builtin): Fold AVR_BUILTIN_SWAP. - Don't fold AVR_BUILTIN_INSERT_BITS if arg0 is not INTEGER_CST. - -2012-02-28 Georg-Johann Lay <avr@gjlay.de> - - PR target/52148 - * config/avr/avr.md (movmem_<mode>): Replace match_operand that - match only one single hard register with respective hard reg rtx. - (movmemx_<mode>): Ditto. - * config/avr/avr.c (avr_emit_movmemhi): Adapt expanding to new - insn anatomy of movmem[x]_<mode>. - (avr_out_movmem): Same for printing assembler and operand usage. - -2012-02-28 Georg-Johann Lay <avr@gjlay.de> - - PR target/49868 - PR target/52261 - * doc/extend.texi (AVR Named Address Spaces): No more try to fix - address spaces located outside of device flash. - - * config/avr/avr.h (base_arch_s): Remove field n_segments. - (mcu_type_s): Add field n_flash. - * config/avr/avr-devices.c (avr_arch_types): Remove .n_segments. - Set .have_elpm and .have_elpmx to 1 for avrxmega4 and avrxmega5. - (AVR_MCU): Add N_FLASH argument. - * config/avr/avr-mcus.def (AVR_MCU): Add initializer for .n_flash. - * config/avr/avr-c.c (avr_cpu_cpp_builtins): Only define built-in - macro __FLASH<n> if that address space makes sense for the device. - * config/avr/avr.c (avr_out_lpm): Don't try to fix address spaces - outside of target flash. - (avr_asm_named_section): Ditto. - (avr_asm_select_section): Ditto. - (avr_addr_space_convert): Ditto. - (avr_emit_movmemhi): Ditto. - (avr_nonconst_pointer_addrspace, avr_pgm_check_var_decl): Error if - address space is outside of device flash. - (avr_insert_attributes): Ditto. - (avr_xload_libgcc_p): Use avr_current_device->n_flash instead of - avr_current_arch->n_segments. - -2012-02-27 H.J. Lu <hongjiu.lu@intel.com> - - PR target/52352 - * config/i386/i386.md (*movabs<mode>_1): Enable only for - TARGET_LP64. - (*movabs<mode>_2): Likewise. - -2012-02-27 Jakub Jelinek <jakub@redhat.com> - - PR target/52375 - * config/arm/neon.md (vashr<mode>3, vlshr<mode>3): Use - s_register_operand in the test instead of REG_P. Don't call - gen_reg_rtx if it won't be used. - - PR tree-optimization/52376 - * ipa-split.c (split_function): Ignore CLOBBER stmts. - -2012-02-27 Stuart Henderson <shenders@gcc.gnu.org> - - * ifcvt.c (noce_get_condition): Check condition variable is not - small_register_classes_for_mode_p before accepting. - -2012-02-27 Uros Bizjak <ubizjak@gmail.com> - - * config/i386/i386.md (*movabs<mode>_1): Fix operand 1 constraints. - -2012-02-27 Matthew Gretton-Dann <matthew.gretton-dann@arm.com> - - Revert: - 2012-01-09 Matthew Gretton-Dann <matthew.gretton-dann@arm.com> - * config/arm/arm-cores.def (cortex-a15): Use cortex_a15_tune for - tuning parameters. - * config/arm/arm.c (arm_cortex_a15_tune): New static variable. - -2012-02-27 Oleg Endo <olegendo@gcc.gnu.org> - - * config/sh/sh.h: Delete dead GO_IF_LEGITIMATE_INDEX macro. - -2012-02-26 Oleg Endo <olegendo@gcc.gnu.org> - - * config/sh/predicates.md: Remove blank lines. - * config/sh/sh.c: Fix typos in comments. - * config/sh/constraints.md: Likewise. - * config/sh/sh.md: Remove blank lines. - Fix typos in comments. Use ;; as comment characters. - -2012-02-26 Walter Lee <walt@tilera.com> - - * config/tilegx/tilegx.c (match_pcrel_step2): Fix instruction pattern. - (replace_mov_pcrel_step2): Ditto. - -2012-02-25 Alexandre Oliva <aoliva@redhat.com> - - PR debug/52001 - * alias.c (refs_newer_value_cb, refs_newer_value_p): New. - (get_addr): Walk canonical value's locs. Avoid returning VALUEs - and locs that reference values newer than the non-canonical value - at hand. Return the canonical value as a worst case. - (memrefs_conflict_p): Walk canonical value's locs. - - PR debug/52001 - * cselib.c (preserve_only_constants): Rename to... - (preserve_constants_and_equivs): ... this. Split out... - (invariant_or_equiv_p): ... this. Preserve plus expressions - of other preserved expressions too. - (cselib_reset_table): Adjust. - * var-tracking.c (reverse_op): Use canonical value to build - reverse operation. - -2012-02-23 Kai Tietz <ktietz@redhat.com> - - * config/i386/i386.c (ix86_delegitimize_address): Handle - UNSPEC_PCREL plus displacement. - -2012-02-24 Georg-Johann Lay <avr@gjlay.de> - - PR target/52261 - * config/avr/avr.c (avr_out_movhi_mr_r_xmega): Use base - to test for unusedness in st X addressing. - -2012-02-24 Richard Guenther <rguenther@suse.de> - - PR middle-end/52361 - * gimple.c (walk_gimple_op): Use predicates with less redundant tests. - (is_gimple_reg_type): Move inline ... - * gimple.h (is_gimple_reg_type): ... here. - -2012-02-24 Richard Guenther <rguenther@suse.de> - - PR middle-end/52361 - * passes.c (execute_function_todo): When verifying SSA form - verify gimple form first. - * tree-ssa.c (verify_ssa): Do not verify gimple form here. - -2012-02-24 Richard Guenther <rguenther@suse.de> - - PR middle-end/52355 - * fold-const.c (fold_addr_of_array_ref_difference): New function. - (fold_binary_loc): Use it to extend the existing &a[i] - &a[j] folding. - -2012-02-13 Bernhard Reutner-Fischer <aldot@gcc.gnu.org> - - * tree-if-conv (predicate_scalar_phi): Commentary typo fix. - -2012-02-23 Bernhard Reutner-Fischer <aldot@gcc.gnu.org> - - * tree-phinodes.c (make_phi_node): Mark static. - * tree-flow.h (make_phi_node): Remove extern decl. - * doc/gimple.texi (make_phi_node): Remove documentation. - -2012-02-23 Bernhard Reutner-Fischer <aldot@gcc.gnu.org> - - * tree-into-ssa (update_ssa): Avoid trailing whitespace in dump_file. - * tree-ssa-sccvn.c (print_scc): Ditto. - -2012-02-23 Bernhard Reutner-Fischer <aldot@gcc.gnu.org> - - * doc/passes.texi (Full redundancy elimination): Fix typo. - -2012-02-23 Bernhard Reutner-Fischer <aldot@gcc.gnu.org> - - * doc/invoke.texi (-fdse, -fdce): Remove duplicate entries. - -2012-02-23 Eric Botcazou <ebotcazou@adacore.com> - - PR bootstrap/52287 - * haifa-sched.c (rank_for_schedule): Stabilize sort for debug insns. - -2012-02-23 Uros Bizjak <ubizjak@gmail.com> - - PR c/52290 - * c-decl.c (start_function): Exit early if decl1 is not FUNTION_DECL. - -2012-02-23 Georg-Johann Lay <avr@gjlay.de> - - * config/avr/avr.md (code_stdname): Add ior, xor. - (xior): New code iterator. - (*<code_stdname><mode>qi.byte0): Use xior instead of ior. - (*<code_stdname><mode>qi.byte1-3): Ditto. - -2012-02-23 Jakub Jelinek <jakub@redhat.com> - - PR tree-optimization/52019 - * ipa-split.c (find_return_bb, find_retval, visit_bb): Ignore - CLOBBER stmts. - -2012-02-23 Ulrich Weigand <Ulrich.Weigand@de.ibm.com> - - * acinclude.m4: Use HAVE_INITFINI_ARRAY_SUPPORT instead of - HAVE_INITFINI_ARRAY to work around namespace pollution in - certain versions of newlib system headers. - * config.in: Regenerate. - * configure: Regenerate. - * config/initfini-array.h: Use HAVE_INITFINI_ARRAY_SUPPORT - instead of HAVE_INITFINI_ARRAY. - -2012-02-22 Uros Bizjak <ubizjak@gmail.com> - - PR target/52330 - * config/i386/i386.c (ix86_print_operand) <case 'H'>: Error out if x - is not offsettable memory reference. - -2012-02-22 Georg-Johann Lay <avr@gjlay.de> - - PR target/18145 - * config/avr/avr.c (avr_asm_output_aligned_decl_common): Skip - setting avr_need_clear_bss_p for __gnu_lto* symbols. - -2012-02-22 Georg-Johann Lay <avr@gjlay.de> - - * config/avr/avr.h (avr_accumulate_outgoing_args): Return int. - * config/avr/avr.c (avr_accumulate_outgoing_args): Return int. - -2012-02-22 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> - - * configure.ac (LIB_TLS_SPEC): Enforce use of alternate thread - library on Solaris 8 even without TLS support. - * configure: Regenerate. - -2012-02-22 Richard Guenther <rguenther@suse.de> - - PR middle-end/52329 - * gimple-fold.c (fold_stmt_1): Also canonicalize ADDR_EXPRs - for GIMPLE_DEBUG stmts. - -2012-02-22 Martin Jambor <mjambor@suse.cz> - - PR middle-end/51782 - * emit-rtl.c (set_mem_attributes_minus_bitpos): Set address space - according to the base object. - -2012-02-22 Georg-Johann Lay <avr@gjlay.de> - - PR rtl-optimization/50063 - * config/avr/avr.md (movhi_sp_r): Handle -1 (unknown IRQ state) - and 2 (8-bit SP) in operand 2. - * config/avr/avr.c (avr_prologue_setup_frame): Adjust prologue - setup to use movhi_sp_r instead of vanilla move to write SP. - Adjust REG_CFA notes to superseed unspec. - (expand_epilogue): Adjust epilogue setup to use movhi_sp_r instead - of vanilla move. - As function body might contain CLI or SEI: Use irq_state 0 (IRQ - known to be off) only with TARGET_NO_INTERRUPTS. Never use - irq_state 1 (IRQ known to be on) here. - -2012-02-21 Bernd Schmidt <bernds@codesourcery.com> - - * ira.c (check_allocation): Use REG_WORDS_BIG_ENDIAN, not - WORDS_BIG_ENDIAN. - * ira-color.c (setup_profitable_hard_regs, check_hard_reg_p, - assign_hard_reg): Likewise. - -2012-02-21 Georg-Johann Lay <avr@gjlay.de> - - * config/avr/avr.md (neghi2): Remove "!d,0" alternative. Tweak "r,0". - -2012-02-21 Georg-Johann Lay <avr@gjlay.de> - - * config/avr/avr.md - (*dec-and-branchhi!=-1.d.clobber): New text peephole. - (*dec-and-branchhi!=-1.l.clobber): New text peephole. - -2012-02-21 Georg-Johann Lay <avr@gjlay.de> - - * config/avr/avr-protos.h (avr_accumulate_outgoing_args): Move - prototype from here to... - * config/avr/avr.h: ...here. - -2012-02-21 Richard Earnshaw <rearnsha@arm.com> - - PR target/52294 - * thumb2.md (thumb2_shiftsi3_short): Split register and - immediate shifts. For register shifts tie operands 0 and 1. - (peephole2 for above): Check that register-controlled shifts - have suitably tied operands. - -2012-02-21 Quentin Neill <quentin.neill@amd.com> - - PR target/52137 - * config/i386/bdver1.md (bdver1_call, bdver1_push, - bdver1_pop, bdver1_leave, bdver1_lea, bdver1_imul_DI, bdver1_imul, - bdver1_imul_mem_DI, bdver1_imul_mem, bdver1_idiv, bdver1_idiv_mem, - bdver1_str, bdver1_idirect, bdver1_ivector, bdver1_idirect_loadmov, - bdver1_idirect_load, bdver1_ivector_load, bdver1_idirect_movstore, - bdver1_idirect_both, bdver1_ivector_both, bdver1_idirect_store, - bdver1_ivector_store, bdver1_fldxf, bdver1_fld, bdver1_fstxf, - bdver1_fst, bdver1_fist, bdver1_fmov_bdver1, bdver1_fadd_load, - bdver1_fadd, bdver1_fmul_load, bdver1_fmul, bdver1_fsgn, - bdver1_fdiv_load, bdver1_fdiv, bdver1_fpspc_load, bdver1_fpspc, - bdver1_fcmov_load, bdver1_fcmov, bdver1_fcomi_load, - bdver1_fcomi, bdver1_fcom_load, bdver1_fcom, - bdver1_fxch, bdver1_ssevector_avx128_unaligned_load, - bdver1_ssevector_avx256_unaligned_load, - bdver1_ssevector_sse128_unaligned_load, - bdver1_ssevector_avx128_load, bdver1_ssevector_avx256_load, - bdver1_ssevector_sse128_load, bdver1_ssescalar_movq_load, - bdver1_ssescalar_vmovss_load, bdver1_ssescalar_sse128_load, - bdver1_mmxsse_load, bdver1_sse_store_avx256, bdver1_sse_store, - bdver1_mmxsse_store_short, bdver1_ssevector_avx256, - bdver1_movss_movsd, bdver1_mmxssemov, bdver1_sselog_load_256, - bdver1_sselog_256, bdver1_sselog_load, bdver1_sselog, - bdver1_ssecmp_load, bdver1_ssecmp, bdver1_ssecomi_load, - bdver1_ssecomi, bdver1_vcvtX2Y_avx256_load, bdver1_vcvtX2Y_avx256, - bdver1_ssecvt_cvtss2sd_load, bdver1_ssecvt_cvtss2sd, - bdver1_sseicvt_cvtsi2sd_load, bdver1_sseicvt_cvtsi2sd, - bdver1_ssecvt_cvtpd2ps_load, bdver1_ssecvt_cvtpd2ps, - bdver1_ssecvt_cvtdq2ps_load, bdver1_ssecvt_cvtdq2ps, - bdver1_ssecvt_cvtdq2pd_load, bdver1_ssecvt_cvtdq2pd, - bdver1_ssecvt_cvtps2pd_load, bdver1_ssecvt_cvtps2pd, - bdver1_ssecvt_cvtsX2si_load, bdver1_ssecvt_cvtsX2si, - bdver1_ssecvt_cvtpd2pi_load, bdver1_ssecvt_cvtpd2pi, - bdver1_ssecvt_cvtpd2dq_load, bdver1_ssecvt_cvtpd2dq, - bdver1_ssecvt_cvtps2pi_load, bdver1_ssecvt_cvtps2pi, - bdver1_ssemuladd_load_256, bdver1_ssemuladd_256, - bdver1_ssemuladd_load, bdver1_ssemuladd, bdver1_sseimul_load, - bdver1_sseimul, bdver1_sseiadd_load, bdver1_sseiadd, - bdver1_ssediv_double_load_256, bdver1_ssediv_double_256, - bdver1_ssediv_single_load_256, bdver1_ssediv_single_256, - bdver1_ssediv_double_load, bdver1_ssediv_double, - bdver1_ssediv_single_load, bdver1_ssediv_single, bdver1_sseins): - Add "bdver2" attribute. - -2012-02-21 Andreas Krebbel <Andreas.Krebbel@de.ibm.com> - - * config/s390/s390.c (s390_option_override): Make -mhard-dfp the - default if possible and not specified otherwise. - -2012-02-21 Richard Guenther <rguenther@suse.de> - - PR middle-end/52314 - * gimplify.c (create_tmp_from_val): Use the main variant type - for the type of the temporary we create. - -2012-02-21 Richard Guenther <rguenther@suse.de> - - PR tree-optimization/52324 - * gimplify.c (gimplify_expr): When re-gimplifying expressions - do not gimplify a MEM_REF address operand if it is already - in suitable form. - -2012-02-21 Andreas Krebbel <Andreas.Krebbel@de.ibm.com> - - * config/s390/s390.md ("fixuns_trunc<mode>si2"): Replace - TARGET_HARD_FLOAT with TARGET_HARD_DFP. - -2012-02-21 Richard Guenther <rguenther@suse.de> - - * tree-vect-stmts.c (vectorizable_load): Use pre-computed - nested_in_vect_loop. - -2012-02-21 Jakub Jelinek <jakub@redhat.com> - - PR tree-optimization/52318 - * gimple-fold.c (gimplify_and_update_call_from_tree): Add - vdef also to non-pure/const call stmts in the sequence. - -2012-02-20 David S. Miller <davem@davemloft.net> - - * config/sparc/sparc.md (load_pcrel_sym<P:mode>): Explain why we - don't use the "rd %pc" instruction on v9 for PIC register loads. - -2012-02-20 Aldy Hernandez <aldyh@redhat.com> - - PR middle-end/52141 - * trans-mem.c (ipa_tm_scan_irr_block): Error out on GIMPLE_ASM's - in a transaction safe function. - -2012-02-20 Kai Tietz <ktietz@redhat.com> - - PR target/52238 - * stor-layout.c (place_field): Handle desired_align for - ms-bitfields, too. - -2012-02-20 Richard Guenther <rguenther@suse.de> - - PR tree-optimization/52298 - * tree-vect-stmts.c (vectorizable_store): Properly use - STMT_VINFO_DR_STEP instead of DR_STEP when vectorizing - outer loops. - (vectorizable_load): Likewise. - * tree-vect-data-refs.c (vect_analyze_data_ref_access): - Access DR_STEP after ensuring it is not NULL. - -2012-02-20 Jakub Jelinek <jakub@redhat.com> - - PR tree-optimization/52286 - * fold-const.c (fold_binary_loc): For (X & C1) | C2 - optimization use double_int_to_tree instead of build_int_cst_wide, - rewrite to use double_int vars. - -2012-02-20 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> - - PR target/50166 - * acinclude.m4 (gcc_AC_INITFINI_ARRAY): Require gcc_SUN_LD_VERSION. - Define _start. - Remove -e 0 from $gcc_cv_ld invocation. - Only use __GLIBC_PREREQ if defined. - Enable on Solaris since Solaris 8 patch. - (gcc_SUN_LD_VERSION): New macro. - * configure.ac (ld_ver) <*-*-solaris2*>: Refer to - gcc_SUN_LD_VERSION for version number format. - * configure: Regenerate. - * varasm.c (get_elf_initfini_array_priority_section): Set - SECTION_NOTYPE for non-default priority. - Use get_section instead of get_unnamed_section to emit - .init_array/.fini_array with default priority. - -2012-02-19 Richard Sandiford <rdsandiford@googlemail.com> - - * config/mips/mips.c (mips_need_mips16_rdhwr_p): New variable. - (mips_get_tp): Set it. Record that __mips16_rdhwr binds locally. - (mips_start_unique_function, mips_output_mips16_rdhwr) - (mips_code_end): New functions. - (TARGET_ASM_CODE_END): Define. - -2012-02-19 Richard Sandiford <rdsandiford@googlemail.com> - - * config/mips/mips.c (mips16_build_call_stub): Add CFI information - to stubs with non-sibling calls. - -2012-02-18 Sandra Loosemore <sandra@codesourcery.com> - - * doc/invoke.texi (-fira-* options): Copy-edit. - (ira-* parameters): Copy-edit. - -2012-02-17 Sandra Loosemore <sandra@codesourcery.com> - - * doc/invoke.texi: Minor copy-edits to bring into conformance with - GCC coding conventions. - -2012-02-17 Sandra Loosemore <sandra@codesourcery.com> - - * doc/invoke.texi: Consistently hyphenate "big-endian"/"little-endian" - when used as adjectives. - -2012-02-16 Sandra Loosemore <sandra@codesourcery.com> - - * doc/invoke.texi: Clean up "that"/"which" confusion. - -2012-02-17 Steven Bosscher <steven@gcc.gnu.org> - - * system.h: Poison SMALL_REGISTER_CLASSES - * config/rl78/rl78.h: Replace SMALL_REGISTER_CLASSES with hook. - * config/rx/rx.h: Remove SMALL_REGISTER_CLASSES. - -2012-02-16 Jakub Jelinek <jakub@redhat.com> - - PR tree-optimization/52285 - * tree-tailcall.c (find_tail_calls): Ignore gimple_clobber_p stmts - when deciding if a call is a tail call or tail recursion. - -2012-02-16 Kai Tietz <ktietz@redhat.com> - - * config/i386/i386.c (legitimate_pic_address_disp_p): Allow - interger-constant displacement for UNSPEC_PCREL. - -2012-02-16 Jakub Jelinek <jakub@redhat.com> - - PR rtl-optimization/52208 - * ira-costs.c (scan_one_insn): Don't decrease mem_cost - for MEMs with REG_EQUIV, if the MEM isn't general_operand. - - PR tree-optimization/52255 - * tree-vect-loop-manip.c (slpeel_tree_peel_loop_to_edge): If - loop->header has virtual PHI, but exit_e->dest doesn't, add - virtual PHI to exit_e->dest and adjust all uses after the loop. - - PR debug/52260 - * dwarf2out.c (copy_decls_walk): Fill in *slot before traversing - children with clone_tree_hash, not after it. - -2012-02-16 Iain Sandoe <iains@gcc.gnu.org> - - * config/darwin.h (ASM_OUTPUT_LABELREF): Add user label prefix for - extended identifiers. - -2012-02-16 Jakub Jelinek <jakub@redhat.com> - - PR middle-end/51929 - * cgraphunit.c (verify_edge_corresponds_to_fndecl): If node is - a same_body_alias, also test whether e->callee isn't a former - or current clone of the decl this is a same body alias of. - - PR translation/52264 - * cgraphunit.c (verify_cgraph_node): Fix a typo. - -2012-02-15 Sandra Loosemore <sandra@codesourcery.com> - - * doc/invoke.texi: Clean up "n-bit/byte/word" modifiers. - -2012-02-15 Michael Meissner <meissner@linux.vnet.ibm.com> - - PR target/52199 - * config/rs6000/rs6000.c (rs6000_expand_vector_init): Use - force_reg instead of copy_to_reg for better optimization. Force - non-register or memory operands into a register. - -2012-02-15 Andrew MacLeod <amacleod@redhat.com> - - * extend.texi: Reserve upper bits of memory model for future use. - -2012-01-15 Georg-Johann Lay <avr@gjlay.de> - Anatoly Sokolov <aesok@post.ru> - Eric Weddington <eric.weddington@atmel.com> - - PR target/52261 - * config/avr/avr-devices.c (avr_arch_types): Add avrxmega2, - avrxmega4, avrxmega5, avrxmega6, avrxmega7. - Rewrite initializers for .macro. - * config/avr/avr-mcus.def (AVR_MCU): Add known MCUs: - avrxmega2: atxmega16a4, atxmega16d4, atxmega16x1, atxmega32a4 - atxmega32d4, atxmega32x1. - avrxmega4: atxmega64a3, atxmega64d3. - avrxmega5: atxmega64a1, atxmega64a1u. - avrxmega6: atxmega128a3, atxmega128d3, atxmega192a3, atxmega192d3, - atxmega256a3, atxmega256a3b, atxmega256a3bu, atxmega256d3. - avrxmega7: atxmega128a1, atxmega128a1u. - * config/avr/avr.h (enum avr_arch): Add: ARCH_AVRXMEGA2, - ARCH_AVRXMEGA4, ARCH_AVRXMEGA5, ARCH_AVRXMEGA6, ARCH_AVRXMEGA7. - (struct base_arch_s): Rename reserved to xmega_p. - Rename reserved2 to have_rampd. - (AVR_XMEGA): New define. - (AVR_HAVE_RAMPD, AVR_HAVE_RAMPX, AVR_HAVE_RAMPY): New defines. - (AVR_HAVE_RAMPZ): Change definition to fit xmega. - * config/avr/predicates.md (io_address_operand): Take into - account SFR offset. - (low_io_address_operand): Ditto. - (high_io_address_operand): Ditto. - * config/avr/avr.md (isa): Add alternatives no_xmega, xmega. - (enabled, movhi_sp_r): Use them. - * config/avr/avr-c.c (avr_cpu_cpp_builtins): Use - cpp_define_formatted to built-in define __AVR_ARCH__. - (__AVR_XMEGA__): New built-in define. - (__AVR_HAVE_RAMPD__): New built-in define. - (__AVR_HAVE_RAMPX__): New built-in define. - (__AVR_HAVE_RAMPY__): New built-in define. - (__AVR_HAVE_RAMPZ__): Change condition when to built-in define it. - - * config/avr/avr.c (avr_addr_t): Add ccp, rampd, rampx, rampy. - (avr_option_override): Initialize them. - (sreg_rtx, rampd_rtx, rampx_rtx, rampy_rtx): New GTY rtx. - (avr_init_expanders): Initialize them. No more block several calls. - (emit_push_sfr): New static function. - (avr_prologue_setup_frame): Use it to push SREG, RAMPD/X/Y/Z as needed. - Handle AVR_XMEGA. - (expand_epilogue): Handle AVR_XMEGA. Pop RAMPD/X/Y/Z as needed. - (avr_print_operand): Print addreeses as symbols for - RAMPX, RAMPY, RAMPD, CCP. - (output_movhi): Handle AVR_XMEGA when writing to SP. - (avr_out_movhi_mr_r_xmega): New static function. - (out_movhi_mr_r): Forward to avr_out_movhi_mr_r_xmega for AVR_XMEGA. - (avr_file_start): Print symbol defines for __RAMPX__, __RAMPY__, - __RAMPD__, __CCP__ as needed. - - * config/avr/multilib.h: Regenerate. - * config/avr/t-multilib: Regenerate. - * config/avr/avr-tables.opt: Regenerate. - -2012-02-15 Tobias Grosser <grosser@fim.uni-passau.de> - - PR tree-optimization/50561 - * graphite-flattening.c (lst_project_loop): Do not - remove old scattering dimensions after flattening. - (lst_do_flatten): Likewise. - -2012-02-15 Georg-Johann Lay <avr@gjlay.de> - - * doc/extend.texi (AVR Built-in Functions): Remove doc for - __builtin_avr_map8, __builtin_avr_map16. - Document __builtin_avr_insert_bits. - - * config/avr/avr.md (map_bitsqi, map_bitshi): Remove. - (insert_bits): New insn. - (adjust_len.map_bits): Rename to insert_bits. - (UNSPEC_MAP_BITS): Rename to UNSPEC_INSERT_BITS. - * avr-protos.h (avr_out_map_bits): Remove. - (avr_out_insert_bits, avr_has_nibble_0xf): New. - * config/avr/constraints.md (Cxf,C0f): New. - * config/avr/avr.c (avr_cpu_cpp_builtins): Remove built-in - defines __BUILTIN_AVR_MAP8, __BUILTIN_AVR_MAP16. - New built-in define __BUILTIN_AVR_INSERT_BITS. - * config/avr/avr.c (TARGET_FOLD_BUILTIN): New define. - (enum avr_builtin_id): Add AVR_BUILTIN_INSERT_BITS. - (avr_move_bits): Rewrite. - (avr_fold_builtin, avr_map_metric, avr_map_decompose): New static - functions. - (avr_map_op_t): New typedef. - (avr_map_op): New static variable. - (avr_out_insert_bits, avr_has_nibble_0xf): New functions. - (adjust_insn_length): Handle ADJUST_LEN_INSERT_BITS. - (avr_init_builtins): Add definition for __builtin_avr_insert_bits. - (bdesc_3arg, avr_expand_triop_builtin): New. - (avr_expand_builtin): Use them. And handle AVR_BUILTIN_INSERT_BITS. - (avr_revert_map, avr_swap_map, avr_id_map, avr_sig_map): Remove. - (avr_map_hamming_byte, avr_map_hamming_nonstrict): Remove. - (avr_map_equal_p, avr_map_sig_p): Remove. - (avr_out_swap_bits, avr_out_revert_bits, avr_out_map_bits): Remove. - (bdesc_2arg): Remove AVR_BUILTIN_MAP8, AVR_BUILTIN_MAP16. - (adjust_insn_length): Remove handling for ADJUST_LEN_MAP_BITS. - (enum avr_builtin_id): Remove AVR_BUILTIN_MAP8, AVR_BUILTIN_MAP16. - (avr_init_builtins): Remove __builtin_avr_map8, __builtin_avr_map16. - (avr_expand_builtin): Remove AVR_BUILTIN_MAP8, AVR_BUILTIN_MAP16. - -2012-02-14 Bernd Schmidt <bernds@codesourcery.com> - - * config/c6x/c6x.md (reserve_cycles): New attribute. - * config/c6x/c6x.c (c6x_sched_reorder_1): Ensure insns we predicate - don't reserve functional units after the branch occurs. - -2012-02-14 Aldy Hernandez <aldyh@redhat.com> - - PR middle-end/52142 - * ipa-inline.c (can_inline_edge_p): Do not inline tm_pure - functions into non-tm_pure functions. - -2012-02-14 Eric Botcazou <ebotcazou@adacore.com> - - PR lto/52178 - * gimple.c (iterative_hash_gimple_type): Use RECORD_OR_UNION_TYPE_P. - (iterative_hash_canonical_type): Likewise. - * tree-ssa-pre.c (fini_pre): Clean up the CFG only after purging all - the dead edges. - -2012-02-14 Bernd Schmidt <bernds@codesourcery.com> - - * haifa-sched.c (prune_ready_list): Ensure that if there is a - sched-group insn, it either remains alone or the entire list is pruned. - -2012-02-14 Jonathan Wakely <jwakely.gcc@gmail.com> - - * doc/install.texi (Prerequisites): Fix grammar. - (Configuration): Likewise. - -2012-02-14 Jonathan Wakely <jwakely.gcc@gmail.com> - - * doc/install.texi (Prerequisites): Suggest building GMP, MPFR and - MPC as part of GCC before describing configuring with --with-gmp etc. - (Installing GCC: Configuration): --with-gmp etc. aren't needed if - sources are present. - -2012-02-14 Jakub Jelinek <jakub@redhat.com> - - PR debug/51950 - * dwarf2out.c (clone_tree_hash): New function. - (copy_decls_walk): Use it instead of clone_tree. - -2012-02-14 Richard Guenther <rguenther@suse.de> - - PR tree-optimization/52244 - PR tree-optimization/51528 - * tree-sra.c (analyze_access_subtree): Only create INTEGER_TYPE - replacements for integral types. - -2012-02-14 Walter Lee <walt@tilera.com> - - * config.gcc: Handle tilegx and tilepro. - * configure.ac (gcc_cv_as_dwarf2_debug_line): Enable test for - tilegx and tilepro. - Add HAVE_AS_TLS check for tilegx and tilepro. - * configure: Regenerate. - * doc/contrib.texi: Add Mat Hostetter and self. - * doc/extend.texi (TILE-Gx Built-in Functions): New node. - Document instruction intrinsics and network accessing intrinsics. - (TILEPro Built-in Functions): New node. Document instruction - intrinsics and network accessing intrinsics. - * doc/install.texi (Specific, tilegx-*-linux*): Document it. - (Specific, tilepro-*-linux*): Likewise. - * doc/invoke.texi (TILE-Gx Options): New section. - (TILEPro Options): New section. - * doc/md.texi (TILE-Gx): New section. - (TILEPro): New section. - * common/config/tilegx/tilegx-common.c: New file. - * common/config/tilepro/tilepro-common.c: New file. - * config/tilegx/constraints.md: New file. - * config/tilegx/linux.h: New file. - * config/tilegx/mul-tables.c: New file. - * config/tilegx/predicates.md: New file. - * config/tilegx/sync.md: New file. - * config/tilegx/t-tilegx: New file. - * config/tilegx/tilegx-builtins.h: New file. - * config/tilegx/tilegx-c.c: New file. - * config/tilegx/tilegx-generic.md: New file. - * config/tilegx/tilegx-modes.def: New file. - * config/tilegx/tilegx-multiply.h: New file. - * config/tilegx/tilegx-protos.h: New file. - * config/tilegx/tilegx.c: New file. - * config/tilegx/tilegx.h: New file. - * config/tilegx/tilegx.md: New file. - * config/tilegx/tilegx.opt: New file. - * config/tilepro/constraints.md: New file. - * config/tilepro/gen-mul-tables.cc: New file. - * config/tilepro/linux.h: New file. - * config/tilepro/mul-tables.c: New file. - * config/tilepro/predicates.md: New file. - * config/tilepro/t-tilepro: New file. - * config/tilepro/tilepro-builtins.h: New file. - * config/tilepro/tilepro-c.c: New file. - * config/tilepro/tilepro-generic.md: New file. - * config/tilepro/tilepro-modes.def: New file. - * config/tilepro/tilepro-multiply.h: New file. - * config/tilepro/tilepro-protos.h: New file. - * config/tilepro/tilepro.c: New file. - * config/tilepro/tilepro.h: New file. - * config/tilepro/tilepro.md: New file. - * config/tilepro/tilepro.opt: New file. - -2012-02-14 Jakub Jelinek <jakub@redhat.com> - - PR tree-optimization/52210 - * tree-vect-slp.c (vect_get_and_check_slp_defs): Call - vect_model_simple_cost with two entry vect_def_type array instead - of an address of dt. - -2012-02-14 Richard Guenther <rguenther@suse.de> - - PR lto/52178 - * tree-streamer-in.c (lto_input_ts_field_decl_tree_pointers): - Do not stream DECL_QUALIFIER. - * tree-streamer-out.c (write_ts_field_decl_tree_pointers): Likewise. - * tree.c (free_lang_data_in_decl): Free DECL_QUALIFIER. - (find_decls_types_r): Do not walk DECL_QUALIFIER. - -2012-02-14 Jakub Jelinek <jakub@redhat.com> - - PR c/52181 - * c-decl.c (merge_decls): Copy DECL_USER_ALIGN bit from olddecl to - newdecl. - -2012-02-13 Jakub Jelinek <jakub@redhat.com> - - PR bootstrap/52172 - * cselib.h (cselib_subst_to_values_from_insn): New prototype. - * cselib.c (cselib_subst_to_values_from_insn): New function. - * sched-deps.c (add_insn_mem_dependence, - sched_analyze_1, sched_analyze_2): Use it. - -2012-02-13 Jan Hubicka <jh@suse.cz> - - PR middle-end/52214 - * predict.c (predict_paths_for_bb): Fix thinko in prevoius patch. - -2012-02-13 Eric Botcazou <ebotcazou@adacore.com> - - * gcc.c (LINK_COMMAND_SPEC): Deal with -fgnu-tm. - (GTM_SELF_SPECS): Define if not already defined. - (driver_self_specs): Add GTM_SELF_SPECS. - * config/darwin.h (LINK_COMMAND_SPEC_A): Deal with -fgnu-tm. - (GTM_SELF_SPECS): Define. - * config/i386/cygwin.h (GTM_SELF_SPECS): Likewise. - * config/i386/mingw32.h (GTM_SELF_SPECS): Likewise. - -2012-02-13 Jakub Jelinek <jakub@redhat.com> - - * cselib.c (expand_loc): Return sp, fp, hfp or cfa base reg right - away if seen. - - * cselib.c (dump_cselib_val): Don't assume l->setting_insn is non-NULL. - - PR middle-end/52230 - * omp-low.c (expand_omp_for): If a static schedule without chunk size - has NULL region->cont, force fd.chunk_size to be integer_zero_node. - -2012-02-13 Andrew MacLeod <amacleod@redhat.com> - - PR c/52190 - * doc/extend.texi : Fix another __atomic_compare_exchange typo. - -2012-02-13 Richard Guenther <rguenther@suse.de> - - PR translation/52211 - * passes.c (enable_disable_pass): Fix typo. - -2012-02-13 Jakub Jelinek <jakub@redhat.com> - - PR middle-end/52209 - * expr.c (expand_expr_real_2) <case BIT_NOT_EXPR>: Only expand using - XOR for reduce_bit_field if type is unsigned. - -2012-02-12 Eric Botcazou <ebotcazou@adacore.com> - - * config/sparc/sparc.h (CANNOT_CHANGE_MODE_CLASS): In 64-bit mode, - disallow changes from SFmode to mode with different size in FP regs. - -2012-02-12 Robert Millan <rmh@gnu.org> - Gerald Pfeifer <gerald@pfeifer.com> - - * ginclude/stddef.h [__FreeBSD_kernel__] (__size_t): Do not define. - Tweak comment. - -2012-02-11 Richard Sandiford <rdsandiford@googlemail.com> - - PR rtl-optimization/52175 - * reorg.c (fill_slots_from_thread): Don't apply add/sub optimization - to frame-related instructions. - -2012-02-10 Jason Merrill <jason@redhat.com> - - PR c++/51910 - * tlink.c (demangled_hash_entry): Change mangled to a VEC. - (demangle_new_symbols): Fill it. - (scan_linker_output): Walk it. - (start_tweaking): Split out from scan_linker_output. - (maybe_tweak): Update sym->chosen. - * Makefile.in (COLLECT2_OBJS): Add vec.o and gcc-none.o - -2012-02-11 Jakub Jelinek <jakub@redhat.com> - - PR debug/52132 - * reg-stack.c (subst_stack_regs_in_debug_insn): Don't use get_true_reg. - -2012-02-11 Uros Bizjak <ubizjak@gmail.com> - - * compare-elim.c (find_comparisons_in_bb): Eliminate only compares - having the same mode as previous compare. - -2012-02-10 Eric Botcazou <ebotcazou@adacore.com> - - * config/sparc/sparc.c (sparc_flat_expand_prologue): Use emit_use. - * config/sparc/sparc.md (UNSPECV_GOTO): Delete. - (nonlocal_goto_internal): Likewise. - (nonlocal_goto): Emit a use and an indirect jump directly. - -2012-02-10 Andrew MacLeod <amacleod@redhat.com> - - PR c/52190 - * doc/extend.texi : Update comments for __atomic_compare_exchange and - __atomic_{is,always}_lock_free. - -2012-02-10 Uros Bizjak <ubizjak@gmail.com> - - PR target/52146 - * config/i386/i386.c (ix86_legitimate_address_p): Disallow - negative constant address for x32. - -2012-02-10 Richard Henderson <rth@redhat.com> - - * tree-ssa-dce.c (propagate_necessity): Handle GIMPLE_TRANSACTION. - * tree-ssa-operands.c (parse_ssa_operands): Add virtual operands - for GIMPLE_TRANSACTION. Tidy if's into a switch. - -2012-02-10 Bill Schmidt <wschmidt@linux.vnet.ibm.com> - Ira Rosen <irar@il.ibm.com> - - PR tree-optimization/50031 - * targhooks.c (default_builtin_vectorization_cost): Handle - vec_promote_demote. - * target.h (enum vect_cost_for_stmt): Add vec_promote_demote. - * tree-vect-loop.c (vect_get_single_scalar_iteraion_cost): Handle - all types of reduction and pattern statements. - (vect_estimate_min_profitable_iters): Likewise. - * tree-vect-stmts.c (vect_model_promotion_demotion_cost): New function. - (vect_get_load_cost): Use vec_perm for permutations; add dump logic - for explicit realigns. - (vectorizable_conversion): Call vect_model_promotion_demotion_cost. - * config/spu/spu.c (spu_builtin_vectorization_cost): Handle - vec_promote_demote. - * config/i386/i386.c (ix86_builtin_vectorization_cost): Likewise. - * config/rs6000/rs6000.c (rs6000_builtin_vectorization_cost): Update - vec_perm for VSX and handle vec_promote_demote. - -2012-02-10 Jakub Jelinek <jakub@redhat.com> - - PR middle-end/52177 - * builtins.c (fold_builtin_atomic_always_lock_free, - expand_builtin_atomic_always_lock_free, - fold_builtin_atomic_is_lock_free, expand_builtin_atomic_is_lock_free): - Return and/or test boolean_true_node/boolean_false_node instead of - integer_one_node/integer_zero_node. - -2012-02-10 Jan Hubicka <jh@suse.cz> - - PR middle-end/48600 - * predict.c (predict_paths_for_bb): Prevent looping. - (predict_paths_leading_to_edge, predict_paths_leading_to): Update. - -2012-02-10 Roman Zhuykov <zhroma@ispras.ru> - - * config/arm/arm.c (output_move_double): In one case properly - count number of instructions that will be emitted. - -2012-02-10 Richard Guenther <rguenther@suse.de> - - PR translation/52193 - * cgraphunit.c (cgraph_mark_functions_to_output): Fix typo. - -2012-02-09 Peter Bergner <bergner@vnet.ibm.com> - - PR middle-end/52140 - * dojump.c (do_compare_rtx_and_jump): Use SCALAR_FLOAT_MODE_P. - -2012-02-09 Jakub Jelinek <jakub@redhat.com> - - PR debug/52165 - * var-tracking.c (emit_note_insn_var_location): If - EMIT_NOTE_BEFORE_INSN and insn is NOTE_INSN_CALL_ARG_LOCATION, - emit it before next non-NOTE_INSN_CALL_ARG_LOCATION - non-NOTE_DURING_CALL_P insn. - -2012-02-09 Bin Cheng <bin.cheng@arm.com> - - PR middle-end/51867 - * builtins.c (expand_builtin): Don't check DECL_ASSEMBLER_NAME_SET_P. - -2012-02-08 Magnus Granberg <zorry@gentoo.org> - - PR driver/48524 - * gcc.c (switch_matches) Support switches with separated form, - -D and -U. - -2012-02-08 Georg-Johann Lay <avr@gjlay.de> - - * config/avr/avr.md (SREG_ADDR): Remove constant definition. - (SP_ADDR): Ditto. - (RAMPZ_ADDR): Ditto. - * config/avr/avr.c (avr_addr_t): New typedef. - (avr_addr): New struct to hold RAM address of SPL, SPH, RAMPZ, SREG. - (avr_init_expanders): Initialize it. - (expand_prologue): Use avr_addr instead of RAMPZ_ADDR, SP_ADDR, - SREG_ADDR. - (expand_epilogue): Ditto. - (avr_print_operand): Ditto. - (avr_file_start): Ditto. - (avr_emit_movmemhi): Ditto. - -2012-02-08 Richard Guenther <rguenther@suse.de> - - PR tree-optimization/46886 - * tree-flow.h (do_while_loop_p): Declare. - * tree-ssa-loop-ch.c (do_while_loop_p): Export. - * tree-parloops.c (parallelize_loops): Only parallelize do-while loops. - -2012-02-08 Andrew MacLeod <amacleod@redhat.com> - - * optabs.c (expand_atomic_load): Do not assume compare_and_swap will - always succeed for integers larger than a native word. - -2012-02-08 Richard Guenther <rguenther@suse.de> - - PR rtl-optimization/52170 - * simplify-rtx.c (simplify_plus_minus): Use CONSTM1_RTX to - properly handle integer vector modes. - -2012-02-08 Jakub Jelinek <jakub@redhat.com> - - PR gcov-profile/52150 - * coverage.c: Include target.h. - (build_var): Call targetm.strip_name_encoding on the assembler name. - Change one _ into . or $ if the target allows it. - * Makefile.in (coverage.o): Depend on $(TARGET_H). - - PR rtl-optimization/52139 - * cfgrtl.c (cfg_layout_merge_blocks): If BB_END - is a BARRIER after emit_insn_after_noloc, move BB_END - to the last non-BARRIER insn before it. - -2012-02-07 Richard Sandiford <rdsandiford@googlemail.com> - - PR middle-end/24306 - * config/mips/mips.c (mips_std_gimplify_va_arg_expr): New function. - (mips_gimplify_va_arg_expr): Call it instead of - std_gimplify_va_arg_expr. - -2012-02-07 Michael Meissner <meissner@linux.vnet.ibm.com> - - * config/rs6000/rs6000.c (rs6000_trampoline_init): Fix error - message for -mno-pointers-to-nested-function. - -2012-02-07 Eric Botcazou <ebotcazou@adacore.com> - - PR middle-end/51994 - * expr.c (get_inner_reference): If there is an offset, add a negative - bit position to it (if any). - -2012-02-07 Jakub Jelinek <jakub@redhat.com> - - PR rtl-optimization/52060 - * combine.c (try_combine): Add i0src_copy and i0src_copy2 variables, - copy i1src to i1src_copy whenever added_sets_2 && i1_feeds_i2_n already - before i1dest -> i1src substitution in newpat, copy i0src to i0src_copy - and/or i0src_copy2 when needed. - -2012-02-07 Jakub Jelinek <jakub@redhat.com> - - * gcc.c (main): Don't look for lto-wrapper or lto-wrapper - or LTOPLUGINSONAME if have_c. - - * config/freebsd-spec.h: Add comment about what macros can be defined - in this header. - (LINK_EH_SPEC, LINK_SSP_SPEC, USE_LD_AS_NEEDED): Don't define here. - * config/freebsd.h (LINK_EH_SPEC, LINK_SSP_SPEC, USE_LD_AS_NEEDED): But - here instead. - -2012-02-07 Richard Guenther <rguenther@suse.de> - - * gimple-pretty-print.c (dump_gimple_phi): Avoid excessive - newline in -alias dumps. - -2012-02-07 Kai Tietz <ktietz@redhat.com> - Dave Korn <dave.korn.cygwin@gmail.com> - - PR target/40068 - * config/i386/winnt-cxx.c (i386_pe_adjust_class_at_definition): - Take care that typinfo gets dllexport-attribute. - -2012-02-07 Jakub Jelinek <jakub@redhat.com> - - PR middle-end/52074 - * expr.c (expand_expr_addr_expr_1): For CONSTANT_CLASS_P or CONST_DECL - if modifier < EXPAND_SUM call force_operand on the result. - -2012-02-07 Joern Rennecke <joern.rennecke@embecosm.com> - - * config/epiphany/epiphany.h (ASM_DECLARE_FUNCTION_SIZE): Redefine, - adding __forwarder_dst__ prefix if a forwarder_section attribute is - present. - (epiphany_function_type): Replace types for specific interrupts with - EPIPHANY_FUNCTION_INTERRUPT. - (EPIPHANY_INTERRUPT_P): Update. - * config/epiphany/epiphany.c (epiphany_handle_forwarder_attribute): - New static function. - (epiphany_attribute_table) <interrupt>: min_len is 0, max_len is 9. - <disinterrupt>: Affects type identity. - (epiphany_handle_interrupt_attribute): Handle variable number of - arguments. - (epiphany_compute_function_type): Update for new - epiphany_function_type definition. - (epiphany_expand_prologue): Don't save (reg:DI GPR_0) for interrupt - handlers with a longcall forwarder. - (epiphany_start_function): Handle multiple interrupt arguments and/or - forwarder_section attribute. - - * config/epiphany/epiphany.h (LIB_SPEC): Link libc again after - libgloss. - -2012-02-07 Alan Modra <amodra@gmail.com> - - PR target/52107 - * config/rs6000/rs6000.c (rs6000_emit_move): Don't create DImode - subregs of TFmode. - -2012-02-06 Bill Schmidt <wschmidt@linux.vnet.ibm.com> - - PR tree-optimization/50969 - * tree-vect-stmts.c (vect_model_store_cost): Correct statement cost to - use vec_perm rather than vector_stmt. - (vect_model_load_cost): Likewise. - * config/i386/i386.c (ix86_builtin_vectorization_cost): Change cost of - vec_perm to be the same as other vector statements. - * config/rs6000/rs6000.c (rs6000_builtin_vectorization_cost): Revise - cost of vec_perm for TARGET_VSX. - -2012-02-06 Richard Guenther <rguenther@suse.de> - - PR tree-optimization/52115 - * tree-sra.c (access_has_replacements_p): New function. - (sra_modify_assign): Use it to decide whether a use is uninitialized. - -2012-02-06 Patrick Marlier <patrick.marlier@gmail.com> - - PR middle-end/52047 - * trans-mem.c (expand_call_tm): Add an assertion. - * calls.c (flags_from_decl_or_type): Add ECF_TM_PURE to 'no vops' - functions. - -2012-02-06 Richard Guenther <rguenther@suse.de> - - PR tree-optimization/50955 - * tree-ssa-loop-ivopts.c (get_computation_cost_at): Artificially - raise cost of expressions that replace an address with an - expression based on a different pointer. - -2012-02-06 Jakub Jelinek <jakub@redhat.com> - - PR target/52129 - * 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-06 Jonathan Wakely <jwakely.gcc@gmail.com> - - PR c++/48680 - * doc/invoke.texi (C++ Dialect Options): Use @option markup for - -Weffc++ and specify guidelines come from second edition. - -2012-02-05 Richard Sandiford <rdsandiford@googlemail.com> - - * config/mips/mips.md (sibcall_internal, sibcall_value_internal) - (sibcall_value_multiple_internal, call_split, call_internal_direct) - (call_direct_split, call_value_split, call_value_internal_direct) - (call_value_direct_split, call_value_multiple_split): Use jal and - jal_macro attributes. - -2012-02-05 Richard Sandiford <rdsandiford@googlemail.com> - - * reload1.c (reload_regs_reach_end_p): Replace with... - (reload_reg_rtx_reaches_end_p): ...this function. - (new_spill_reg_store): Update commentary. - (emit_input_reload_insns): Don't clear new_spill_reg_store here. - (emit_output_reload_insns): Check reload_reg_rtx_reaches_end_p - before setting new_spill_reg_store. - (emit_reload_insns): Use a separate loop to clear new_spill_reg_store. - Use reload_reg_rtx_reaches_end_p instead of reload_regs_reach_end_p. - Also use reload_reg_rtx_reaches_end_p when reading new_spill_reg_store - for non-spill reload registers. - -2012-02-05 Ira Rosen <irar@il.ibm.com> - - PR tree-optimization/52091 - * tree-vectorizer.h (vect_is_simple_use): Add an argument. - (vect_is_simple_use_1): Likewise. - * tree-vect-loop.c (vectorizable_reduction): Update calls - to vect_is_simple_use_1 and vect_is_simple_use. - (vectorizable_live_operation): Likewise. - * tree-vect-patterns.c (widened_name_p, - vect_recog_vector_vector_shift_pattern, check_bool_pattern): Likewise. - * tree-vect-stmts.c (process_use, vect_get_vec_def_for_operand, - vectorizable_call, vectorizable_conversion, vectorizable_assignment, - vectorizable_shift,vectorizable_operation, vectorizable_store, - vectorizable_load): Likewise. - (vect_is_simple_cond): Add an argument, pass it to - vect_is_simple_use_1. - (vectorizable_condition): Update calls to vect_is_simple_cond, - vect_is_simple_use. - (vect_is_simple_use): Add an argument, the statement in which - OPERAND is used. Check that if OPERAND's def stmt is a double - reduction phi node, the use is a phi node too. - (vect_is_simple_use_1): Add an argument, pass it to - vect_is_simple_use. - * tree-vect-slp.c (vect_get_and_check_slp_defs): Update a call - to vect_is_simple_use. - -2012-02-04 Jakub Jelinek <jakub@redhat.com> - - PR rtl-optimization/52095 - * modulo-sched.c (dump_insn_locator): New function. - (loop_canon_p, sms_schedule): Use it. - - PR rtl-optimization/52113 - * lower-subreg.c (decompose_multiword_subregs): Call recog_memoized - even for decomposable shift/zext insns. - -2012-02-03 Jakub Jelinek <jakub@redhat.com> - Zdenek Dvorak <ook@ucw.cz> - - PR rtl-optimization/52092 - * loop-unswitch.c (unswitch_single_loop): Call copy_rtx_if_shared - on get_iv_value result. - -2012-02-02 Andrew Pinski <apinski@cavium.com> - - PR middle-end/47982 - PR middle-end/43967 - * doc/libgcc.texi (__udivmoddi4/__udivmodti4): Fix documentation typo. - -2012-02-02 Jakub Jelinek <jakub@redhat.com> - - PR middle-end/48071 - * diagnostic.c (diagnostic_finish): Remove trailing newlines. - -2012-02-02 Vladimir Makarov <vmakarov@redhat.com> - - PR rtl-optimization/49800 - * haifa-sched.c (sched_init): Call regstat_init_n_sets_and_refs. - (sched_finish): Call regstat_free_n_sets_and_refs. - -2012-02-02 Jia Liu <proljc@gmail.com> - - * config/mips/mips-dspr2.md (mips_prepend): Mask operand 3 rather - than operand 2. - -2012-02-02 Jan Hubicka <jh@suse.cz> - Tom de Vries <tom@codesourcery.com> - - PR middle-end/51998 - * cgraphunit.c (cgraph_analyze_function): Break cyclic aliases. - * varpool.c (varpool_analyze_pending_decls): Likewise. - -2012-02-02 Sumanth G <sumanth.gundapaneni@kpitcummins.com> - Jayant R Sonar <jayant.sonar@kpitcummins.com> - - * config.gcc: Add cr16-* support. - - * doc/extend.texi: Document cr16 extensions. - * doc/install.texi: Document cr16 install. - * doc/invoke.texi: Document cr16 options. - * doc/md.texi: Document cr16 constraints. - - * common/config/cr16/cr16-common.c: New file. - * config/cr16/cr16.c: New file. - * config/cr16/cr16.h: New file. - * config/cr16/cr16.md: New file. - * config/cr16/cr16.opt: New file. - * config/cr16/cr16-protos.h: New file. - * config/cr16/predicates.md: New file. - * config/cr16/constraints.md: New file. - * config/cr16/t-cr16: New file. - -2012-02-02 Jakub Jelinek <jakub@redhat.com> - - PR target/52086 - * config/i386/i386.md (*addqi_2 peephole with SImode addition): Check - that operands[2] is either immediate, or q_regs_operand. - - PR tree-optimization/52073 - * tree-vect-stmts.c (vect_mark_relevant): When checking uses of - a pattern stmt for pattern uses, ignore uses outside of the loop. - -2012-02-01 Georg-Johann Lay <avr@gjlay.de> - - * config/avr/avr.c: Resolve all AS1 and AS2 macros. - * config/avr/avr.h (AS1, AS2, AS2C, AS3): Remove. - (OUT_AS1, OUT_AS2): Remove. - -2012-02-01 Georg-Johann Lay <avr@gjlay.de> - - PR rtl-optimization/51374 - * combine.c (can_combine_p): Don't allow volatile_refs_p insns - to cross other volatile_refs_p insns. - -2012-02-01 Richard Guenther <rguenther@suse.de> - - * doc/invoke.texi (fno-inline): Clarify documentation. - (finline-small-functions): Likewise. - (finline-functions): Likewise. - * common.opt (finline): Adjust comment and documentation. - (finline-small-functions): Clarify documentation. - (finline-functions): Likewise. - (finline-functions-called-once): Likewise. - -2012-02-01 Tristan Gingold <gingold@adacore.com> - - * c-typeck.c (composite_type): Keep mode for pointers. - -2012-01-31 Richard Sandiford <rdsandiford@googlemail.com> - - * function.h (regno_reg_rtx): Adjust comment. - * reginfo.c (init_reg_modes_target): Only use the previous mode - if it fits within one register. Remove MIPS comment. - -2012-01-31 Jakub Jelinek <jakub@redhat.com> - - PR bootstrap/52058 - * combine.c (do_SUBST_LINK, SUBST_LINK): Guard with #ifndef HAVE_cc0. - -2012-01-31 Andreas Krebbel <Andreas.Krebbel@de.ibm.com> - - * config/s390/s390.md ("*ashr<mode>3_and"): Add missing z196 flag - to srak instruction. - -2012-01-31 Matthew Gretton-Dann <matthew.gretton-dann@arm.com> - - * config/arm/thumb2.md (thumb2_mov_notscc): Use MVN for true condition. - -2012-01-31 Jakub Jelinek <jakub@redhat.com> - - PR bootstrap/52041 - PR bootstrap/52039 - PR target/51974 - * ipa-prop.c (detect_type_change_1): Call ao_ref_init. - -2012-01-31 Richard Guenther <rguenther@suse.de> - - PR tree-optimization/51528 - * tree-sra.c (sra_modify_assign): Avoid copy-in/out for aggregate - assigns. - -2012-01-31 Jakub Jelinek <jakub@redhat.com> - - PR bootstrap/52041 - PR bootstrap/52039 - PR target/51974 - * ree.c (add_removable_extension): Change def_map argument - to unsigned *, store in def_map 1 + offset into *insn_list vector - instead of pointers into the vector. - (find_removable_extensions): Adjust caller. - -2012-01-30 Georg-Johann Lay <avr@gjlay.de> - - * config/avr/avr.md: Resolve all AS1 and AS2 macros. - Transform all "* quoted-c-code" to { c-code }. - Remove redundant test for "optimize" in combine patterns. - Move (include "avr-dimode.md") to end of file. - -2012-01-30 Bin Cheng <bin.cheng@arm.com> - - PR target/51835 - * config/arm/arm.c (arm_libcall_uses_aapcs_base): Use correct ABI - for __aeabi_d2iz/__aeabi_d2uiz with hard-float. - -2012-01-30 Richard Guenther <rguenther@suse.de> - - PR tree-optimization/52028 - * tree-loop-distribution.c (ldist_gen): Properly update - virtual SSA form. - -2012-01-30 Jakub Jelinek <jakub@redhat.com> - - PR debug/52027 - * dwarf2out.c (dwarf2out_switch_text_section): Don't call - set_cur_line_info_table if not emitting debug info. - - PR tree-optimization/52046 - * tree-vect-patterns.c (check_bool_pattern): Give up if - a comparison could throw. - - PR debug/52048 - * tree-ssa-tail-merge.c (local_def): Ignore debug uses. - -2012-01-30 Richard Guenther <rguenther@suse.de> - - PR tree-optimization/52045 - * tree-optimize.c (execute_cleanup_cfg_post_optimizing): Update - SSA form if cfgcleanup did anything. - -2012-01-30 Richard Guenther <rguenther@suse.de> - - PR tree-optimization/52045 - * ipa-inline-transform.c (inline_transform): Call execute_fixup_cfg - before computing final todo. - -2012-01-30 Richard Guenther <rguenther@suse.de> - - PR tree-optimization/51528 - * tree-sra.c (sra_modify_assign): Re-factor in preparation - for PR51528 fix. - -2012-01-30 Paolo Bonzini <bonzini@gnu.org> - - * df-problems.c (df_kill_notes): Check that the use refers - to the note under examination. - -2012-01-30 Eric Botcazou <ebotcazou@adacore.com> - - PR target/51920 - * config/sparc/sparc.c (vector_init_fpmerge): Remove INNER_MODE - parameter and use short-lived pseudos. - (vector_init_faligndata): Remove INNER_MODE parameter and use loop. - (sparc_expand_vector_init): Const-ify local variables and adjust - calls to above functions. - -2012-01-30 Georg-Johann Lay <avr@gjlay.de> - - * config/avr/avr.c (out_movqi_mr_r): Fix length computation. - -2012-01-29 Sandra Loosemore <sandra@codesourcery.com> - - * doc/invoke.texi: Make usage of "compile time" and - "run time"/"runtime" consistent throughout the file. - -2012-01-29 Uros Bizjak <ubizjak@gmail.com> - - * config/alpha/alpha.c (alpha_option_override): Default to - full IEEE compliance mode for Go language. - -2011-01-29 Tijl Coosemans <tijl@coosemans.org> - - * config/freebsd-spec.h [TARGET_LIBC_PROVIDES_SSP] - (LINK_SSP_SPEC): Define. - -2012-01-28 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> - - PR target/51871 - * config/pa/pa.c (pa_return_addr_rtx): Add support for PA2.0 export - stubs. - -2012-01-28 Sandra Loosemore <sandra@codesourcery.com> - - * doc/invoke.texi: Correct hyphenation of "floating point", - "double precision", and related terminology throughout the file. - -2012-01-28 Jakub Jelinek <jakub@redhat.com> - - PR target/52006 - * config/arm/arm.md (pic_add_dot_plus_eight peephole2): Use - arm_general_register_operand predicate for operand 2 instead of - register_operand. - -2012-01-27 Ian Lance Taylor <iant@google.com> - - PR go/47656 - * builtins.def (BUILT_IN_INIT_HEAP_TRAMPOLINE): Define. - * builtins.c (expand_builtin_init_trampoline): Add onstack - parameter. Change caller. - (expand_builtin): Handle BUILT_IN_INIT_HEAP_TRAMPOLINE. - * tree.c (build_common_builtin_nodes): Declare - __builtin_init_heap_trampoline. - -2012-01-27 Georg-Johann Lay <avr@gjlay.de> - - * config/avr/avr-protos.h (lpm_reg_rtx, lpm_addr_reg_rtx, - tmp_reg_rtx, zero_reg_rtx, all_regs_rtx, rampz_rtx): Make global. - * config/avr/avr.c: Ditto. - (avr_regnames): Remove because unused. - * config/avr/avr.md (*cpse.ne): New peephole. - (*cpse.eq): New peephole from former cpse peepholes. - -2012-01-27 Michael Eager <eager@eagercon.com> - - * config/microblaze.c (microblaze_emit_compare): Correct - test after pcmp instruction. - -2012-01-27 Richard Guenther <rguenther@suse.de> - - PR tree-optimization/52020 - * tree-sra.c (sra_modify_assign): Do not transform clobbers. - -2012-01-27 Richard Guenther <rguenther@suse.de> - - * ipa-pure-const.c (check_stmt): Clobbers do not make a - function non-const/pure. - -2012-01-27 Richard Guenther <rguenther@suse.de> - - PR tree-optimization/50444 - * tree-sra.c (build_ref_for_offset): Properly adjust the - MEM_REF type for unaligned accesses. - -2012-01-27 Richard Guenther <rguenther@suse.de> - - PR tree-optimization/50444 - * expr.c (mem_ref_refers_to_non_mem_p): New function. - (expand_assignment): Use it. Properly handle misaligned - bases when expanding stores to component references. - (expand_expr_real_1): Use mem_ref_refers_to_non_mem_p and - refactor that case. - -2012-01-27 Andrey Belevantsev <abel@ispras.ru> - - PR middle-end/51389 - * Makefile.in (tree-data-ref.o): Depend on $(PARAMS_H). - * tree-data-ref.h (find_data_references_in_loop): Remove declaration. - * tree-data-ref.c (find_data_references_in_loop): Make static. - (compute_all_dependences): Change return type to bool. Bail out - for too many datarefs in a loop. Move the hunk resetting the data - dependences vector from ... - (compute_data_dependences_for_loop): ... here. Account for - compute_all_dependences returning false. - (compute_data_dependences_for_bb): Likewise. - * params.def (PARAM_LOOP_MAX_DATAREFS_FOR_DATADEPS): New param. - * doc/invoke.texi (loop-max-datarefs-for-datadeps): Document it. - -2012-01-27 Richard Guenther <rguenther@suse.de> - - PR middle-end/51959 - * expr.c (store_field): Use the alias-set of the scratch memory - for storing to it. - -2012-01-27 Tom de Vries <tom@codesourcery.com> - - PR tree-optimization/51990 - * tree-ssa-sccvn.c (copy_reference_ops_from_ref): Handle - WITH_SIZE_EXPR. - * tree-ssa-pre.c (create_component_ref_by_pieces_1): Same. - -2012-01-27 Jakub Jelinek <jakub@redhat.com> - - PR debug/52001 - * var-tracking.c (reverse_op): Don't add any reverse operation - if V already has any constant locations. - -2012-01-27 Sandra Loosemore <sandra@codesourcery.com> - - * doc/invoke.texi: Correct usage of "command line" (noun) - vs "command-line" (adjective) throughout. - -2012-01-27 Sandra Loosemore <sandra@codesourcery.com> - - * doc/invoke.texi (Language Independent Options): Move - -Wcoverage-mismatch blurb from here.... - (Warning Options): ...to here. - -2012-01-27 Peter Bergner <bergner@vnet.ibm.com> - - * config/rs6000/rs6000.c (rs6000_option_override_internal): - Set rs6000_always_hint to false for 476. - -2012-01-27 Matthias Klose <doko@ubuntu.com> - - * gcc.c (add_sysrooted_prefix): Remove trailing dir separator from - system root. - * incpath.c (add_standard_paths): Likewise. - -2012-01-27 Richard Henderson <rth@redhat.com> - - * config/m68k/m68k.c (TARGET_ATOMIC_TEST_AND_SET_TRUEVAL): New. - * config/m68k/sync.md (atomic_test_and_set): Rename from - sync_test_and_setqi and adjust the operands. - (atomic_test_and_set_1): Rename from sync_test_and_setqi_1 - and unconditionally enable. - -2012-01-27 Richard Henderson <rth@redhat.com> - - * config/sparc/sparc.c (TARGET_ATOMIC_TEST_AND_SET_TRUEVAL): New. - * config/sparc/sync.md (atomic_test_and_set): Only handle QImode. - (ldstub): Rename from ldstubqi. - (ldstub<I24MODE>): Remove. - -2012-01-27 Richard Henderson <rth@redhat.com> - - * target.def (TARGET_ATOMIC_TEST_AND_SET_TRUEVAL): New. - * c-cppbuiltin.c (cpp_atomic_builtins): Define - __GCC_ATOMIC_TEST_AND_SET_TRUEVAL. - * doc/tm.texi.in (TARGET_ATOMIC_TEST_AND_SET_TRUEVAL): Add doc hook. - * doc/tm.texi: Rebuild. - -2012-01-27 Richard Henderson <rth@redhat.com> - - * optabs.c (gen_atomic_test_and_set): Remove default. - (maybe_emit_atomic_test_and_set): Use maybe_expand_insn. - -2012-01-26 Jakub Jelinek <jakub@redhat.com> - - PR rtl-optimization/51978 - * ree.c (make_defs_and_copies_lists): Change set_pat type to const_rtx. - (combine_reaching_defs): Likewise. - (struct re_info): Remove. - (add_removable_extension): Remove x and data arguments, - add insn, insn_list and def_map. Use the arguments directly - instead of using struct re_info. - (find_removable_extensions): Don't call add_removable_extension - through note_stores, instead just call it with single_set - result if non-NULL. - (find_and_remove_re): Pass curr_cand->expr instead of - PATTERN (curr_cand->insn) as set_pat argument to combine_reaching_defs. - -2012-01-26 Michael Matz <matz@suse.de> - - PR tree-optimization/46590 - * cfgexpand.c: Revert last change (r183305). - * gimplify.c (gimplify_bind_expr): Add clobbers for all non-gimple - regs. - * tree-eh.c (cleanup_empty_eh): Try to optimize clobbers before - checking for emptiness. - -2012-01-26 Jakub Jelinek <jakub@redhat.com> - - PR middle-end/51895 - * expr.c (expand_expr_real_1): Handle BLKmode MEM_REF of - non-addressable non-BLKmode base correctly. - -2012-01-26 Michael Matz <matz@suse.de> - - PR tree-optimization/48794 - * tree-eh.c (remove_unreachable_handlers_no_lp): Don't remove - regions referenced from RESX/EH_DISPATCH. - -2012-01-26 Andreas Krebbel <Andreas.Krebbel@de.ibm.com> - - * config/s390/s390.h: Make BRANCH_COST an option. - * config/s390/s390.opt: New option -mbranch-cost. - -2012-01-26 Richard Henderson <rth@redhat.com> - - Revert 2012-01-24 change: - * trans-mem.c (requires_barrier): Do not instrument thread local - variables and emit save/restore for them. - -2012-01-25 Jakub Jelinek <jakub@redhat.com> - - PR middle-end/51986 - * sched-deps.c (sched_get_condition_with_rev_uncached): Don't test - for pat == 0. - -2012-01-25 Richard Sandiford <rdsandiford@googlemail.com> - - * config/mips/mips.c (mips_small_data_pattern_1): Don't process - ASM_OPERANDS. - -2012-01-25 Georg-Johann Lay <avr@gjlay.de> - - PR target/49868 - Rename __pgm to __flash. - Rename __pgm1 to __flash1. - Rename __pgm2 to __flash2. - Rename __pgm3 to __flash3. - Rename __pgm4 to __flash4. - Rename __pgm5 to __flash5. - Rename __pgmx to __memx. - * doc/extend.texi (AVR Named Address Spaces) - Rename address space names as indicated above. - * config/avr/avr.c (avr_addrspace): Ditto. - - * config/avr/avr-protos.h - (avr_mem_pgmx_p): Rename to avr_mem_memx_p. - (avr_mem_pgm_p): Rename to avr_mem_flash_p. - * config/avr/predicates.md: Ditto. - * config/avr/avr.c Ditto, and - (avr_decl_pgmx_p): Rename to avr_decl_memx_p. - (avr_decl_pgm_p): Rename to avr_decl_flash_p. - - * config/avr/avr.h (ADDR_SPACE_PGM): Rename to ADDR_SPACE_FLASH. - (ADDR_SPACE_PGM1): Rename to ADDR_SPACE_FLASH1. - (ADDR_SPACE_PGM2): Rename to ADDR_SPACE_FLASH2. - (ADDR_SPACE_PGM3): Rename to ADDR_SPACE_FLASH3. - (ADDR_SPACE_PGM4): Rename to ADDR_SPACE_FLASH4. - (ADDR_SPACE_PGM5): Rename to ADDR_SPACE_FLASH5. - (ADDR_SPACE_PGMX): Rename to ADDR_SPACE_MEMX. - * config/avr/avr.c: Ditto. - * config/avr/avr.md: Ditto. - -2012-01-25 Jason Merrill <jason@redhat.com> - - PR c++/51992 - * tree.c (find_decls_types_in_node): Walk gimple_call_fntype. - -2012-01-25 Jakub Jelinek <jakub@redhat.com> - - PR tree-optimization/51987 - * tree-data-ref.c (get_references_in_stmt): Handle references in - non-volatile GIMPLE_ASM. - -2012-01-25 Richard Guenther <rguenther@suse.de> - - * tree-ssa-sccvn.c (vn_reference_eq): Also compare if both - bases are dereferenced. - -2012-01-25 Andrey Belevantsev <abel@ispras.ru> - - PR rtl-optimization/48374 - * sel-sched-ir.h (get_all_loop_exits): Check for zero successors. - -2012-01-25 Andrey Belevantsev <abel@ispras.ru> - - * tree-predcom.c (tree_predictive_commoning_loop): Bail out when - compute_data_dependences_for_loop returns false. - * tree-parloops.c (loop_parallel_p): Likewise. - -2012-01-25 Richard Guenther <rguenther@suse.de> - - * tree.h (get_pointer_alignment_1): Declare. - * builtins.c (get_pointer_alignment_1): New function. - (get_pointer_alignment): Use it. - -2012-01-25 Ramana Radhakrishnan <ramana.radhakrishnan@linaro.org> - - PR rtl-optimization/48308 - * combine.c (enum undo_kind): Add UNDO_LINKS. - (struct undo): Add member l to other_contents and where. - (do_SUBST_LINK): New. - (SUBST_LINK): New. - (try_combine): Handle LOG_LINKS for the dummy i1 case. - (undo_all): Handle UNDO_LINKS. - -2012-01-25 Richard Henderson <rth@redhat.com> - - * optabs.c (maybe_emit_atomic_test_and_set): Allow non-QImode - mem inputs. - -2012-01-24 Richard Sandiford <rdsandiford@googlemail.com> - - * optabs.c (gen_atomic_test_and_set): Use each argument. - -2012-01-24 Richard Sandiford <rdsandiford@googlemail.com> - - * config/mips/mips-ps-3d.md (mips_addr_ps, reduc_splus_v2sf) - (mips_cvt_pw_ps, mips_cvt_ps_pw, mips_mulr_ps, mips_cabs_cond_<fmt>) - (mips_cabs_cond_4s, mips_cabs_cond_ps, bc1any4t, bc1any4f, bc1any2t) - (bc1any2f, mips_rsqrt1_<fmt>, mips_rsqrt2_<fmt>, mips_recip1_<fmt>) - (mips_recip2_<fmt>): Require TARGET_MIPS3D rather than - TARGET_PAIRED_SINGLE_FLOAT. - -2012-01-24 Richard Sandiford <rdsandiford@googlemail.com> - - * doc/rtl.texi (MEM_IN_STRUCT_P, MEM_SCALAR_P): Delete. - (in_struct, return_val): Remove MEM documentation. - * rtl.h (rtx_def): Remove MEM meanings from in_struct and return_val. - (MEM_IN_STRUCT_P, MEM_SCALAR_P): Delete. - (MEM_COPY_ATTRIBUTES): Remove references to MEM_IN_STRUCT_P - and MEM_SCALAR. - * emit-rtl.c (set_mem_attributes_minus_bitpos): Likewise. - * cfgexpand.c (add_alias_set_conflicts): Likewise. - * expr.c (store_field): Likewise. - * function.c (assign_stack_temp_for_type): Likewise. - * ifcvt.c (noce_try_cmove_arith): Likewise. - * reload1.c (reload): Likewise. - * config/alpha/alpha.c (alpha_set_memflags_1): Likewise. - (alpha_set_memflags): Likewise. - * config/m32c/m32c.c (m32c_immd_dbl_mov): Nullify. - -2012-01-24 Richard Sandiford <rdsandiford@googlemail.com> - - * rtl.h (true_dependence, canon_true_dependence): Remove varies - parameter. - * alias.c (fixed_scalar_and_varying_struct_p): Delete. - (true_dependence_1, write_dependence_p, may_alias_p): Don't call it. - (true_dependence_1, true_dependence, canon_true_dependence): Remove - varies parameter. - * cselib.c (cselib_rtx_varies_p): Delete. - (cselib_invalidate_mem): Update call to canon_true_dependence. - * dse.c (record_store, check_mem_read_rtx): Likewise. - (scan_reads_nospill): Likewise. - * cse.c (check_dependence): Likewise. - (cse_rtx_varies_p): Delete. - * expr.c (safe_from_p): Update call to true_dependence. - * ira.c (validate_equiv_mem_from_store): Likewise. - (memref_referenced_p): Likewise. - * postreload-gcse.c (find_mem_conflicts): Likewise. - * sched-deps.c (sched_analyze_2): Likewise. - * store-motion.c (load_kills_store): Likewise. - * config/frv/frv.c (frv_registers_conflict_p_1): Likewise. - * gcse.c (mems_conflict_for_gcse_p): Likewise. - (compute_transp): Update call to canon_true_dependence. - -2012-01-25 Richard Henderson <rth@redhat.com> - - * optabs.c (CODE_FOR_atomic_test_and_set): Provide default. - (maybe_emit_atomic_test_and_set): New. - (expand_sync_lock_test_and_set): Use it. - (expand_atomic_test_and_set): Likewise. - * doc/extend.texi (__atomic_test_and_set): Adjust the docs to match - the implementation; clarify implementation defined details. - * doc/md.texi (atomic_test_and_set): Document. - -2012-01-25 Richard Henderson <rth@redhat.com> - - * config/sparc/predicates.md (zero_or_v7_operand): Use match_code. - -2012-01-25 Richard Henderson <rth@redhat.com> - - PR target/51968 - * config/arm/arm.c (neon_split_vcombine): Emit deleted note - to effect no-op split. - -2012-01-24 Aldy Hernandez <aldyh@redhat.com> - - PR lto/51698 - * builtin-types.def: (BT_CONST_DOUBLE_PTR): New. - (BT_FN_VOID_PTR_CONST_PTR_SIZE): New. - (BT_FN_VOID_PTR_INT_SIZE): New. - (BT_FN_UINT_UINT_VAR): Remove. - (BT_FN_UINT32_UINT32_VAR): New. - (BT_FN_DOUBLE_VPTR): Remove. - (BT_FN_DOUBLE_CONST_DOUBLE_PTR): New. - - * gtm-builtins.def (_ITM_abortTransaction): Set return type to void. - (_ITM_changeTransactionMode): Same. - (_ITM_memmoveRtWt): Change return type to void. - (_ITM_memcpyRtWt): Same. - (_ITM_memsetW): Same. - (_ITM_RaRD): Change types to double. - (_ITM_RD): Same. - (_ITM_RaWD): Same. - (_ITM_RfWD): Same. - - * builtins.def (DEF_TM_BUILTIN): Set BOTH_P to true. - -2012-01-24 Aldy Hernandez <aldyh@redhat.com> - Patrick Marlier <patrick.marlier@gmail.com> - - * trans-mem.c (requires_barrier): Do not instrument thread local - variables and emit save/restore for them. - -2012-01-24 Jason Merrill <jason@redhat.com> - - PR c++/51812 - * cgraphunit.c (cgraph_decide_is_function_needed): Don't always - output static aliases. - -2012-01-24 Jakub Jelinek <jakub@redhat.com> - - PR driver/47249 - * common.opt (-pie, -shared, pie, shared): Change from Common to - Driver. - * gcc.c (display_help): Display help for -pie and -shared. - -2012-01-24 Georg-Johann Lay <avr@gjlay.de> - - PR target/49868 - * doc/extend.texi (AVR Named Address Spaces): Move sample code up. - Remove note on size/offset limitation. - (AVR Variable Attributes): Add example how to read data located - with progmem. Refer to named address spaces. - * doc/invoke.texi (AVR Options): Fix typo. - -2012-01-24 Richard Guenther <rguenther@suse.de> - - Forward-port to trunk - 2010-09-21 Jakub Jelinek <jakub@redhat.com> - - PR middle-end/45678 - * expr.c (expand_expr_real_1) <case VIEW_CONVERT_EXPR>: If - op0 isn't sufficiently aligned and there is movmisalignM - insn for mode, use it to load op0 into a temporary register. - -2012-01-24 Jakub Jelinek <jakub@redhat.com> - - PR target/51957 - * target.def (const_not_ok_for_debug_p): New hook. - * doc/tm.texi.in (TARGET_CONST_NOT_OK_FOR_DEBUG_P): New hook - documentation. - * doc/tm.texi: Regenerated. - * dwarf2out.c (const_ok_for_output_1): If - targetm.const_not_ok_for_debug_p returns true, fail. - * config/rs6000/rs6000.c (rs6000_const_not_ok_for_debug_p): New - function. - (TARGET_CONST_NOT_OK_FOR_DEBUG_P): Redefine. - -2012-01-23 Kai Tietz <ktietz@redhat.com> - - PR target/51900 - * config/i386/predicates.md (symbolic_operand): Allow - UNSPEC_PCREL as PIC expression for lea. - * config/i386/winnt.c (i386_pe_binds_local_p): Reworked. - * config/i386/i386.c (ix86_delegitimize_address): Handle - UNSPEC_PCREL for none-MEM, too. - -2012-01-23 Aldy Hernandez <aldyh@redhat.com> - - * trans-mem.c (ipa_tm_create_version): Set externally_visible. - (ipa_tm_create_version_alias): Same. - -2012-01-23 Uros Bizjak <ubizjak@gmail.com> - - PR libitm/51830 - * builtin-types.def (BT_FN_UINT_UINT_VAR): New. - * gtm-builtins.def (BUILT_IN_TM_START): Declare as BT_FN_UINT_UINT_VAR. - -2012-01-23 Aldy Hernandez <aldyh@redhat.com> - Patrick Marlier <patrick.marlier@gmail.com> - Iain Sandoe <developer@sandoe-acoustics.co.uk> - - PR lto/51916 - * lto-wrapper.c (run_gcc): Pass the LTO section name to - simple_object_start_read. - -2012-01-23 Richard Guenther <rguenther@suse.de> - - - PR tree-optimization/51895 - * tree-sra.c (decide_one_param_reduction): Avoid sub-optimal - parameter decomposition into BLKmode components. - -2012-01-23 Eric Botcazou <ebotcazou@adacore.com> - - * tree-ssa-structalias.c (intra_create_variable_infos): Do not create - fake variables for restrict-qualified pointers whose pointed-to type - contains a placeholder. - -2012-01-23 Richard Guenther <rguenther@suse.de> - - PR tree-optimization/51949 - * ipa-split.c (execute_split_functions): Do not split malloc functions. - -2012-01-23 Jakub Jelinek <jakub@redhat.com> - - PR rtl-optimization/51933 - * ree.c (transform_ifelse): Return true right away if dstreg is - already wider or equal to cand->mode. - (enum ext_modified_kind, struct ext_modified, ext_state): New types. - (make_defs_and_copies_lists): Remove defs_list and copies_list - arguments, add state argument, just truncate state->work_list - instead of always allocating and freeing the vector. Assert that - get_defs succeeds instead of returning 2. Changed return type to bool. - (merge_def_and_ext): Add state argument. If SET_DEST doesn't - have ext_src_mode, see if it has been modified already with the - right kind of extension and has been extended before from the - ext_src_mode. If SET_DEST is already wider or equal to cand->mode, - just return true. Remember the original mode in state->modified array. - (combine_reaching_defs): Add state argument. Don't allocate and - free here def_list, copied_list and vec vectors, instead just - VEC_truncate the vectors in *state. Don't handle outcome == 2 here. - (find_and_remove_re): Set DF_DEFER_INSN_RESCAN df flag. - Add state variable, clear vectors in it, initialize state.modified - if needed. Free all the vectors at the end and state.modified too. - Don't skip a candidate if the extension expression has been modified. - -2012-01-22 Douglas B Rupp <rupp@gnat.com> - - PR target/47096 - * config.gcc: (i[34567]86-*-interix3*): Remove from obsolete - configurations. Change triplet to i[34567]86-*-interix[3-9]*. - (extra_options) interix.opt -> i386/interix.opt" - (extra_objs):Add winnt-stubs.o - * configure.ac: Add interix to target_os .comm on PE check. - * configure: Regenerate. - * config/interix3.h: Delete and move bits to.. - * config/interix.h: Delete and move bits to.. - * config/i386/i386-interix3.h: Delete and move bits to.. - * config/i386/i386-interix.h: ..here. - (TARGET_CPU_DEFAULT): Remove redefinition. - (TARGET_ASM_CONSTRUCTOR): Undefine. - (SUBTARGET_SWITCHES): Define for ms-bitfields. - (TARGET_OS_CPP_BUILTINS): Remove __OPENNT. Add __declspec. - (PTRDIFF_TYPE): Define. - (LONG_DOUBLE_TYPE_SIZE): Define. - (LIBGCC2_LONG_DOUBLE_TYPE_SIZE): Define. - (SUBTARGET_OVERRIDE_OPTIONS): Remove. - (TARGET_SECTION_TYPE_FLAGS): Define. - (ASM_DECLARE_FUNCTION_NAME): Define. - (ASM_OUTPUT_EXTERNAL): Define. - (ASM_OUTPUT_EXTERNAL_LIBCALL): Define. - (ASM_OUTPUT_ALIGNED_BSS): Define. - (PCC_BITFIELD_TYPE_MATTERS): Define. - (USE_CONST_SECTION): Define. - (SUBTARGET_ENCODE_SECTION_INFO): Remove. - (TARGET_ASM_FUNCTION_RODATA_SECTION): Remove. - (SUPPORTS_ONE_ONLY): Remove. - (I386_PE_STRIP_ENCODING): Define. - * config/interix.opt: Delete and move bits to.. - * config/i386/interix.opt: ..here. New. - (mpe-aligned-commons): Add. - * config/i386/t-interix: Add copyright header. - (winnt-stubs.o): Add rule. - -2012-01-22 Jason Merrill <jason@redhat.com> - - PR c++/51832 - * varpool.c (varpool_analyze_pending_decls): Copy DECL_EXTERNAL - for extra name aliases. - -2012-01-22 Eric Botcazou <ebotcazou@adacore.com> - - PR rtl-optimization/51924 - * ree.c (combine_set_extension): Improve debugging message. - (combine_reaching_defs): Likewise. - (get_defs): Rename confusingly named variable. - (find_and_remove_re): Skip a candidate if the extension expression has - been modified. - -2012-01-21 Robert Millan <rmh@gnu.org> - Gerald Pfeifer <gerald@pfeifer.com> - - * config/kfreebsd-gnu.h (GNU_USER_DYNAMIC_LINKERX32): New macro. - (GNU_USER_DYNAMIC_LINKER): Adjust indentation. - -2012-01-20 Jakub Jelinek <jakub@redhat.com> - - PR tree-optimization/51914 - * tree-vect-stmts.c (vectorizable_conversion): For - cvt_type && modifier == WIDEN, put temporary with cvt_type - at the beginning of vec_dsts and set vec_dest to temporary - with vectype_out. - -2012-01-20 Eric Botcazou <ebotcazou@adacore.com> - - * cfgrtl.c (rtl_dump_bb): Do not dump insns for {ENTRY|EXIT}_BLOCK. - -2011-01-20 Tijl Coosemans <tijl@coosemans.org> - - * config/i386/i386.c: Fix checks for !TARGET_MACHO. - * config/rs6000/rs6000.c: Likewise. - -2012-01-20 Jakub Jelinek <jakub@redhat.com> - - PR target/51915 - * config/arm/arm.c (arm_count_output_move_double_insns): Call - output_move_double on a copy of operands array. - -2012-01-20 Cary Coutant <ccoutant@google.com> - Dodji Seketeli <dodji@redhat.com> - - PR debug/45682 - * dwarf2out.c (copy_declaration_context): Return ref to parent - of declaration DIE, if necessary. - (remove_child_or_replace_with_skeleton): Add new parameter; update - caller. Place skeleton DIE under parent DIE of original declaration. - Move call to copy_declaration_context to here ... - (break_out_comdat_types): ... from here. - -2012-01-20 Andreas Krebbel <Andreas.Krebbel@de.ibm.com> - - PR rtl-optimization/51856 - * reload.c (find_reloads_subreg_address): Set the address_reloaded - flag to reloaded. - -2012-01-20 Ramana Radhakrishnan <ramana.radhakrishnan@linaro.org> - - PR target/51819 - * config/arm/arm.c (arm_print_operand): Correct output of alignment - hints for neon loads and stores. - -2012-01-20 Georg-Johann Lay <avr@gjlay.de> - - PR target/49868 - PR target/50887 - * doc/extend.texi (Named Address Spaces): Split into subsections. - (AVR Named Address Spaces): New subsection. - (M32C Named Address Spaces): New subsection. - (RL78 Named Address Spaces): New subsection. - (SPU Named Address Spaces): New subsection. - (Variable Attributes): New anchor "AVR Variable Attributes". - (AVR Variable Attributes): Rewrite and avoid wording - "address space" in this context. - * doc/invoke.texi (AVR Options): Rewrite and add documentation - for -maccumulate-args, -mbranch-cost=, -mrelax, -mshort-calls. - (AVR Built-in Macros): New subsubsection therein. - * doc/md.texi (AVR constraints): Remove "C04", "R". - -2012-01-20 Richard Guenther <rguenther@suse.de> - - PR tree-optimization/51903 - * tree-ssa-pre.c (eliminate): Properly purging of EH edges - when removing stmts. - -2012-01-20 Ramana Radhakrishnan <ramana.radhakrishnan@linaro.org> - - PR target/50313 - * config/arm/arm.c (arm_load_pic_register): Use - gen_pic_load_addr_unified. Delete calls to gen_pic_load_addr_32bit - , gen_pic_add_dot_plus_eight and gen_pic_add_dot_plus_four. - (arm_pic_static_addr): Likewise. - (arm_rtx_costs_1): Adjust cost for UNSPEC_PIC_UNIFIED. - (arm_note_pic_base): Handle UNSPEC_PIC_UNIFIED. - * config/arm/arm.md (UNSPEC_PIC_UNIFIED): Define. - (pic_load_addr_unified): New. - -2012-01-20 Andrey Belevantsev <abel@ispras.ru> - - PR target/51106 - * function.c (instantiate_virtual_regs_in_insn): Use - delete_insn_and_edges when removing a wrong asm insn. - -2012-01-19 Vladimir Makarov <vmakarov@redhat.com> - - PR rtl-optimization/40761 - * ira-int.h (struct ira_loop_tree_node): Add comment for member loop. - Add new member loop_num. - (IRA_LOOP_NODE_BY_INDEX): Modify the check. - (ira_build): Remove the parameter. - - * ira.c (ira_print_disposition): Use loop_num instead of loop->num. - (ira.c): Do not build CFG loops for one region allocation. Remove - argument from ira_build call. - - * ira-build.c (init_loop_tree_node): New function. - (create_loop_tree_nodes): Use it. Separate the case when CFG - loops are not built. - (more_one_region_p): Check current_loops. - (finish_loop_tree_nodes): Separate the case when CFG loops are not - built. - (add_loop_to_tree): Process loop equal to NULL too. - (form_loop_tree): Separate the case when CFG loops are not built. - Use explicitly number for the root. - (rebuild_regno_allocno_maps, create_loop_tree_node_allocnos): Add - an assertion. - (ira_print_expanded_allocno, loop_compare_func): Use loop_num - instead of loop->num. - (mark_loops_for_removal): Ditto. Use loop_num instead of loop->num. - (mark_all_loops_for_removal): Ditto. - (remove_unnecessary_regions): Separate the case when CFG loops - are not built. - (ira_build): Remove the parameter. Use explicit number of regions - when CFG loops are not built. - - * ira-color.c (print_loop_title): Separate the case for the root node. - Use loop_num instead of loop->num. - (move_spill_restore): Use loop_num instead of loop->num. - - * ira-emit.c (setup_entered_from_non_parent_p): Add an assertion. - (change_loop): Ditto. - (change_loop): Use loop_num instead of loop->num. - - * ira-lives.c (process_bb_node_lives): Ditto. - - * ira-costs.c (print_allocno_costs, find_costs_and_classes): Ditto. - - * ira-conflicts.c (print_allocno_conflicts): Ditto. - -2012-01-19 Jakub Jelinek <jakub@redhat.com> - - PR libmudflap/40778 - * tree-mudflap.c (mf_artificial): New function. - (execute_mudflap_function_ops, execute_mudflap_function_decls, - mx_register_decls, mudflap_enqueue_decl): Use it. - - PR target/51876 - * config/arm/neon.md (*neon_vswp<mode>): Fix up operand - numbers in the insn pattern. - -2012-01-19 Michael Matz <matz@suse.de> - - PR tree-optimization/46590 - * cfgexpand.c (add_scope_conflicts_1): New old_conflicts argument, - use it in remembering which conflicts we already created. - (add_scope_conflicts): Adjust call to above, (de)allocate helper - bitmap. - -2012-01-19 Aldy Hernandez <aldyh@redhat.com> - - PR lto/51280 - * lto-wrapper.c (run_gcc): Pass -fgnu_tm on. - (merge_and_complain): Same. - -2012-01-19 Jakub Jelinek <jakub@redhat.com> - - PR bootstrap/50237 - * config/initfini-array.h: Guard content of the header - with #ifdef HAVE_INITFINI_ARRAY. - * configure.ac: Move gcc_AC_INITFINI_ARRAY much later into the file. - Add initfini-array.h to tm_file here. - * acinclude.m4 (gcc_AC_INITFINI_ARRAY): For non-ia64 do a linker test. - * config.gcc: Don't add initfini-array.h to tm_file here. - * configure: Regenerated. - -2012-01-19 Andrey Belevantsev <abel@ispras.ru> - - PR rtl-optimization/51505 - * df-problems.c (df_kill_notes): New parameter live. Update comment. - Remove REG_EQUAL/REG_EQUIV notes referring to dead registers. - (df_note_bb_compute): Update the call to df_kill_notes. - -2012-01-18 Aldy Hernandez <aldyh@redhat.com> - - * trans-mem.c (requires_barrier): Remove call to is_global_var. - -2012-01-18 Richard Guenther <rguenther@suse.de> - - * tree-ssa.c (useless_type_conversion_p): Remove special-casing - of conversions to void *. - -2012-01-17 Andreas Krebbel <Andreas.Krebbel@de.ibm.com> - Richard Sandiford <rdsandiford@googlemail.com> - - PR middle-end/50325 - PR middle-end/51192 - * optabs.h (simplify_expand_binop): Declare. - * optabs.c (simplify_expand_binop): Make global. - * expmed.c (store_bit_field_1): Use simplify_expand_binop on big - endian targets if the source cannot be exactly covered by word - mode chunks. - -2012-01-17 Jakub Jelinek <jakub@redhat.com> - - PR bootstrap/51872 - * hard-reg-set.h (struct hard_reg_set_container): New type. - * target.h (struct hard_reg_set_container): Forward declare. - * target.def (set_up_by_prologue): New target hook. - * doc/tm.texi.in (TARGET_SET_UP_BY_PROLOGUE): Document it. - * doc/tm.texi: Regenerated. - * function.c (thread_prologue_and_epilogue_insns): Change - set_up_by_prologue HARD_REG_SET into struct hard_reg_set_container. - Call targetm.set_up_by_prologue on it. - * config/rs6000/rs6000.c (rs6000_set_up_by_prologue): New function. - (TARGET_SET_UP_BY_PROLOGUE): Redefine to it. - -2012-01-17 Nick Clifton <nickc@redhat.com> - - * config/rx/rx.c (rx_can_use_simple_return): New function. - * config/rx/rx-protos.h (rx_can_use_simple_return): Prototype. - * config/rx/rx.md (return): Predicate on rx_can_use_simple_return. - -2012-01-17 Richard Guenther <rguenther@suse.de> - - PR middle-end/51782 - * expr.c (expand_assignment): Take address-space information - from the address operand of MEM_REF and TARGET_MEM_REF. - (expand_expr_real_1): Likewise. - -2012-01-17 Andreas Krebbel <Andreas.Krebbel@de.ibm.com> - - * ira.c (do_reload): Make sure ira_dump_file is re-set if no - reload dump is requested. - -2012-01-17 Aldy Hernandez <aldyh@redhat.com> - - PR other/51165 - * trans-mem.c (requires_barrier): Call may_be_aliased. - -2012-01-17 Jakub Jelinek <jakub@redhat.com> - - PR tree-optimization/51877 - * tree-ssa-tail-merge.c (gimple_equal_p): Don't return true whenever - call arguments and fndecls compare equal, instead return false if they - don't. Return true only if lhs1 and lhs2 are either both NULL, or - both SSA_NAMEs that are valueized the same, or they satisfy - operand_equal_p. - -2012-01-17 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> - - * configure.ac (gcc_cv_target_dl_iterate_phdr): Only check on - Solaris 11+. - * configure: Regenerate. - -2012-01-16 Jan Hubicka <jh@suse.cz> - - PR c/12245 - PR c++/14179 - * convert.c (convert_to_integer): Use fold_convert for - converting an INTEGER_CST to integer type. - -2012-01-16 Jason Merrill <jason@redhat.com> - - PR c++/14179 - * vec.c (vec_gc_o_reserve_1): Use ggc_round_alloc_size. - -2012-01-16 Jakub Jelinek <jakub@redhat.com> - - PR bootstrap/51860 - * config/s390/s390.c (s390_chunkify_start): Don't skip - call insns followed by NOTE_INSN_CALL_ARG_LOCATION note. Skip - NOTE_INSN_VAR_LOCATION and NOTE_INSN_CALL_ARG_LOCATION notes. - If insn is followed by NOTE_INSN_VAR_LOCATION or - NOTE_INSN_CALL_ARG_LOCATION notes, insert jump after all those notes. - Don't use location of note insns. - - PR tree-optimization/51865 - * tree-inline.c (tree_function_versioning): Call remap_decl - on DECL_RESULT whenever it has VOID_TYPE_P type. - -2012-01-15 Richard Sandiford <rdsandiford@googlemail.com> - - * config/mips/mips.c (mips16_build_call_stub): Don't use a stub - for calls to locally-binding MIPS16 functions if only the return - type uses float regs. - -2012-01-15 Chung-Lin Tang <cltang@codesourcery.com> - Richard Sandiford <rdsandiford@googlemail.com> - - * config/mips/mips-protos.h (SYMBOL_FORCE_TO_MEM): Delete. - (SYMBOL_32_HIGH): Likewise. - (mips_output_tls_reloc_directive): Declare. - * config/mips/mips.h (PIC_FUNCTION_ADDR_REGNUM): Move to mips.md. - (mips_use_pcrel_pool_p, mips_lo_relocs, mips_hi_relocs): Declare. - * config/mips/mips.c (mips_use_pcrel_pool_p): New variable. - (mips_lo_relocs, mips_hi_relocs): Make extern. - (mips16_stub_function): Move up file. - (mips_classify_symbol): Remove SYMBOL_FORCE_TO_MEM handling. - (mips_symbolic_constant_p): Likewise. Remove SYMBOL_32_HIGH too. - (mips_symbol_insns_1): Likewise. Check mips_use_pcrel_pool_p. - (mips_cannot_force_const_mem): Use mips_use_pcrel_pool_p instead of - SYMBOL_FORCE_TO_MEM. Only check mips_tls_symbol_ref_1 if it's false. - (mips_get_tp): Add MIPS16 support. - (mips_legitimize_tls_address): Remove MIPS16 sorry(). - Generalize DTPREL and TPREL handling. - (mips_init_relocs): Initialize mips_use_pcrel_pool_p. - Add MIPS16 TLS support. - (mips_output_tls_reloc_directive): New function. - (mips16_rewrite_pool_refs): Ignore UNSPEC_TLS_GET_TPs. - * config/mips/predicates.md (symbolic_operand_with_high) - (tls_reloc_operand): New predicates. - (force_to_mem_operand): Use mips_use_pcrel_pool_p. - * config/mips/mips.md (UNSPEC_UNSHIFTED_HIGH): New unspec. - (PIC_FUNCTION_ADDR_REGNUM): Moved from mips.h. - (*unshifted_high): New instruction. Use it for MIPS16 high splitter. - (consttable_tls_reloc, tls_get_tp_mips16_<mode>): New patterns. - (*tls_get_tp_mips16_call_<mode>): Likewise. - -2012-01-15 Uros Bizjak <ubizjak@gmail.com> - - PR rtl-optimization/51821 - * recog.c (peep2_find_free_register): Determine clobbered registers - from insn pattern. - -2012-01-14 Denis Chertykov <chertykov@gmail.com> - - PR target/50925 - * config/avr/avr-protos.h: Revert change of 2012-01-09. - * config/avr/avr.c: Likewise. - * config/avr/avr.h: Likewise. - -2012-01-13 Ian Lance Taylor <iant@google.com> - - PR c++/50012 - * tree.h (TYPE_QUALS): Add cast to int. - (TYPE_QUALS_NO_ADDR_SPACE): Likewise. - -2012-01-13 Ian Lance Taylor <iant@google.com> - - * ipa-cp.c (ipa_get_indirect_edge_target): Add typecasts when - comparing param_index to VEC_length result. - -2012-01-13 Steven Bosscher <steven@gcc.gnu.org> - - * c-decl.c: Do not include tree-mudflap.h - * tree-optimize.c: Likewise. - * Makefile.in: Update dependencies. - -2012-01-13 Richard Guenther <rguenther@suse.de> - - PR middle-end/8081 - * gimplify.c (gimplify_modify_expr_rhs): For calls with a - variable-sized result always use RSO. - -2012-01-12 DJ Delorie <dj@redhat.com> - - * cfgexpand.c (convert_debug_memory_address): Allow any valid - pointer type, not just the default pointer type. - -2012-01-09 Richard Henderson <rth@redhat.com> - Denis Chertykov <chertykov@gmail.com> - - PR target/50925 - * config/avr/avr-protos.h (avr_hard_regno_nregs): Declare. - * config/avr/avr.c (avr_can_eliminate): Simplify. - (avr_initial_elimination_offset): Likewise. - (avr_prologue_setup_frame): Use hard_frame_pointer_rtx. - (expand_epilogue): Likewise. - (avr_legitimize_address): Gut. - (avr_legitimize_reload_address): Use hard_frame_pointer_rtx. - (avr_hard_regno_nregs): New. - (avr_hard_regno_ok): Allow only Pmode for arg and frame_pointers. - (avr_regno_mode_code_ok_for_base_b): Handle arg and frame pointers. - * config/avr/avr.h (FIXED_REGISTERS): Adjust arg pointer, - add soft frame pointer. - (CALL_USED_REGISTERS): Likewise. - (REG_CLASS_CONTENTS): Likewise. - (REGISTER_NAMES): Likewise. - (HARD_REGNO_NREGS): Use avr_hard_regno_nregs. - (HARD_FRAME_POINTER_REGNUM): New. - (FRAME_POINTER_REGNUM): Use soft frame pointer. - (ELIMINABLE_REGS): Eliminate from the soft frame pointer, - remove the HARD_FRAME_POINTER self-elimination. - -2012-01-12 Georg-Johann Lay <avr@gjlay.de> - - PR target/51756 - * config/avr/avr.c (avr_encode_section_info): Test for absence of - DECL_EXTERNAL when checking for initializers of progmem variables. - -2012-01-12 Ira Rosen <irar@il.ibm.com> - - PR tree-optimization/51799 - * tree-vect-patterns.c (vect_recog_over_widening_pattern): Check - that the last operation is a type demotion. - -2012-01-12 Uros Bizjak <ubizjak@gmail.com> - - * config/i386/i386.md (*zero_extendsidi2_rex64): Correct movl template. - (x86_shift<mode>_adj_1): Remove operand constraint from operand 3. - -2012-01-11 Jakub Jelinek <jakub@redhat.com> - - PR bootstrap/51796 - * combine.c (distribute_notes): If i3 is a noreturn call, - allow old_size to be equal to args_size and make sure the - noreturn call gets REG_ARGS_SIZE note. - * expr.c (fixup_args_size_notes): Put REG_ARGS_SIZE notes - on noreturn calls even when the delta is 0. - -2012-01-11 Nathan Sidwell <nathan@acm.org> - - * gcov.c (STRING_SIZE): Remove. - (generate_results): Erase annotations for source files with no - coverage information. - (read_line): New. - (output_lines): Use it. - -2012-01-11 Eric Botcazou <ebotcazou@adacore.com> - - * gimple.h (gimplify_body): Remove first argument. - * gimplify.c (copy_if_shared): Add DATA argument. Do not create the - pointer set here, instead just pass DATA to walk_tree. - (unshare_body): Remove BODY_P argument and adjust. Create the pointer - set here and invoke copy_if_shared on the size trees of DECL_RESULT. - (unvisit_body): Likewise, but with unmark_visited. - (gimplify_body): Remove BODY_P argument and adjust. - (gimplify_function_tree): Adjust call to gimplify_body. - * omp-low.c (finalize_task_copyfn): Likewise. - -2012-01-11 Eric Botcazou <ebotcazou@adacore.com> - - * tree.h (build_function_decl_skip_args): Add boolean parameter. - (build_function_type_skip_args): Delete. - * tree.c (build_function_type_skip_args): Make static and add - SKIP_RETURN parameter. Fix thinko in the handling of variants. - (build_function_decl_skip_args): Add SKIP_RETURN parameter and - pass it to build_function_type_skip_args. - * cgraph.h (cgraph_function_versioning): Add boolean parameter. - (tree_function_versioning): Likewise. - * cgraph.c (cgraph_create_virtual_clone): Adjust call to - build_function_decl_skip_args. - * cgraphunit.c (cgraph_function_versioning): Add SKIP_RETURN parameter - and pass it to build_function_decl_skip_args/tree_function_versioning. - (cgraph_materialize_clone): Adjust call to tree_function_versioning. - * ipa-inline-transform.c (save_inline_function_body): Likewise. - * trans-mem.c (ipa_tm_create_version): Likewise. - * tree-sra.c (modify_function): Ditto for cgraph_function_versioning. - * tree-inline.c (declare_return_variable): Remove always-true test. - (tree_function_versioning): Add SKIP_RETURN parameter. If the function - returns non-void and SKIP_RETURN, create a void-typed RESULT_DECL. - * ipa-split.c (split_function): Skip the return value for the split - part if it doesn't return. - -2012-01-11 Bill Schmidt <wschmidt@linux.vnet.ibm.com> - - PR tree-optimization/49642 - * ipa-split.c (forbidden_dominators): New variable. - (check_forbidden_calls): New function. - (dominated_by_forbidden): Likewise. - (consider_split): Check for forbidden dominators. - (execute_split_functions): Initialize and free forbidden - dominators info; call check_forbidden_calls. - -2012-01-11 Matthew Gretton-Dann <matthew.gretton-dann@arm.com> - - * config/arm/arm.md (mov_notscc): Use MVN for false condition. - -2012-01-11 Nick Clifton <nickc@redhat.com> - - * config/rx/rx.md (return): Define pattern. - -2012-01-11 Richard Guenther <rguenther@suse.de> - - * doc/extend.texi (malloc attribute): Adjust according to - implementation. - -2012-01-10 Aldy Hernandez <aldyh@redhat.com> - Patrick Marlier <patrick.marlier@gmail.com> - - PR middle-end/51516 - * trans-mem.c (get_cg_data): Traverse aliases if requested. - (ipa_tm_scan_calls_block): Update parameters to get_cg_data. - (ipa_tm_note_irrevocable): Same. - (ipa_tm_scan_irr_block): Same. - (ipa_tm_decrement_clone_counts): Same. - (ipa_tm_scan_irr_function): Same. - (ipa_tm_create_version_alias): Same. - (ipa_tm_create_version): Same. - (ipa_tm_transform_calls_redirect): Same. - (ipa_tm_transform_calls): Same. - (ipa_tm_transform_transaction): Same. - (ipa_tm_execute): Same. - -2012-01-10 Richard Guenther <rguenther@suse.de> - - PR middle-end/51806 - * opts.c (common_handle_option): Handle -Werror. - -2012-01-10 Andreas Schwab <schwab@linux-m68k.org> - - * config/m68k/sync.md ("atomic_compare_and_swap<mode>_1"): Fix - operand number. - -2012-01-10 Jason Merrill <jason@redhat.com> - - * doc/invoke.texi (C++ Dialect Options): Update -fabi-version=6 - information. - -2012-01-10 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> - - * configure.ac (gcc_cv_as_ix86_tlsgdplt): Check if linker - supports R_386_TLS_GD_PLT reloc. - (gcc_cv_as_ix86_tlsldmplt): Check if linker - supports R_386_TLS_LDM_PLT reloc. - * configure: Regenerate. - * config.in: Regenerate. - -2012-01-10 Georg-Johann Lay <avr@gjlay.de> - - PR target/49868 - Extend __pgmx semantics to linearize memory. - * config/avr/avr.md (mov<mode>): Use avr_xload_libgcc_p to - determine if code comes inline or from libgcc. - (MOVMEM_r_d:HI): Add "w" to constraint for better preference. - (movmem_qi, movmem_qi): Set constraint #2 to "n". - (movmem_qi_elpm, movmem_hi_elpm): Remove insns. - (movmemx_qi, movmemx_hi): New insns. - (xload_<mode>_libgcc): Rewrite to new insn condition. - (xload_<mode>): Remove insns. - * config/avr/avr.c (avr_out_xload): Rewrite: Only need to handle - cases that don't satisfy avr_xload_libgcc_p(). - (avr_addr_space_convert): Allow converting in any direction. - (avr_addr_space_subset_p): Return always true. - (avr_xload_libgcc_p): Rewrite to fit new __pgmx semantics. - (avr_emit_movmemhi): Ditto. - (avr_out_lpm): No need to handle ADDR_SPACE_PGMX any more. - (avr_out_movmem): Ditto. - (AVR_SYMBOL_FLAG_PROGMEM): New macro. - (AVR_SYMBOL_SET_ADDR_SPACE): New macro. - (AVR_SYMBOL_GET_ADDR_SPACE): New macro. - (avr_encode_section_info): Encode 'progmem' in symbol flags. - (output_reload_in_const): Don't zero-extend any 24-bit symbols. - -2012-01-10 Richard Guenther <rguenther@suse.de> - - PR tree-optimization/50913 - * graphite-scop-detection.c (stmt_has_simple_data_refs_p): - Require data-refs to be representable by Graphite with respect - to any loop nest. - -2012-01-10 Uros Bizjak <ubizjak@gmail.com> - - * config/i386/constraints.md ("L"): Return true for 0xffffffff. - * config/i386/i386.c (*anddi_1): Emit AND with 0xffffffff as MOV. - -2012-01-10 Tom de Vries <tom@codesourcery.com> - - PR rtl-optimization/51271 - * dwarf2cfi.c (scan_trace): Save and restore cur_row->reg_save when - handling annulled branch. - -2012-01-10 Richard Henderson <rth@redhat.com> - - * config/arm/arm.c (arm_vectorize_vec_perm_const_ok, - TARGET_VECTORIZE_VEC_PERM_CONST_OK, neon_split_vcombine, MAX_VECT_LEN, - struct expand_vec_perm_d, arm_expand_vec_perm_1, arm_expand_vec_perm, - arm_evpc_neon_vuzp, arm_evpc_neon_vzip, arm_evpc_neon_vrev, - arm_evpc_neon_vtrn, arm_evpc_neon_vtbl, arm_expand_vec_perm_const_1, - arm_expand_vec_perm_const): New. - * config/arm/arm-protos.h: Update. - * config/arm/neon.md (UNSPEC_VCONCAT): New. - (*neon_vswp<VDQX>): New. - (neon_vcombine<VDX>): Use neon_split_vcombine. - (neon_vtbl1v16qi, neon_vtbl2v16qi, neon_vcombinev16qi): New. - * config/arm/vec-common.md (vec_perm_const<VALL>): New. - (vec_perm<VE>): New. - -2012-01-10 Richard Henderson <rth@redhat.com> - - * config/arm/arm.c (arm_gen_compare_reg): Add scratch argument; - use it if reload_completed. - (arm_legitimize_sync_memory, arm_emit, arm_insn_count, arm_count, - arm_output_asm_insn, arm_process_output_memory_barrier, - arm_output_memory_barrier, arm_ldrex_suffix, arm_output_ldrex, - arm_output_strex, arm_output_it, arm_output_op2, arm_output_op3, - arm_output_sync_loop, arm_get_sync_operand, FETCH_SYNC_OPERAND, - arm_process_output_sync_insn, arm_output_sync_insn, - arm_sync_loop_insns, arm_call_generator, arm_expand_sync): Remove. - (arm_pre_atomic_barrier, arm_post_atomic_barrier): New. - (arm_emit_load_exclusive, arm_emit_store_exclusive): New. - (emit_unlikely_jump): New. - (arm_expand_compare_and_swap, arm_split_compare_and_swap): New. - (arm_split_atomic_op): New. - * config/arm/arm-protos.h: Update. - * config/arm/arm.h (enum arm_sync_generator_tag): Remove. - (struct arm_sync_generator): Remove. - * config/arm/arm.md (VUNSPEC_SYNC_COMPARE_AND_SWAP, VUNSPEC_SYNC_LOCK, - VUNSPEC_SYNC_OP, VUNSPEC_SYNC_NEW_OP, VUNSPEC_SYNC_OLD_OP): Remove. - (VUNSPEC_ATOMIC_CAS, VUNSPEC_ATOMIC_XCHG, VUNSPEC_ATOMIC_OP): New. - (VUNSPEC_LL, VUNSPEC_SC): New. - (sync_result, sync_memory, sync_required_value, sync_new_value, - sync_t1, sync_t2, sync_release_barrier, sync_op): Remove. - (attr length): Don't use arm_sync_loop_insns. - (cbranch_cc, cstore_cc): Update call to arm_gen_compare_reg. - (movsfcc, movdfcc): Likewise. - * config/arm/constraints.md (Ua): New. - * config/arm/prediates.md (mem_noofs_operand): New. - (sync_compare_and_swap<QHSD>, sync_lock_test_and_set<QHSD>): Remove. - (sync_clobber, sync_t2_reqd): Remove. - (sync_<syncop><QHSD>, sync_nand<QHSD>): Remove. - (sync_new_<syncop><QHSD>, sync_new_nand<QHSD>): Remove. - (sync_old_<syncop><QHSD>, sync_old_nand<QHSD>): Remove. - (arm_sync_compare_and_swap<SIDI>): Remove. - (arm_sync_compare_and_swap<NARROW>): Remove. - (arm_sync_lock_test_and_set<SIDI>): Remove. - (arm_sync_lock_test_and_set<NARROW>): Remove. - (arm_sync_new_<syncop><SIDI>): Remove. - (arm_sync_new_<syncop><NARROW>): Remove. - (arm_sync_new_nand<SIDI>): Remove. - (arm_sync_new_nand<NARROW>): Remove. - (arm_sync_old_<syncop><SIDI>): Remove. - (arm_sync_old_<syncop><NARROW>): Remove. - (arm_sync_old_nand<SIDI>): Remove. - (arm_sync_old_nand<NARROW>): Remove. - (*memory_barrier): Merge arm_output_memory_barrier. - (atomic_compare_and_swap<QHSD>): New. - (atomic_compare_and_swap<NARROW>_1): New. - (atomic_compare_and_swap<SIDI>_1): New. - (atomic_exchange<QHSD>): New. - (cas_cmp_operand, cas_cmp_str): New. - (atomic_op_operand, atomic_op_str): New. - (atomic_<syncop><QHSD>, atomic_nand<QHSD>): New. - (atomic_fetch_<syncop><QHSD>, atomic_fetch_nand<QHSD>): New. - (atomic_<syncop>_fetch<QHSD>, atomic_nand_fetch<QHSD>): New. - (arm_load_exclusive<NARROW>): New. - (arm_load_exclusivesi, arm_load_exclusivedi): New. - (arm_store_exclusive<QHSD>): New. - -2012-01-09 Michael Meissner <meissner@linux.vnet.ibm.com> - - * config/rs6000/rs6000.c (rs6000_init_hard_regno_mode_ok): Add DF - reload patterns if -mvsx-scalar-memory. - - * config/rs6000/vsx.md (vsx_xscvspdp): Allow xscvspdp to be - generated, even -mno-vsx-scalar-double was used. - (vsx_xscvdpsp_scalar): Likewise. - (vsx_xscvspdp_scalar2): Likewise. - -2012-01-09 Tom de Vries <tom@codesourcery.com> - Andrew Pinski <apinski@cavium.com> - - PR debug/51471 - * reorg.c (fill_slots_from_thread): Don't speculate - frame-related insns. - -2012-01-09 Richard Sandiford <rdsandiford@googlemail.com> - - * sched-int.h (bb_note): Move to... - * basic-block.h: ...here. - * haifa-sched.c (bb_note): Move to... - * cfgrtl.c: ...here. - * function.c (next_block_for_reg): New function. - (move_insn_for_shrink_wrap): Likewise. - (prepare_shrink_wrap): Rewrite to use the above. - -2012-01-09 Aldy Hernandez <aldyh@redhat.com> - - * gimple.c (is_gimple_non_addressable): Remove. - * gimple.h: Remove is_gimple_non_addressable. - * gimplify.c (gimplify_modify_expr_rhs): Use is_gimple_reg instead of - is_gimple_non_addressable. - * trans-mem.c (expand_assign_tm): Same. - -2012-01-09 Richard Guenther <rguenther@suse.de> - - PR tree-optimization/51775 - * tree-ssa-sccvn.c (visit_use): Value-number throwing stmts. - * tree-ssa-pre.c (eliminate): Properly fixup EH info. - -2012-01-09 Matthew Gretton-Dann <matthew.gretton-dann@arm.com> - - * config/arm/arm-cores.def (cortex-a15): Use cortex_a15_tune for - tuning parameters. - * config/arm/arm.c (arm_cortex_a15_tune): New static variable. - -2012-01-09 Richard Guenther <rguenther@suse.de> - - * tree-streamer-out.c (write_ts_optimization): Fix spelling. - -2012-01-08 Jan Hubicka <jh@suse.cz> - - PR tree-optimize/51680 - * ipa-inline-analyss.c (evaluate_properties_for_edge): Fix condition - on when known_vals needs to be computed; cleanup. - -2012-01-08 Jan Hubicka <jh@suse.cz> - - PR tree-optimize/51694 - * ipa-cp.c (ipa_get_indirect_edge_target): Add bounds checks. - -2012-01-08 Jonathan Wakely <jwakely.gcc@gmail.com> - - * doc/cpp.texi (Predefined Macros): __STRICT_ANSI__ is defined - for -std=c++98 and -std=c++11 too. - -2012-01-08 Chung-Lin Tang <cltang@codesourcery.com> - - * cfgloop.c (cancel_loop): Add free() of bbs array. - -2012-01-07 Jan Hubicka <jh@suse.cz> - - PR tree-optimization/51600 - * ipa-inline-analysis.c (estimate_edge_devirt_benefit): Disable code - that benefits small functions. - -2012-01-07 Jan Hubicka <jh@suse.cz> - - * ipa-inline.c (want_inline_small_function_p): Fix formating. - -2012-01-07 Jan Hubicka <jh@suse.cz> - - PR tree-optimization/51680 - * ipa-inline.c (want_inline_small_function_p): Be more lax on functions - whose inlining reduce unit size. - -2012-01-07 Alexandre Oliva <aoliva@redhat.com> - - PR bootstrap/51725 - * cselib.c (new_elt_loc_list): Promote addr_list to canonical node. - Add canonical node to containing_mem chain after the non-canonical - one, even if there weren't any locs to propagate. - (remove_useless_values): Keep only canonical values. - (add_mem_for_addr, cselib_lookup_mem): Canonicalize addr. - (cselib_invalidate_mem): Likewise. Ensure v is canonical, and - canonicalize mem_chain elements that are not discarded. - -2012-01-06 Jakub Jelinek <jakub@redhat.com> - - PR target/47333 - * cgraphunit.c (cgraph_optimize): Call output_weakrefs - before emitting functions. - - PR gcov-profile/50127 - * bb-reorder.c (partition_hot_cold_basic_blocks): Call - clear_aux_for_blocks. - -2012-01-06 Alexandre Oliva <aoliva@redhat.com> - - PR debug/51746 - * cselib.c (cselib_hash_rtx): Hash incoming VALUEs too. - -2012-01-06 Arnaud Charlet <charlet@adacore.com> - - * c-decl.c (ext_block): Moved up. - (collect_all_refs, for_each_global_decl): Take ext_block into account. - -2012-01-06 Han Shen <shenhan@google.com> - - Translate built-in include paths for sysroot. - * Makefile.in (gcc_gxx_include_dir_add_sysroot): New. - (PREPROCESSOR_DEFINES): Define GPLUSPLUS_INCLUDE_DIR_ADD_SYSROOT. - - * cppdefault.c (cpp_include_defaults): Replace hard coded "0" with - GPLUSPLUS_INCLUDE_DIR_ADD_SYSROOT for "add_sysroot" field. - - * configure.ac (AC_SUBST): Add gcc_gxx_include_dir_add_sysroot to - control whether sysroot should be prepended to gxx include dir. - - * configure: Regenerate. - -2012-01-06 Torvald Riegel <triegel@redhat.com> - - PR rtl-optimization/51771 - * builtin-attrs.def (ATTR_RETURNS_TWICE, ATTR_TM_NOTHROW_RT_LIST): New. - * gtm-builtins.def (BUILT_IN_TM_START): Add returns-twice attrib. - -2012-01-05 Eric Botcazou <ebotcazou@adacore.com> - - PR tree-optimization/51315 - * tree-sra.c (tree_non_aligned_mem_for_access_p): New predicate. - (build_accesses_from_assign): Use it instead of tree_non_aligned_mem_p. - -2012-01-05 Uros Bizjak <ubizjak@gmail.com> - - PR target/51681 - * config/ia64/ia64.c (expand_vec_perm_shrp): Use correct operands - for shrp pattern. Correctly handle and fixup shift variable. - Return false when shift > nelt for BYTES_BIG_ENDIAN target. - -2012-01-05 Jakub Jelinek <jakub@redhat.com> - - PR debug/51762 - * calls.c (emit_call_1): For noreturn calls force a REG_ARGS_SIZE - note when !ACCUMULATE_OUTGOING_ARGS. - -2012-01-05 Eric Botcazou <ebotcazou@adacore.com> - - * tree-vrp.c (extract_range_from_binary_expr_1): Remove duplicated - condition. - (extract_range_from_unary_expr_1): Avoid useless computations. - -2012-01-05 Jakub Jelinek <jakub@redhat.com> - - PR rtl-optimization/51767 - * cfgrtl.c (force_nonfallthru_and_redirect): Force addition - of jump_block and add an extra edge for degenerated asm gotos. - - PR middle-end/51768 - * stmt.c (check_unique_operand_names): Don't ICE during error - reporting if i is from labels chain. - - PR middle-end/44777 - * profile.c (branch_prob): Split bbs that have exit edge - and need a fake entry edge too. - -2012-01-05 Jan Hubicka <jh@suse.cz> - - PR middle-end/49710 - * cfgloopmanip.c (remove_path): Walk loop hiearchy upwards when - unlooping loops. - -2012-01-05 Richard Guenther <rguenther@suse.de> - - PR lto/50490 - * tree-streamer-out.c (write_ts_optimization): New function. - (streamer_write_tree_body): Call it. - * tree-streamer-in.c (lto_input_ts_optimization): New function. - (streamer_read_tree_body): Call it. - * lto-streamer-out.c (lto_is_streamable): Handle OPTIMIZATION_NODE. - -2012-01-05 Jakub Jelinek <jakub@redhat.com> - - PR middle-end/51761 - * gimple.h (struct gimplify_ctx): Add in_cleanup_point_expr field. - * gimplify.c (gimplify_cleanup_point_expr): Save and set - in_cleanup_point_expr before gimplify_stmt call and restore it - afterwards. - (gimplify_target_expr): Don't add {CLOBBER} cleanup if - in_cleanup_point_expr is false. - -2012-01-05 Richard Guenther <rguenther@suse.de> - - PR middle-end/51764 - * common.opt (Wmudflap, fmudflap, fmudflapth, fmudflapir): Move - to c.opt. - * toplev.c (process_options): Reject combining mudflap and LTO. - * tree-nomudflap.c (nogo): Use sorry instead of internal_error. - -2012-01-05 Richard Guenther <rguenther@suse.de> - - PR tree-optimization/51760 - * tree-ssa-ccp.c (likely_value): Drop UNDEFINED to CONSTANT, - not VARYING. - (bit_value_unop): Handle UNDEFINED operands. - (bit_value_binop): Likewise. - -2012-01-05 Georg-Johann Lay <avr@gjlay.de> - - * config/avr/avr.c (avr_replace_prefix): Remove. - (avr_asm_named_section): Use ACONCAT instead of avr_replace_prefix. - (avr_asm_function_rodata_section): Ditto. - (avr_asm_select_section): Ditto. - -2012-01-05 Marcus Shawcroft <marcus.shawcroft@arm.com> - - * reload.c (find_reloads): Adjust LABEL_NUSES on REG_LABEL_OPERAND - insertion. - -2012-01-05 Jakub Jelinek <jakub@redhat.com> - - PR bootstrap/51648 - * tree-cfg.c (need_fake_edge_p): Return true also for noreturn - calls that have any non-fake successor edges. - - PR debug/51746 - * var-tracking.c (add_stores): For COND_EXEC allow oval to be NULL. - -2012-01-04 Eric Botcazou <ebotcazou@adacore.com> - - PR tree-optimization/51624 - * tree-sra.c (build_ref_for_model): When replicating a chain of - COMPONENT_REFs, stop as soon as the offset would become negative. - -2012-01-04 Jakub Jelinek <jakub@redhat.com> - - PR debug/51695 - * dwarf2out.c (output_loc_list): For now drop >= 64KB expressions - in .debug_loc on the floor. - -2012-01-04 Andrew Pinski <apinski@cavium.com> - - * doc/invoke.texi (-march=@var{arch}): Add octeon+ and octeon2. - -2012-01-04 Andrew Pinski <apinski@cavium.com> - Adam Nemet <anemet@caviumnetworks.com> - - * config/mips/mips.md (size): Add SI and DI. - (SIZE): New mode attribute. - (U): New code attribute. - * config/mips/mips-dsp.md (mips_lbux): Use gen_mips_lbux_extsi. - (mips_lbux_<mode>): Delete. - (mips_l<SHORT:size><u>x_ext<GPR:mode>_<P:mode>): New pattern. - (mips_lhx): Use gen_mips_lhx_extsi. - (mips_lhx_<mode>): Delete. - (mips_lwx): Delete. - (mips_l<size>x): New expand. - (mips_lwx_<mode>): Delete. - (mips_l<GPR:size>x_<P:mode>): New pattern. - (*mips_lw<u>x_<P:mode>_ext): Likewise. - * config/mips/mips-ftypes.def: Add DI f(POINTER, SI) function type. - * config/mips/mips.c (mips_lx_address_p): New function. - (mips_rtx_costs <case MEM>): Call mips_lx_address_p. - (dsp64): New availability predicate. - (mips_builtins): Add an entry for __builtin_mips_ldx. - * config/mips/mips.h (ISA_HAS_LBX): New define. - (ISA_HAS_LBUX): Likewise. - (ISA_HAS_LHX): Likewise. - (ISA_HAS_LHUX): Likewise. - (ISA_HAS_LWX): Likewise. - (ISA_HAS_LWUX): Likewise. - (ISA_HAS_LDX): Likewise. - * doc/extend.texi (__builtin_mips_ldx): Document. - -2012-01-04 Tristan Gingold <gingold@adacore.com> - - * config/vms/xm-vms.h (HOST_LONG_FORMAT, HOST_PTR_PRINTF): Define - when long pointers are used. - * config.build (*-*-*vms*): Handle all OpenVMS targets. - (alpha64-dec-*vms*, alpha*-dec-*vms*) - (ia64-hp-*vms*): Remove. - * config/vms/xm-vms64.h: Delete. - -2012-01-04 Aldy Hernandez <aldyh@redhat.com> - - PR middle-end/51472 - * trans-mem.c (expand_assign_tm): Handle TM_MEMMOVE loads correctly. - -2012-01-04 Aldy Hernandez <aldyh@redhat.com> - - * opts.c (finish_options): Remove duplicate sorry. - -2012-01-04 Aldy Hernandez <aldyh@redhat.com> - - PR middle-end/51696 - * trans-mem.c (diagnose_tm_1): Display indirect calls with no name - correctly. - -2012-01-04 Richard Guenther <rguenther@suse.de> - - PR middle-end/51750 - * tree.c (size_low_cst): New function. - * tree.h (size_low_cst): Declare. - * fold-const.c (fold_comparison): Use it to extract the low - part of the POINTER_PLUS_EXPR offset. - -2012-01-04 Georg-Johann Lay <avr@gjlay.de> - - Fix clearing ZERO_REG - * config/avr/avr.md (cc): Add alternative "ldi". - (movqi_insn): Use it in cc attribute. - * config/avr/avr.c (notice_update_cc): Handle CC_LDI. - (output_reload_in_const): Use CLR to move 0 to ZERO_REG. - (output_reload_insisf): Use ZERO_REG to pre-clear register. - -2012-01-04 Andreas Krebbel <Andreas.Krebbel@de.ibm.com> - - * configure: Regenerate. - -2012-01-04 Richard Guenther <rguenther@suse.de> - - PR tree-optimization/49651 - * tree-ssa-structalias.c (type_can_have_subvars): New function. - (var_can_have_subvars): Use it. - (get_constraint_for_1): Only consider subfields if there can be any. - -2012-01-03 Jakub Jelinek <jakub@redhat.com> - - PR bootstrap/51725 - * cselib.c (new_elt_loc_list): When moving locs from one cselib_val - to its new canonical_cselib_val and the cselib_val was in - first_containing_mem chain, but the canonical_cselib_val was not, - add the latter into the chain. - (cselib_invalidate_mem): Compare canonical_cselib_val of - addr_list chain elt with v. - - PR pch/51722 - * dwarf2out.c (dwarf2out_start_source_file, dwarf2out_define, - dwarf2out_undef): Allocate e.info using ggc_strdup instead - of xstrdup. - (output_macinfo_op): Don't ggc_strdup fd->filename. - (optimize_macinfo_range): Allocate grp_name using XALLOCAVEC, - then ggc_strdup it. Don't free inc->info or cur->info. - (output_macinfo): Don't free ref->info or file->info. - -2012-01-03 Ira Rosen <irar@il.ibm.com> - - PR tree-optimization/51269 - * tree-vect-loop-manip.c (set_prologue_iterations): Make - first_niters a pointer. - (slpeel_tree_peel_loop_to_edge): Likewise. - (vect_do_peeling_for_loop_bound): Update call to - slpeel_tree_peel_loop_to_edge. - (vect_gen_niters_for_prolog_loop): Don't compute wide_prolog_niters - here. Remove it from the parameters list. - (vect_do_peeling_for_alignment): Update calls and compute - wide_prolog_niters. - -2012-01-03 Richard Guenther <rguenther@suse.de> - - PR tree-optimization/51070 - * tree-loop-distribution.c (stmt_has_scalar_dependences_outside_loop): - Properly handle calls. - -2012-01-03 Richard Guenther <rguenther@suse.de> - - PR tree-optimization/51692 - * tree-ssa-dce.c (eliminate_unnecessary_stmts): Do not remove - the LHS of allocation stmts. - -2012-01-03 Olivier Hainque <hainque@adacore.com> - - * system.h: Prior to #define, #undef fopen and freopen unconditionally. - -2012-01-03 Olivier Hainque <hainque@adacore.com> - - * collect2.c (main): In AIX specific computations for vector - insertions, use CONST_CAST2 to cast from char ** to const char **. - -2012-01-03 Richard Guenther <rguenther@suse.de> - - PR debug/51650 - * dwarf2out.c (dwarf2out_finish): Always create a DIE for - the context of a limbo DIE when it does not already exist. - -2012-01-03 Jakub Jelinek <jakub@redhat.com> - - PR tree-optimization/51719 - * value-prof.c (gimple_ic): When indirect call isn't noreturn, - but direct call is, clear direct call's lhs and don't add fallthrough - edge from dcall_bb to join_bb and PHIs. - -2012-01-03 Andreas Krebbel <Andreas.Krebbel@de.ibm.com> - - * config/s390/s390.md ("*cmp<mode>_ccs"): Fix comment mentioning - the instructions emitted by the pattern. - ("*TDC_insn_<mode>"): Add comment. - -2012-01-03 Richard Guenther <rguenther@suse.de> - - PR middle-end/51730 - * fold-const.c (fold_comparison): Properly canonicalize - tree offset and HOST_WIDE_INT bit position. - -2012-01-02 Uros Bizjak <ubizjak@gmail.com> - - * config/ia64/ia64.c (expand_vec_perm_broadcast): Use correct - operands for extzv pattern. - -2012-01-02 Jakub Jelinek <jakub@redhat.com> - - PR bootstrap/51725 - * cselib.c (add_mem_for_addr): Call canonical_cselib_val - on mem_elt first. - -2012-01-02 Sandra Loosemore <sandra@codesourcery.com> - - * doc/invoke.texi (-flto and related options): Copy-edit. - -2012-01-02 Richard Sandiford <rdsandiford@googlemail.com> - - * config/mips/mips.md (loadgp_newabi_<mode>): Add missing earlyclobber. - -2012-01-02 Jakub Jelinek <jakub@redhat.com> - - * config/i386/sse.md (*avx2_gatherdi<mode>_3, *avx2_gatherdi<mode>_4): - New patterns. - -2012-01-02 Richard Sandiford <rdsandiford@googlemail.com> - - * expr.h (move_by_pieces_ninsns): Declare. - * expr.c (move_by_pieces_ninsns): Make external. - * config/mips/mips-protos.h (mips_move_by_pieces_p): Declare. - (mips_store_by_pieces_p): Likewise. - * config/mips/mips.h (MOVE_BY_PIECES_P): Call mips_move_by_pieces_p. - (STORE_BY_PIECES_P): Likewise mips_store_by_pieces_p. - * config/mips/mips.c (mips_move_by_pieces_p): New function. - (mips_store_by_pieces_p): Likewise. - -2012-01-02 Jakub Jelinek <jakub@redhat.com> - - * passes.c (register_one_dump_file): Free full_name. - - * reload1.c (reload): Don't allocate reg_max_ref_width here. - (calculate_elim_costs_all_insns): Free offsets_at and - offsets_known_at at the end and clear the pointers. - -2012-01-02 Georg-Johann Lay <avr@gjlay.de> - - * config/avr/avr.opt (-mbranch-cost): Fix double definition of - this option introduced in r180739. - -2012-01-02 Georg-Johann Lay <avr@gjlay.de> - - PR target/51345 - * config.gcc (tm_file target=avr]): Add avr/avr-multilib.h - (tmake_file target=avr): Add avr/t-multilib. - - * config/avr/avr-c.c (avr_cpu_cpp_builtins): Use AVR_HAVE_8BIT_SP - to built-in define __AVR_HAVE_8BIT_SP__, __AVR_HAVE_16BIT_SP__. - * config/avr/genmultilib.awk: New file. - * config/avr/t-multilib: New auto-generated file. - * config/avr/multilib.h: New auto-generated file. - * config/avr/t-avr (AVR_MCUS): New variable. - (genopt.sh): Use it. - (s-mlib): Depend on t-multilib. - (t-multilib, multilib.h): New dependencies. - (s-avr-mlib): New rule to build t-multilib, multilib.h from AVR_MCUS. - (MULTILIB_OPTIONS): Remove. - (MULTILIB_MATCHES): Remove. - (MULTILIB_DIRNAMES): Remove. - (MULTILIB_EXCEPTIONS): Remove: - * config/avr/genopt.sh: Don't use hard coded file name; - pass AVR_MCUS from t-avr instead. - -2012-01-02 Georg-Johann Lay <avr@gjlay.de> - - * config/avr/avr.c (avr_out_ashrpsi3): Fix "case 31" to "case 23". - -2012-01-02 Georg-Johann Lay <avr@gjlay.de> - - Implement light-weight DImode support. - * config/avr/avr-dimode.md: New file. - * config/avr/avr.md: Include it. - (adjust_len): Add plus64, compare64. - (HIDI): Remove code iterator. - (code_stdname): New code attribute. - (rotx, rotsmode): Remove DI. - (rotl<mode>3, *rotw<mode>, *rotb<mode>): Use HISI instead of HIDI - as code iterator. - * config/avr/avr-protos.h (avr_have_dimode): New. - (avr_out_plus64, avr_out_compare64): New. - * config/avr/avr.c (avr_out_compare): Handle DImode. - (avr_have_dimode): New variable definition and initialization. - (avr_out_compare64, avr_out_plus64): New functions. - (avr_out_plus_1): Use simplify_unary_operation to negate xval. - (adjust_insn_length): Handle ADJUST_LEN_COMPARE64, ADJUST_LEN_PLUS64. - (avr_compare_pattern): Skip DImode comparisons. - -2012-01-02 Revital Eres <revital.eres@linaro.org> - - * ddg.c (def_has_ccmode_p): New function. - (add_cross_iteration_register_deps, - create_ddg_dep_from_intra_loop_link): Call it. - -2012-01-02 Richard Guenther <rguenther@suse.de> - - PR other/51679 - * invoke.texi (fassociative-math): Remove spurious paranthesis. - -2012-01-01 Jakub Jelinek <jakub@redhat.com> - - * gcc.c (process_command): Update copyright notice dates. - * gcov.c (print_version): Likewise. - * gcov-dump.c (print_version): Likewise. - * mips-tfile.c (main): Likewise. - * mips-tdump.c (main): Likewise. - -2012-01-01 Ira Rosen <irar@il.ibm.com> - - PR tree-optimization/51704 - * tree-vect-slp.c (vect_detect_hybrid_slp_stmts): Check that - a use is inside the basic block or loop before accessing its vect info. - -2012-01-01 Jan Hubicka <jhjh@suse.cz> - - PR rtl-optimization/51069 - * cfgloopmanip.c (remove_path): Removing path making irreducible - region unconditional makes BB part of the region. - -2012-01-01 Jakub Jelinek <jakub@redhat.com> - - PR tree-optimization/51683 - * tree-ssa-propagate.c (substitute_and_fold): Don't optimize away - calls with side-effects. - * tree-ssa-ccp.c (ccp_fold_stmt): Likewise. - -Copyright (C) 2012 Free Software Foundation, Inc. - -Copying and distribution of this file, with or without modification, -are permitted in any medium without royalty provided the copyright -notice and this notice are preserved. |