OSDN Git Service

* gthr-posix.h (__gthread_active_p): Use __extension__ around cast
[pf3gnuchains/gcc-fork.git] / gcc / ChangeLog
index 6dac1c7..365675c 100644 (file)
@@ -1,3 +1,458 @@
+2004-10-20  Mark Mitchell  <mark@codesourcery.com>
+
+       * gthr-posix.h (__gthread_active_p): Use __extension__ around cast
+       from function pointer to void *.
+
+2004-10-20  Kaz Kojima  <kkojima@gcc.gnu.org>
+
+       PR target/18032
+       * config/sh/sh.c (sh_expand_epilogue): Emit a blockage insn before
+       the frame pointer adjustment when exception handling is enabled.
+
+2004-10-20  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * stor-layout.c: Fix a comment typo.
+
+2004-10-20  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * expr.c (store_field): Remove two arguments value_mode and
+       unsignedp.
+       (expand_assignment, store_constructor_field,
+       expand_expr_real_1): Adjust calls to store_field.
+
+2004-10-18  Ramana Radhakrishnan  <ramana.radhakrishnan@codito.com>
+
+       * config/arc/lib1funcs.asm (___umulsidi3): Correct usage of flags.
+
+       PR target/17317
+       * config/arc/arc.h (REGNO_OK_FOR_BASE_P,REGNO_OK_FOR_INDEX_P,
+       REG_OK_FOR_BASE, REG_OK_FOR_INDEX): Consider blink(r31) as a valid
+       base and index register for loads.
+
+       * config/arc/t-arc: Fix multilib handling.
+
+2004-10-20  Hans-Peter Nilsson  <hp@bitrange.com>
+
+       * cfgrtl.c (rtl_verify_flow_info_1): When checking insns in a bb,
+       don't inspect BLOCK_FOR_INSN for barriers.
+       * emit-rtl.c (emit_barrier_before): Revert last change.
+       (emit_barrier_after, emit_barrier): Ditto.
+
+       * doc/extend.texi (Extended Asm): Warn and provide example
+       solution for using a call-clobbered asm register.
+       (Local Reg Vars): Similar.  Cross-reference example.
+
+2004-10-19  Andrew Pinski  <pinskia@physics.uc.edu>
+
+       * tree-cfg.c (group_case_labels): Look at the second to last
+       case statement for combing with the default case.
+
+2004-10-19  Richard Hendeson  <rth@redhat.com>
+
+       PR 17962
+       * stor-layout.c (layout_type): Set TYPE_ALIGN for vectors.
+
+2004-10-19  Richard Hendeson  <rth@redhat.com>
+
+       * builtins.c (expand_builtin_memmove): If fold_builtin_memmove
+       succeeds, only expand the result.
+
+2004-10-19  Richard Hendeson  <rth@redhat.com>
+
+       PR middle-end/17885
+       * tree.c (recompute_tree_invarant_for_addr_expr): Always poll address
+       of INDIRECT_REF.
+
+2004-10-19  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * tree-cfg.c (thread_jumps): Use a do-while loop instead of a
+       loop with goto.
+
+2004-10-19  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * expr.c (expand_assignment): Remove the last argument.
+       Change the return type to void.
+       * expr.h: Update the prototype of expand_assignment.
+       * function.c (assign_parm_setup_reg): Update a call to
+       expand_assignment.
+       * stmt.c (expand_asm_expr): Likewise.
+
+2004-10-19  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * expr.c (expand_expr_real_1) <MODIFY_EXPR>: Remove
+       unnecessary assignments to temp.  Return const0_rtx.
+
+2004-10-19  Kaz Kojima  <kkojima@gcc.gnu.org>
+
+       * config/sh/sh.c (sh5_schedule_saves): Fix typo.
+
+2004-10-18  Kelley Cook  <kcook@gcc.gnu.org>
+
+       * configure.ac (powerpc-*-darwin*): Require assembler to support
+       .machine directive.
+       * configure: Regenerate.
+
+2004-10-18  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * reload1.c (ior_hard_reg_set): Remove.
+       (finish_spills): Use IOR_HARD_REG_SET instead of
+       ior_hard_reg_set.
+
+2004-10-18  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * sbitmap.h (EXECUTE_IF_SET_IN_SBITMAP): Speed up by shifting
+       the currently visited word to right.
+
+2004-10-18  Eric Botcazou  <ebotcazou@libertysurf.fr>
+
+       PR middle-end/18045
+       * expmed.c (expand_smod_pow2): Handle modes whose size
+       is greater than that of HOST_WIDE_INT.
+
+2004-10-18  Ziemowit Laski  <zlaski@apple.com>
+
+       * c-parse.in (reservedwords): Add OBJC_TYPE_QUAL as alternative.
+
+2004-10-18  Eric Botcazou  <ebotcazou@libertysurf.fr>
+            Roger Sayle  <roger@eyesopen.com>
+
+       PR middle-end/17813
+       * dojump.c (discard_pending_stack_adjust): New function.
+       (clear_pending_stack_adjust): Call it.
+       * expr.h (discard_pending_stack_adjust): Declare it.
+       * explow.c (emit_stack_save): Emit pending stack adjustments
+       before saving the stack pointer.
+       (emit_stack_restore): Discard pending stack adjustments before
+       restoring the stack pointer.
+
+2004-10-18  Richard Henderson  <rth@redhat.com>
+
+       * c-common.c (handle_mode_attribute): Allow scalar->vector 
+       type changes yet.
+
+2004-10-18  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * expr.c (expand_expr_real_1) [MODIFY_EXPR]: Don't request a
+       value to expand_assignment.
+
+2004-10-18  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * tree-cfg.c (cleanup_tree_cfg): Don't iterate on
+       thread_jumps.
+       (thread_jumps): Iterate until no new forwarder block arises.
+
+2004-10-18  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * tree-cfg.c (tree_forwarder_block_p): Don't set forwardable.
+       (thread_jumps): Use forwardable as cache of
+       tree_forwarder_block_p throughout the function.
+
+2004-10-18  Andreas Krebbel  <krebbel1@de.ibm.com>
+
+       * cfg.c (dump_flow_info): Remove redundant dump of reg life info.
+
+2004-10-18  Andrew Pinski  <pinskia@physics.uc.edu>
+
+       PR middle-end/15014
+       PR middle-end/16973
+       * tree-cfg.c (remove_bb): If we have a label expression in the
+       basic block and the label we have taken the address, move the
+       label expression to the basic block which is previous in the
+       linked list.
+       (tree_verify_flow_info): Fix printing out the label name of the
+       problematic label expression.
+
+2004-10-18  Pat Haugen  <pthaugen@us.ibm.com>
+
+       PR rtl-optimization/18002
+       * simplify-rtx.c (mode_signbit_p): Externalize function...
+       * rtl.h (mode_signbit_p): ... to here.
+       * combine.c (simplify_shift_const): Recognize PLUS signbit as
+       canonical form of XOR signbit and move to outer op.
+
+2004-10-18  Diego Novillo  <dnovillo@redhat.com>
+
+       * tree-cfg.c (bsi_for_stmt): Rename from stmt_for_bsi.
+       Update all callers.
+       * tree-ssa.c (replace_immediate_uses): Call bsi_for_stmt.
+       Don't call fold_stmt more than once, use bsi_replace.
+
+2004-10-18  Diego Novillo  <dnovillo@redhat.com>
+
+       PR tree-optimization/17656
+       * tree-ssa.c (replace_immediate_uses): When replacing a
+       constant, if the call to fold_stmt produced a different
+       statement, get an appropriate statement pointer by scanning
+       STMT's basic block.
+
+2004-10-18  Richard Henderson  <rth@redhat.com>
+
+       * pointer-set.c (hash1): Don't use libm functions in fallback case.
+
+2004-10-18  H.J. Lu  <hongjiu.lu@intel.com>
+
+       PR bootstrap/17684
+       * Makefile.in (clean): Remove libgcc_s$(SHLIB_EXT).1.stage?.
+       (stage1-start): Remove and copy libunwind.a and
+       libunwind*$(SHLIB_EXT) instead of libunwind*.
+       (stage2-start): Likewise.
+       (stage3-start): Likewise.
+       (stage4-start): Likewise.
+       (stageprofile-start): Likewise.
+       (stagefeedback-start): Likewise.
+
+       * config/alpha/t-osf4 (SHLIB_LINK): Use a temporary file for
+       the shared library to be created and don't remove the existing
+       shared library.
+       * config/arm/t-netbsd (SHLIB_LINK): Likewise.
+       * config/i386/t-nwld (SHLIB_LINK): Likewise.
+       * config/mips/t-slibgcc-irix (SHLIB_LINK): Likewise.
+       * config/pa/t-hpux-shlib (SHLIB_LINK): Likewise.
+       * config/sh/t-linux (SHLIB_LINK): Likewise.
+       * config/t-libunwind-elf (SHLIBUNWIND_LINK): Likewise.
+       * config/t-slibgcc-darwin (SHLIB_LINK): Likewise.
+       * config/t-slibgcc-elf-ver (SHLIB_LINK): Likewise.
+       * config/t-slibgcc-sld (SHLIB_LINK): Likewise.
+
+       * mklibgcc.in (libgcc-stage-start): Also move "*${objext}s"
+       files.
+
+2004-10-18  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * basic-block.h (reg_set_iterator): New.
+       (EXECUTE_IF_SET_IN_REG_SET): Make it iterator style.
+       (EXECUTE_IF_AND_COMPL_IN_REG_SET): Likewise.
+       (EXECUTE_IF_AND_IN_REG_SET): Likewise.
+       * caller-save.c (save_call_clobbered_regs): Adjust to the new
+       style.
+       * cfgcleanup.c (thread_jump): Likewise.
+       * cfgrtl.c (safe_insert_insn_on_edge): Likewise.
+       * conflict.c (conflict_graph_compute): Likewise.
+       * flow.c (verify_local_live_at_start, update_life_info,
+       initialize_uninitialized_subregs, propagate_one_insn,
+       init_propagate_block_info, free_propagate_block_info,
+       propagate_block, dump_regset): Likewise.
+       * global.c (global_conflicts): Likewise.
+       * graph.c (start_bb): Likewise.
+       * local-alloc.c (update_equiv_regs): Likewise.
+       * loop.c (load_mems): Likewise.
+       * reload1.c (compute_use_by_pseudos, order_regs_for_reload,
+       find_reg, finish_spills): Likewise.
+       * resource.c (mark_target_live_regs): Likewise.
+       * sched-deps.c (sched_analyze_insn): Likewise.
+       * sched-rgn.c (sched-rgn.c): Likewise.
+       * config/frv/frv.c (frv_ifcvt_modify_tests): Likewise.
+
+2004-10-18  Jakub Jelinek  <jakub@redhat.com>
+
+       * config/i386/i386.md (addqi_1_slp): Test for incdec_operand
+       operand 1 instead of 2
+
+2004-10-18  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * loop-unroll.c: Fix comment typos.
+
+2004-10-18  Revital Eres  <eres@il.ibm.com>
+
+       * Makefile.in (loop-unroll.o): Add VARRAY_H dependency.
+       * loop-unroll.c: Include varray.h.
+       (struct var_to_expand, struct opt_info): Rename split_ivs_info to
+       opt_info and expand it to support variable expansion.
+       (analyze_insns_in_loop): Rename analyze_ivs_to_split and
+       expand it to support variable expansion.
+       (pt_info_start_duplication): Rename si_info_start_duplication.
+       (apply_opt_in_copies): Rename split_ivs_in_copies and add support
+       to the variable expansion optimization.
+       (free_opt_info): Rename free_si_info.
+       (analyze_insn_to_expand_var, referenced_in_one_insn_in_loop_p,
+       expand_var_during_unrolling, insert_var_expansion_initialization,
+       combine_var_copies_in_loop_exit, release_var_copies,
+       get_expansion): New functions.
+       (peel_loop_completely, unroll_loop_constant_iterations,
+       unroll_loop_runtime_iterations, peel_loop_simple,
+       unroll_loop_stupid): Change uses of struct si_info
+       to struct opt_info
+       and add uses of fvariable-expansion-in-unroller flag.
+       * params.def: Add parameter to restrict the number of expansions.
+       * params.h: (MAX_VARIABLE_EXPANSIONS): New define to restrict
+       the number of expansions.
+       * common.opt: (fvariable-expansion-in-unroller): New flag. 
+       * doc/invoke.texi: (fvariable-expansion-in-unroller): Document.
+
+2004-10-18  Danny Smith  <dannysmith@users.sourceforge.net>
+
+       * config/i386/cygming.h (TARGET_OS_CPP_BUILTINS): Define
+       __GXX_MERGED_TYPEINFO_NAMES to 0.
+
+2004-10-17  Hans-Peter Nilsson  <hp@bitrange.com>
+
+       * cfgrtl.c (rtl_verify_flow_info_1): When checking insns in a bb,
+       handle barriers in a bb by checking that it points to a NULL bb.
+       * emit-rtl.c (emit_barrier_before): Set BLOCK_FOR_INSN to NULL.
+       (emit_barrier_after, emit_barrier): Ditto.
+
+2004-10-18  Joseph S. Myers  <jsm@polyomino.org.uk>
+
+       * doc/extend.texi (Attribute Syntax): Clarify details of
+       attributes on parameters.
+
+2004-10-17  Zdenek Dvorak  <dvorakz@suse.cz>
+
+       * tree-ssa-loop-ivopts.c (tree_ssa_iv_optimize): Move checking out of
+       loop.
+
+2004-10-17  Andrew Pinski  <pinskia@physics.uc.edu>
+
+       Revert:
+       2004-10-17  Andrew Pinski  <pinskia@physics.uc.edu>
+
+        * c-typeck.c (default_function_array_conversion): Always create
+        &a[0] for array types.
+        (build_unary_op): Do not fold &a[x] into a + x.
+
+2004-10-17  Andrew Pinski  <pinskia@physics.uc.edu>
+
+       PR middle-end/17925
+       * cfgexpand.c (expand_gimple_cond_expr): Emit line notes for next basic
+       block if there is a goto with a locus.
+
+2004-10-17  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * config/elfos.h, config/gofast.h, config/interix.h,
+       config/netbsd.h, config/svr3.h, config/vxworks.h,
+       config/alpha/alpha-modes.def, config/alpha/alpha-protos.h,
+       config/alpha/ev4.md, config/alpha/ev5.md, config/alpha/ev6.md,
+       config/alpha/netbsd.h, config/arm/arm-modes.def,
+       config/arm/unknown-elf.h, config/c4x/c4x-modes.def,
+       config/cris/aout.h, config/frv/frv-modes.def,
+       config/i386/beos-elf.h, config/i386/gas.h,
+       config/i386/i386-coff.h, config/i386/i386-modes.def,
+       config/i386/linux.h, config/i386/linux64.h,
+       config/i386/mingw32.h, config/i386/netbsd-elf.h,
+       config/i386/netbsd64.h, config/i386/sco5.h,
+       config/i386/sol2.h, config/i386/uwin.h, config/i860/i860.md,
+       config/ia64/ia64-modes.def, config/ia64/itanium1.md,
+       config/ia64/itanium2.md, config/m68k/m68k-modes.def,
+       config/mips/mips-modes.def, config/mips/sdb.h,
+       config/mips/vr.h, config/mips/vxworks.h,
+       config/pa/pa-hpux10.h, config/pa/pa-hpux11.h,
+       config/pa/pa32-linux.h, config/rs6000/40x.md,
+       config/rs6000/7450.md, config/rs6000/8540.md,
+       config/rs6000/linuxspe.h, config/rs6000/power4.md,
+       config/rs6000/rs6000-modes.def, config/rs6000/rtems.h,
+       config/rs6000/spe.h, config/s390/2064.md, config/s390/linux.h,
+       config/s390/s390-modes.def, config/sh/elf.h,
+       config/sh/sh-modes.def, config/sh/sh64.h,
+       config/sparc/ultra1_2.md, config/sparc/ultra3.md,
+       config/stormy16/stormy16.md, config/v850/v850-protos.h,
+       config/vax/vax.md: Update copyright.
+
+2004-10-17  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * expr.c (expand_expr_real_1): Remove an obsolete comment.
+
+2004-10-17  Andrew Pinski  <pinskia@physics.uc.edu>
+
+       * c-typeck.c (default_function_array_conversion): Always create
+       &a[0] for array types.
+       (build_unary_op): Do not fold &a[x] into a + x.
+
+2004-10-17  Jakub Jelinek  <jakub@redhat.com>
+
+       * pointer-set.c (hash1): Use integer part of 2^64 / phi
+       instead 2^32 / phi if long is 64-bit.
+
+2004-10-17  Joseph S. Myers  <jsm@polyomino.org.uk>
+
+       * c-common.h (enum rid): Remove RID_PTRBASE, RID_PTREXTENT and
+       RID_PTRVALUE.
+       * c-parse.in (PTR_VALUE, PTR_BASE, PTR_EXTENT): Remove %token
+       declarations.
+       (reswords): Remove __ptrbase, __ptrbase__, __ptrextent,
+       __ptrextent__, __ptrvalue and __ptrvalue__.
+       (rid_to_yy): Remove RID_PTRBASE, RID_PTREXTENT and RID_PTRVALUE
+       entries.
+
+2004-10-16  Dale Johannesen  <dalej@apple.com>
+
+       * c-common.c (c_common_get_alias_set):  Use GGC for type_hash_table.
+
+2004-10-16  Zdenek Dvorak  <dvorakz@suse.cz>
+
+       PR tree-optimization/17766
+       * basic-block.h (enum dom_state): DOM_CONS_OK removed.
+       (dom_info_available_p): Declare.
+       * cfghooks.c (split_block, make_forwarder_block): Use
+       dom_info_available_p.
+       * dominance.c (compute_dom_fast_query, calculate_dominance_info,
+       free_dominance_info, verify_dominators): Ditto.
+       (dom_info_available_p): New function.
+       * tree-cfg.c (cleanup_control_expr_graph): Free dominance information.
+       (thread_jumps): Use dom_info_available_p.
+       * tree-complex.c (expand_complex_div_wide): Ditto.
+       * tree-mudflap.c (mf_build_check_statement_for): Ditto.
+
+2004-10-16  Zdenek Dvorak  <dvorakz@suse.cz>
+
+       * tree-ssa-loop-ivopts.c (struct ivopts_data): New field important_candidates.
+       (find_best_candidate): Take also important candidates into account.
+       (find_optimal_iv_set): Initialize important_candidates bitmap.
+
+2004-10-16  Zdenek Dvorak  <dvorakz@suse.cz>
+
+       PR tree-optimization/17560
+       * predict.c (tree_estimate_probability): Mark irreducible
+       loops.
+
+2004-10-16  Zdenek Dvorak  <dvorakz@suse.cz>
+
+       PR rtl-optimization/17723
+       * cfgcleanup.c (merge_memattrs): Handle case when
+       MEM_SIZE == NULL_RTX.
+
+2004-10-15  Andrew Pinski  <pinskia@physics.uc.edu>
+
+       * toplev.c (dump_file_name): Change type to be const.
+
+2004-10-15  Joseph S. Myers  <jsm@polyomino.org.uk>
+
+       * c-typeck.c (build_compound_expr, build_c_cast): Don't try to use
+       non_lvalue to stop something being a null pointer constant.
+
+2004-10-15  Aldy Hernandez  <aldyh@redhat.com>
+
+       * config/rs6000/rs6000.h (FUNCTION_ARG_REGNO_P): FPRs are only
+       available for TARGET_FPRS.
+       (FUNCTION_VALUE_REGNO_P): Same.
+
+2004-10-15  Geoffrey Keating  <geoffk@apple.com>
+
+       * doc/invoke.texi (RS/6000 and PowerPC Options): Document
+       -maltivec in same style as other ISA options.
+
+2004-10-15  Jon Grimm <jgrimm2@us.ibm.com>
+
+       * config/host-linux.c (TRY_EMPTY_VM_SPACE): Add __powerpc__
+       definition.
+
+2004-10-15  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * bitmap.c, bitmap.h, builtin-attrs.def, cfglayout.h,
+       collect2.h, conflict.c, coretypes.h, coverage.h, errors.h,
+       gcc.h, gcov-dump.c, gen-protos.c, gencheck.c, gencodes.c,
+       genconstants.c, gengenrtl.c, genmodes.c, genpeep.c,
+       gensupport.h, graph.h, gthr-gnat.c, gthr-gnat.h, gthr-posix.c,
+       gthr-posix.h, hard-reg-set.h, hwint.h, integrate.h, libgcc2.c,
+       lists.c, machmode.def, mips-tdump.c, opts.h, params.c,
+       predict.def, predict.h, protoize.c, reload.h, resource.h,
+       rtl-error.c, sbitmap.c, sbitmap.h, sreal.c, tlink.c,
+       tree-dump.h, tree-inline.h, unwind-dw2-fde.c, unwind-dw2.c,
+       unwind-sjlj.c, value-prof.h: Update copyright.
+
+2004-10-15  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * pointer-set.c, tree-vectorizer.c: Fix comment typos.
+
 2004-10-15  Diego Novillo  <dnovillo@redhat.com>
 
        * tree-optimize.c (execute_one_pass): Stop timer right after