OSDN Git Service

PR target/24348
[pf3gnuchains/gcc-fork.git] / gcc / ChangeLog
index 9e5cf17..bc47427 100644 (file)
@@ -1,3 +1,206 @@
+2005-11-17  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
+
+       PR target/24348
+       * config.gcc (hppa*-*-hpux*): Add pa/t-slibgcc-elf-ver to tmake config
+       when not using sjlj exceptions.
+       * config/pa/pa64-hpux.h (LIB_SPEC): Add -lpthread in static links.
+       * config/pa/pa-hpux11.h (LIB_SPEC): Likewise.
+       * config/pa/som.h (ASM_PREFERRED_EH_DATA_FORMAT): Delete define.
+       * config/pa/linux-unwind.h (pa32_fallback_frame_state): Use
+       DWARF_ALT_FRAME_RETURN_COLUMN instead of column 0 as return column.
+       * config/pa/pa-hpux.h (MD_UNWIND_SUPPORT): New define.
+       * config/pa/pa-linux.h (INCOMING_RETURN_ADDR_RTX,
+       DWARF_FRAME_RETURN_COLUMN, ASM_PREFERRED_EH_DATA_FORMAT,
+       ASM_MAYBE_OUTPUT_ENCODED_ADDR_RTX): Delete defines.
+       * config/pa/pa.h (ARG_POINTER_CFA_OFFSET): Delete.
+       (FRAME_POINTER_CFA_OFFSET, INCOMING_RETURN_ADDR_RTX,
+       DWARF_FRAME_RETURN_COLUMN, DWARF_ALT_FRAME_RETURN_COLUMN,
+       ASM_PREFERRED_EH_DATA_FORMAT, ASM_MAYBE_OUTPUT_ENCODED_ADDR_RTX): New
+       defines.
+       * config/pa/hpux-unwind.h: New file.
+
+2005-11-17  Alexandre Oliva  <aoliva@redhat.com>
+
+       * config/rs6000/rs6000.h (ASM_OUTPUT_WEAKREF): Define.
+       * defaults.h (ASM_OUTPUT_WEAKREF): Add decl argument.
+       * varasm.c (do_assemble_alias): Adjust call.
+       (weak_finish): Don't use ASM_WEAKEN_LABEL if ASM_WEAKEN_DECL
+       is defined.
+       * doc/tm.texi (ASM_OUTPUT_WEAKREF): Document it.
+
+2005-11-17  James E Wilson  <wilson@specifix.com>
+
+       * tree.def (FUNCTION_DECL): Correct typo in comment.
+
+2005-11-17  Richard Henderson  <rth@redhat.com>
+
+       * dwarf2out.c (dw_cfi_oprnd_struct): Reduce dw_cfi_reg_num to int.
+       (lookup_cfa_1): Apply data alignment to DW_CFA_def_cfa_offset_sf
+       and DW_CFA_def_cfa_sf.
+       (def_cfa_1): Use DW_CFA_def_cfa_offset_sf with negative values.
+       (dbx_reg_number): Don't assert particular registers here.
+       (based_loc_descr): ... do it here instead.  Fold in ...
+       (eliminate_reg_to_offset): ... this function.
+       (compute_frame_pointer_to_cfa_displacement): Fold in the effects
+       of eliminate_reg_to_offset; use FRAME_POINTER_CFA_OFFSET.
+       * unwind-dw2.c (execute_cfa_program): Apply data align factor
+       to DW_CFA_def_cfa_offset_sf and DW_CFA_def_cfa_sf.
+       * function.c (instantiate_new_reg): Use FRAME_POINTER_CFA_OFFSET.
+       (instantiate_virtual_regs): Likewise.
+       * var-tracking.c (adjust_stack_reference): Likewise.
+       * doc/tm.texi (FRAME_POINTER_CFA_OFFSET): New.
+
+2005-11-17  Bernd Schmidt  <bernd.schmidt@analog.com>
+
+       * config/bfin/elf.h (STARTFILE_SPEC): Add "crtlibid%O%s"
+       * config/bfin/uclinux.h (STARFILE_SPEC): Likewise.
+       * config/bfin/t-bfin-elf (EXTRA_PARTS, EXTRA_MULTILIB_PARTS): Add
+       crtlibid.o.
+       ($(T)crtlibid.o): New rule.
+
+2005-11-16  Richard Guenther  <rguenther@suse.de>
+
+       PR middle-end/24851
+       * fold-const.c (extract_array_ref): Return byte offset
+       in all cases.
+       (fold_binary): Fold &x[a] CMP &x[b] to
+       a*sizeof(*x) CMP b*sizeof(*x) to get correct overflow
+       behavior.
+
+2005-11-16  Richard Henderson  <rth@redhat.com>
+
+       PR middle-end/23497
+       * tree-ssa.c (warn_uninitialized_var): Skip real and imaginary
+       parts of an SSA_NAME.
+
+2005-11-16  Richard Earnshaw  <richard.earnshaw@arm.com>
+
+       PR target/24861
+       * arm.md (split for movsf with immediate): Restrict split to insns
+       that set a general register.
+
+2005-11-16  Daniel Jacobowitz  <dan@codesourcery.com>
+
+       * config/ia64/unwind-ia64.c (uw_advance_context): New.  Call
+       uw_update_context.
+       * unwind-dw2.c (uw_advance_context): Likewise.
+       * unwind-sjlj.c (uw_advance_context): Likewise.  Also call
+       _Unwind_SjLj_Unregister.
+       * unwind.inc (_Unwind_ForcedUnwind_Phase2): Call uw_advance_context.
+
+2005-11-16  Daniel Jacobowitz  <dan@codesourcery.com>
+
+       * unwind-sjlj.c (_Unwind_GetCFA): Handle the builtin_setjmp case.
+
+2005-11-16  Eric Botcazou  <ebotcazou@adacore.com>
+
+       * config/alpha/alpha.c (alpha_init_builtins): Use type_for_mode
+       langhook to get a DImode integer type.
+
+2005-11-16  Richard Henderson  <rth@redhat.com>
+           J"orn Rennecke <joern.rennecke@st.com>
+           Ulrich Weigand  <uweigand@de.ibm.com>
+
+       PR rtl-opt/24160
+       PR target/24621
+       * reload1.c (reg_equiv_invariant): New.
+       (reload): Allocate, initialize, and free it.
+       (calculate_needs_all_insns): Check it when skipping equivalence
+       setting insns.
+       (alter_reg): Likewise.
+       (eliminate_regs_1): Rename from eliminate_regs.  Add new
+       may_use_invariant argument; only use reg_equiv_invariant when true.
+       (eliminate_regs): New.
+       (eliminate_regs_in_insn): Use eliminate_regs_1; track when we're in
+       a context for which may_use_invariant may be true.
+
+2005-11-16  Eric Botcazou  <ebotcazou@adacore.com>
+
+       * fold-const.c (const_binop): Don't constant fold the operation
+       if the result has overflowed and flag_trapping_math.
+       * simplify-rtx.c (simplify_const_binary_operation): Likewise.
+
+2005-11-16  Daniel Jacobowitz  <dan@codesourcery.com>
+
+       * config/arm/unwind-arm.c (abort): Add prototype here.
+       (UCB_FORCED_STOP_ARG): Correct typo in macro argument.
+       (struct phase1_vrs): Add prev_sp.
+       (unwind_phase2_forced): Save the original core registers instead of
+       modifying entry_vrs.  Take a new flag argument for resuming unwinding
+       and set action flags accordingly.  Always set _US_END_OF_STACK when
+       get_eit_entry fails.  Unwind before calling the stop function.
+       (_Unwind_GetCFA): New function.
+       (__gnu_Unwind_ForcedUnwind): Update call to unwind_phase2_forced.
+       (__gnu_Unwind_Resume_or_Rethrow): Likewise.
+       (__gnu_Unwind_Resume): Do not unwind here for forced unwinding;
+       just call unwind_phase2_forced.
+       (_Unwind_GetDataRelBase, _Unwind_GetTextRelBase): Move to here.
+       * config/arm/unwind-arm.h (abort): Remove prototype.
+       (_Unwind_GetDataRelBase, _Unwind_GetTextRelBase): Change to
+       prototypes.
+       (_Unwind_GetCFA): New prototype.
+       * config/arm/pr-support.c (abort): Add prototype here.
+       * unwind-c.c (PERSONALITY_FUNCTION) [__ARM_EABI_UNWINDER__]: Handle
+       forced unwinding.
+       * config/arm/arm.c (arm_expand_prologue, thumb_expand_prologue): Do
+       not schedule the prologue with non-call exceptions and EABI.
+
+2005-11-16  Nathan Sidwell  <nathan@codesourcery.com>
+
+       * config/arm/unwind-arm.h: Reorder interface function declarations.
+       (_URC_END_OF_STACK): New enumeration value.
+       (_US_UNWIND_ACTION_MASK, _US_FORCE_UNWIND, _US_END_OF_STACK): Likewise.
+       (struct _Unwind_Control_Block): Document reserved field use.
+       (_Unwind_Stop_Fn): New typedef.
+       (_Unwind_ForcedUnwind): Declare.
+       (_Unwind_Resume_or_Rethrow): Declare.
+       * gcc/config/arm/libunwind.S (UNWIND_WRAPER): Add nargs
+       argument.  Adjust.
+       (_Unwind_Resume_or_Rethrow, _Unwind_ForcedUnwind): New.
+       * config/arm/unwind-arm.c (UCB_FORCED_STOP_FN)
+       (UCB_FORCED_STOP_ARG): New.
+       (search_EIT_table): Update boundary condition checks.
+       (get_eit_entry): Return _URC_END_OF_STACK when cannot unwind.
+       (unwind_phase2): Replace for with do..while.
+       (unwind_phase2_forced): New.
+       (__gnu_Unwind_RaiseException): Replace for with do..while.
+       (__gnu_Unwind_ForcedUnwind): New.
+       (__gnu_Unwind_Resume): Set FORCE_UNWIND flag, if forced unwinding.
+       Use appropriate phase2 unwinder.
+       (__gnu_Unwind_Resume_or_Rethrow): New.
+       (__gnu_unwind_pr_common): Cope with forced unwinding.
+
+2005-11-16  David Edelsohn  <edelsohn@gnu.org>
+
+       PR target/24772
+       * config/rs6000/predicates.md (vrsave_operation): SET_SRC is a VEC.
+
+       * config/rs6000/rs6000.md (btruncsf2, ceilsf2, floorsf2,
+       roundsf2): Remove "s" from mnemonic.
+
+2005-11-16  Bernd Schmidt  <bernd.schmidt@analog.com>
+
+       * config/bfin/crti.s (__init, __fini): Use appropriate prologue if
+       __PIC__ is defined.
+       * config/bfin/crtn.s: Change epilogues to match.
+       * config/bfin/t-bfin-elf (EXTRA_MULTILIB_PARTS): Define.
+       * config/bfin/bfin.h (TARGET_CPU_CPP_BUILTINS): If flag_pic, define
+       __PIC__ and __pic__.
+
+2005-11-16  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       PR 24357
+       * doc/invoke.texi: Distinguish between free and fixed form instead of
+       Fortran and Fortran 90/95.  Remove ratfor from the list of supported
+       languages.
+       * gcc.c (default_compilers): Remove double entries, add entries for
+       suffixes '.F90' and '.F95'.
+
+2005-11-16  Eric Botcazou <ebotcazou@adacore.com>
+
+       * config/alpha/alpha.c (alpha_expand_prologue): Fix off-by-one bug
+       in the stack probing loop.
+
 2005-11-15  David Edelsohn  <edelsohn@gnu.org>
 
        * configure.ac: Use .machine power5 not power5x.