OSDN Git Service

2012-02-28 Thomas Koenig <tkoenig@gcc.gnu.org>
[pf3gnuchains/gcc-fork.git] / gcc / ChangeLog
index 4a2c9fb..ac76ef8 100644 (file)
@@ -1,6 +1,139 @@
+2012-02-28  Thomas Koenig  <tkoenig@gcc.gnu.org>
+
+       PR tree-optimization/53207
+       * doc/invoke.texi: Document as experimental and relying on graphite.
+
+2012-02-28  Georg-Johann Lay  <avr@gjlay.de>
+
+       * 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
+       * tree-sra.c (build_ref_for_offset): Also look at the base
+       TYPE_ALIGN when figuring out the alignment of the replacement.
+
+2012-02-28  Richard Guenther  <rguenther@suse.de>
+
+       PR tree-optimization/52402
+       * ipa-prop.c (ipa_modify_call_arguments): Properly use
+       mis-aligned types when creating the accesses at the call site.
+
+2012-02-28  Georg-Johann Lay  <avr@gjlay.de>
+
+       * config/avr/builtins.def: New file.
+       * config/avr/t-avr (avr.o, avr-c.o): Depend on it.
+       * config/avr/avr.c (enum avr_builtin_id): Use it.
+       (avr_init_builtins): Use it. And use avr_bdesc.
+       (bdesc_1arg): Remove.
+       (bdesc_2arg): Remove.
+       (bdesc_3arg): Remove.
+       (struct avr_builtin_description): Add field n_args.
+       (avr_bdesc): New static variable using builtins.def.
+       (avr_expand_builtin): Use it.
+       Don't call avr_expand_delay_cycles if op0 is not CONST_INT.
+       (avr_fold_builtin): Fold AVR_BUILTIN_SWAP.
+       Don't fold AVR_BUILTIN_INSERT_BITS if arg0 is not INTEGER_CST.
+
+2012-02-28  Georg-Johann Lay  <avr@gjlay.de>
+
+       PR target/52148
+       * config/avr/avr.md (movmem_<mode>): Replace match_operand that
+       match only one single hard register with respective hard reg rtx.
+       (movmemx_<mode>): Ditto.
+       * config/avr/avr.c (avr_emit_movmemhi): Adapt expanding to new
+       insn anatomy of movmem[x]_<mode>.
+       (avr_out_movmem): Same for printing assembler and operand usage.
+
+2012-02-28  Georg-Johann Lay  <avr@gjlay.de>
+
+       PR target/49868
+       PR target/52261
+       * doc/extend.texi (AVR Named Address Spaces): No more try to fix
+       address spaces located outside of device flash.
+
+       * config/avr/avr.h (base_arch_s): Remove field n_segments.
+       (mcu_type_s): Add field n_flash.
+       * config/avr/avr-devices.c (avr_arch_types): Remove .n_segments.
+       Set .have_elpm and .have_elpmx to 1 for avrxmega4 and avrxmega5.
+       (AVR_MCU): Add N_FLASH argument.
+       * config/avr/avr-mcus.def (AVR_MCU): Add initializer for .n_flash.
+       * config/avr/avr-c.c (avr_cpu_cpp_builtins): Only define built-in
+       macro __FLASH<n> if that address space makes sense for the device.
+       * config/avr/avr.c (avr_out_lpm): Don't try to fix address spaces
+       outside of target flash.
+       (avr_asm_named_section): Ditto.
+       (avr_asm_select_section): Ditto.
+       (avr_addr_space_convert): Ditto.
+       (avr_emit_movmemhi): Ditto.
+       (avr_nonconst_pointer_addrspace, avr_pgm_check_var_decl): Error if
+       address space is outside of device flash.
+       (avr_insert_attributes): Ditto.
+       (avr_xload_libgcc_p): Use avr_current_device->n_flash instead of
+       avr_current_arch->n_segments.
+
+2012-02-27  H.J. Lu  <hongjiu.lu@intel.com>
+
+       PR target/52352
+       * config/i386/i386.md (*movabs<mode>_1): Enable only for
+       TARGET_LP64.
+       (*movabs<mode>_2): Likewise.
+
+2012-02-27  Jakub Jelinek  <jakub@redhat.com>
+
+       PR target/52375
+       * config/arm/neon.md (vashr<mode>3, vlshr<mode>3): Use
+       s_register_operand in the test instead of REG_P.  Don't call
+       gen_reg_rtx if it won't be used.
+
+       PR tree-optimization/52376
+       * ipa-split.c (split_function): Ignore CLOBBER stmts.
+
+2012-02-27  Stuart Henderson  <shenders@gcc.gnu.org>
+
+       * ifcvt.c (noce_get_condition): Check condition variable is not
+       small_register_classes_for_mode_p before accepting.
+
+2012-02-27  Uros Bizjak  <ubizjak@gmail.com>
+
+       * config/i386/i386.md (*movabs<mode>_1): Fix operand 1 constraints.
+
+2012-02-27  Matthew Gretton-Dann  <matthew.gretton-dann@arm.com>
+
+       Revert:
+       2012-01-09  Matthew Gretton-Dann  <matthew.gretton-dann@arm.com>
+       * config/arm/arm-cores.def (cortex-a15): Use cortex_a15_tune for
+       tuning parameters.
+       * config/arm/arm.c (arm_cortex_a15_tune): New static variable.
+
+2012-02-27  Oleg Endo  <olegendo@gcc.gnu.org>
+
+       * config/sh/sh.h: Delete dead GO_IF_LEGITIMATE_INDEX macro.
+
+2012-02-26  Oleg Endo  <olegendo@gcc.gnu.org>
+
+       * config/sh/predicates.md: Remove blank lines.
+       * config/sh/sh.c: Fix typos in comments.
+       * config/sh/constraints.md: Likewise.
+       * config/sh/sh.md: Remove blank lines.
+       Fix typos in comments.  Use ;; as comment characters.
+
+2012-02-26  Walter Lee  <walt@tilera.com>
+
+       * config/tilegx/tilegx.c (match_pcrel_step2): Fix instruction pattern.
+       (replace_mov_pcrel_step2): Ditto.
+
 2012-02-25  Alexandre Oliva  <aoliva@redhat.com>
 
        PR debug/52001
+       * alias.c (refs_newer_value_cb, refs_newer_value_p): New.
+       (get_addr): Walk canonical value's locs.  Avoid returning VALUEs
+       and locs that reference values newer than the non-canonical value
+       at hand.  Return the canonical value as a worst case.
+       (memrefs_conflict_p): Walk canonical value's locs.
+
+       PR debug/52001
        * cselib.c (preserve_only_constants): Rename to...
        (preserve_constants_and_equivs): ... this.  Split out...
        (invariant_or_equiv_p): ... this.  Preserve plus expressions
 2012-02-24  Richard Guenther  <rguenther@suse.de>
 
        PR middle-end/52361
-       * gimple.c (walk_gimple_op): Use predicates with less redundant
-       tests.
+       * gimple.c (walk_gimple_op): Use predicates with less redundant tests.
        (is_gimple_reg_type): Move inline ...
        * gimple.h (is_gimple_reg_type): ... here.
 
 
        PR middle-end/52355
        * fold-const.c (fold_addr_of_array_ref_difference): New function.
-       (fold_binary_loc): Use it to extend the existing &a[i] - &a[j]
-       folding.
+       (fold_binary_loc): Use it to extend the existing &a[i] - &a[j] folding.
 
 2012-02-13  Bernhard Reutner-Fischer  <aldot@gcc.gnu.org>
 
 
 2012-02-23  Bernhard Reutner-Fischer  <aldot@gcc.gnu.org>
 
-       * tree-into-ssa (update_ssa): Avoid trailing whitespace in
-       dump_file.
+       * tree-into-ssa (update_ssa): Avoid trailing whitespace in dump_file.
        * tree-ssa-sccvn.c (print_scc): Ditto.
 
 2012-02-23  Bernhard Reutner-Fischer  <aldot@gcc.gnu.org>