+2009-08-19 Ian Lance Taylor <iant@google.com>
+
+ * doc/md.texi (Insn Canonicalizations): Correct canonicalization
+ of (plus (mult (neg B) C) A).
+
+2009-08-18 Michael Matz <matz@suse.de>
+
+ * omp-low.c (optimize_omp_library_calls): Use types_compatible_p
+ instead of comparing TYPE_MAIN_VARIANT for equality.
+ * tree-vect-patterns.c (vect_recog_dot_prod_pattern,
+ vect_recog_widen_mult_pattern, vect_recog_widen_sum_pattern): Ditto.
+ * tree-vect-loop.c (vect_is_simple_reduction): Ditto.
+ * gimplify.c (goa_lhs_expr_p): Ditto and use
+ STRIP_USELESS_TYPE_CONVERSION.
+
+2009-08-18 Michael Matz <matz@suse.de>
+
+ * tree-ssa-structalias.c (create_variable_info_for): Also mark
+ first field in a struct.
+ (intra_create_variable_infos): Don't deal with flag_argument_noalias.
+
+2009-08-18 Uros Bizjak <ubizjak@gmail.com>
+
+ * config/alpha/alpha.c (alpha_output_mi_thunk_osf): Allocate insn
+ locators before emit_insn is called. Remove assert that
+ cfun->is_thunk.
+ (alpha_end_function): Clear crtl->emit structure and free insn
+ locators if cfun->is_thunk is true.
+
+2009-08-18 Jason Merrill <jason@redhat.com>
+
+ * config/elfos.h (ASM_DECLARE_OBJECT_NAME): Use gnu_unique_object
+ type if available.
+ * configure.ac: Test for it.
+ * configure, config.in: Regenerate.
+ * doc/install.texi: Document --enable-gnu-unique-object.
+
+2009-08-18 Richard Guenther <rguenther@suse.de>
+
+ PR middle-end/41094
+ * builtins.c (fold_builtin_pow): Fold pow(pow(x,y),z) to
+ pow(x,y*z) only if x is nonnegative.
+
+2009-08-18 Jakub Jelinek <jakub@redhat.com>
+
+ * bb-reorder.c (fix_up_fall_thru_edges): Only call invert_jump
+ on jumps.
+
+ PR target/40971
+ * config/rs6000/rs6000.c (rs6000_legitimize_address): For
+ [DT][FDI]mode ensure the offset isn't 4/8/12 bytes below 0x8000.
+
+2009-08-17 DJ Delorie <dj@redhat.com>
+
+ * config/m32c/m32c.md (UNS_FSETB, UNS_FREIT): New.
+ * config/m32c/prologue.md (epilogue_freit): New.
+ (fset_b): New.
+ * config/m32c/m32c.c (m32c_function_needs_enter): Add prototype.
+ (bank_switch_p): Likewise.
+ (fast_interrupt_p): Likewise.
+ (interrupt_p): Likewise.
+ (m32c_conditional_register_usage): Round memregs size up.
+ (need_to_save): We only need to save $a0 when we use ENTER.
+ (interrupt_p): Check for fast_interrupt too.
+ (bank_switch_p): New.
+ (fast_interrupt_p): New.
+ (m32c_attribute_table): Add bank_switch and fast_interrupt.
+ (m32c_emit_prolog): Support bank switching and fast interrupts.
+ * doc/extend.texi (Function Attributes): Add bank_switch and
+ fast_interrupt.
+
+2009-08-17 Douglas B Rupp <rupp@gnat.com>
+
+ * config/alpha/alpha.c (vms_valid_pointer_mode): New function.
+ * config/alpha/vms.h (TARGET_VALID_POINTER_MODE): Define.
+
+2009-08-16 Douglas B Rupp <rupp@gnat.com>
+
+ * doc/invoke.texi (Target options):
+ Add new option list for IA-64/VMS.
+ (menu): Add IA-64/VMS Options.
+ (IA-64/VMS Options): Likewise.
+
+2009-08-16 Richard Sandiford <rdsandiford@googlemail.com>
+
+ PR target/38599
+ * config/mips/mips.md (*lwxs): Use :P for pointer values.
+
+2009-08-16 Richard Sandiford <rdsandiford@googlemail.com>
+
+ * config/mips/mips-protos.h (mips_push_asm_switch): New function.
+ (mips_pop_asm_switch): Likewise.
+ * config/mips/mips.c (set_noreorder, set_nomacro, set_noat): Replace
+ with...
+ (mips_noreorder, mips_nomacro, mips_noat): ...these new variables.
+ (mips_push_asm_switch_1, mips_pop_asm_switch_1): New functions.
+ (mips_push_asm_switch, mips_pop_asm_switch): Likewise.
+ (mips_print_operand_punctuation): Use them. Check mips_noreorder
+ instead of set_noreorder.
+ (mips_output_function_prologue): Use the new functions.
+ (mips_output_function_epilogue): Likewise.
+ (mips_need_noat_wrapper_p): New function, split out from...
+ (mips_final_prescan_insn, mips_final_postscan_insn): ...here.
+ Use mips_push_asm_switch and mips_pop_asm_switch.
+ * config/mips/mips.h (FUNCTION_PROFILER): Use mips_push_asm_switch
+ and mips_pop_asm_switch.
+ (ASM_OUTPUT_REG_POP): Likewise.
+ (DBR_OUTPUT_SEQEND): Remove boilerplate comment.
+ Use mips_pop_asm_switch.
+ (mips_asm_switch): New structure.
+ (set_noreorder, set_nomacro): Replace with...
+ (mips_noreorder, mips_nomacro, mips_noat): ...these new variables.
+ * config/mips/mips.md (fix_truncdfsi2_macro): Use mips_nomacro
+ instead of set_nomacro.
+ (fix_truncsfsi2_macro): Likewise.
+ (cprestore): Likewise.
+ (hazard): Use mips_noreorder instead of set_noreorder.
+ * config/mips/sdemtk.h (FUNCTION_PROFILER): As for mips.h.
+
+2009-08-16 Uros Bizjak <ubizjak@gmail.com>
+
+ * config/alpha/alpha.c (alpha_and_function): Handle NULL_RTX returned
+ from prev_active_insn.
+
+2009-08-16 Anatoly Sokolov <aesok@post.ru>
+
+ * config/avr/avr.h (AVR_HAVE_8BIT_SP): New macros.
+ * config/avr/avr.c (avr_override_options): Initialize
+ avr_current_arch variable.
+ (avr_cpu_cpp_builtins): Define __AVR_HAVE_8BIT_SP__ or
+ __AVR_HAVE_16BIT_SP__ according to the device type.
+ (expand_prologue, output_movhi): Use AVR_HAVE_8BIT_SP instead of
+ TARGET_TINY_STACK.
+ (expand_epilogue): Use correct QI mode frame pointer for tiny stack.
+ Use AVR_HAVE_8BIT_SP instead of TARGET_TINY_STACK.
+
2009-08-16 Dodji Seketeli <dodji@redhat.com>
+ PR debug/37801
* gcc/dwarf2out.c (gen_inlined_subroutine_die): Concentrate on
generating inlined subroutine die only. We shouldn't be
called for anything else.
(output_init_element): Issue -Wc++-compat warning if needed when
initializing a bitfield with enum type.
* c-parser.c (c_parser_expression): Set original_type to
- original_type of right hand operand of comman operator.
+ original_type of right hand operand of comma operator.
2009-04-27 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>