OSDN Git Service

PR target/51393
[pf3gnuchains/gcc-fork.git] / gcc / ChangeLog
index f225378..222ff20 100644 (file)
@@ -1,3 +1,242 @@
+2011-12-04  Jérémie Detrey  <Jeremie.Detrey@loria.fr>
+
+       PR target/51393
+       * config/i386/avxintrin.h (_mm256_insert_epi64): Declare second
+       parameter as long long.
+
+2011-12-04  Richard Sandiford  <rdsandiford@googlemail.com>
+
+       PR middle-end/51351
+       * optabs.c (init_sync_libfuncs): Use "or" rather than "ior"
+       in the external names.
+
+2011-12-03  Jack Howarth <howarth@bromo.med.uc.edu>
+
+       * config/darwin10.h (LINK_GCC_C_SEQUENCE_SPEC): Pass -no_pie for
+       non-PIC code when targeting 10.7 or later.
+
+2011-12-03  Iain Sandoe  <iains@gcc.gnu.org>
+
+       * config/darwin.h (STARTFILE_SPEC): Do not use -lbundle1.o when
+       Darwin >= 10.
+       (DARWIN_DYLIB1_SPEC): Do not use -ldylib1.10.5.o when Darwin >= 10.
+       (DARWIN_CRT1_SPEC): Use -lcrt1.10.6.o when Darwin >= 10.
+
+2011-12-03  Jakub Jelinek  <jakub@redhat.com>
+
+       * fold-const.c (fold_unary_loc): Fold VEC_UNPACK_LO_EXPR,
+       VEC_UNPACK_HI_EXPR, VEC_UNPACK_FLOAT_LO_EXPR and
+       VEC_UNPACK_FLOAT_HI_EXPR with VECTOR_CST argument.
+       (fold_binary_loc): Fold VEC_PACK_TRUNC_EXPR,
+       VEC_PACK_FIX_TRUNC_EXPR, VEC_WIDEN_MULT_LO_EXPR
+       and VEC_WIDEN_MULT_HI_EXPR with VECTOR_CST arguments.
+
+       PR debug/50317
+       * tree-ssa.c (target_for_debug_bind): Also allow is_gimple_reg_type
+       vars that aren't referenced.
+       (tree-ssa-live.c (remove_unused_locals): Don't clear TREE_ADDRESSABLE
+       of unreferenced local vars.
+       * cfgexpand.c (expand_debug_expr): For DEBUG_IMPLICIT_PTR allow also
+       TREE_ADDRESSABLE vars that satisfy target_for_debug_bind.
+
+2011-12-03  Anatoly Sokolov  <aesok@post.ru>
+
+       * config/arm/arm.h (LIBCALL_VALUE, FUNCTION_VALUE_REGNO_P): Remove.
+       * config/arm/arm-protos.h (aapcs_libcall_value): Remove.
+       * config/arm/arm.c (TARGET_FUNCTION_VALUE_REGNO_P): Define.
+       (arm_libcall_value_1, arm_function_value_regno_p): New function.
+       (arm_function_value, arm_libcall_value): Use arm_libcall_value_1.
+       (aapcs_libcall_value): Make static.
+       (arm_libcall_value): Add static qualifier.
+
+2011-12-02  Jakub Jelinek  <jakub@redhat.com>
+
+       PR target/51387
+       * config/i386/sse.md (mul<mode>3 with VI1_AVX2 iterator): For
+       V32QImode use { 0,2,..,14,32,34,..,46,16,18,..,30,48,50,..,62 }
+       permutation instead of extract even permutation.
+
+2011-12-02  Nathan Sidwell  <nathan@acm.org>
+
+       * gcov.c (struct arc_info): Add is_throw field.
+       (struct (block_info): Add exceptional field, reduce flags size to
+       account for it.
+       (struct function_info): Add has_catch field.
+       (struct line_info): Add unexceptional field.
+       (process_file): Call find_exception_blocks if necessary.
+       (read_graph_file): Adjust.  Note if an exceptional edge is seen.
+       (find_exception_blocks): New.
+       (add_line_counts): Set line's unexceptional flag if not
+       exceptional.
+       (output_branch_count): Note exceptional arcs, lines and blocks.
+       * gcov-dump.c (tag_arcs): Decode arc flags.
+       * doc/gcov.texi: Document '=====' lines.
+
+2011-12-02  Anatoly Sokolov  <aesok@post.ru>
+
+       * config/ia64/ia64.h (PRINT_OPERAND, PRINT_OPERAND_ADDRESS,
+       PRINT_OPERAND_PUNCT_VALID_P): Remove macros.
+       * config/ia64/ia64-protos.h (ia64_print_operand,
+       ia64_print_operand_address): Remove.
+       * config/ia64/ia64.c (TARGET_PRINT_OPERAND,
+       TARGET_PRINT_OPERAND_ADDRESS, TARGET_PRINT_OPERAND_PUNCT_VALID_P):
+       Define.
+       (ia64_print_operand_punct_valid_p): New function.
+       (ia64_print_operand, ia64_print_operand_address): Make static.
+
+2011-12-02  Michael Meissner  <meissner@the-meissners.org>
+
+       PR target/51390
+       * config/rs6000/rs6000.c (def_builtin): Use the correct field to
+       figure out the function's attributes.
+       (struct builtin_description): Mark mask field as const since we no
+       longer need to modify it for SPE and PAIRED builtins.
+
+2011-12-02  Joseph Myers  <joseph@codesourcery.com>
+
+       Revert:
+
+       2008-09-18  Andrew Pinski  <andrew_pinski@playstation.sony.com>
+
+       PR rtl-opt/37451
+       * loop-doloop.c (doloop_modify): New argument zero_extend_p and
+       zero extend count after the correction to it is done.
+       (doloop_optimize): Update call to doloop_modify, don't zero extend
+       count before call.
+
+       2008-11-03  Andrew Pinski  <andrew_pinski@playstation.sony.com>
+
+       PR rtl-opt/37782
+       * loop-doloop.c (doloop_modify): Add from_mode argument that says what
+       mode count is in.
+       (doloop_optimize): Update call to doloop_modify.
+
+2011-12-02  Richard Guenther  <rguenther@suse.de>
+
+       PR lto/47259
+       * ipa.c (varpool_externally_visible_p): Register variables
+       are always externally visible.
+
+2011-12-02  Sameera Deshpande  <sameera.deshpande@arm.com>
+
+       * gimple-pretty-print.c (dump_gimple_call): Dereference fn only if
+         non-NULL.
+
+2011-12-02  Martin Jambor  <mjambor@suse.cz>
+
+       PR tree-optimization/50622
+       * tree-sra.c (load_assign_lhs_subreplacements): Force gimple operand
+       if both lacc and racc are grp_partial_lhs.
+
+2011-12-01  Kaz Kojima  <kkojima@gcc.gnu.org>
+
+       PR target/50814.
+       * config/sh/sh.c (expand_ashiftrt): Handle TARGET_SH2A same as
+       TARGET_SH3.
+       (shl_sext_kind): Likewise.
+       * config/sh/sh.h (SH_DYNAMIC_SHIFT_COST): Likewise.
+       * config/sh/sh.md (ashlsi3_sh2a, ashrsi3_sh2a, lshrsi3_sh2a): Remove.
+       (ashlsi3_std): Handle TARGET_SH2A same as TARGET_SH3.
+       (ashlsi3): Likewise.
+       (ashrsi3_d): Likewise.
+       (lshrsi3_d): Likewise.
+       (lshrsi3): Likewise.
+
+2011-12-01  Diego Novillo  <dnovillo@google.com>
+
+       PR bootstrap/51346
+       * ipa-inline.c (can_inline_edge_p): If the edge E has a statement,
+       use the statement's inline indicator instead of E's.
+       Remove consistency check.
+
+2011-12-01  Diego Novillo  <dnovillo@google.com>
+
+       PR bootstrap/51346
+       Revert
+
+       2011-11-29  Diego Novillo  <dnovillo@google.com>
+
+       * gimple.c (gimple_call_set_cannot_inline): Move from gimple.h.
+       Update field call_stmt_cannot_inline_p from call
+       graph edge, if needed.
+       * gimple.h (gimple_call_set_cannot_inline): Move to gimple.c.
+
+2011-12-01  Nathan Sidwell  <nathan@acm.org>
+
+       PR gcov-profile/51113
+       * coverage.c (build_var): Keep coverage variables static.
+
+2011-12-01  Jakub Jelinek  <jakub@redhat.com>
+
+       PR tree-optimization/51356
+       * tree-vect-patterns.c (vect_recog_bool_pattern): Give up if
+       vectype doesn't have VECTOR_MODE_P.
+
+       PR debug/50317
+       * tree-ssa-dce.c (remove_dead_stmt): Add a debug stmt when removing
+       as unnecessary a store to a variable with gimple reg type.
+       * tree-ssa-live.c (remove_unused_locals): Clear TREE_ADDRESSABLE bit
+       on local unreferenced variables.
+       * cfgexpand.c (expand_gimple_basic_block): Don't emit DEBUG_INSNs
+       for !target_for_debug_bind variables.
+
+2011-12-01  Patrick Marlier  <patrick.marlier@gmail.com>
+
+       PR middle-end/51273
+       * cgraph.h (cgraph_call_node_duplication_hooks): Declare.
+       * cgraph.c (cgraph_call_node_duplication_hooks): Make global.
+       * cgraphunit.c (cgraph_copy_node_for_versioning): Call it.
+
+2011-12-01  Andrew Pinski  <apinski@cavium.com>
+
+       PR lto/51198
+       * tree.c (free_lang_data_in_decl): Clear FIELD_DECL's
+       DECL_INITIAL also.
+
+2011-12-01  Jakub Jelinek  <jakub@redhat.com>
+
+       PR tree-optimization/51246
+       * tree-predcom.c (replace_ref_with): Handle also clobber on the rhs.
+
+       PR rtl-optimization/51014
+       * loop-unroll.c (apply_opt_in_copies): Ignore label DEBUG_INSNs
+       both from bb and orig_bb.
+
+2011-12-01  Joern Rennecke  <joern.rennecke@embecosm.com>
+
+       PR tree-optimization/50802
+       * tree-vrp.c (simplify_conversion_using_ranges): Rewrite test
+       considering what happens to ranges during sign changes and/or
+       intermediate narrowing conversions.
+
+2011-11-30  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
+
+       PR middle-end/50283
+       * config/pa/pa.md (in_branch_delay): Disallow frame related insns.
+       (in_nullified_branch_delay): Likewise.
+       (in_call_delay): Likewise.
+
+2011-11-30  Richard Henderson  <rth@redhat.com>
+
+       * predict.c (expr_expected_value_1): Assume compare-and-swap builtin
+       boolean return is true.
+
+2011-11-30  Jakub Jelinek  <jakub@redhat.com>
+
+       PR rtl-optimization/51044
+       * dse.c (emit_inc_dec_insn_before): Ensure new_insn is an instruction
+       rather than just insn body.
+
+       PR target/50725
+       * function.c (thread_prologue_and_epilogue_insns): If
+       stack_realign_drap, add drap_reg to SET_UP_BY_PROLOGUE
+       regset.
+
+       PR middle-end/51089
+       * tree-eh.c (cleanup_empty_eh_merge_phis): Add check to
+       avoid creating duplicate edges here.
+       (cleanup_empty_eh_unsplit): And remove it in the caller.
+
 2011-11-30  Andrew Pinski  <apinski@cavium.com>
 
        PR c/51321
        code checking for a clobber of a condition register when deciding
        whether to predicate.
 
-2011-11-29   Diego Novillo  <dnovillo@google.com>
+2011-11-29  Diego Novillo  <dnovillo@google.com>
 
        * gimple.c (gimple_call_set_cannot_inline): Move from gimple.h.
        Update field call_stmt_cannot_inline_p from call graph edge, if needed.
        (duplicate_insns_of_cycles): Use register indices directly,
        rather than finding instructions using PREV_INSN.  Use ps_reg_move.
        (sms_schedule): Call schedule_reg_moves before committing to
-       a partial schedule.   Try the next ii if the schedule fails.
+       a partial schedule.  Try the next ii if the schedule fails.
        Use apply_reg_moves instead of generate_reg_moves.  Adjust
        call to print_node_sched_params.  Free node_sched_param_vec
        instead of node_sched_params.
        (remove_duplicate_close_phi): Detect and repair creation of
        duplicate close-phis for a containing loop.
 
-2011-09-27   Andi Kleen <ak@linux.intel.com>
+2011-09-27  Andi Kleen  <ak@linux.intel.com>
 
        * gcc.c (get_local_tick). Rename to get_random_number.  Read from
        /dev/urandom.  Add getpid call.
        (compare_debug_dump_opt_spec_function): Drop getpid call.
 
-2011-09-26   Andi Kleen <ak@linux.intel.com>
+2011-09-26  Andi Kleen  <ak@linux.intel.com>
 
        * toplev.c (init_local_tick): Try reading random seed
        from /dev/urandom.
 
-2011-09-26   Andi Kleen <ak@linux.intel.com>
+2011-09-26  Andi Kleen  <ak@linux.intel.com>
 
        * hwint.h (HOST_WIDE_INT_PRINT_HEX_PURE): Add.
        * lto-streamer.c (lto_get_section_name): Remove crc32_string.
        HImode by 1 in the case of multiplying with a CONST_INT.
        Record cost of *ashiftqihi2.signx.1 in case ASHIFT:QI.
 
-2011-09-15   Jan Hubicka  <jh@suse.cz>
+2011-09-15  Jan Hubicka  <jh@suse.cz>
 
        PR lto/50430
        * gimple-fold.c (gimple_get_virt_method_for_binfo): Do not ICE on
        error_mark_node in the DECL_INITIAL of vtable.
 
-2011-09-15   Diego Novillo  <dnovillo@google.com>
+2011-09-15  Diego Novillo  <dnovillo@google.com>
 
        * Makefile.in (SYSROOT_CFLAGS_FOR_TARGET): Define from
        @SYSROOT_CFLAGS_FOR_TARGET@.
        separately.
        * tree-ssa-uninit.c (warn_uninitialized_phi): Adjust.
 
-2011-08-11   Kazuhiro Inaoka  <kazuhiro.inaoka.ud@renesas.com>
+2011-08-11  Kazuhiro Inaoka  <kazuhiro.inaoka.ud@renesas.com>
 
        * config/rx/rx.md (movsicc): Allow register to register transfers.
        (*movsicc): Likewise.
        (*stcc_reg): New pattern.  Works for any comparison but only for
        register transfers.
 
-2011-08-11   Diego Novillo  <dnovillo@google.com>
+2011-08-11  Diego Novillo  <dnovillo@google.com>
 
        * tree-streamer-out.c (lto_output_ts_decl_with_vis_tree_pointers):
        Call stream_write_tree instead of output_record_start.
        * tree-sra.c (access_precludes_ipa_sra_p): Also check access
        memory alignment.
 
-2011-08-08   Diego Novillo  <dnovillo@google.com>
+2011-08-08  Diego Novillo  <dnovillo@google.com>
 
        * Makefile.in (LTO_STREAMER_H): Add DIAGNOSTIC_H.
        (DATA_STREAMER_H): New.
        (TARGET_INSTANTIATE_DECLS): New define.
 
 2011-08-06  Paolo Bonzini  <bonzini@gnu.org>
-           Mikael Morin   <mikael.morin@sfr.fr>
+           Mikael Morin  <mikael.morin@sfr.fr>
 
        * Makefile.in (INCLUDES_FOR_TARGET): New.
        (LIBGCC2_CFLAGS): Use it.
        * config/arm/arm.c (arm_set_fixed_optab_libfunc): Constify
        maybe_suffix.
 
-2011-08-03   David Li  <davidxl@google.com>
+2011-08-03  David Li  <davidxl@google.com>
 
        * tree-optimize.c (execute_fixup_cfg): Fix up entry
        outgoing edge counts after inlining.
 
-2011-08-03   David Li  <davidxl@google.com>
+2011-08-03  David Li  <davidxl@google.com>
 
        * profile.c (compute_branch_probabilities): Compute
        function frequency after profile annotation.
        * config/arm/neon.md (vec_pack_trunc): Set the lengths
        correctly for the case with Quad vectors.
 
-2011-06-13 Jakub Jelinek  <jakub@redhat.com>
-          Ira Rosen  <ira.rosen@linaro.org>
+2011-06-13  Jakub Jelinek  <jakub@redhat.com>
+           Ira Rosen  <ira.rosen@linaro.org>
 
        PR tree-optimization/49352
        * tree-vect-loop.c (vect_is_slp_reduction): Don't count debug uses at
        * calls.c (emit_call_1): Prefer the __builtin declaration of
        builtin functions.
 
-2011-06-03   Diego Novillo  <dnovillo@google.com>
+2011-06-03  Diego Novillo  <dnovillo@google.com>
 
        * lto-streamer-in.c (unpack_value_fields): Remove unneeded asserts.
        (lto_input_tree_pointers): Likewise.
        * config/m68k/m68k.c (m68k_expand_prologue): Set
        current_function_static_stack_size.
 
-2011-05-02   Jan Hubicka  <jh@suse.cz>
+2011-05-02  Jan Hubicka  <jh@suse.cz>
 
        * lto-streamer.c (lto_streamer_cache_insert_1,
        lto_streamer_cache_lookup, lto_streamer_cache_create,