+2011-05-22 Jakub Jelinek <jakub@redhat.com>
+
+ PR middle-end/49029
+ * expmed.c (extract_fixed_bit_field): Test whether target can be used
+ only after deciding which mode to use.
+
+2011-05-21 Eric Botcazou <ebotcazou@adacore.com>
+
+ * config/sparc/sparc.md (setjmp): Handle PIC mode and use the hard
+ frame pointer.
+
+2011-05-21 Eric Botcazou <ebotcazou@adacore.com>
+
+ * config/sparc/sparc.c (eligible_for_return_delay): Do not return
+ false if there are call-saved registers here...
+ (sparc_can_use_return_insn_p): ...but here instead.
+ (save_or_restore_regs): Fix thinko.
+ (sparc_expand_prologue): Use current_function_is_leaf.
+ (sparc_frame_pointer_required): Likewise.
+
+2011-05-20 Jakub Jelinek <jakub@redhat.com>
+
+ PR bootstrap/49086
+ * gimple-fold.c (and_comparisons_1, or_comparisons_1): Return NULL
+ for PHI args that are SSA_NAME_IS_DEFAULT_DEF.
+
+2011-05-20 Richard Guenther <rguenther@suse.de>
+
+ PR tree-optimization/49079
+ * tree-dfa.c (get_ref_base_and_extent): Handle view-converting
+ MEM_REFs correctly for the trailing array access detection.
+ Special case constants the same way as decls for overall size
+ constraining.
+
+2011-05-20 Jakub Jelinek <jakub@redhat.com>
+
+ PR tree-optimization/49073
+ * gimple-fold.c (and_comparisons_1, or_comparisons_1): Return
+ NULL if PHI argument is SSA_NAME, whose def_stmt is dominated
+ by the PHI.
+ * tree-ssa-ifcombine.c (tree_ssa_ifcombine): Calculate dominators.
+
+2011-05-19 Uros Bizjak <ubizjak@gmail.com>
+
+ * config/i386/i386.c (option_override_internal): Enable TARGET_CMOVE
+ when TARGET_RDRND is active.
+ (ix86_expand_builtin) <case IX86_BUILTIN_RDRAND{16,32,64}_STEP>:
+ Generate dummy SImode target register when target is NULL.
+
+2011-05-18 H.J. Lu <hongjiu.lu@intel.com>
+
+ Backport from mainline
+ 2011-05-18 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR target/49002
+ * config/i386/sse.md (avx_<avxmodesuffixp><avxmodesuffix>_<avxmodesuffixp>):
+ Properly handle load cast.
+
+2011-05-18 Jakub Jelinek <jakub@redhat.com>
+
+ PR tree-optimization/49039
+ * tree-vrp.c (extract_range_from_binary_expr): For
+ MIN_EXPR <~[a, b], ~[c, d]> and MAX_EXPR <~[a, b], ~[c, d]>
+ return ~[MAX_EXPR <a, c>, MIN_EXPR <b, d>].
+
+2011-05-18 Richard Guenther <rguenther@suse.de>
+
+ PR tree-optimization/49018
+ * gimple.c (gimple_has_side_effects): Volatile asms have side-effects.
+ * tree-ssa-ifcombine.c (bb_no_side_effects_p): Use
+ gimple_has_side_effects.
+
+2011-05-18 Richard Guenther <rguenther@suse.de>
+
+ Backport from mainline
+ 2011-04-19 Richard Guenther <rguenther@suse.de>
+
+ PR lto/48207
+ * tree.c (free_lang_data): Do not reset the decl-assembler-name
+ langhook.
+
+ 2011-04-21 Richard Guenther <rguenther@suse.de>
+
+ PR lto/48703
+ * tree.c (free_lang_data_in_decl): Do not zero TREE_TYPE of
+ DECL_NAME.
+
+2011-05-18 Richard Guenther <rguenther@suse.de>
+
+ Backport from mainline
+ 2011-05-12 Richard Guenther <rguenther@suse.de>
+
+ PR tree-optimization/48172
+ * tree-vect-loop-manip.c (vect_vfa_segment_size): Do not exclude
+ the number of iterations from the segment size calculation.
+ (vect_create_cond_for_alias_checks): Adjust.
+
+ 2011-05-13 Richard Guenther <rguenther@suse.de>
+
+ PR tree-optimization/48172
+ * tree-vect-loop-manip.c (vect_vfa_segment_size): Avoid
+ multiplying by number of iterations for equal step.
+ (vect_create_cond_for_alias_checks): Likewise.
+
+2011-05-18 Jakub Jelinek <jakub@redhat.com>
+
+ PR tree-optimization/49000
+ * tree-ssa.c (execute_update_addresses_taken): Call
+ maybe_rewrite_mem_ref_base on debug stmt value. If it couldn't
+ be rewritten and decl has been marked for renaming, reset
+ the debug stmt.
+
+2011-05-17 Nick Clifton <nickc@redhat.com>
+
+ Import these patches from the mainline:
+
+ 2011-05-17 Nick Clifton <nickc@redhat.com>
+
+ * config/rx/rx.c (rx_memory_move_cost): Include cost of register
+ moves.
+
+ * config/rx/rx.md: Add peephole to remove redundant extensions
+ after loads.
+ (bitset_in_memory): Use rx_restricted_mem_operand.
+ (bitinvert_in_memory): Likewise.
+ (bitclr_in_memory): Likewise.
+
+ 2011-05-17 Kazuhio Inaoka <kazuhiro.inaoka.ud@renesas.com>
+ Nick Clifton <nickc@redhat.com>
+
+ * config/rx/rx.md: Add peepholes to match a register move followed
+ by a comparison of the moved register. Replace these with an
+ addition of zero that does both actions in one instruction.
+
+2011-05-17 Jakub Jelinek <jakub@redhat.com>
+
+ PR target/48986
+ * config/i386/sync.md (sync_old_add<mode>): Relax operand 2
+ predicate to allow CONST_INT.
+
+2011-05-16 Joseph Myers <joseph@codesourcery.com>
+
+ PR preprocessor/48677
+ * cppspec.c (lang_specific_driver): Set new_decoded_options[0]
+ from decoded_options[0], not from itself.
+
+2011-05-16 Uros Bizjak <ubizjak@gmail.com>
+
+ * config/i386/i386.md (*movxf_internal): Disable CONST_DOUBLE
+ optimization for CM_MEDIUM and CM_LARGE code models. Fix usage
+ of standard_80387_constant_p.
+ (*movxf_internal_nointeger): Ditto.
+ (*movdf_internal): Remove dead code-size optimization.
+ (*movdf_internal_rex64): Fix usage of standard_80387_constant_p.
+ (*movdf_internal_nointeger): Ditto.
+ (*movsf_internal): Ditto.
+ (floating point move splitters): Ditto.
+ * config/i386/constraints.md (G): Ditto.
+ * config/i386/i386.c (ix86_preferred_reload_class): Ditto.
+
+2011-05-12 Jakub Jelinek <jakub@redhat.com>
+
+ PR tree-optimization/48975
+ * tree-if-conv.c (combine_blocks): Call free_bb_predicate
+ on all bbs here and free and clear ifc_bbs at the end.
+
+2011-05-12 Richard Guenther <rguenther@suse.de>
+
+ Backport from mainline
+ 2011-05-02 Richard Guenther <rguenther@suse.de>
+
+ PR tree-optimization/48822
+ * tree-ssa-sccvn.c (set_ssa_val_to): Never go up the lattice.
+ (process_scc): Indicate which iteration we start.
+
+2011-05-12 Jakub Jelinek <jakub@redhat.com>
+
+ PR debug/48967
+ * var-tracking.c (use_narrower_mode_test) <case REG>: Return 1
+ if validate_subreg fails.
+
+2011-05-12 Nick Clifton <nickc@redhat.com>
+
+ * config/rx/rx.h (HAVE_PRE_DECREMENT): Fix typo.
+ * config/rx/rx.c (rx_is_legitimate_constant): Use gcc_unreachable
+ instead of abort.
+ (rx_align_for_label): Test label before extracting its number of
+ uses.
+ (rx_max_skip_for_label): Ignore debug insns.
+
+2011-05-11 Jakub Jelinek <jakub@redhat.com>
+
+ PR debug/48159
+ * tree-ssa.c (reset_debug_uses): New function.
+ * tree-flow.h (reset_debug_uses): New prototype.
+ * tree-data-ref.c (stmts_from_loop): Ignore debug stmts.
+ * tree-loop-distribution.c (generate_loops_for_partition): Call
+ reset_debug_uses on the stmts that will be removed. Keep around
+ all debug stmts, don't count them as bits in partition bitmap.
+ (generate_builtin): Don't count debug stmts or labels as bits in
+ partition bitmap.
+
+2011-05-10 Michael Meissner <meissner@linux.vnet.ibm.com>
+
+ Backport from mainline
+ 2011-05-10 Michael Meissner <meissner@linux.vnet.ibm.com>
+
+ PR target/48857, 48495
+ * config/rs6000/rs6000.h (VSX_SCALAR_MODE): Delete.
+ (VSX_MODE): Ditto.
+ (VSX_MOVE_MODE): Ditto.
+ (ALTIVEC_OR_VSX_VECTOR_MODE): New macro, combine all Altivec and
+ VSX vector types. Add V2DImode.
+ (HARD_REGNO_CALLER_SAVE_MODE): Use it instead of
+ ALTIVEC_VECTOR_MODE and VSX_VECTOR_MODE calls.
+ (MODES_TIEABLE_P): Ditto.
+
+ * config/rs6000/rs6000.c (rs6000_emit_move): Use
+ ALTIVEC_OR_VSX_MODE instead of ALTIVEC_VECTOR_MODE and
+ VSX_VECTOR_MODE.
+ (init_cumulative_args): Ditto.
+ (rs6000_function_arg_boundary): Ditto.
+ (rs6000_function_arg_advance_1): Ditto.
+ (rs6000_function_arg): Ditto.
+ (rs6000_function_ok_for_sibcall): Ditto.
+ (emit_frame_save): Ditto.
+ (rs6000_function_value): Ditto.
+ (rs6000_libcall_value): Ditto.
+
+2011-05-10 Nick Clifton <nickc@redhat.com>
+
+ * config/rx/rx.c (rx_memory_move_cost): Reduce the cost for
+ stores.
+
+2011-05-10 DJ Delorie <dj@redhat.com>
+
+ * config/rx/rx.h (JUMP_ALIGN, LABEL_ALIGN, LOOP_ALIGN): Define.
+ (LABEL_ALIGN_AFTER_BARRIER): Pass label to rx_align_for_label
+ * config/rx/rx.c (rx_align_for_label): Add label and
+ uses_threshold parameters. Do not align when the label is not
+ used enough.
+ * config/rx/rx-protos.h (rx_align_for_label): Update prototype.
+
+2011-05-10 Jakub Jelinek <jakub@redhat.com>
+
+ Backported from mainline
+ 2011-05-07 Zdenek Dvorak <ook@ucw.cz>
+
+ PR tree-optimization/48837
+ * tree-tailcall.c (tree_optimize_tail_calls_1): Do not mark tailcalls
+ when accumulator transformation is performed.
+
+2011-05-10 Jakub Jelinek <jakub@redhat.com>
+
+ PR tree-optimization/48611
+ PR tree-optimization/48794
+ * tree-eh.c (remove_unreachable_handlers): Don't remove regions
+ referenced from RESX or EH_DISPATCH arguments.
+
+2011-05-09 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
+
+ * config/s390/s390.md (TD/TF mem to reg move splitter): Make the
+ temporary register to match Pmode.
+
+2011-05-09 Eric Botcazou <ebotcazou@adacore.com>
+
+ * var-tracking.c (find_mem_expr_in_1pdv): Fix thinko.
+ (dataflow_set_preserve_mem_locs): Likewise.
+
+2011-05-06 Uros Bizjak <ubizjak@gmail.com>
+
+ * config/i386/i386.md (*movdf_internal_nointeger): Apply "*"
+ constraint modifier to "r".
+
+2011-05-06 Alan Modra <amodra@gmail.com>
+
+ PR target/48900
+ * config/rs6000/rs6000.c (rs6000_legitimize_tls_address): Use
+ const0_rtx as the arg to the dummy __tls_get_addr libcall.
+
+2011-05-06 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
+
+ * config/s390/s390.c (s390_asm_trampoline_template): Comment
+ instruction sizes.
+ (s390_trampoline_init): Replace UNITS_PER_WORD with UNITS_PER_LONG.
+
+2011-05-06 Ramana Radhakrishnan <ramana.radhakrishnan@linaro.org>
+
+ PR target/48252
+ * config/arm/neon.md (neon_vtrn<mode>): Fix typo from earlier commit.
+
+2011-05-05 Michael Meissner <meissner@linux.vnet.ibm.com>
+
+ * config/rs6000/rs6000.c (rs6000_handle_option): Add missing break
+ for OPT_mfpu_ case.
+
+2011-05-05 Jason Merrill <jason@redhat.com>
+
+ PR c++/40975
+ * tree-inline.c (copy_tree_r): Handle STATEMENT_LIST.
+
+2011-05-05 Julian Brown <julian@codesourcery.com>
+
+ * config/arm/neon.md (vec_set<mode>_internal): Fix misplaced
+ parenthesis in D-register case.
+
+2011-05-05 Ira Rosen <ira.rosen@linaro.org>
+
+ Backport from mainline:
+ 2011-04-18 Ulrich Weigand <ulrich.weigand@linaro.org>
+ Ira Rosen <ira.rosen@linaro.org>
+
+ PR target/48252
+ * config/arm/arm.c (neon_emit_pair_result_insn): Swap arguments
+ to match neon_vzip/vuzp/vtrn_internal.
+ * config/arm/neon.md (neon_vtrn<mode>_internal): Make both
+ outputs explicitly dependent on both inputs.
+ (neon_vzip<mode>_internal, neon_vuzp<mode>_internal): Likewise.
+
+2011-05-04 Uros Bizjak <ubizjak@gmail.com>
+
+ * config/i386/i386.md (*movdi_internal_rex64) <TYPE_SSEMOV>:
+ Use %v prefix in insn mnemonic to handle TARGET_AVX.
+ (*movdi_internal): Use "maybe_vex" instead of "vex" in "prefix"
+ attribute calculation.
+ (*movdf_internal): Output AVX mnemonics. Add "prefix" attribute.
+ * config/i386/sse.md (*sse2_storeq_rex64): Do not emit %v prefix
+ for mov{q} mnemonic.
+ (*vec_extractv2di_1_rex64_avx): Ditto.
+
+2011-05-03 Uros Bizjak <ubizjak@gmail.com>
+ Jakub Jelinek <jakub@redhat.com>
+
+ PR target/48774
+ * config/i386/i386.c (ix86_match_ccmode): For CC{A,C,O,S}mode
+ only succeed if req_mode is the same as set_mode.
+
+2011-05-03 Richard Guenther <rguenther@suse.de>
+
+ PR lto/48846
+ * lto-streamer-in.c (unpack_ts_decl_common_value_fields):
+ Stream decl_common.off_align instead of the derived DECL_OFFSET_ALIGN.
+ * lto-streamer-out.c (pack_ts_decl_common_value_fields): Likewise.
+
+2011-05-03 Eric Botcazou <ebotcazou@adacore.com>
+
+ PR target/48723
+ * config/i386/i386.c (ix86_expand_prologue): Do not probe the stack
+ for -fstack-check if the size to allocate is negative.
+
+2011-04-30 Jakub Jelinek <jakub@redhat.com>
+
+ PR tree-optimization/48809
+ * tree-switch-conversion.c (build_arrays): Compute tidx in unsigned
+ type.
+ (gen_inbound_check): Don't compute index_expr - range_min in utype
+ again, instead reuse SSA_NAME initialized in build_arrays.
+ Remove two useless gsi_for_stmt calls.
+
+2011-04-28 Michael Meissner <meissner@linux.vnet.ibm.com>
+
+ Backport from mainline
+ 2011-04-01 Andrew Pinski <pinskia@gmail.com>
+ Michael Meissner <meissner@linux.vnet.ibm.com>
+
+ PR target/48262
+ * config/rs6000/vector.md (movmisalign<mode>): Allow for memory
+ operands, as per the specifications.
+
+ * config/rs6000/altivec.md (vec_extract_evenv4si): Correct modes.
+ (vec_extract_evenv4sf): Ditto.
+ (vec_extract_evenv8hi): Ditto.
+ (vec_extract_evenv16qi): Ditto.
+ (vec_extract_oddv4si): Ditto.
+
+2011-04-28 Jakub Jelinek <jakub@redhat.com>
+
+ PR middle-end/48597
+ * final.c (final_scan_insn): Call dwarf2out_frame_debug even for
+ inline asm.
+
+2011-04-27 Jakub Jelinek <jakub@redhat.com>
+
+ PR c/48742
+ * c-typeck.c (build_binary_op): Don't wrap arguments if
+ int_operands is true.
+
+2011-04-26 Jakub Jelinek <jakub@redhat.com>
+
+ PR debug/48768
+ * tree-ssa.c (insert_debug_temp_for_var_def): If degenerate_phi_result
+ is error_mark_node, set value to NULL.
+
+ PR tree-optimization/48734
+ * tree-ssa-reassoc.c (eliminate_redundant_comparison): Give up
+ if return value from maybe_fold_*_comparsions isn't something
+ the code is prepared to handle.
+
+2011-04-26 Richard Guenther <rguenther@suse.de>
+
+ PR tree-optimization/48731
+ * ipa-inline.c (cgraph_flatten): Test if function is inlinable.
+
+2011-04-24 Paolo Carlini <paolo.carlini@oracle.com>
+
+ PR other/48748
+ * doc/extend.texi (Type Traits): Document __is_standard_layout,
+ __is_literal_type, and __is_trivial; update throughout about
+ possibly cv-qualified void types.
+
+2011-04-23 Jakub Jelinek <jakub@redhat.com>
+
+ PR c/48685
+ * fold-const.c (fold_convert_loc): Add NOP_EXPR when casting
+ to VOID_TYPE even around MODIFY_EXPR.
+
+2011-04-22 Jakub Jelinek <jakub@redhat.com>
+
+ PR tree-optimization/48717
+ * tree-ssa-forwprop.c (associate_plusminus): For A + ~A and
+ ~A + A optimizations use build_int_cst_type instead of build_int_cst.
+
+2011-04-22 Jakub Jelinek <jakub@redhat.com>
+
+ PR c/48716
+ * gimplify.c (gimplify_bind_expr): Mark as GOVD_LOCAL also
+ TREE_STATIC variables declared inside of some OpenMP construct.
+
+2011-04-21 Uros Bizjak <ubizjak@gmail.com>
+
+ PR target/48708
+ * config/i386/i386.c (ix86_expand_vector_set) <V2DImode>: Generate
+ vec_extract and vec_concat for non-SSE4_1 targets.
+
+2011-04-21 Richard Guenther <rguenther@suse.de>
+
+ PR middle-end/48695
+ * tree-ssa-alias.c (aliasing_component_refs_p): Compute base
+ objects and types here. Adjust for their offset before comparing.
+
+2011-04-21 Eric Botcazou <ebotcazou@adacore.com>
+
+ * gimple.c (walk_gimple_op) <GIMPLE_CALL>: Fix couple of oversights.
+
2011-04-20 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
PR target/48288
2011-04-13 Jakub Jelinek <jakub@redhat.com>
PR middle-end/48591
- * omp-low.c (expand_omp_atomic_fetch_op): Return false if decl is
- NULL.
+ * omp-low.c (expand_omp_atomic_fetch_op): Return false if decl is NULL.
(expand_omp_atomic_pipeline): Return false if cmpxchg is NULL.
2011-04-13 Ramana Radhakrishnan <ramana.radhakrishnan@linaro.org>
2011-04-08 Steven G. Kargl <kargl@gcc.gnu.org>
PR target/47829
- gcc/config.gcc: disable unwind table generation for crtbegin/crtend
+ * config.gcc: disable unwind table generation for crtbegin/crtend
on i386-*-freebsd.
2011-04-08 Jakub Jelinek <jakub@redhat.com>
PR tree-optimization/48377
- * tree-vect-data-refs.c (vector_alignment_reachable_p): Set
- is_packed to true even for types with smaller TYPE_ALIGN than
- TYPE_SIZE.
+ * tree-vect-data-refs.c (vector_alignment_reachable_p): Set is_packed
+ to true even for types with smaller TYPE_ALIGN than TYPE_SIZE.
2011-04-07 Uros Bizjak <ubizjak@gmail.com>
2011-03-08 Georg-Johann Lay <avr@gjlay.de>
- * config/avr/avr.h (REGISTER_MOVE_COST, MEMORY_MOVE_COST): Remove.
- * config/avr/avr.c (TARGET_REGISTER_MOVE_COST,
- TARGET_MEMORY_MOVE_COST): Define.
- (avr_register_move_cost, avr_memory_move_cost): New Functions.
+ * config/avr/avr.h (REGISTER_MOVE_COST, MEMORY_MOVE_COST): Remove.
+ * config/avr/avr.c (TARGET_REGISTER_MOVE_COST)
+ (TARGET_MEMORY_MOVE_COST): Define.
+ (avr_register_move_cost, avr_memory_move_cost): New Functions.
2011-03-08 Jakub Jelinek <jakub@redhat.com>