OSDN Git Service

libgcc
[pf3gnuchains/gcc-fork.git] / gcc / ChangeLog
index 1a22b1a..dfcd389 100644 (file)
@@ -1,3 +1,260 @@
+2007-05-29  Zuxy Meng  <zuxy.meng@gmail.com>
+            Danny Smith  <dannysmith@users.sourceforge.net>
+
+       PR target/29498
+       * config/i386/t-crtfm: Compile crtfastmath.o with
+       -minline-all-stringops.
+       * config/i386/cygwin.h (ENDFILE_SPECS): Add crtfastmath.o.
+       * config/i386/mingw32.h (ENDFILE_SPECS): Add crtfastmath.o.
+
+2007-05-28  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
+
+       * doc/md.texi: Document constraints on HP PA-RISC.
+
+       * pa/constraints.md: New file.
+       * pa.md: Include constraints.md.
+       * pa.c (cint_ok_for_move): Avoid using CONST_OK_FOR_LETTER_P.
+       (integer_store_memory_operand, ldil_cint_p): New functions.
+       * pa-protos.h (integer_store_memory_operand, ldil_cint_p): Declare.
+       * pa.h (CONST_OK_FOR_LETTER_P, CONST_DOUBLE_OK_FOR_LETTER_P,
+       IS_RELOADING_PSEUDO_P, EXTRA_CONSTRAINT): Remove.
+       * pa32-regs.h (REG_CLASS_FROM_LETTER): Remove.
+       * pa64-regs.h (REG_CLASS_FROM_LETTER): Remove.
+
+2007-05-28  Andrew Pinski  <Andrew_pinski@playstation.sony.com>
+
+       PR c/31339
+       * c-typeck.c (build_unary_op <case PREINCREMENT_EXPR,
+       case POSTINCREMENT_EXPR, case PREDECREMENT_EXPR,
+       case POSTDECREMENT_EXPR>): Return the error_mark_node
+       if either the real or imaginary parts would an
+       error_mark_node.
+
+2007-05-28  Daniel Berlin  <dberlin@dberlin.org>
+
+       * tree-ssa-dce.c (eliminate_unnecessary_stmts): Release LHS SSA
+       name when we remove it from a call.
+
+2007-05-28  Kazu Hirata  <kazu@codesourcery.com>
+
+       * targhooks.c (default_narrow_bitfield): Remove.
+       * targhooks.h: Remove the prototype for
+       default_narrow_bitfield.
+
+       * langhooks-def.h: Remove the prototype for
+       hook_get_alias_set_0.
+       * langhooks.c (hook_get_alias_set_0): Remove.
+
+       * global.c (EXECUTE_IF_CONFLICT): Remove.
+
+2007-05-28  Andrew Pinski  <andrew_pinski@playstation.sony.com>
+
+       PR tree-opt/32100
+       * fold-const.c (tree_expr_nonnegative_warnv_p): Don't
+       return true when truth_value_p is true and the type
+       is of signed:1.
+
+2007-05-28  Gerald Pfeifer  <gerald@pfeifer.com>
+
+       * doc/install.texi (Prerequisites): We no longer require Autoconf
+       2.13 for the top-level.
+
+2007-05-28  Uros Bizjak  <ubizjak@gmail.com>
+
+       * target/i386/i386.c (ix86_expand_vector_move): Expand unaligned
+       memory access via x86_expand_vector_move_misalign() only for
+       TImode values on 32-bit targets.
+       
+2007-05-28  Razya Ladelsky  <razya@il.ibm.com>  
+        
+       * matrix-reorg.c: New file. Implement matrix flattening and
+       transposing optimization.
+       * tree-pass.h: Add matrix reorg pass.
+       * common.opt: Add fipa-mreorg flag.
+       * Makefile.in: Add matrix-reorg.c.
+       * passes.c: Add matrix reorg pass.
+       * varpool.c (add_new_static_var): New function.
+       * cgraph.h (add_new_static_var): Declare.
+
+
+2007-05-27  Eric Christopher  <echristo@apple.com>
+
+       * config/rs6000/rs6000.c (rs6000_emit_prologue): Update
+       sp_offset depending on stack size. Save r12 depending
+       on registers we're saving later.
+       (rs6000_emit_epilogue): Update sp_offset depending only
+       on stack size.
+
+2007-05-27  Zdenek Dvorak  <dvorakz@suse.cz>
+
+       * tree-vrp.c (execute_vrp): Do not check whether current_loops == NULL.
+       * tree-chrec.c (evolution_function_is_invariant_rec_p): Ditto.
+       * ifcvt.c (if_convert): Ditto.
+       * tree-ssa-threadupdate.c (thread_block): Ditto.
+       (thread_through_all_blocks): Ditto.  Assert that loops were analysed.
+       * tree-ssa-loop-manip.c (rewrite_into_loop_closed_ssa,
+       verify_loop_closed_ssa): Check number_of_loops instead of current_loops.
+       * predict.c (tree_estimate_probability): Ditto.
+       * tree-if-conv.c (main_tree_if_conversion): Ditto.
+       * tree-ssa-loop-ch.c (copy_loop_headers): Ditto.
+       * modulo-sched.c (sms_schedule): Ditto.
+       * tree-scalar-evolution.c (scev_const_prop): Ditto.
+       (scev_finalize): Do not do anything if scev analysis was not
+       initialized.
+       * cfgloopanal.c (mark_irreducible_loops): Do not check whether
+       current_loops == NULL.
+       (mark_loop_exit_edges): Check number_of_loops instead of current_loops.
+       * loop-init.c (loop_optimizer_init): Do not free current_loops when
+       there are no loops.
+       (loop_optimizer_finalize): Assert that loops were analyzed.
+       (rtl_move_loop_invariants, rtl_unswitch, rtl_unroll_and_peel_loops,
+       rtl_doloop): Check number_of_loops instead of current_loops.
+       * tree-ssa-loop.c (tree_loop_optimizer_init): Do not check whether
+       current_loops == NULL.
+       (tree_ssa_loop_init, tree_ssa_loop_im, tree_ssa_loop_unswitch,
+       gate_tree_vectorize tree_linear_transform, check_data_deps,
+       tree_ssa_loop_ivcanon, tree_ssa_empty_loop, tree_ssa_loop_bounds,
+       tree_complete_unroll, tree_ssa_loop_prefetch, tree_ssa_loop_ivopts):
+       Check number_of_loops instead of current_loops.
+       (tree_ssa_loop_done): Do not check whether current_loops == NULL.
+       * tree-ssa-pre.c (fini_pre): Do not take do_fre argument.  Always
+       free loops if available.
+       (execute_pre): Do not pass do_fre to fini_pre.
+
+2007-05-27  Tobias Burnus  <burnus@net-b.de>
+
+       PR middle-end/32083
+       * real.c (mpfr_from_real): Fix sign of -Inf.
+
+2007-05-27  H.J. Lu  <hongjiu.lu@intel.com>
+
+       * tree-vect-transform.c (vectorizable_conversion): Initialize
+       tree_code variables to ERROR_MARK.
+       (vectorizable_type_demotion): Likewise.
+       (vectorizable_type_promotion): Likewise.
+
+2007-05-26  Uros Bizjak  <ubizjak@gmail.com>
+
+       PR target/32065
+       * config/i386/i386.md (movti): Handle push operands via
+       ix86_expand_push().
+
+2007-05-26  Kazu Hirata  <kazu@codesourcery.com>
+
+       * basic-block.h: Remove the prototype for merge_seq_blocks.
+       * cfgcleanup.c (merge_seq_blocks): Remove.
+
+       * tree-flow.h: Remove the prototype for is_aliased_with.
+       * tree-ssa-alias.c (is_aliased_with): Remove.
+
+2007-05-26  H.J. Lu  <hongjiu.lu@intel.com>
+
+       * config/i386/i386-protos.h (ix86_expand_sse4_unpack): New.
+
+       * config/i386/i386.c (ix86_expand_sse4_unpack): New.
+
+       * config/i386/sse.md (vec_unpacku_hi_v16qi): Call
+       ix86_expand_sse4_unpack if SSE4.1 is enabled.
+       (vec_unpacks_hi_v16qi): Likewise.
+       (vec_unpacku_lo_v16qi): Likewise.
+       (vec_unpacks_lo_v16qi): Likewise.
+       (vec_unpacku_hi_v8hi): Likewise.
+       (vec_unpacks_hi_v8hi): Likewise.
+       (vec_unpacku_lo_v8hi): Likewise.
+       (vec_unpacks_lo_v8hi): Likewise.
+       (vec_unpacku_hi_v4si): Likewise.
+       (vec_unpacks_hi_v4si): Likewise.
+       (vec_unpacku_lo_v4si): Likewise.
+       (vec_unpacks_lo_v4si): Likewise.
+
+2007-05-26  Kazu Hirata  <kazu@codesourcery.com>
+
+       * c-typeck.c, config/arm/arm.c, config/darwin.c,
+       config/sh/symbian.c, gcc.c, ipa-cp.c, ipa-inline.c, loop-iv.c,
+       omega.c, tree-ssa-loop-niter.c, treestruct.def: Fix typos and
+       follow spelling conventions in various
+       warning/error/diagnostic messages.
+
+       * config/i386/i386.c, config/pa/pa.c, config/spu/spu.c,
+       df-problems.c, df-scan.c, domwalk.c, ebitmap.c, ebitmap.h,
+       fold-const.c, gcc.c, ipa-type-escape.c, omega.c, omega.h,
+       tree-ssa-coalesce.c, tree-ssa-live.c, tree-ssa-structalias.c,
+       tree-vrp.c: Fix comment typos.  Follow spelling conventions.
+       * doc/tm.texi: Follow spelling conventions.
+
+2007-05-25  Andrew Pinski  <andrew_pinski@playstation.sony.com>
+
+       PR tree-opt/32090
+       * tree-ssa-forwprop.c
+       (forward_propagate_addr_into_variable_array_index): Remove
+       the lhs argument.  Use the type of def_rhs instead of lhs.
+       (forward_propagate_addr_expr_1): Update use of
+       forward_propagate_addr_into_variable_array_index.
+
+2007-05-25  Sandra Loosemore  <sandra@codesourcery.com>
+           Nigel Stephens  <nigel@mips.com>
+
+       * config/mips/mips.c (mips_attribute_table): Add "near" and "far"
+       function attributes, "far" being an alias for "long_call".
+       (TARGET_COMP_TYPE_ATTRIBUTES): Define as mips_comp_type_attributes.
+       (mips_near_type_p, mips_far_type_p): New.
+       (mips_comp_type_attributes): New function to check that attributes
+       attached to a function type are compatible.
+       (mips_output_mi_thunk): Test SYMBOL_REF_LONG_CALL_P() rather than
+       TARGET_LONG_CALLS when deciding whether we can do a direct sibcall
+       to the target function of the thunk.
+       (mips_encode_section_info): Check for "near" and "far" function
+       attributes, and always set the SYMBOL_FLAG_LONG_CALL bit explicitly.
+
+       * config/mips/predicates.md (const_call_insn_operand): Test only
+       SYMBOL_REF_LONG_CALL_P() and not TARGET_LONG_CALLS.
+
+       * doc/extend.texi (Function Attributes): Document MIPS "near" and
+       "far" attributes.
+
+       * testsuite/gcc.target/mips/near-far-1.c:  New test case.
+       * testsuite/gcc.target/mips/near-far-2.c:  New test case.
+       * testsuite/gcc.target/mips/near-far-3.c:  New test case.
+       * testsuite/gcc.target/mips/near-far-4.c:  New test case.
+
+2007-05-25  Eric Christopher  <echristo@apple.com>
+
+       * config.gcc: Add i386/t-fprules-softfp64 and soft-fp/t-softfp
+       to x86-darwin configurations.
+       * config/i386/t-darwin: Add softfp support.
+       * config/i386/t-darwin64: Ditto.
+       * config/i386/sfp-machine.h: If mach then don't use
+       aliasing, emit a stub to call.
+
+2007-05-25  Kazu Hirata  <kazu@codesourcery.com>
+
+       * cfglayout.c, cgraphunit.c, config/avr/avr.c, fold-const.c,
+       haifa-sched.c, optabs.h, tree-affine.c, tree-data-ref.c,
+       tree-predcom.c, tree-ssa-alias-warnings.c,
+       tree-ssa-forwprop.c, tree-vect-analyze.c, tree-vrp.c: Fix
+       comment typos.  Follow spelling conventions.
+       * doc/cpp.texi, doc/invoke.texi: Fix typos.
+
+2007-05-26  Uros Bizjak  <ubizjak@gmail.com>
+
+       PR target/32065
+       * target/i386/i386.c (ix86_expand_vector_move): Force SUBREGs of
+       constants into memory.  Expand unaligned memory references for
+       SSE modes via x86_expand_vector_move_misalign() function.
+
+2007-05-25  Uros Bizjak  <ubizjak@gmail.com>
+
+       * config/i386/sse.md (*vec_extractv2di_1_sse2): Do not calculate
+       "memory" attribute for "sseishft" type insn without operands[2].
+
+2007-05-25  Dirk Mueller  <dmueller@suse.de>
+           Marcus Meissner <meissner@suse.de>
+
+       * doc/extend.texi (alloc_size): New attribute.
+       * c-common.c (handle_alloc_size_attribute): New.
+       * tree-object-size.c (alloc_object_size): Use alloc_size
+       attribute, if available.
+
 2007-05-25  H.J. Lu  <hongjiu.lu@intel.com>
 
        * config/i386/i386.c (__builtin_ia32_vec_ext_v2df): Mark it
        support for complex modes.  Fill in DECL_RESULT for stubdecl.
        (mips_init_libfuncs): Remove redundant TARGET_MIPS16 check.
 
-       * config/mips/mips16.S 
+       * config/mips/mips16.S
        (RET, ARG1, ARG2): New.
        (MERGE_GPRf, MERGE_GPRt): New.
        (DELAYt, DELAYf): New.
        (__mips16_call_stub_dc_6): New.
        (__mips16_call_stub_dc_9): New.
        (__mips16_call_stub_dc_10): New.
-       
+
        * config/mips/t-elf (LIB1ASMFUNCS): Add MIPS16 floating-point stubs.
        * config/mips/t-isa3264 (LIB1ASMFUNCS): Likewise.
        * config/mips/t-r2900 (LIB1ASMFUNCS): Likewise.
        PR target/30474
        * config/score/score.c (score_print_operand): Make sure that only
        lower bits are used.
-       
+
 2007-05-22  Ian Lance Taylor  <iant@google.com>
 
        * tree-vrp.c (avoid_overflow_infinity): New static function,
        * stmt.c (expand_case): Do not call squeeze_notes.
 
 2007-05-20  Manuel Lopez-Ibanez  <manu@gcc.gnu.org>
-       
+
        PR middle-end/7651
        PR c++/11856
        PR c/12963
        * doc/invoke.texi (Wreturn-type): Complete description.
        (Wextra): Delete item about return-type warning.
        * c-decl.c: Delete redundant Wextra warning.
-       
+
 2007-05-20  Uros Bizjak  <ubizjak@gmail.com>
 
        PR target/31585
 2007-05-19 Andy Hutchinson <HutchinsonAndy@netscape.net>
           Anatoly Sokolov <aesok@dol.ru>
 
-       * config/avr/avr-protos.h (expand_prologue, expand_epilogue, 
+       * config/avr/avr-protos.h (expand_prologue, expand_epilogue,
        avr_epilogue_uses) : Add declaration.
        * config/avr/predicates.md (avr_sp_immediate_operand): New predicate.
        * config/avr/constraints.md (R): New constraint.
-       config/avr/avr.md (SREG_ADDR, UNSPEC_SEI, UNSPEC_CLI, 
+       config/avr/avr.md (SREG_ADDR, UNSPEC_SEI, UNSPEC_CLI,
        UNSPECV_PROLOGUE_SAVES, UNSPECV_EPILOGUE_RESTORES): New constants.
        (*pop1, *pop2, *pop3, *pop4, *pop5): Combine into ...
        (*addhi3_sp_R_pc2, *addhi3_sp_R_pc3): ... these patterns.
-       (*movhi_sp, popqi, pophi, enable_interrupt, disable_interrupt, 
+       (*movhi_sp, popqi, pophi, enable_interrupt, disable_interrupt,
        call_prologue_saves, epilogue_restores, return_from_epilogue,
-       return_from_main_epilogue, return_from_interrupt_epilogue, 
+       return_from_main_epilogue, return_from_interrupt_epilogue,
        return_from_naked_epilogue, prologue, epilogue): New patterns.
        (jump): Handle symbol reference.
-       * config/avr/avr.c (out_adj_frame_ptr, out_set_stack_ptr, 
-       avr_output_function_prologue, avr_output_function_epilogue): Remove 
+       * config/avr/avr.c (out_adj_frame_ptr, out_set_stack_ptr,
+       avr_output_function_prologue, avr_output_function_epilogue): Remove
        functions.
-       (avr_init_machine_status, expand_prologue, expand_epilogue, 
-       avr_asm_function_end_prologue, avr_epilogue_uses, 
+       (avr_init_machine_status, expand_prologue, expand_epilogue,
+       avr_asm_function_end_prologue, avr_epilogue_uses,
        avr_asm_function_begin_epilogue): New functions.
-       (prologue_size, epilogue_size, jump_tables_size): Remove global 
+       (prologue_size, epilogue_size, jump_tables_size): Remove global
        variables.
        (TARGET_ASM_FUNCTION_PROLOGUE, TARGET_ASM_FUNCTION_EPILOGUE): Remove.
        (TARGET_ASM_FUNCTION_END_PROLOGUE): Define.
        and soft-fp/t-softfp to tmake_file.
        (i[34567]86-*-linux*, i[34567]86-*-kfreebsd*-gnu,
        i[34567]86-*-knetbsd*-gnu): Ditto for --enable-targets=all.
-       
+
        * config/i386/t-linux64 (softfp_wrap_start): New.
        (softfp_wrap_end): New.
        * config/i386/i386.c (ix86_scalar_mode_supported): TFmode is
 
 2007-05-16  Rafael Avila de Espindola  <espindola@google.com>
 
-       * c-common.c (c_common_signed_or_unsigned_type): Emulate 
+       * c-common.c (c_common_signed_or_unsigned_type): Emulate
        c_common_unsigned_type behavior.
 
 2007-05-16  Paolo Bonzini  <bonzini@gnu.org>