X-Git-Url: http://git.sourceforge.jp/view?p=pf3gnuchains%2Fgcc-fork.git;a=blobdiff_plain;f=gcc%2FChangeLog;h=45fce64326567669d04e5780095cfaae5bcd37d0;hp=0d1946573d4c18bc60df350f466f1b97b7d9216d;hb=a92b767f7eaeb8937e88611c033b0df3fb151988;hpb=ef07ff3370aa4c7a31df6187583111c0e1b3b63a diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 0d1946573d4..45fce643265 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,504 @@ +2005-09-11 Richard Earnshaw + + * arm/predicates.md (alignable_memory_operand): Delete. + +2005-09-10 Richard Henderson + + PR debug/23806 + * dbxout.c (dbxout_expand_expr): New. + (dbxout_symbol): Use it. + +2005-09-10 Richard Earnshaw + + * arm.c (arm_gen_rotated_half_load): Delete. + (vfp_emit_fstmx, arm_set_return_address): Use gen_frame_mem. + (emit_multi_reg_push, emit_sfm, arm_expand_prologue) + (thumb_set_return_address): Likewise. + (thumb_load_double_from_address): Use adjust_address. + * arm.md (splits calling arm_gen_rotated_half_load): Delete. + (extendhsisi2_mem, movhi_bytes): Use change_address. + (movhi): Use widen_memory_access. + (reload_out_df): Use replace_equiv_address. + * arm-protos.h (arm_gen_rotated_half_load): Delete prototype. + +2005-09-09 Richard Henderson + + PR debug/20998 + * dbxout.c: Include expr.h. + (dbxout_global_decl): Don't suppress for DECL_RTL unset. + (dbxout_symbol): Handle DECL_VALUE_EXPR. + * Makefile.in (dbxout.o): Add EXPR_H. + +2005-09-09 Zdenek Dvorak + + PR tree-optimization/23509 + * tree-cfg.c (replace_uses_by): Use replace_exp. + * tree-ssa-loop-ivopts.c (get_ref_tag): Assert that dereferenced + pointers have name_mem_tag or type_mem_tag set. + +2005-09-09 Sebastian Pop + + * tree-chrec.c (evolution_function_is_invariant_rec_p): Use + CHREC_LEFT and CHREC_RIGHT for accessing chrec components instead + of wrongly accessing operands. + +2005-09-09 Sebastian Pop + + * Makefile.in (tree-chrec.o): Depends on SCEV_H. + * tree-chrec.c: Include tree-scalar-evolution.h. + (chrec_convert): Instantiate the base and step before calling + scev_probably_wraps_p that would fail on parametric evolutions. + Collect all the fails into a single section failed_to_convert, + print a diagnostic, and return chrec_dont_know instead of calling + fold_convert. + * tree-scalar-evolution.c (loop_closed_phi_def): New. + (instantiate_parameters_1): Avoid instantiation of loop closed ssa + phi nodes. + (scev_const_prop): Don't replace the definition of a loop closed ssa + phi node by itself, or by another loop closed ssa phi node. + * tree-ssa-loop-niter.c (scev_probably_wraps_p, convert_step): Check + that base and step are defined. + +2005-09-09 Richard Guenther + + PR c++/23624 + * fold-const.c (fold_ternary): Check truth_value_p before + calling invert_truthvalue. + +2005-09-09 Nick Clifton + + * Makefile.in (LIBGCC_DEPS): Add libgcc2.h. + * libgcc2.c (__clz_tab[], __popcount_tab[]): Set the fixed + dimension of these arrays. + * libgcc2.h (__clz_tab[], __popcount_tab[]): Add exports of + these arrays. + * longlong.h: Only provide a prototype for the __clz_tab[] array + if this header has not been included from libgcc2.h. + * config/stormy16/stormy16-lib2.c: Include libgcc2.h rather than + defining own types. + Provide prototypes for exported functions. + Use the __clz_tab[] and __popcount_tab[] arrays provided by + libgcc2.c. + +2005-09-08 Josh Conner + + PR c++/21135 + PR c++/23180 + * expr.c (expand_expr_addr_expr_1): Don't invoke + expand_simple_binop for EXPAND_INITIALIZER. + +2005-09-08 Richard Henderson + + PR debug/23190 + * toplev.c (wrapup_global_declaration_1): Split out ... + (wrapup_global_declaration_2): ... from ... + (wrapup_global_declarations): ... here. Return bool. + (check_global_declaration_1): Split out ... + (check_global_declarations): from here. + (emit_debug_global_declarations): New. + * toplev.h (wrapup_global_declaration_1, wrapup_global_declaration_2, + check_global_declaration_1, emit_debug_global_declarations): Declare. + * c-decl.c (c_write_global_declarations_1): Don't create a vector + of decls. Call wrapup_global_declaration_1, + wrapup_global_declaration_2, check_global_declaration_1 directly. + (c_write_global_declarations_2): New. + (ext_block): New. + (c_write_global_declarations): Call c_write_global_declarations_2. + * langhooks.c (write_global_declarations): Call + emit_debug_global_declarations. + + * cgraphunit.c (cgraph_varpool_remove_unreferenced_decls): Don't + remove decls that have DECL_RTL_SET_P. + * passes.c (rest_of_decl_compilation): Invoke + cgraph_varpool_finalize_decl for all but functions. + +2005-09-08 Eric Botcazou + + * tree-vrp.c (extract_range_from_unary_expr): Do not set the range for + the result of a conversion if the new min and max cannot be compared. + +2005-09-08 Andreas Krebbel + + * config/s390/s390.c (s390_sr_alias_set): Variable removed. + (override_options): Setting s390_sr_alias_set removed. + (save_fpr, save_gprs): Set alias set to vararg or frame. + (restore_fpr, restore_gprs, s390_emit_prologue): Replace + s390_sr_alias_set with get_frame_alias_set (). + (s390_gimplify_va_arg): Replace s390_sr_alias_set with + get_varargs_alias_set (). + +2005-09-08 Andrew Pinski + + PR objc/20574 + PR objc/19324 + * c-parser.c (c_parser_objc_method_definition): If the next + token is not "{", error out and don't start the function. + +2005-09-08 Andrew Pinski + + * tree-vrp.c (extract_range_from_expr): Move the check for non + nullness after the check for gimple invariant. + +2005-09-08 Richard Kenner + + * tree.c (host_integerp, tree_low_cst): Correct function comment. + +2005-09-08 Kazuhiro Inaoka + + PR target/23747 + * config/m32r.md (movmemsi_internal): Canonicalize order of + operands in PLUS component of template. + +2005-09-07 Andreas Krebbel + + * reload1.c (fixup_eh_region_note): Remove assertion. + (fixup_abnormal_edges): Reverted removal of call to + find_many_sub_basic_blocks made on 2005-08-31. + +2005-09-07 Richard Henderson + + * function.c (ARG_POINTER_CFA_OFFSET): Move ... + * defaults.h (ARG_POINTER_CFA_OFFSET): ... here. + (INCOMING_FRAME_SP_OFFSET): Move from dwarf2out.c. + * dwarf2out.c (struct cfa_loc): Change reg to unsigned int, + rearrange for better packing. + (INCOMING_FRAME_SP_OFFSET): Move to defaults.h. + (lookup_cfa_1): Remove inline marker. + (cfa_equal_p): Split out of ... + (def_cfa_1): ... here. Use INVALID_REGNUM. + (build_cfa_loc): Handle !cfa->indirect. + (frame_pointer_cfa_offset): New. + (dbx_reg_number): Assert register elimination performed; do + leaf register remapping. + (reg_loc_descriptor): Avoid calling dbx_reg_number when unused. + (eliminate_reg_to_offset): New. + (based_loc_descr): Remove can_use_fbreg argument. Use fbreg only + for verifiably local stack frame addresses; re-base to CFA. + (mem_loc_descriptor): Remove can_use_fbreg argument. + (concat_loc_descriptor, loc_descriptor): Likewise. + (containing_function_has_frame_base): Remove. + (rtl_for_decl_location): Don't do register elimination or + leaf register remapping here. + (secname_for_decl): Split out from .. + (add_location_or_const_value_attribute): ... here. + (convert_cfa_to_loc_list): New. + (compute_frame_pointer_to_cfa_displacement): New. + (gen_subprogram_die): Use them. + * tree.h (frame_base_decl): Remove. + * var-tracking.c (frame_base_decl, frame_stack_adjust): Remove. + (prologue_stack_adjust): Remove. + (vt_stack_adjustments): Use INCOMING_FRAME_SP_OFFSET. + (adjust_stack_reference): Re-base memories to arg_pointer_rtx. + (set_frame_base_location): Remove. + (compute_bb_dataflow, emit_notes_in_bb): Don't call it. + (dump_attrs_list, dump_dataflow_set): Use string concatenation. + (vt_add_function_parameters): Don't eliminate_regs. + (vt_initialize): Don't create frame_base_decl. + +2005-09-07 Eric Botcazou + + * doc/install.texi (*-*-solaris2*): Clarify wording on the recommended + version of GNU binutils for 4.x and later. + +2005-09-06 Mark Mitchell + + * ggc-page.c (ggc_push_context): Remove. + (ggc_pop_context): Likewise. + * ggc.h (ggc_push_context): Remove. + (ggc_pop_context): Likewise. + +2005-09-06 Saurabh Verma + + PR target/8973 + * config/arc/arc.c (arc_output_function_epilogue): Update flags while + returning from an interrupt handler. + +2005-09-06 Saurabh Verma + + PR target/8972 + * config/arc/arc.c (output_shift): Add check for loop count when + optimizing. + +2005-09-06 Steven Bosscher + + * tree-ssa-phiopt.c (conditional_replacement): Construct proper SSA + form manually. + (abs_replacement): Likewise. + (pass_phiopt): Remove TODO_update_ssa. + +2005-09-06 Jakub Jelinek + + PR c/23075 + * c-typeck.c (c_finish_return): Set TREE_NO_WARNING on RETURN_EXPR + if "return with no value, in function returning non-void" warning + has been issued. + * tree-cfg.c (execute_warn_function_return): Don't look at + RETURN_EXPRs with TREE_NO_WARNING set. + + PR target/22362 + * config/i386/i386.c (ix86_function_regparm): Make sure automatic regparm + for internal functions doesn't use registers used by global registers + variables. Use fewer register parameters if there are global register + variables. + +2005-09-06 Olivier Hainque + Eric Botcazou + + PR middle-end/14997 + * expr.c (expand_expr_real) : Force op0 to mem + when we would be extracting outside its bit span (bitpos+bitsize + larger than its mode), possible with some VIEW_CONVERT_EXPRs from + Ada unchecked conversions. + +2005-09-06 Steven Bosscher + + * tree-ssa-pre.c (try_look_through_load): New function. + (compute_avail): Use it to try to look through loads for some + more useful expressions. + +2005-09-06 Saurabh Verma + + * simplify-rtx.c (simplify_binary_operation_1): Correct the + condition for detecting cases like (a&a) and (a^a). + +2005-09-06 Keith Besaw + + * common.opt: Add option ftree-vect-loop-version. + * params.def: Add --param vect-max-version-checks. + * doc/invoke.texi: Document ftree-vect-loop-version and + --param vect-max-version-checks. + * tree-vectorizer.h (_loop_vec_info): Add ptr_mask and + may_misalign_stmts and defines for accessors. + * tree-vectorizer.c : (new_loop_vec_info): VEC_alloc for + LOOP_VINFO_MAY_MISALIGN_STMTS. + (destroy_loop_vec_info): VEC_free for + LOOP_VINFO_MAY_MISALIGN_STMTS. + * tree-vect-analyze.c (vect_compute_data_ref_alignment): + Update documentation. + (vect_update_misalignment_for_peel): New. + (vect_enhance_data_refs_alignment): Update to choose loop + peeling or loop versioning if appropriate for the (potentially) + unaligned data references in the loop. + (vect_analyze_data_refs_alignment): Remove call to + vect_enhance_data_refs_alignment so the checks can be done + earlier. + (vect_analyze_loop): Add call to vect_enhance_data_refs_alignment + and move up call to vect_analyze_data_refs_alignment. + * tree-vect-transform.c (vect_create_cond_for_align_checks): New. + (vect_transform_loop): Add call to loop_version. + +2005-09-06 Jakub Jelinek + + PR rtl-optimization/23098 + * cse.c (fold_rtx_mem): Call delegitimize_address target hook. + * simplify-rtx.c (constant_pool_reference_p): New function. + * rtl.h (constant_pool_reference_p): New prototype. + * config/i386/i386.md (pushf split, mov[sdx]f split): Use + constant_pool_reference_p in condition and + avoid_constant_pool_reference in preparation statements. + +2005-09-06 Andreas Krebbel + + * gcse.c (try_replace_reg): Disallow REG_EQUAL notes for + STRICT_LOW_PART SETs. + +2005-09-06 Alan Modra + + PR middle-end/21460 + * except.c (sjlj_emit_function_enter): Find the function begin + note even when it's not in first basic block. + +2005-09-06 Kelley Cook + + * acinclude.m4: Renamed from aclocal.m4. Delete AM_LANGINFO_CODESET, + AM_PROG_CC_C_O, and AM_AUX_DIR_EXPAND. + * aclocal.m4: Regenerate. + +2005-09-05 DJ Delorie + + * config/m32c/m32c.h (TRAMPOLINE_ALIGNMENT): Correct misspelling + of macro. + +2005-09-06 Kazu Hirata + + * gimplify.c, ipa-prop.h, varasm.c, config/vxlib.c, + config/vxworks.h, config/crx/crx.c, config/ms1/ms1.c, + config/ms1/ms1.md, config/rs6000/rs6000.c: Fix comment typos. + Follow spelling conventions. + * doc/invoke.texi: Follow spelling conventions. + +2005-09-05 J"orn Rennecke + + * 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 + + 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 + + PR target/23721 + * pa.c (emit_move_sequence): Fix typo in last change. + +2005-09-03 Jakub Jelinek + + PR rtl-optimization/23454 + * reorg.c (relax_delay_slots): Only call invert_jump if any_condjump_p + is true. + +2005-09-03 Richard Henderson + John David Anglin + + PR middle-end/23671 + * pa.c (emit_move_sequence): Use replace_equiv_address instead of + gen_rtx_MEM. + +2005-09-02 Nicolas Pitre + + * config/arm/arm.c (arm_legitimize_address): Limit the value passed + to bit_count to 32 bits. + +2005-08-31 Mark Mitchell + + PR c++/23167 + * gimplify.c (gimplify_expr): Handle TREE_ADDRESSABLE types when + generating synthetic loads from volatile lvalues. + +005-09-02 Nick Clifton + + * config/stormy16/stormy16-lib2.c (__popcounthi2, __parityhi2, + __ctzhi2, __clzhi2): New functions. + +2005-09-02 Andrew Pinski + + 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 + + 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 + + PR tree-optimization/23626 + * tree-cfg.c (replace_uses_by): Clean up eh info. + +2005-09-01 DJ Delorie + + * config/m32c/m32c.c (m32c_valid_pointer_mode): Remove stray debug + fprintf. + +2005-09-01 David Edelsohn + + * 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 + + * 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 + + PR 23668 + * config/i386/i386.c (ix86_expand_vector_init_one_var): Restore + conversion to CONST_VECTOR. + +2005-09-01 Richard Henderson + + 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 + + * varasm.c (output_constant): Let the target resolve + conversions of addresses to non-default pointer sizes. + +2005-09-01 Nicolas Pitre + + * 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 + + * 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 + + 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 + + PR debug/7241 + * dwarf2out.c (base_type_die): Compare char_type_node with + TYPE_MAIN_VARIANT (type), not type. + +2005-09-01 Richard Guenther + + 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 + + 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 PR target/23649 @@ -3626,7 +4127,7 @@ * tree-ssa-structalias.c (need_to_solve): Need to check for preds, too. -2005-07-16 Eric Botcazou +2005-07-16 Eric Botcazou * doc/install.texi (*-*-solaris2*): Document recommended version of GNU binutils and mention GNU linker problem on Solaris 10.