+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
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__
+ defines for __UINT24_MAX__, __INT24_MAX__, __INT24_MIN__
unintentionally removed in r184616.
2012-03-01 Venkataramanan Kumar <venkataramanan.kumar@amd.com>
* 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