OSDN Git Service

2013-03-06 Joel Sherrill <joel.sherrill@oarcorp.com>
[pf3gnuchains/gcc-fork.git] / gcc / ChangeLog
index 8e28971..73651dd 100644 (file)
@@ -1,4 +1,451 @@
-2012-01-21  Uros Bizjak  <ubizjak@gmail.com>
+2013-03-06  Oleg Endo  <olegendo@gcc.gnu.org>
+
+       Backport from mainline
+       2013-03-06  Oleg Endo  <olegendo@gcc.gnu.org>
+
+       PR target/56529
+       * config/sh/sh.c (sh_option_override): Check for TARGET_DYNSHIFT
+       instead of TARGET_SH2 for call-table case.  Do not set sh_div_strategy
+       to SH_DIV_CALL_TABLE for TARGET_SH2.
+       * config.gcc (sh_multilibs): Add m2 and m2a to sh*-*-linux* multilib
+       list.
+       * doc/invoke.texi (SH options): Use table for mdiv= option.  Document
+       mdiv= call-div1, call-fp, call-table options.
+
+2013-03-06  Sebastian Huber <sebastian.huber@embedded-brains.de>
+
+       * config.gcc (arm*-*-rtemself*): New.
+       (arm*-*-rtems*): Removed.
+       (arm*-*-eabi* | arm*-*-symbianelf* | arm*-*-rtemseabi*): Rename
+       "arm*-*-rtemseabi*" to "arm*-*-rtems*".
+
+2013-03-01  Richard Biener  <rguenther@suse.de>
+
+       Backport from mainline
+       2012-12-12  Zdenek Dvorak  <ook@ucw.cz>
+
+       PR tree-optimization/55481
+       * tree-ssa-loop-ivopts.c (rewrite_use_nonlinear_expr): Fall
+       back to general rewriting if we cannot leave an original biv
+       definition alone.
+
+2013-03-01  Richard Biener  <rguenther@suse.de>
+
+       Backport from mainline
+       2012-04-10  Richard Guenther  <rguenther@suse.de>
+       PR middle-end/52888
+       * gimple-low.c (gimple_check_call_args): Properly account for
+       compatible aggregate types.
+
+2013-02-26  Nick Clifton  <nickc@redhat.com>
+
+       PR target/56453
+       Import this patch from the mainline:
+
+       2012-08-17  Nick Clifton  <nickc@redhat.com>
+
+       * config/fr30/fr30.md (cbranchsi4): Remove mode from comparison.
+       (branch_true): Likewise.
+       (branch_false): Likewise.
+
+2013-02-26  Jakub Jelinek  <jakub@redhat.com>
+
+       PR tree-optimization/56443
+       * tree-vect-stmts.c (get_vectype_for_scalar_type_and_size): For
+       overaligned types, pass TYPE_UNSIGNED (scalar_type) as second argument
+       to type_for_mode langhook.
+
+2013-02-21  Jakub Jelinek  <jakub@redhat.com>
+
+       PR bootstrap/56258
+       * doc/invoke.texi (-fdump-rtl-pro_and_epilogue): Use @item
+       instead of @itemx.
+
+2013-02-19  Jakub Jelinek  <jakub@redhat.com>
+
+       Backported from mainline
+       2013-02-19  Jakub Jelinek  <jakub@redhat.com>
+
+       PR tree-optimization/56350
+       * tree-vect-loop.c (vectorizable_reduction): If orig_stmt, return false
+       if haven't found reduction or nested cycle operand, rather than
+       asserting we must find it.
+
+       PR tree-optimization/56381
+       * tree-ssa-pre.c (create_expression_by_pieces): Fix up last argument
+       to fold_build3.
+
+       2013-02-08  Jakub Jelinek  <jakub@redhat.com>
+
+       PR tree-optimization/56250
+       * fold-const.c (extract_muldiv_1) <case NEGATE_EXPR>: Don't optimize
+       if type is unsigned and code isn't MULT_EXPR.
+
+       2013-02-06  Jakub Jelinek  <jakub@redhat.com>
+
+       PR middle-end/56217
+       * omp-low.c (use_pointer_for_field): Return false if
+       lower_send_shared_vars doesn't generate any copy-out code.
+
+       2012-11-27  Jakub Jelinek  <jakub@redhat.com>
+
+       PR tree-optimization/55110
+       * tree-vect-loop.c (vectorizable_reduction): Don't assert
+       that STMT_VINFO_RELATED_STMT of orig_stmt is stmt.
+
+2013-02-18  Richard Biener  <rguenther@suse.de>
+
+       Revert
+       2013-02-04  Richard Biener  <rguenther@suse.de>
+
+       Backport from mainline
+       2012-07-04  Richard Guenther  <rguenther@suse.de>
+
+       PR tree-optimization/53844
+       * tree-ssa-dse.c (dse_possible_dead_store_p): Properly handle
+       the loop virtual PHI.
+
+2013-02-13  David S. Miller  <davem@davemloft.net>
+
+       * expmed.c (expand_shift_1): Only strip scalar integer subregs.
+
+2013-02-11  Uros Bizjak  <ubizjak@gmail.com>
+
+       Backport from mainline
+       2013-02-11  Uros Bizjak  <ubizjak@gmail.com>
+
+       PR rtl-optimization/56275
+       * simplify-rtx.c (avoid_constant_pool_reference): Check that
+       offset is non-negative and less than cmode size before
+       calling simplify_subreg.
+
+2013-02-09  Uros Bizjak  <ubizjak@gmail.com>
+
+       Backport from mainline
+       2013-02-08  Uros Bizjak  <ubizjak@gmail.com>
+
+       * config/i386/sse.md (FMAMODEM): New mode iterator.
+       (fma<mode>4, fms<mode>4, fnma<mode>4, fnms<mode>4): Use FMAMODEM
+       mode iterator. Do not use TARGET_SSE_MATH in insn constraint.
+
+       2013-02-08  Uros Bizjak  <ubizjak@gmail.com>
+
+       * config/i386/gnu-user.h (TARGET_CAN_SPLIT_STACK): Define only
+       when HAVE_GAS_CFI_PERSONALITY_DIRECTIVE is set.
+       * config/i386/gnu-user64.h (TARGET_CAN_SPLIT_STACK): Ditto.
+
+2013-02-08  Michael Meissner  <meissner@linux.vnet.ibm.com>
+
+       Backport from mainline
+       2013-02-08  Michael Meissner  <meissner@linux.vnet.ibm.com>
+
+       PR target/56043
+       * config/rs6000/rs6000.c (rs6000_builtin_vectorized_libmass):
+       If there is no implicit builtin declaration, just return NULL.
+
+2013-02-08  David Edelsohn  <dje.gcc@gmail.com>
+           Michael Meissner  <meissner@linux.vnet.ibm.com>
+
+       Backport from mainline
+       * config/rs6000/rs6000.c (rs6000_option_override_internal): Clear
+       MASK_VSX from set_masks if OS_MISSING_ALTIVEC.
+
+2013-02-07  David S. Miller  <davem@davemloft.net>
+
+       * dwarf2out.c (based_loc_descr): Perform leaf register remapping
+       on 'reg'.
+       * var-tracking.c (vt_add_function_parameter): Test the presence of
+       HAVE_window_save properly and do not remap argument registers when
+       we have a leaf function.
+
+2013-02-07  Uros Bizjak  <ubizjak@gmail.com>
+
+       Backport from mainline
+       2013-02-07  Uros Bizjak  <ubizjak@gmail.com>
+
+       PR bootstrap/56227
+       * ggc-page.c (ggc_print_statistics): Use HOST_LONG_LONG_FORMAT
+       instead of "ll".
+       * config/i386/i386.c (ix86_print_operand): Ditto.
+
+2013-02-07  Alan Modra  <amodra@gmail.com>
+
+       PR target/53040
+       * config/rs6000/rs6000.c (rs6000_savres_strategy): When using
+       static chain, set REST_INLINE_FPRS too.
+
+2013-02-06  David Edelsohn  <dje.gcc@gmail.com>
+
+       Backport from mainline
+       2013-01-25  Michael Haubenwallner  <michael.haubenwallner@salomon.at>
+
+       * configure.ac (gcc_cv_ld_static_dynamic): Define for AIX native ld.
+       * configure: Regenerate.
+
+2013-02-05  David Edelsohn  <dje.gcc@gmail.com>
+
+       Backport from mainline
+       2013-02-03  David Edelsohn  <dje.gcc@gmail.com>
+                   Andrew Dixie  <andrewd@gentrack.com>
+
+       * collect2.c (GCC_CHECK_HDR): Do not scan objects with F_LOADONLY
+       flag set.
+
+2013-02-05  Richard Biener  <rguenther@suse.de>
+
+       Backport from mainline
+       2012-12-10  Richard Biener  <rguenther@suse.de>
+
+       PR tree-optimization/55107
+       * tree-ssa-pre.c (struct pre_stats): Remove constified field.
+       (bitmap_set_replace_value): Add gcc_unreachable.
+       (do_regular_insertion): Re-write all_same handling.  Insert
+       an assignment instead of a PHI in this case.
+       (execute_pre): Do not record constified events.
+
+2013-02-05  Richard Biener  <rguenther@suse.de>
+
+       PR tree-optimization/54767
+       * tree-vrp.c (vrp_visit_phi_node): For PHI arguments coming via
+       backedges drop all symbolical range information.
+       (execute_vrp): Compute backedges.
+
+2013-02-04  Richard Biener  <rguenther@suse.de>
+
+       Backport from mainline
+       2012-01-11  Richard Guenther  <rguenther@suse.de>
+
+       PR tree-optimization/44061
+       * tree-vrp.c (extract_range_basic): Compute zero as
+       value-range for __builtin_constant_p of function parameters.
+
+       2013-01-08  Jakub Jelinek  <jakub@redhat.com>
+
+       PR middle-end/55890
+       * tree-ssa-ccp.c (evaluate_stmt): Use gimple_call_builtin_class_p.
+
+2013-02-04  Richard Biener  <rguenther@suse.de>
+
+       Backport from mainline
+       2012-07-04  Richard Guenther  <rguenther@suse.de>
+
+       PR tree-optimization/53844
+       * tree-ssa-dse.c (dse_possible_dead_store_p): Properly handle
+       the loop virtual PHI.
+
+       2012-12-13  Richard Biener  <rguenther@suse.de>
+
+       PR lto/55660
+       * tree-streamer.c (record_common_node): Check that we are not
+       recursively pre-loading nodes we want to skip.  Handle
+       char_type_node appearing as part of va_list_type_node.
+
+2013-02-04  Richard Biener  <rguenther@suse.de>
+
+       PR middle-end/55890
+       * gimple.h (gimple_call_builtin_class_p): New function.
+       * gimple.c (validate_call): New function.
+       (gimple_call_builtin_class_p): Likewise.
+       * tree-ssa-structalias.c (find_func_aliases_for_builtin_call):
+       Use gimple_call_builtin_class_p.
+       (find_func_clobbers): Likewise.
+       * tree-ssa-strlen.c (adjust_last_stmt): Likewise.
+       (strlen_optimize_stmt): Likewise.
+
+2013-02-01  Jakub Jelinek  <jakub@redhat.com>
+
+       Backported from mainline
+       2013-01-28  Jakub Jelinek  <jakub@redhat.com>
+
+       PR tree-optimization/56125
+       * tree-ssa-math-opts.c (gimple_expand_builtin_pow): Don't optimize
+       pow(x,c) into sqrt(x) * powi(x, n/2) or
+       1.0 / (sqrt(x) * powi(x, abs(n/2))) if c is an integer or when
+       optimizing for size.
+       Don't optimize pow(x,c) into powi(x, n/3) * powi(cbrt(x), n%3) or
+       1.0 / (powi(x, abs(n)/3) * powi(cbrt(x), abs(n)%3)) if 2c is an
+       integer.
+
+       2013-01-25  Jakub Jelinek  <jakub@redhat.com>
+
+       PR tree-optimization/56098
+       * tree-ssa-phiopt.c (nt_init_block): Don't call add_or_mark_expr
+       for stmts with volatile ops.
+       (cond_store_replacement): Don't optimize if assign has volatile ops.
+       (cond_if_else_store_replacement_1): Don't optimize if either
+       then_assign or else_assign have volatile ops.
+
+       2013-01-23  Jakub Jelinek  <jakub@redhat.com>
+
+       PR target/49069
+       * config/arm/arm.md (cbranchdi4, cstoredi4): Use s_register_operand
+       instead of cmpdi_operand for first comparison operand.
+       Don't assert that comparison operands aren't both constants.
+
+       2013-01-21  Jakub Jelinek  <jakub@redhat.com>
+
+       PR tree-optimization/56051
+       * fold-const.c (fold_binary_loc): Don't fold
+       X < (cast) (1 << Y) into (X >> Y) != 0 if cast is either
+       a narrowing conversion, or widening conversion from signed
+       to unsigned.
+
+       2013-01-18  Jakub Jelinek  <jakub@redhat.com>
+
+       PR middle-end/56015
+       * expr.c (expand_expr_real_2) <case COMPLEX_EXPR>: Handle
+       the case where writing real complex part of target modifies
+       op1.
+
+       2013-01-15  Jakub Jelinek  <jakub@redhat.com>
+
+       PR target/55940
+       * function.c (thread_prologue_and_epilogue_insns): Always
+       add crtl->drap_reg to set_up_by_prologue.set, even if
+       stack_realign_drap is false.
+
+       2013-01-10  Jakub Jelinek  <jakub@redhat.com>
+
+       PR tree-optimization/55921
+       * tree-complex.c (expand_complex_asm): New function.
+       (expand_complex_operations_1): Call it for GIMPLE_ASM.
+
+       2013-01-03  Jakub Jelinek  <jakub@redhat.com>
+
+       PR rtl-optimization/55838
+       * loop-iv.c (iv_number_of_iterations): Call lowpart_subreg on
+       iv0.step, iv1.step and step.
+
+       2012-11-23  Jakub Jelinek  <jakub@redhat.com>
+
+       PR c++/54046
+       * Makefile.in (gimple-low.o): Depend on langhooks.h.
+       * gimple-low.c: Include langhooks.c.
+       (block_may_fallthru): Handle TARGET_EXPR and ERROR_MARK,
+       by default call lang_hooks.block_may_fallthru.
+       * langhooks.h (struct lang_hooks): Add block_may_fallthru
+       langhook.
+       * langhooks-def.h (LANG_HOOKS_BLOCK_MAY_FALLTHRU): Define.
+       (LANG_HOOKS_INITIALIZER): Use it.
+
+       2012-11-20  Jakub Jelinek  <jakub@redhat.com>
+
+       PR middle-end/55094
+       * builtins.c (expand_builtin_trap): Add REG_ARGS_SIZE note
+       on the trap insn for !ACCUMULATE_OUTGOING_ARGS.
+       * cfgcleanup.c (outgoing_edges_match): Don't look at debug insns
+       on the first old_insns_match_p call.  For !ACCUMULATE_OUTGOING_ARGS
+       fail if the last real insn doesn't have REG_ARGS_SIZE note.
+
+       2012-11-17  Jakub Jelinek  <jakub@redhat.com>
+
+       PR tree-optimization/55236
+       * fold-const.c (make_range_step) <case NEGATE_EXPR>: For -fwrapv
+       and signed ARG0_TYPE, force low and high to be non-NULL.
+
+       2012-11-13  Jakub Jelinek  <jakub@redhat.com>
+
+       PR rtl-optimization/54127
+       * cfgrtl.c (force_nonfallthru_and_redirect): When redirecting
+       asm goto labels from BB_HEAD (e->dest) to target bb, decrement
+       LABEL_NUSES of BB_HEAD (e->dest) and increment LABEL_NUSES of
+       BB_HEAD (target) appropriately and adjust JUMP_LABEL and/or
+       REG_LABEL_TARGET and REG_LABEL_OPERAND.
+
+2013-02-01  Eric Botcazou  <ebotcazou@adacore.com>
+
+       * fold-const.c (make_range_step) <TRUTH_NOT_EXPR>: Bail out if the
+       range isn't testing for zero.
+
+2013-01-29  Richard Biener  <rguenther@suse.de>
+
+       PR tree-optimization/56113
+       * tree-ssa-structalias.c (equiv_class_lookup): Also return
+       the bitmap leader.
+       (label_visit): Free duplicate bitmaps and record the leader instead.
+       (perform_var_substitution): Adjust.
+
+2013-01-28  Serowk  <serowk@yandex.ru>
+
+       PR target/35294
+       * config/arm/arm.c (arm_expand_binop_builtin): Add new parameter.
+       Fix mode checks to allow for the passing of constants in the
+       second parameter.
+       (arm_expand_builtin): Adjust calls to arm_expand_binop_builtin.
+       Add entries in the switch statement for builtin iwmmxt vector
+       shift and rotate builtins.
+
+2013-01-27  Uros Bizjak  <ubizjak@gmail.com>
+
+       Backport from mainline
+       2013-01-27  Uros Bizjak  <ubizjak@gmail.com>
+
+       PR target/56114
+       * config/i386/i386.md (*movabs<mode>_1): Add square brackets around
+       operand 0 in movabs insn template for -masm=intel asm alternative.
+       (*movabs<mode>_2): Ditto for operand 1.
+
+2013-01-27  Uros Bizjak  <ubizjak@gmail.com>
+
+       Backport from mainline
+       2013-01-22  Uros Bizjak  <ubizjak@gmail.com>
+
+       PR target/56028
+       * config/i386/i386.md (*movti_internal_rex64): Change (o,riF)
+       alternative to (o,r).
+       (*movdi_internal_rex64): Remove (!o,n) alternative.
+       (DImode immediate->memory splitter): Remove.
+       (DImode immediate->memory peephole2): Remove.
+       (movtf): Enable for TARGET_64BIT || TARGET_SSE.
+       (*movtf_internal_rex64): Rename from *movtf_internal. Change (!o,F*r)
+       alternative to (!o,*r).
+       (*movtf_internal_sse): New pattern.
+       (*movxf_internal_rex64): New pattern.
+       (*movxf_internal): Disable for TARGET_64BIT.
+       (*movdf_internal_rex64): Remove (!o,F) alternative.
+
+       2013-01-23  Uros Bizjak  <ubizjak@gmail.com>
+
+       * config/i386/i386.md (*movdf_internal_rex64): Disparage alternatives
+       involving stack registers slightly.
+
+       2013-01-24  Uros Bizjak  <ubizjak@gmail.com>
+
+       * config/i386/constraints.md (Yf): New constraint.
+       * config/i386/i386.md (*movdf_internal_rex64): Use Yf*f instead
+       of f constraint to conditionaly disable x87 register preferences.
+       (*movdf_internal): Ditto.
+       (*movsf_internal): Ditto.
+
+       2012-01-24  Uros Bizjak  <ubizjak@gmail.com>
+
+       * config/i386/i386.md (*movti_internal_rex64): Add (o,e) alternative.
+       (*movtf_internal_rex64): Add (!o,C) alternative
+       (*movxf_internal_rex64): Ditto.
+       (*movdf_internal_rex64): Add (?r,C) and (?m,C) alternatives.
+
+2013-01-25  Georg-Johann Lay  <avr@gjlay.de>
+
+       * doc/invoke.texi (AVR Built-in Macros): Document __XMEGA__.
+
+2013-01-24  Martin Jambor  <mjambor@suse.cz>
+
+       Backport from mainline
+       2013-01-04  Martin Jambor  <mjambor@suse.cz>
+
+       PR tree-optimization/55755
+       * tree-sra.c (sra_modify_assign): Do not check that an access has no
+       children when trying to avoid producing a VIEW_CONVERT_EXPR.
+
+2013-01-21  Uros Bizjak  <ubizjak@gmail.com>
+
+       Backport from mainline
+       2013-01-21  Uros Bizjak  <ubizjak@gmail.com>
+
+       * config/i386/i386.md (enabled): Do not disable fma4 for TARGET_FMA.
+
+2013-01-21  Uros Bizjak  <ubizjak@gmail.com>
 
        PR rtl-optimization/56023
        * haifa-sched.c (fix_inter_tick): Do not update ticks of instructions,
        * ipa.c (cgraph_remove_unreachable_nodes): Never return true for
        virtual methods before inlining is over.
 
-2012-01-17  Uros Bizjak  <ubizjak@gmail.com>
+2013-01-17  Uros Bizjak  <ubizjak@gmail.com>
 
        Backport from mainline
        2012-01-17  Uros Bizjak  <ubizjak@gmail.com>