X-Git-Url: http://git.sourceforge.jp/view?a=blobdiff_plain;f=gcc%2FChangeLog;h=524ee83e947100b256588a293cb8642c8b08121d;hb=c7a0ad068dc6133a8905dc64807d6dc29982db6b;hp=44275901e0a4624b1e067e3e3643acd1f12dd9c8;hpb=bc3f8b09163605dbd2bda7301461a00c976e8005;p=pf3gnuchains%2Fgcc-fork.git diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 44275901e0a..524ee83e947 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,5 +1,452 @@ +2000-08-13 Ralf Gütlein + + * h8300.md: Remove obsolete peepholes. + +2000-08-13 Kazu Hirata + + * invoke.texi (H8/300 Options): Fix typos. + * config/h8300.c: Fix formatting. + * config/h8300.h: Fix comment typos. + (OVERRIDE_OPTIONS): Fix formatting. + + * function.c: Fix formatting. + + * cse.c: Fix formatting. + +2000-08-13 Geoff Keating + + * flow.c (attempt_auto_inc): Remove unused variable `bb'. + (attempt_auto_inc): Suppress parentheses warning. + * function.c (put_reg_into_stack): Remove unused variable `unsigned_p'. + * loop.c (load_mems): Remove `u' suffix in two places. + * config/rs6000/rs6000.c: Remove unnecessary `u' suffixes from + hex constants. + * config/rs6000/rs6000.h: Likewise. + * config/rs6000/sol-c0.c: Prototype some functions. Remove the + __eabi dummy routine. + * config/rs6000/sysv4.h (ASM_DECLARE_FUNCTION_NAME): Remove unused + variable `buf_ptr'. + + * config/rs6000/rs6000.c (rs6000_select_section): Rewrite to + not put stuff in .sdata unnecessarily. + (rs6000_unique_section): New function. + * config/rs6000/rs6000-protos.h: Add rs6000_unique_section. + * config/rs6000/sysv4.h (UNIQUE_SECTION): Define. + + * c-typeck.c (build_array_ref): Don't complain about non-lvalue + arrays in C99. Don't try to look at DECL_REGISTER of a + COMPONENT_REF. Don't complain twice about the same error. + + * fixinc/inclhack.def (aix_pthread): New fix. + (aix_sysmachine): New fix. + * fixinc/fixincl.x: Regenerate. + + * expr.c (expand_expr): Call convert_modes when turning a large + multiply into a small one. + +2000-08-12 Geoff Keating + + * tree.h (DECL_OFFSET_ALIGN): Make the off_align field of + the tree structure an exponent rather than an explicit alignment + so it doesn't overflow. + (SET_DECL_OFFSET_ALIGN): New macro. + * stor-layout.c (place_union_field): Use SET_DECL_OFFSET_ALIGN + rather than DECL_OFFSET_ALIGN. + (place_field): Likewise. + * expmed.c (store_bit_field): Abort on align==0 to avoid + antisocial machine behaviour. + +2000-08-12 Richard Henderson + + * sibcall.c (uses_addressof): Accept both addressof and + current_function_internal_arg_pointer inside a mem. + (optimize_sibling_and_tail_recursive_call): Fail tail recursion + if current_function_uses_addressof. + * stmt.c (expand_return): Kill tail recursion and HAVE_return + optimizations. + +2000-08-11 Richard Henderson + + * config/ia64/ia64.md (addsi3): Remove expander. + (subsi3, mulsi3, negsi2, one_cmplsi2): Likewise. + (*addsi3_shladd): New. + +2000-08-11 Richard Henderson + + * config/ia64/ia64.c (do_spill): Pass cfa offset to move expander. + (do_restore): Likewise. + (gen_movdi_x, gen_fr_spill_x, gen_fr_restore_x): New. + (ia64_expand_prologue, ia64_expand_epilogue): Use them. + (rtx_needs_barrier): Track actual bit manipulation for + ar.unat moves, gr_spill, and gr_restore. + (emit_insn_group_barriers): Special case gr_spill/gr_restore. + (process_set): Don't handle varargs spills. + * config/ia64/ia64.md (gr_spill): Accept cfa offset. Emit + .mem.offset here instead of in process_set. + (gr_restore): Likewise. + +2000-08-11 Richard Henderson + + * config/ia64/ia64.h (PROMOTE_MODE): Only extend to SImode. + +2000-08-11 Mark Elbrecht + + * gcc.texi (The Configuration File): Document + COLLECT2_HOST_INITIALIZATION, GCC_DRIVER_HOST_INITIALIZATION, and + UPDATE_PATH_HOST_CANONICALIZATION. + +2000-08-11 Kaveh R. Ghazi + + * c-parse.in (cast_expr): Avoid -Wstrict-prototype warnings for + unprototyped function pointer casts on integer constants. + +2000-08-11 Laurynas Biveinis + + * fixproto: Recognize DOS paths with drive letters as absolute paths. + +2000-08-11 Nathan Sidwell + + * extend.texi (Volatiles): Fix typos. + +2000-08-11 Kazu Hirata + + * flow.c: Fix formatting. + +2000-08-11 Richard Henderson + + * reload.c (push_secondary_reload): When invoking a reload_{in,out} + pattern, always allocate a tertiary scratch register. + + * config/alpha/alpha.md (reload_inqi): Use a DImode scratch. + (reload_inhi): Likewise. + +2000-08-11 Richard Henderson + + * function.c (put_reg_into_stack): Allow type to be NULL. + (schedule_fixup_var_refs): Likewise. + (gen_mem_addressof): Allow decl to be NULL. + (put_addressof_into_stack): Likewise. + + * flow.c (merge_blocks_nomove): Be more careful about + locating the beginning of block A. + + * combine.c (simplify_shift_const): Obey SHIFT_COUNT_TRUNCATED. + +Thu Aug 10 22:47:09 2000 Ovidiu Predescu + + * configure.in: + * configure: + * gthr-posix.h: + * config.in: Reverted the check for . + +2000-08-10 Chris Demetriou + + * mips/elf.h (CTOR_SECTION_NAME, DTOR_SECTION_NAME): New + macros define the name of CTOR and DTOR sections. + (CTOR_LIST_BEGIN, CTOR_LIST_END, DTOR_LIST_BEGIN, + DTOR_LIST_END): Change to use attributes to specify + sections. + * mips/elf64.h (CTOR_SECTION_NAME, DTOR_SECTION_NAME, + (CTOR_LIST_BEGIN, CTOR_LIST_END, DTOR_LIST_BEGIN, + DTOR_LIST_END): Same as in mips/elf.h. + +2000-08-10 Drew Moseley + + * config/mn10300/mn10300.h: Added no-crt0 option for explicitly + disabling just crt0.o. + +2000-08-10 Richard Earnshaw & Nick Clifton + + * arm.h (CPP_SPEC): Use sub-spec cpp_interwork. + (CPP_INTERWORK_SPEC, CPP_INTERWORK_DEFAULT_SPEC): New sub-specs. + (EXTRA_SPECS): Add them. + * arm/lib1funcs.asm: Support builds for interworking. + Use macros to eliminate duplicated pieces of code. + +2000-08-10 Kazu Hirata + + * h8300.c (expand_a_rotate): New. + (emit_a_rotate): Likewise. + (h8300_adjust_insn_length): Add support for the rotate insns. + * h8300.md (rotlqi3): New. + (*rotlqi3_1): Likewise. + (rotlhi3): Likewise. + (*rotlhi3_1): Likewise. + (rotlhi3): Likewise. + (*rotlhi3_1): Likewise. + * h8300-proto.h: Add prototypes for expand_a_rotate and + emit_a_rotate. + + * h8300.c: Fix comment typos. + (dosize): Declare the variable amount as unsigned. + (get_shift_alg): Fix a comparison between signed and unsigned. + (emit_a_shift): Likewise. + (h8300_adjust_insn_length): Simplify the code. + + * c-decl.c: Fix formatting. + +2000-08-10 Kaveh R. Ghazi + + * c-lex.c (parse_float, yylex): For -Wtraditional, issue a + warning about non-traditional numeric constant suffixes. + + * cppexp.c (parse_number): Likewise. + + * invoke.texi: (-Wtraditional): Document new behavior. + +Thu Aug 10 00:11:04 2000 Ovidiu Predescu + + * gthr-posix.h: Include auto-host.h. Conditionally include + . + * configure.in: Check for the header file. + * config.in: Added define for HAVE_SCHED_H. + +2000-08-09 Kaveh R. Ghazi + + * c-typeck.c (process_init_element): For -Wtraditional, warn about + initialization of unions. + + * invoke.texi (-Wtraditional): Document new behavior. + +2000-08-09 Zack Weinberg + + * configure.in (--enable-c-cpplib): Uncomment. Use AC_DEFINE + instead of extra_c_flags. + (--enable-c-mbchar): Use AC_DEFINE instead of extra_c_flags. + * configure: Regenerate. + * config.in: Regenerate. + + * cpperror.c (cpp_type2name): New function. + * cpplex.c (lex_line): If we issued an error for an invalid + preprocessing directive, discard that logical line. + * cpplib.c (do_line): Call a hook function if the current file + is renamed by #line. + (do_ident): Pass the contents of the string, not the entire + token, to the callback function. + * cpplib.h (CPP_LAST_PUNCTUATOR): New #define. + (cb.rename_file): New hook function. + (cb.ident): Adjust prototype. + (cpp_type2name): Prototype. + * cppmacro.c (dump_macro_args): Correct precedence lossage. + + * cppmain.c (cb_ident): Update for changed interface. + (cb_rename_file): New function. + (main): Set rename callback. + +2000-08-09 Alexandre Oliva + + * caller-save.c (mark_referenced_regs): Mark partially-overwritten + multi-word registers. + +2000-08-08 Joseph S. Myers + + * c-common.c (combine_strings, check_format_info): Refer to ISO C + or ISO C89 instead of ANSI C. + * c-decl.c (grokdeclarator, xref_tag, finish_struct, + build_enumerator, do_case): Likewise. + * c-lex.c (parse_float, yylex): Likewise. + * c-parse.in: Likewise. + * c-typeck.c (common_type, build_array_ref, build_binary_op, + build_unary_op, pedantic_lvalue_warning, build_conditional_expr, + build_c_cast, convert_for_assignment, set_init_index, + set_init_label, c_expand_start_case): Likewise. + * toplev.c (documented_lang_options, display_help): Likewise. + +2000-08-08 Kazu Hirata + + * h8300.c: Fix formatting. + * h8300.h: Likewise. + * h8300.md: Likewise. + (movsi_h8300hs): Fix formatting of the resulting assembly code. + + * reload1.c: Fix formatting. + +2000-08-08 Rodney Brown + + * alpha/alpha.c (alpha_emit_xfloating_libcall): + Use GEN_CALL_VALUE define. + * alpha/alpha.md (untyped_call): Use GEN_CALL define. + * clipper/clipper.md (untyped_call): Likewise. + * dsp16xx/dsp16xx.md (untyped_call): Likewise. + * fx80/fx80.md (untyped_call): Likewise. + * mips/mips.md (untyped_call): Likewise. + * ns32k/ns32k.md (untyped_call): Likewise. + * pa/pa.md (untyped_call): Likewise. + * romp/romp.md (untyped_call): Likewise. + * sparc/sparc.md (untyped_call): Likewise. + +2000-08-08 Jason Eckhardt + + * config/i860/i860.c (singlemove_string): Do not generate assembler + pseudo instructions that must be expanded (that is, with signed + constants larger than 16 bits). + +2000-08-08 Richard Henderson + + * flow.c (life_analysis): Only turn off PROP_LOG_LINKS and + PROP_AUTOINC at -O0. Don't collect alias info at -O0. + (init_propagate_block_info): Don't kill memory stores at -O0. + (mark_set_1, mark_used_regs): Likewise. + +2000-08-08 David Edelsohn + + * rs6000.c (optimization_options): Decorate 'level' as + ATTRIBUTE_UNUSED. + (mask64_operand): Remove sign-extend thinko. + (rldic_operand): New function. + (load_multiple_operation): regno's are unsigned ints. + (store_multiple_operation): Likewise. + (lmw_operation): Likewise. + (stmw_operation): Likewise. + (includes_lshift_p): shift_mask is unsigned int. + (includes_lshift64_p): New function. + (addrs_ok_for_quad_peep): unsigned int reg1. + (print_operand): Consistently add "else" after + output_operand_lossage(). + (print_operand, case 'b'): Fold in case 'W'. + (print_operand, case 'W'): Print rldic MB value. + (output_epilogue): Update Objective-C language string. + (output_toc): unsigned HOST_WIDE_INT low, compare unsigned. + * rs6000.h (PREDICATE_CODES): Add rldic_operand. + * rs6000.md (ashldi3): Add rldic instruction. + (iordi3, xordi3): Remove redundant "else if CONST_DOUBLE". + (cmpsi_internal2, cmpdi_interal2): Use 'b' output template + modifier. + +2000-08-08 Richard Henderson + + * config/ia64/ia64-protos.h: Remove duplicates. Update + for massive code rearrangements. + * config/ia64/ia64.c (ia64_arpfs_regno): Remove. + (ia64_rp_regno, ia64_fp_regno, ia64_input_regs): Remove. + (ia64_local_regs, ia64_need_regstk): Remove. + (ar_ccv_reg_operand): New. + (ia64_gp_save_reg): New. + (struct ia64_frame_info): Combine most of the size elements; + add new gr save elements. + (find_gr_spill): New. + (next_scratch_gr_reg): New. + (mark_reg_gr_used_mask): New. + (ia64_compute_frame_size): Rewrite. Allocate special AR regs + to GR backing store regs when possible. + (ia64_initial_elimination_offset): New. + (ia64_rap_fp_offset): Remove. + (save_restore_insns): Remove. + (setup_spill_pointers): New. + (finish_spill_pointers): New. + (spill_restore_mem): New. + (do_spill, do_restore): New. + (ia64_expand_prologue): Rewrite to use them. + (ia64_expand_epilogue): Likewise. + (ia64_direct_return): Update for current_frame_info changes. + (ia64_function_prologue): Simplify .prologue emission. Emit + .spill when needed. + (ia64_setup_incoming_varargs): Don't ever emit rtl. + (ia64_dbx_register_number): New. + (ia64_initialize_trampoline): New. + (ia64_secondary_reload_class): Request GR_REGS for integer + arithmetic destined for FR_REGS. + (ia64_init_machine_status): Don't reset return_address_pointer_rtx. + (ia64_mark_machine_status): Mark ia64_gp_save. + (rws_access_regno): Rename from rws_access_reg; don't treat + predicates specially. + (rws_access_reg): New. Update all callers. + (rtx_needs_barrier): Remove dead unspecs. + (ia64_epilogue_uses): Mark ar.pfs and ar.unat live on exit. + (ia64_encode_section_info): Silence signed/unsigned warnings. + (spill_offset, sp_offset, spill_offset_emitted): Remove. + (tmp_reg, tmp_saved): Remove. + (process_set): Rewrite to expect complicated bits via + REG_FRAME_RELATED_EXPR. + (ia64_expand_fetch_and_op): Use emit_move_insn; be explicit + in the use of ar.ccv; never set RTX_UNCHANGING_P. + (ia64_expand_op_and_fetch): Likewise. + (ia64_expand_compare_and_swap): Likewise. + (ia64_expand_builtin): Likewise. + * config/ia64/ia64.h (AR_UNAT_REGNUM): New. + (FIRST_PSEUDO_REGISTER): Update. + (AR_M_REGNO_P): Update. + (FIXED_REGS): Don't mark three local registers as used. + (EXTRA_CC_MODES): New. + (SELECT_CC_MODE): New. + (HARD_REGNO_NREGS): Allow DImode in p0; handle CCImode. + (HARD_REGNO_MODE_OK): Disallow CCImode from non-predicates. + (FRAME_GROWS_DOWNWARD): Unset. + (STARTING_FRAME_OFFSET): Zero. + (ELIMINABLE_REGS): Eliminate from the soft to hard frame pointer. + (INITIAL_ELIMINATION_OFFSET): Defer to out of line function. + (HARD_FRAME_POINTER_REGNUM): New. + (CAN_DEBUG_WITHOUT_FP): Define. + (TRAMPOLINE_TEMPLATE): Remove. + (TRAMPOLINE_SIZE): Lower to 32. + (TRAMPOLINE_ALIGNMENT): Lower to 64. + (INITIALIZE_TRAMPOLINE): Defer to out of line function. + (PREDICATE_CODES): Update. + (struct machine_function): Add ia64_gp_save. + * config/ia64/ia64.md: Purge unused unspecs. + (movsi patterns): Allow moves to/from AR_M_REGS. + (movdi patterns): Allow moves to/from p0. + (call patterns): Move most setjmp hackery to ia64_gp_save_reg. + (gr_spill, gr_restore): Indicate ar.unat read/written. + (nonlocal_goto): Don't pass old frame_pointer. + (nonlocal_goto_receiver): Remove. + (exception_receiver): New. + (builtin_setjmp_setup): New. + (builtin_setjmp_receiver): New. + * config/ia64/lib1funcs.asm (__ia64_save_stack_nonlocal): Bundle. + (__ia64_nonlocal_goto): Bundle. Don't kill r7. + (__ia64_restore_stack_nonlocal): Likewise. + (__ia64_trampoline): New. + * config/ia64/sysv4.h (DBX_REGISTER_NUMBER): Defer to out of line + function. + * config/ia64/t-ia64 (LIB1ASMFUNCS): Add __trampoline. + +2000-08-08 Richard Henderson + + * frame.h (ia64_frame_state): Add my_psp. + * libgcc2.c (ia64_throw_helper): Add throw_sp argument. + (__throw): Pass it in. Don't clobber r7. + * config/ia64/frame-ia64.c (init_ia64_reg_loc): Mark inline. + (execute_one_ia64_descriptor) [mem_stack_v]: Sets psp.when + and nothing to do with sp. + (normalize_reg_loc): Use frame->my_psp. + (frame_translate): Handle frame-pointer-less functions. Set + spill_base correctly, in absence of being told. + (__build_ia64_frame_state): New sp argument. Fill in frame->my_sp. + (__ia64_backtrace_helper): New sp argument. Use + builtin_return_address instead of label addresses. + (print_record) [mem_stack_v]: No size member. + +2000-08-08 Richard Henderson + + * regclass.c (choose_hard_reg_mode): Iterate over all CC modes. + +2000-08-08 Richard Henderson + + * tm.texi (LOCAL_REGNO): Document. + * flow.c (LOCAL_REGNO, EPILOGUE_USES): Provide default. + (mark_regs_live_at_end): Don't mark LOCAL_REGNO registers. + * reload1.c (reload): Likewise when considering nonlocal labels. + + * config/ia64/ia64.h (LOCAL_REGNO): New. + * config/sparc/sparc.h (LOCAL_REGNO): New. + +2000-08-08 Joseph S. Myers + + * c-lex.c (yylex): Don't allow integer suffixes 'LUL', 'Ll', 'lL'. + +2000-08-07 Nick Clifton + + * config/mips/mips.c: Fix compile time warning messages. + * config/mips/mips-protos.h: Add prototype for equality_op. + + * mn10300.h (TARGET_SWITCHES): Document `-mam33'. + 2000-08-07 Graham Stott + * mn10300.md: Use nonimmediate_operand instead of general_operand + on output operands. + * mn10300.h (PREFERRED_RELOAD_CLASS): Limit memory reloads. 2000-08-07 Alexandre Oliva @@ -695,7 +1142,7 @@ Wed Aug 2 15:59:34 MET DST 2000 Jan Hubicka (f_options): Added dce entry. * invoke.texi: Document -fdce. Emphasize experimental status of -fssa. - * dce: New file. + * dce.c: New file. 2000-08-01 Zack Weinberg