+2009-06-22 Kai Tietz <kai.tietz@onevision.com>
+
+ * config.gcc: Add for x86 and x64 mingw targets t-fprules-soft
+ and t-softfp support.
+ * config/i386/mingw32.h (LIBGCC2_HAS_TF_MODE): Enable TFmode.
+ (LIBGCC2_TF_CEXT): Define.
+ (TF_SIZE): Define.
+
+2009-06-22 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
+
+ PR target/40463
+ * config/arm/linux-eabi.h (CLEAR_INSN_CACHE): Fix definition.
+
+2009-06-22 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
+
+ * config/arm/arm.c (arm_override_options): Disable -mcaller-super-interworking
+ and -mcallee-super-interworking.
+ * doc/invoke.texi (ARM Options): Document this.
+
+2009-06-22 Nathan Sidwell <nathan@codesourcery.com>
+
+ * config/arm/arm.c (arm_print_operand): Deal with HIGH.
+ * config/arm/constraints.md (j): New constraint for movw operands.
+ (N): Remove thumb2 meaning.
+ * config/arm/arm.md (*arm_movw): Delete.
+ (*arm_movsi_insn): Use j constraint for movw instead of N constraint.
+ * config/arm/vfp.md (*arm_movsi_vfp, *thumb2_movsi_vfp): Likewise.
+ * config/arm/thumb2.md (*thumb2_movsi_insn): Likewise.
+
+2009-06-22 Martin Jambor <mjambor@suse.cz>
+
+ PR tree-optimization/40492
+ * tree-sra.c (sra_modify_assign): Pass zero offsets to
+ build_ref_for_offset.
+
+2009-06-22 Shujing Zhao <pearly.zhao@oracle.com>
+
+ * alias.c: Use REG_P, MEM_P, CONST_INT_P, LABEL_P, CALL_P, NOTE_P and
+ JUMP_TABLE_DATA_P predicates where applicable.
+ * auto-inc-dec.c: Ditto.
+ * builtins.c: Ditto.
+ * caller-save.c: Ditto.
+ * calls.c: Ditto.
+ * cfgcleanup.c: Ditto.
+ * cfglayout.c: Ditto.
+ * cfgrtl.c: Ditto.
+ * combine.c: Ditto.
+ * combine-stack-adj.c: Ditto.
+ * cse.c: Ditto.
+ * cselib.c: Ditto.
+ * dbxout.c: Ditto.
+ * df-scan.c: Ditto.
+ * dse.c: Ditto.
+ * dwarf2asm.c: Ditto.
+ * dwarf2out.c: Ditto.
+ * emit-rtl.c: Ditto.
+ * except.c: Ditto.
+ * explow.c: Ditto.
+ * expmed.c: Ditto.
+ * expr.c: Ditto.
+ * final.c: Ditto.
+ * function.c: Ditto.
+ * fwprop.c: Ditto.
+ * gcse.c: Ditto.
+ * genpreds.c: Ditto.
+ * genrecog.c: Ditto.
+ * ifcvt.c: Ditto.
+ * ira-costs.c: Ditto.
+ * ira-lives.c: Ditto.
+ * jump.c: Ditto.
+ * loop-iv.c: Ditto.
+ * lower-subreg.c: Ditto.
+ * modulo-sched.c: Ditto.
+ * optabs.c: Ditto.
+ * postreload.c: Ditto.
+ * print-rtl.c: Ditto.
+ * recog.c: Ditto.
+ * reginfo.c: Ditto.
+ * regmove.c: Ditto.
+ * reload1.c: Ditto.
+ * reload.c: Ditto.
+ * reorg.c: Ditto.
+ * rtlanal.c: Ditto.
+ * rtl.c: Ditto.
+ * sched-vis.c: Ditto.
+ * sdbout.c: Ditto.
+ * sel-sched-ir.c: Ditto.
+ * simplify-rtx.c: Ditto.
+ * targhooks.c: Ditto.
+ * var-tracking.c: Ditto.
+ * vmsdbgout.c: Ditto.
+
+2009-06-22 Matthias Klose <doko@ubuntu.com>
+
+ * Makefile.in (install-plugin): Always use DESTDIR.
+
+2009-06-22 Olivier Hainque <hainque@adacore.com>
+
+ * config/pa/pa.c (output_call): Don't optimize post call jumps
+ into return address adjustments if the call may throw.
+
+2009-06-21 Richard Earnshaw <rearnsha@arm.com>
+
+ * arm.c (thumb1_output_casesi): New function.
+ * arm.h (CASE_VECTOR_PC_RELATIVE): Thumb-1 code is also relative if
+ optimizing for size or PIC.
+ (CASE_VECTOR_SHORTEN_MODE): Handle thumb-1.
+ * arm.md (UNSPEC_THUMB1_CASESI): New constant.
+ (casesi): Handle Thumb-1 when optimizing for size or PIC.
+ (thumb1_casesi_internal_pic): New expand rule.
+ (thumb1_casesi_dispatch): New pattern.
+ * aout.h (ASM_OUTPUT_ADDR_DIFF_ELT): Use shortened vectors for
+ thumb-1 mode.
+ * coff.h (JUMP_TABLES_IN_TEXT_SECTION): Thumb-1 jump tables are now
+ in the text seciton when PIC or optimizing for size.
+ * elf.h (JUMP_TABLES_IN_TEXT_SECTION): Likewise.
+ * lib1funcs.asm ([__ARM_EABI__]): Add an attribute describing stack
+ preservation properties of code.
+ (__gnu_thumb1_case_sqi, __gnu_thumb1_case_uqi): New functions.
+ (__gnu_thumb1_case_shi, __gnu_thumb1_case_uhi): New functions.
+ (__gnu_thumb1_case_si): New function.
+ * t-arm (LIB1ASMSRC): Define here.
+ (LIB1ASMFUNCS): Add some common functions.
+ * t-arm-elf (LIB1ASMSRC): Delete.
+ (LIB1ASMFUNCS): Append to existing set.
+ * t-pe (LIB1ASMSRC, LIB1ASMFUNCS): Likewise.
+ * t-strongarm-elf (LIB1ASMSRC, LIB1ASMFUNCS): Likewise.
+ * t-symbian (LIB1ASMFUNCS): Likewise.
+ * t-vxworks (LIB1ASMSRC, LIB1ASMFUNCS): Likewise.
+ * t-wince-pe (LIB1ASMSRC, LIB1ASMFUNCS): Likewise.
+
+2009-06-21 Richard Guenther <rguenther@suse.de>
+
+ PR tree-optimization/38729
+ * tree-ssa-loop-niter.c (find_loop_niter_by_eval): Restrict
+ to loops with a single exit if -fno-expensive-optimizations.
+
+2009-06-21 Jakub Jelinek <jakub@redhat.com>
+
+ * var-tracking.c (struct shared_hash_def, shared_hash): New types.
+ (dataflow_set): Change vars type from htab_t to shared_hash.
+ (shared_hash_pool, empty_shared_hash): New variables.
+ (vars_clear): Removed.
+ (shared_hash_shared, shared_hash_htab, shared_hash_copy,
+ shared_hash_find_slot_unshare, shared_hash_find_slot,
+ shared_hash_find_slot_noinsert, shared_hash_find): New
+ static inlines.
+ (shared_hash_unshare, shared_hash_destroy): New functions.
+ (unshare_variable): Unshare set->vars if shared, use
+ shared_hash_htab.
+ (vars_copy): Use htab_traverse_noresize instead of htab_traverse.
+ (get_init_value, find_src_set_src, dump_dataflow_set,
+ clobber_variable_part, emit_notes_for_differences): Use
+ shared_hash_htab.
+ (dataflow_set_init): Remove second argument, set vars to
+ empty_shared_hash instead of creating a new htab.
+ (dataflow_set_clear): Call shared_hash_destroy and set vars
+ to empty_shared_hash instead of calling vars_clear.
+ (dataflow_set_copy): Don't call vars_copy, instead just share
+ the src htab with dst.
+ (variable_union): Use shared_hash_*, use initially NO_INSERT
+ lookup if set->vars is shared. Don't keep slot cleared before
+ calling unshare_variable. Unshare set->vars if needed.
+ Even ->refcount == 1 vars must be unshared if set->vars is shared
+ and var needs to be modified.
+ (variable_canonicalize): New function.
+ (dataflow_set_union): If dst->vars is empty, just share src->vars
+ with dst->vars and traverse with variable_canonicalize to canonicalize
+ and unshare what is needed.
+ (dataflow_set_different): If old_set and new_set use the same shared
+ htab, they aren't different. If number of htab elements is different,
+ htabs are different. Use shared_hash_*.
+ (dataflow_set_destroy): Call shared_hash_destroy instead of
+ htab_delete.
+ (compute_bb_dataflow, emit_notes_in_bb, vt_emit_notes): Don't pass
+ second argument to dataflow_set_init.
+ (vt_initialize): Likewise. Initialize shared_hash_pool and
+ empty_shared_hash, move bb in/out initialization afterwards.
+ Use variable_htab_free instead of NULL as changed_variables del hook.
+ (variable_was_changed): Change type of second argument to pointer to
+ dataflow_set. When inserting var into changed_variables, bump
+ refcount. Unshare set->vars if set is shared htab and slot needs to
+ be cleared.
+ (set_variable_part): Use shared_hash_*, use initially NO_INSERT
+ lookup if set->vars is shared. Unshare set->vars if needed.
+ Even ->refcount == 1 vars must be unshared if set->vars is shared
+ and var needs to be modified. Adjust variable_was_changed caller.
+ (delete_variable_part): Use shared_hash_*. Even ->refcount == 1
+ vars must be unshared if set->vars is shared and var needs to be
+ modified. Adjust variable_was_changed caller.
+ (emit_note_insn_var_location): Don't pool_free var.
+ (emit_notes_for_differences_1): Initialize empty_var->refcount to 0
+ instead of 1.
+ (vt_finalize): Call htab_delete on empty_shared_hash->htab and
+ free_alloc_pool on shared_hash_pool.
+
+2009-06-20 Anthony Green <green@moxielogic.com>
+
+ * config/moxie/sfp-machine.h (__gcc_CMPtype, CMPtype): Define.
+ * config/moxie/moxie.h (LOAD_EXTEND_OP): Define.
+
2009-06-20 Richard Guenther <rguenther@suse.de>
* tree-ssa-structalias.c (find_func_aliases): For memset use