+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