X-Git-Url: http://git.sourceforge.jp/view?a=blobdiff_plain;f=gcc%2FChangeLog;h=3b02732bb0f786deda8cc5d328fa9b678eda24a6;hb=1bd93e5319ec6d44f1ea285c2690750beebbb54a;hp=869a1751dddd184edfc54c542295557b965e296e;hpb=2eac54b2f675276d123ef40b4467d78ec9fb063e;p=pf3gnuchains%2Fgcc-fork.git diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 869a1751ddd..3b02732bb0f 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,4 +1,623 @@ -2003-04-21 Matt Kraii +2003-04-29 J"orn Rennecke + + * varasm.c (default_assemble_visibility): Use assemble_name. + +2003-04-29 David O'Brien + + * config/i386/freebsd64.h (LINK_SPEC): Mirror FreeBSD linker. + * config/rs6000/freebsd.h (LINK_SHLIB_SPEC): New macro. + (SIZE_TYPE): New macro. + * config/i386/freebsd-aout.h (NO_PROFILE_COUNTERS): New macro. + (SET_ASM_OP): New macro. + (HANDLE_SYSV_PRAGMA): New macro. + (ASM_WEAKEN_LABEL): New macro. + +2003-04-28 Mark Mitchell + + PR c++/10180 + * tree-inline.c (expand_call_inline): Call push_srcloc when + encountering EXPR_WITH_FILE_LOCATION. Honor warn_inline. + +2003-04-28 Mike Stump + + * gdbinit.in: Update to reflect new identifier structure. + +2003-04-28 Zack Weinberg + + * tree.h (TREE_CST_RTL, CST_OR_CONSTRUCTOR_CHECK): Delete. + (struct tree_int_cst, struct tree_real_cst, struct tree_string, + struct tree_complex, struct tree_vector): Remove RTL field. + (CONSTRUCTOR_ELTS): Use elt 0. + * tree.def (CONSTRUCTOR): Delete first of its two operands. + * varasm.c (output_constant_def): Remove early exit if + TREE_CST_RTL is set. Don't set TREE_CST_RTL. + (decode_addr_const): Don't mention TREE_CST_RTL in comment. + * target.h (select_section): Don't mention TREE_CST_RTL in comment. + * doc/tm.texi (encode_section_info): Don't talk about TREE_CST_RTL. + +2003-04-28 Jakub Jelinek + + * c-decl.c (finish_decl): When prototype with asmspec is found + for built-in, adjust built_in_decls as well as expr.c decls. + * expr.c (init_block_move_fn, init_block_clear_fn): New functions. + (emit_block_move_libcall_fn, clear_storage_libcall_fn): Use it. + * expr.c (init_block_move_fn, init_block_clear_fn): New prototypes. + +2003-04-28 Richard Henderson + + * config/sparc/sparc.c (print_operand): Add 's' to sign-extend. + * config/sparc/sparc.md (const_mulsidi3_v8plus): Fix mode of + integral constant mult operand. + (const_mulsidi3_sp32, const_mulsidi3_sp64): Likewise. + (const_smulsi3_highpart_v8plus): Likewise. + (const_smulsi3_highpart): Likewise. + (const_umulsidi3_sp32): Likewise; sign-extend it in the output. + (const_umulsidi3_sp64, const_umulsidi3_v8plus): Likewise. + (const_umulsi3_highpart_v8plus): Likewise. + (const_umulsi3_highpart): Likewise. + +2003-04-28 David O'Brien + + * config/i386/x86-64.h (NO_PROFILE_COUNTERS, HAVE_AS_DWARF2_DEBUG_LINE): + Define as 1. + +2003-04-28 David O'Brien + + * config/i386/i386.h (builtin_define): Add __amd64 and __amd64__. + +2003-04-28 Jakub Jelinek + + * builtins.def (BUILT_IN_BCOPY, BUILT_IN_MEMMOVE): New. + * builtin-types.def (BT_FN_VOID_CONST_PTR_PTR_SIZE): New. + * builtins.c (expand_builtin_memmove, expand_builtin_bcopy): New + functions. + (expand_builtin): Handle BUILT_IN_BCOPY and BUILT_IN_MEMMOVE. + +2003-04-28 Nick Clifton + + * config/arm/elf.h (ASM_OUTPUT_ALIGNED_COMMON): Remove definition. + +2003-04-27 Zack Weinberg + + * expr.c (expand_expr ): Always call + output_constant_def, use its result instead of TREE_CST_RTL (exp). + Can assume it has the form (mem (symbol_ref ".LCxxx")). + (expand_expr ): Can always just extract the + relevant field of a CONSTRUCTOR. + (expand_expr ): Make control flow explicit. + * varasm.c (output_constant_def): Can look at TREE_CST_RTL of + an INTEGER_CST. + +2003-04-27 Kazu Hirata + + * reload1.c (reg_set_luid): Fix a comment typo. + +2003-04-27 Zack Weinberg + + * varasm.c (const_str_htab_hash, const_str_htab_eq, STRHASH, + struct deferred_string, const_str_htab): Kill. + (n_deferred_strings): New static variable. + (build_constant_desc): Set SYMBOL_REF_DECL of the new + symbol_ref to point to the constant. + (output_constant_def): When a deferred string is forced out, + just clear STRING_POOL_ADDRESS_P and decrement n_deferred_strings. + (mark_constant): Likewise. + (maybe_output_constant_def_contents): When deferring a string + constant, just set STRING_POOL_ADDRESS_P and increment + n_deferred_strings. + (mark_constant_pool): Check n_deferred_strings, not the size + of const_str_htab. + (init_varasm_once): No need to create const_str_htab. + + * rtl.def, rtl.h, doc/rtl.texi: Document possibility that + SYMBOL_REF_DECL points to a constant. + +2003-04-26 Zack Weinberg + + * varasm.c (output_constant_def): Split out two new static + functions, build_constant_desc and maybe_output_constant_def_contents. + Restructure for comprehensibility. Don't call + output_addressed_constants. Treat defstr being non-NULL for + STRING_POOL_ADDRESS_P constants as an invariant. + (struct deferred_string): Remove labelno field. + (output_constant_def_contents): Kill labelno argument. Call + output_addressed_constants here. Use ASM_OUTPUT_LABEL, not + asm_out.internal_label. + (mark_constant): Update call to output_constant_def_contents. + Treat defstr being non-NULL for STRING_POOL_ADDRESS_P + constants as an invariant. + +2003-04-26 Richard Henderson + + * config/i386/i386.c (output_pic_addr_const): Use SYMBOL_REF_LOCAL_P. + (ix86_expand_call, ix86_rtx_consts): Likewise. + +2003-04-26 Kaveh R. Ghazi + + * doc/md.texi (cmpstr): Document additional restrictions. + +2003-04-26 Neil Booth + + * flags.h (time_report): Remove. + * timevar.c (timevar_enable): New. + (TIMEVAR_ENABLE): Remove, use timevar_enable. + (timevar_init): Rename from init_timevar. + * timevar.h (timevar_init): Rename from init_timevar. + * toplev.c (time_report): Make static. + (do_compile): Conditionally call init_timevar first. + (preprocess_options): Move some code to do_compile. + +2003-04-26 Stephane Carrez + + * doc/install.texi (Binaries): Mention binaries for HC11/HC12. + +2003-04-26 Neil Booth + + * _cpp_lex_direct: Remove pointless code. + +2003-04-26 Stephane Carrez + + * doc/extend.texi (Function Attributes): Document "near" and "far" + for 68HC11 and 68HC12. + +2003-04-25 Richard Kenner + + * expr.c (store_field): When making temporary for store, don't + make it TYPE_QUAL_CONST. + +2003-04-25 Phil Edwards + + * toplev.c (read_integral_parameter): Use "argument" in error + message to distinguish it from actual invalid options. + +2003-04-25 Bob Wilson + + * config/xtensa/linux.h (TARGET_OS_CPP_BUILTINS): Back out previous + addition of __PIC__ and __pic__ macros. + * config/xtensa/xtensa.h: Clean up indentation. + +2003-04-25 Bob Wilson + + * config/xtensa/linux.h (TARGET_OS_CPP_BUILTINS): Remove definition of + _GNU_SOURCE. Add definitions of __PIC__ and __pic__. + (SUBTARGET_CPP_SPEC): Define. + (LIB_SPEC): Delete. + * config/xtensa/xtensa-protos.h (xtensa_declare_object): Delete. + * config/xtensa/xtensa.c (xtensa_declare_object): Delete. + * config/xtensa/xtensa.h (CPP_SPEC, SUBTARGET_CPP_SPEC, EXTRA_SPECS): + Define. + (ASM_OUTPUT_COMMON, ASM_OUTPUT_LOCAL): Delete. + (ASM_OUTPUT_ALIGNED_BSS, BSS_SECTION_ASM_OP): Define. + +2003-04-25 H.J. Lu + + * config/ia64/ia64.c (ia64_expand_compare_and_swap): Add rmode + for return mode. + (ia64_expand_builtin): Set rmode to SImode for + IA64_BUILTIN_BOOL_COMPARE_AND_SWAP_SI, + IA64_BUILTIN_VAL_COMPARE_AND_SWAP_SI and + IA64_BUILTIN_BOOL_COMPARE_AND_SWAP_DI. Set remode to DImode + for IA64_BUILTIN_VAL_COMPARE_AND_SWAP_DI. + +2003-04-25 Phil Edwards + + * configure.in (make_compare_target): Test for GNU cmp and set this + variable appropriately. + * Makefile.in (compare, compare3, compare4, compare-lean, compare3-lean, + compare4-lean): Rename actual targets to slowcompare*. New compare* + targets depend on names based on make_compare_target. + * configure: Regenerated. + +2003-04-25 Richard Henderson + + * config/ia64/ia64.c (ia64_compute_frame_size): Allow inline asm + to clobber ar.pfs and ar.unat. + (ia64_expand_prologue): Force alloc instruction if ar.pfs saved; + fix test for spilling ar.pfs to the stack. + +2003-04-25 Richard Henderson + + PR opt/10315 + * config/rs6000/rs6000.c (rs6000_emit_move): Only elide proper + checks during reload; use validize_mem instead of adjust_address. + +2003-04-26 Ben Elliston + + * config/arm/arm.c (arm_adjust_cost): Correct logic that tests the + return values from recog_memoized(). + +2003-04-24 John David Anglin + + PR opt/8705 + * gcse.c (try_replace_reg): On a successful substitution of a constant + into a single set, try to simplify the source of the set. + * loop.c (scan_loop): Don't try to optimize a MODE_CC set with a + constant source. + +2003-04-24 Neil Booth + + * cpplex.c (cpp_token_len): Tighten up. + (cpp_token_as_text): Need extra byte now. + * cpplib.c (glue_header_name): Need extra 2 bytes. + * cppmacro.c (cpp_macro_definition): Need extra byte. + +2003-04-24 Alexander Kabaev + + * config/sparc/sparc.md (umulsidi3, mulsidi3): Avoid using + const_umulsidi3_sp32 and const_mulsidi3_sp32 on 64bit targets + where they might be not present. Use their _sp64 equivalent + instead. + +Thu Apr 24 20:42:12 CEST 2003 Jan Hubicka + + * i386.md (cvtsi2sdq): Fix typo in previous patch. + +2003-04-24 Krister Walfridsson + + * configure.in: Check whether mbstowcs works. + * configure, config.in: Regenerate. + * intl.c: Use HAVE_WORKING_MBSTOWCS. + +2003-04-24 H.J. Lu + + * config/ia64/ia64.c (ia64_init_builtins): Add si_ftype_pdi_di_di + for __sync_bool_compare_and_swap_di for int return type. + + * config/ia64/ia64intrin.h (__sync_bool_compare_and_swap_di): + Change return type to int. + (__sync_bool_compare_and_swap): Likewise. + +Thu Apr 24 16:55:26 CEST 2003 Jan Hubicka + + * cfgbuild.c (make_edges): Do not use next_nonnote_insn when + looking for fallthru edge. + + * athlon.md (athlon-agu, athlon-store, athlon-fany, athlon-faddmul): + Fix. + (athlon-load2, athlon-store2, athlon-fpsched, athlon-fpload, + athlon-fvector): New. + (athlon_*): Revisit to match new optimization guide. + * i386.c (ix86_adjust_cost): Fix memory operand costs on Athlon/k8 + * i386.md (cvt??2?? patterns): Fix modes. + (fistp patterns): Set modes. + + Accidentaly commited with my earlier reload patch: + PR c/10308 + * reload.c (find_reloads_address_1): Reload plus at the place of + index register. + +2003-04-24 Nathan Sidwell + + New GCOV_TAG_FUNCTION layout + * coverage.c (struct function_list): Replace name with ident. + (struct counts_entry): Likewise. + (fn_ident): New. + (htab_counts_entry_hash, htab_counts_entry_eq, + htab_counts_entry_del): Adjust. + (reads_count_file, get_coverage_counts, + coverage_begin_output, coverage_end_function): Adjust. + (build_fn_info_type, build_fn_info_value): Likewise. + * gcov-dump.c (tag_function): Adjust. + * gcov-io.c (gcov_write_string, gcov_read_string): Not in LIBGCOV. + * gcov-io.h (gcov_write_string, gcov_read_string): Not in LIBGCOV. + * gcov.c (struct function_info): Add ident. + (read_graph_file, read_count_file): Adjust. + * libgcov.c (gcov_exit): Adjust. + +2003-04-23 Richard Henderson + + PR opt/8300 + * toplev.c (rest_of_compilation): Delay no_new_pseudos until + after initialize_uninitialized_subregs; update reg info assuming + new pseudos were created. + +2003-04-23 Neil Booth + + * Makefile.in (c-lex.o, LIBCPP_OBJS, cpplex.o): Update. + * c-lex.c (MULTIBYTE_CHARS): Remove conditionals. + (lex_string): Take cpp_string with full spelling. + (cb_ident): Update. + (c_lex): Update diagnostics. + * cpplex.c (SPELL_NUMBER, SPELL_STRING): Combine into SPELL_LITERAL. + (create_literal): New. + (lex_string): Unterminated literals have type CPP_OTHER. + (_cpp_lex_direct): Update calls to lex_string. Use create_literal + for CPP_OTHER. + (cpp_token_len, cpp_spell_token, cpp_output_token): Simplify. + (_cpp_equiv_tokens, cpp_interpret_charconst): Update. + * cpplib.c (parse_include, do_line, do_linemarker, + destringize_and_run): Update for token storing full spelling. + * cpplib.h: Update token spelling types. + * cppmacro.c (stringify_arg, check_trad_stringification): + Update for token storing full spelling. + +2003-04-23 Ulrich Weigand + + * config/s390/s390.c (s390_expand_cmpstr): Disable CLC loop. + +2003-04-23 Richard Earnshaw + + * arm.h (TARGET_OPTIONS): Add value field. + +2003-04-23 Mark Mitchell + + * doc/extend.texi: Remove duplicate 2003 copyright date. + +2003-04-23 Nathan Sidwell + + * Makefile.in (LIBGCC_DEPS): Add gcov headers. + (libgcov.a): Depends on LIBGCC_DEPS. + * basic-block.h (profile_info): Moved here from coverage.h. Made + a pointer. + * coverage.c (struct function_list): Fixed array of counter types. + (struct counts_entry): Keyed by counter type, contains summary. + (profile_info): Moved to profile.c. + (prg_ctr_mask, prg_n_ctrs, fn_ctr_mask, fn_n_ctrs): New global + vars. + (profiler_label): Remove. + (ctr_labels): New. + (set_purpose, label_for_tag, build_counter_section_fields, + build_counter_section_value, build_counter_section_data_fields, + build_counter_section_data_values, build_function_info_fields, + build_function_info_value, gcov_info_fields, gcov_info_value): Remove. + (build_fn_info_type, build_fn_info_value, build_ctr_info_type, + build_ctr_info_value, build_gcov_info): New. + (htab_counts_entry_hash, htab_counts_entry_eq): Adjust. + (reads_counts_file): Adjust. + (get_coverage_counts): Takes counter number. Add summary + parameter. Adjust. + (coverage_counter_ref): Tkaes counter number. Adjust. Lazily + create counter array labels. + (coverage_end_function): Adjust. + (create_coverage): Adjust. + (find_counters_section): Remove. + * coverage.h (MAX_COUNTER_SECTIONS): Remove. + (struct section_info, struct profile_info): Remove. + (profile_info): Moved to basic-block.h. + (coverage_counter_ref): Takes a counter number. + (get_coverage_counts): Takes a counter number. Added summary + parameter. + (find_counters_section): Remove. + * gcov-dump.c (tag_arc_counts): Rename to ... + (tag_counters): ... here. Adjust. + (tag_table): Move tag_counters to 3rd entry. Remove + PROGRAM_PLACEHOLDER and PROGRAM_INCORRECT entries. + (dump_file): Check for counter tag values here. + (tag_summary): Adjust. + * gcov-io.c (gcov_write_summary, gcov_read_summary): Adjust. + * gcov-io.h (GCOV_LOCKED): New. + (GCOV_TAG_ARC_COUNTS): Rename to ... + (GCOV_TAG_COUNTS_BASE): ... here. + (GCOV_TAG_PLACEHOLDER_SUMMARY, GCOV_TAG_INCORRECT_SUMMARY): + Remove. + (GCOV_COUNTER_ARCS, GCOV_COUNTERS, GCOV_NAMES): New. + (GCOV_TAG_FOR_COUNTER, GCOV_COUNTER_FOR_TAG, + GCOV_TAG_IS_COUNTER): New. + (struct gcov_ctr_summary): New. + (struct gcov_summary): Adjust. + (struct gcov_counter_section): Remove. + struct gcov_counter_section_data): Remove. + (struct gcov_function_info): Rename to ... + (struct gcov_fn_info): ... here. Adjust. + (struct gcov_ctr_info): New. + (struct gcov_info): Adjust. + * gcov.c (read_count_file): Adjust. + (output_lines): Adjust. + * libgcov.c (gcov_exit): Adjust. + (__gcov_flush): Adjust. + * mklibgcc.in (libgcc2_c_dep): Add gcov headers. + * predict.c (maybe_hot_bb_p, probably_cold_bb_p, + probably_never_executed_bb_p, compute_frequency_function): Adjust + profile_info use. + * profile.c (struct counts_entry): Remove. + (profile_info): Define here. + (get_exec_counts): Adjust get_coverage_counts call. + (compute_branch_probablilities): Remove find_counters_section + call. + (gen_edge_profiler): Adjust coverage_counter_ref call. + * tracer.c (tail_duplicate): Adjust profile_info use. + +2003-04-23 Roger Sayle + + PR optimization/10339 + * builtins.c (expand_builtin_strcmp): Try to emit cmpstrsi insn + directly instead of unsafely transforming call into a memcmp. + (expand_builtin_strncmp): Likewise. + +2003-04-22 Roger Sayle + + * alias.c (mark_constant_function): Check for constancy and + purity even of void functions. Update both the function decl + and the cgraph RTL info with the results. + +2003-04-22 Roger Sayle + + * real.c (do_add): Change to return a bool indicating that the + result of the operation may be inexact due to loss of precision. + (do_multiply): Likewise. + (do_divide): Likewise. + +2003-04-22 Geoffrey Keating + Loren James Rittle + + * dwarf2out.c (fde_table_allocated): Mark with GTY. + (decl_die_table_allocated): Likewise. + (abbrev_die_table_allocated): Likewise. + (line_info_table_allocated): Likewise. + (separate_line_info_table_allocated): Likewise. + (pubname_table_allocated): Likewise. + (arange_table_allocated): Likewise. + (ranges_table_allocated): Likewise. + (decl_die_table_in_use): Unconditionalize; mark with GTY. + (abbrev_die_table_in_use): Likewise. + (line_info_table_in_use): Likewise. + (separate_line_info_table_in_use): Likewise. + (pubname_table_in_use): Likewise. + (arange_table_in_use): Likewise. + (ranges_table_in_use): Likewise. + (have_location_lists): Likewise. + (emitcount): New GTY-marked static, moved... + (maybe_emit_file): ...from here. + (label_num): New GTY-marked static, moved... + (gen_internal_sym): ...from here. + +2003-04-22 Richard Henderson + + PR 8866 + * rtl.h (MEM_NOTRAP_P): New. + (MEM_COPY_ATTRIBUTES): Copy it. + * rtlanal.c (may_trap_p): Check it. + * expr.c (do_tablejump): Set it. + * doc/rtl.texi (Flags): Document it. + + * cfgrtl.c (try_redirect_by_replacing_jump): Revert last three changes. + +2003-04-22 Olivier Hainque + + * config/alpha/alpha.c (alpha_expand_prologue [OPEN_VMS_ABI]): Don't + set FRP on stack adjustment for outgoing args if frame_pointer_needed. + +2003-04-22 Vincent Celier + + * gthr-gnat.h, gthr-gnat.c: new sources for implementation of + --enable-threads=gnat. + * Makefile.in: Add gthr-gnat.c to LIB2ADDEH. + * configure.in: Add gnat to the list of thread packages + * configure: Rebuild. + * config/t-linux: Add gthr-gnat.c to LIB2ADDEH and LIB2ADDEHDEP + +2003-04-22 Neil Booth + + * cpplex.c (_cpp_get_fresh_line): Pop the buffer if return_at_eof. + +2003-04-22 Devang Patel + + * cpptrad.c (_cpp_replacement_text_len): Add check for macro + parameter count. + (_cpp_copy_replacement_text): Same. + +2003-04-22 Neil Booth + + * c-lex.c (c_lex): Handle CPP_OTHER differently. + * cppexp.c (_cpp_parse_expr): Similarly. + * cpplex.c (SPELL_CHAR): Remove. + (_cpp_lex_direct): Stray chars are saved as byte strings. + (cpp_spell_token, cpp_output_token, _cpp_equiv_token): Don't + handle SPELL_CHAR. + (cpp_avoid_paste): Update handling of CPP_OTHER. + * cpplib.h: Spell CPP_OTHER like a number. + (struct cpp_token): Remove member c. + * cppmacro.c (stringify_arg): Update handling of CPP_OTHER. + +2003-04-22 David Turner + + * gbl-ctors.h: Add special license exception. + * libgcc2.h: Likewise. + * tsystem.h: Likewise. + * gcov-io.h: Likewise. + +2003-04-22 David Edelsohn + + * fold-const.c (fold_range_test): Use RANGE_TEST_NON_SHORT_CIRCUIT + macro defaulting to original BRANCH_COST heuristic. + * doc/tm.texi (RANGE_TEST_NON_SHORT_CIRCUIT): Document. + + * config/rs6000/rs6000.h (RANGE_TEST_NON_SHORT_CIRCUIT): Define. + +2003-04-22 Aldy Hernandez + + * config/rs6000/t-spe: Merge in t-fprules into file. + + * config.gcc: Add t-spe to powerpc-eabispe. + +2003-04-22 Kean Johnston + + * tlink.c (recompile_files): Add missing '=' to putenv calls + +2003-04-22 Nathan Sidwell + + * ginclude/stddef.h: Provide C++ safe offsetof. + +2003-04-22 J"orn Rennecke + + * function.c (purge_addressof_1): In (mem (addressof (reg))) case + for reg notes, if there are no substitutions, just use a SUBREG. + +2003-04-21 Mark Mitchell + + * Makefile.in (calls.o): Depend on except.h. + * calls.c: Include except.h. + (emit_call_1): Call note_eh_region_may_contain_throw if + appropriate. + * except.c (eh_region): Add may_contain_throw. + (expand_eh_region_end_cleanup): Do not include handler code when + it cannot be reached. + (note_eh_region_may_contain_throw): New function. + * except.h (note_eh_region_may_contain_throw): New function. + +2003-04-21 Mark Mitchell + + * config/i386/winnt.c (i386_pe_mark_dllimport): Revert previous + changes. + +2003-04-21 Aldy Hernandez + + * config/rs6000/rs6000.c (rs6000_override_options): No SPE means + 64-bit long doubles. + +2003-04-21 Olivier Hainque + + * fold-const.c (fold, case PLUS_EXPR and case MULT_EXPR): Restore + a number of conversions required for type consistency and previously + stripped off by STRIP_NOPS. + + * calls.c (expand_call): Prevent sibcall optimization for calls to + nested subprograms. + + * expmed.c (extract_bit_field): Reverse operands of && condition to + prevent a potential division by zero in the previously first branch. + * config/pa/pa.md (extv, extzv): FAIL if the bitfield length is zero. + +2003-04-21 Joel Brobecker + + * dwarf2out.c (is_ada, is_ada_subrange_type): New functions. + (subrange_type_die): Likewise. + (modified_type_die): Emit a subrange_type DIE for Ada subrange types. + (is_c_family, is_cxx, is_java, is_fortran): Return bool and clean up. + +2003-04-21 Nathan Sidwell + + Break out coverage routines to new file. + * Makefile.in (COVERAGE_H): New variable + (C_OBJS): Add coverage.o + (coverage.o): New target. + (profile.o, loop-init.o, sched-ebb.o, predict.o, tracer.o): Adjust + dependencies. + (GTFILES): Adjust. + (gt-coverage.h): New target. + (gt-profile.h): Remove. + * profile.h: Remove. Move to ... + * coverage.h: ... here. New. #include gcov-io.h. + * gcov-io.h: Move function definitions to ... + * gcov-io.c: ... here. New. + * profile.c: Move coverage routines to coverage.c. + (instrument_edges, get_exec_counts, branch_prob, init_branch_prob, + end_branch_prob): Adjust. + * coverage.c: New. Coverage routines from profile.c + (coverage_counter_ref, coverage_init, coverage_finish, + coverage_end_function, coverage_begin_output, + coverage_counter_ref, get_coverage_counts): Define. + * gcov-dump.c, gcov.c: #include gcov-io.c. + * libgcov.c: Likewise. Adjust. + * loop-init.c: Don't #include profile.h + * tracer.c, predict.c, sched-ebb.c: Adjust #includes. + * rtl.h: Add coverage prototypes. + * toplev.c (compile_file): Init coverage, not branch_prob. + Always call coverage_finish. + (rest_of_compilation): Call coverage_end_function. + +2003-04-21 Matt Kraai * config/rs6000/rs6000.md (*movsf_softfloat): Add "h" <- "0" case. @@ -18,6 +637,14 @@ 2003-04-21 Richard Kenner + * doc/rtl.texi (RTX_UNCHANGING_P): Point to true_dependence for + details of conflict handling. + + * fold-const.c (extract_muldiv, case CONVERT_EXPR): Detect case + when conversion overflows. + + * stor-layout.c (layout_decl): Don't set DECL_SIZE_UNIT if already set. + * expr.c (store_constructor): Set RTX_UNCHANGING_P if readonly_field_p before clearing. @@ -28,7 +655,7 @@ 2003-04-21 Andreas Jaeger - * cppcharset.c (_cpp_valid_ucn): Cast field precision to int. + * cppcharset.c (_cpp_valid_ucn): Cast field precision to int. 2003-04-20 Chris Lattner Zack Weinberg @@ -417,12 +1044,14 @@ Sat Apr 19 14:56:17 CEST 2003 Jan Hubicka Fri Apr 18 01:28:51 CEST 2003 Jan Hubicka * gcov-dump.c (tag_summary): Remove max_sum - * gcov-io.h (gcov_summary, gcov_write_summary, gcov_read_summary): Kill - max_sum. - * libgcov.c (gcov_exit): Do one pass over the data. Make error message - more verbose. + * gcov-io.h (gcov_summary, gcov_write_summary, + gcov_read_summary): Kill max_sum. + * libgcov.c (gcov_exit): Do one pass over the data. Make error + message more verbose. + + * emit-rtl.c (subreg_hard_regno): Check that register is + representable. - * emit-rtl.c (subreg_hard_regno): Check that register is representable. * reload.c (reload_inner_reg_of_subreg): When register is not representable, reload the whole thing. (find_reloads): Likewsie. @@ -430,7 +1059,8 @@ Fri Apr 18 01:28:51 CEST 2003 Jan Hubicka * profile.c (compute_branch_probabilities): Cleanup sanity checking; allow negative probabilities for edges from the call to exit. - (branch_prob): Do not add fake edges for functions that may return twice + (branch_prob): Do not add fake edges for functions that may return + twice. 2003-04-17 DJ Delorie