OSDN Git Service

* rtl.h (gen_frame_mem, gen_tmp_stack_mem): Declare.
[pf3gnuchains/gcc-fork.git] / gcc / ChangeLog
index 456ee81..15f810d 100644 (file)
@@ -1,6 +1,255 @@
+2005-09-05  J"orn Rennecke <joern.rennecke@st.com>
+
+       * rtl.h (gen_frame_mem, gen_tmp_stack_mem): Declare.
+       * emit-rtl.c (gen_frame_mem, gen_tmp_stack_mem): New functions.
+       * builtins.c (expand_builtin_return_addr): Use gen_frame_mem.
+
+2005-09-05  J"orn Rennecke <joern.rennecke@st.com>
+
+       PR target/23683
+       * sh.c (sh_reorg, emit_load_ptr): Use gen_const_mem.
+       (output_stack_adjust): Use gen_tmp_stack_mem.
+       (sh_expand_prologue, sh_expand_epilogue): Use gen_frame_mem.
+       (sh_set_return_address, sh_allocate_initial_value): Likewise.
+       (sh_get_pr_initial_val): Likewise.
+       (sh_builtin_saveregs): Use gen_frame_mem and change_address.
+       (sh_initialize_trampoline): Likewise.  Also use adjust_address.
+       * sh.md (divsi_inv_m0): Use gen_const_mem.
+       (push_fpscr, pop_fpscr, load_ra): Use gen_frame_mem.
+       (movdf_i4+1): Use gen_tmp_stack_mem.
+       (reload_outdf+3, reload_outdf+4, fpu_switch+1): Use change_address.
+       (fpu_switch+2): Likewise.
+       (movv4sf_i, movv16sf_i): Use adjust_address.
+       (symGOT_load): Set MEM_NOTRAP_P bit.
+
+2005-09-04  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
+
+       PR target/23721
+       * pa.c (emit_move_sequence): Fix typo in last change.
+
+2005-09-03  Jakub Jelinek  <jakub@redhat.com>
+
+       PR rtl-optimization/23454
+       * reorg.c (relax_delay_slots): Only call invert_jump if any_condjump_p
+       is true.
+
+2005-09-03  Richard Henderson  <rth@redhat.com>
+           John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
+
+       PR middle-end/23671
+       pa.c (emit_move_sequence): Use replace_equiv_address instead of
+       gen_rtx_MEM.
+
+2005-09-02  Nicolas Pitre <nico@cam.org>
+
+       * config/arm/arm.c (arm_legitimize_address): Limit the value passed
+       to bit_count to 32 bits.
+
+2005-08-31  Mark Mitchell  <mark@codesourcery.com>
+
+       PR c++/23167
+       * gimplify.c (gimplify_expr): Handle TREE_ADDRESSABLE types when
+       generating synthetic loads from volatile lvalues.
+
+005-09-02  Nick Clifton  <nickc@redhat.com>
+
+       * config/stormy16/stormy16-lib2.c (__popcounthi2, __parityhi2,
+       __ctzhi2, __clzhi2): New functions.
+
+2005-09-02  Andrew Pinski  <pinskia@physics.uc.edu>
+
+       PR middle-end/23547
+       * tree-nested.c (struct var_map_elt): Mark with GTY.
+       (struct nesting_info): Mark with GTY.  Mark var_map's param is struct
+       var_map_elt.
+       (lookup_field_for_decl): Allocate new element in GC memory.
+       (lookup_tramp_for_decl): Likewise.
+       (convert_nl_goto_reference): Likewise
+       (create_nesting_tree): Allocate info in GC memory. Likewise for
+       info->var_map.
+       (free_nesting_tree): Free with ggc_free instead of free.
+       (root): New static variable.
+       (lower_nested_functions): Remove root as local variable.  And zero out
+       root at the end of the function.
+
+2005-09-02  J"orn Rennecke <joern.rennecke@st.com>
+
+       PR rtl-optimization/20365
+       * simplify-rtx.c (simplify_plus_minus_op_data): Change type of neg
+       to short.  New member ix.
+       (simplify_plus_minus_op_data_cmp): Break ties using ix member.
+       (simplify_plus_minus): Initialize ix members before calling qsort.
+
+2005-09-02  Zdenek Dvorak  <dvorakz@suse.cz>
+
+       PR tree-optimization/23626
+       * tree-cfg.c (replace_uses_by): Clean up eh info.
+
+2005-09-01  DJ Delorie  <dj@redhat.com>
+
+       * config/m32c/m32c.c (m32c_valid_pointer_mode): Remove stray debug
+       fprintf.
+
+2005-09-01  David Edelsohn  <edelsohn@gnu.org>
+
+       * config/rs6000/rs6000.c (setup_incoming_varargs): Set MEM_NOTRAP_P.
+       (rs6000_split_multireg_move): Use replace_equiv_address instead of
+       gen_rtx_MEM.
+
+2005-09-01  Craig Rodrigues  <rodrigc@gcc.gnu.org>
+
+       * c-decl.c (diagnose_mismatched_decls):  With -Wredundant-decls,
+       do not issue warning for a variable definition following
+       a declaration.
+
+2005-09-01  Richard Henderson  <rth@redhat.com>
+
+       PR 23668
+       * config/i386/i386.c (ix86_expand_vector_init_one_var): Restore
+       conversion to CONST_VECTOR.
+
+2005-09-01  Richard Henderson  <rth@redhat.com>
+
+       PR 23676
+       * reload1.c (reload_as_needed): Check !CALL_P before calling
+       fixup_eh_region_note.
+       * rtlanal.c (may_trap_p): SUBREG by itself cannot trap.
+
+2005-09-01  DJ Delorie  <dj@redhat.com>
+
+       * varasm.c (output_constant): Let the target resolve
+       conversions of addresses to non-default pointer sizes.
+
+2005-09-01  Nicolas Pitre <nico@cam.org>
+
+       * config/arm/arm.c (arm_legitimize_address): Split absolute addresses
+       to alow matching ARM pre-indexed addressing mode.
+       (arm_override_options): Remove now irrelevant comment.
+
+2005-09-01  Phil Edwards  <phil@codesourcery.com>
+
+       * config.gcc (i*86-wrs-vxworks):  Update.  Split out vxworksae target.
+       * config/i386/t-vxworks:  Update multilibs for VxWorks 6 and RTP mode.
+       * config/i386/vxworks.h:  Likewise.
+       * config/i386/t-vxworksae:  New file, for VxWorks AE.
+       * config/i386/vxworksae.h:  Likewise.
+
+2005-09-01  Sebastian Pop  <pop@cri.ensmp.fr>
+
+       PR tree-optimization/23410
+       * tree-ssa-loop-niter.c (scev_probably_wraps_p): Check that the
+       sequence is not wrapping during the first step.
+
+2005-09-01  Jakub Jelinek  <jakub@redhat.com>
+
+       PR debug/7241
+       * dwarf2out.c (base_type_die): Compare char_type_node with
+       TYPE_MAIN_VARIANT (type), not type.
+
+2005-09-01  Richard Guenther  <rguenther@suse.de>
+
+       PR tree-optimization/15366
+       * common.opt: Add -finline-functions-called-once.
+       Put -fearly-inlining in alphabetically ordered place.
+       * doc/invoke.texi: Document new option.
+       * ipa-inline.c (cgraph_decide_inlining): Honour
+       flag_inline_functions_called_once.
+
+2005-09-01  Jakub Jelinek  <jakub@redhat.com>
+
+       PR rtl-optimization/23478
+       * local-alloc.c (struct qty): Add n_throwing_calls_crossed field.
+       (alloc_qty): Initialize it.
+       (update_equiv_regs): Clear REG_N_THROWING_CALLS_CROSSED.
+       (combine_regs): Combine also n_throwing_calls_crossed fields.
+       (find_free_reg): Don't attempt to caller-save pseudos crossing
+       calls that might throw.
+       * global.c (struct allocno): Add throwing_calls_crossed field.
+       (global_alloc): Revert 2005-08-22 change.  Initialize
+       throwing_calls_crossed.
+       (find_reg): Don't attempt to caller-save pseudos crossing calls that
+       might throw.
+
+2005-09-01  Alan Modra  <amodra@bigpond.net.au>
+
+       PR target/23649
+       * config/rs6000/predicates.md (mask_operand): Only handle rlwinm masks.
+       (mask64_operand): Reinstate code prior to 2005-06-11 change.
+       (mask64_2_operand): Reinstate code prior to 2004-11-11 change.
+       (and64_2_operand): Tweak to use predicate.
+       (and_operand): Adjust for mask_operand changes.
+       * config/rs6000/rs6000.c (num_insns_constant): Revert 2005-06-11.
+       (print_operand): Likewise.
+       (rs6000_rtx_costs): Pass mode to mask_operand and use mask64_operand.
+       (mask64_1or2_operand): Delete.
+       * rs6000/rs6000-protos.h (mask64_1or2_operand): Delete.
+       * config/rs6000/rs6000.h (EXTRA_CONSTRAINT <S>): Revert 2005-06-11.
+       (EXTRA_CONSTRAINT <T>): Pass operand mode to predicate.
+       (EXTRA_CONSTRAINT <t>): Disallow mask64_operand matches.
+       * config/rs6000/rs6000.md (andsi3_internal3 split): Revert 2005-06-11.
+       (rotldi3_internal4): Likewise.
+       (rotldi3_internal5, rotldi3_internal5 split): Likewise.
+       (rotldi3_internal6, rotldi3_internal6 split): Likewise.
+       (ashldi3_internal7): Likewise.
+       (ashldi3_internal8, ashldi3_internal8 split): Likewise.
+       (ashldi3_internal, ashldi3_internal9 split): Likewise.
+       (anddi3 split): Don't match mask64_operand.
+       (anddi3_internal2): Add rlwinm.  Modify 't' splitter predicate.
+       (anddi3_internal3): Add rlwinm.  Use and64_2_operand in non-cr0
+       splitter and match TARGET_64BIT not TARGET_POWERPC64.  Modify
+       't' splitter predicate.
+       (movdi_internal64 + 2): Revert 2005-06-11 change.
+
+2005-08-31  DJ Delorie  <dj@redhat.com>
+
+       * config/m32c/m32c.c (m32c_valid_pointer_mode): New.
+       (m32c_asm_integer): Add support for 32 bit pointers.
+
+2005-08-31  Richard Henderson  <rth@redhat.com>
+
+       * emit-rtl.c (set_mem_attributes_minus_bitpos): Look through
+       component-like references for setting MEM_NOTRAP_P.
+
+       * config/i386/i386.c (ix86_setup_incoming_varargs): Set MEM_NOTRAP_P.
+       * config/alpha/alpha.c (alpha_setup_incoming_varargs): Likewise.
+
+2005-08-31  Richard Henderson  <rth@redhat.com>
+
+       * expr.c (expand_expr_real_1) <VIEW_CONVERT_EXPR>: Force subregs
+       into a pseudo before applying gen_lowpart.
+
+2005-08-31  Geoffrey Keating  <geoffk@apple.com>
+
+       * doc/install.texi (Specific): Update cctools version required
+       for full functionality.
+       * config/darwin.h (LINK_SPEC): Pass -mmacosx-version-min to the
+       linkers as -macosx_version_min.
+
+2005-08-31  J"orn Rennecke <joern.rennecke@st.com>
+
+       PR target/21255
+       * sh.c (print_operand, %R and %S): Add handling of floating point
+       registers, memory, constants and invalid operands.
+
+2005-08-31  Daniel Berlin  <dberlin@dberlin.org>
+
+       * ipa-pure-const.c: Change dump name.
+
+2005-08-31 Uros Bizjak <uros@kss-loka.si>
+
+       PR target/23570
+       * config/i386/sse.md (*sse_concatv2sf): Change operand 2 constraint
+       to "reg_or_0_operand".
+       (sse2_loadld): Change operand 1 constraint to "reg_or_0_operand".
+
+2005-08-31  Dale Johannesen  <dalej@apple.com>
+
+       * loop-iv.c (iv_number_of_iterations):  Fix overflow check for
+       loops that count down.
+
 2005-08-31  Richard Henderson  <rth@redhat.com>
 
-       PR rtl-opt/23602
+       PR rtl-opt/23601
        * reload1.c (reload): Set MEM_NOTRAP_P in spill slots.
        (fixup_eh_region_note): New.
        (reload_as_needed): Call it.