Age | Commit message (Collapse) | Author | Files | Lines |
|
From-SVN: r66006
|
|
From-SVN: r66002
|
|
From-SVN: r65999
|
|
PR c++/9847
* cp-tree.h (duplicate_tag_error): Remove.
* class.c (duplicate_tag_error): Remove.
* semantics.c (begin_class_definition): Return immediately for a
duplicate class definition.
PR c++/10451
* decl.c (grokdeclarator): Correct logic for "mutable" errors.
From-SVN: r65998
|
|
From-SVN: r65997
|
|
* 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.
From-SVN: r65990
|
|
replacing strncmp by memcmp)
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.
From-SVN: r65985
|
|
void functions.
* 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.
From-SVN: r65981
|
|
operation may be...
* 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.
From-SVN: r65980
|
|
From-SVN: r65977
|
|
* 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.
Co-Authored-By: Loren J. Rittle <ljrittle@acm.org>
From-SVN: r65970
|
|
From-SVN: r65969
|
|
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.
From-SVN: r65967
|
|
adjustment for outgoing args if frame_pointer_needed.
* config/alpha/alpha.c (alpha_expand_prologue [OPEN_VMS_ABI]): Don't
set FRP on stack adjustment for outgoing args if frame_pointer_needed.
From-SVN: r65965
|
|
nested class in a class template)
PR c++/10446
* search.c (lookup_fnfields_1): Handle empty slots in the method
vector.
PR c++/10446
* g++.dg/parse/crash3.C: New test.
From-SVN: r65962
|
|
* 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
From-SVN: r65961
|
|
PR c++/10428
* g++.dg/parse/elab1.C: New test.
PR c++/10428
* decl.c (check_elaborated_type_specifier): New function, split
out from ...
(xref_tag): ... here. Use the new function in more places.
From-SVN: r65956
|
|
From-SVN: r65954
|
|
From-SVN: r65953
|
|
* cpptrad.c (_cpp_replacement_text_len): Add check for macro parameter count.
(_cpp_copy_replacement_text): Same.
* gcc.dg/cpp/trad/funlike-5.c: New test.
From-SVN: r65952
|
|
* 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.
From-SVN: r65951
|
|
* gbl-ctors.h: Add special license exception.
* libgcc2.h: Likewise.
* tsystem.h: Likewise.
* gcov-io.h: Likewise.
From-SVN: r65949
|
|
defaulting to original BRANCH_COST heuristic.
* 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.
From-SVN: r65942
|
|
2003-04-21 Andreas Tobler <a.tobler@schweiz.ch>
* g++.dg/other/packed1.C: Fix dg options.
From-SVN: r65941
|
|
2003-04-22 Aldy Hernandez <aldyh@redhat.com>
* config/rs6000/t-spe: Merge in t-fprules into file.
* config.gcc: Add t-spe to powerpc-eabispe.
From-SVN: r65938
|
|
From-SVN: r65937
|
|
.: * ginclude/stddef.h: Provide C++ safe offsetof.
testsuite:
* g++.dg/other/offsetof2.C: New test.
From-SVN: r65936
|
|
From-SVN: r65935
|
|
* function.c (purge_addressof_1): In (mem (addressof (reg))) case
for reg notes, if there are no substitutions, just use a SUBREG.
From-SVN: r65934
|
|
From-SVN: r65933
|
|
* 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.
* call.c (build_over_call): Use build_cxx_call.
(build_cxx_call): New method, split out of build_over_call.
* cp-tree.h (language_function): Add can_throw.
(build_cxx_call): Declare it.
* decl.c (finish_function): If a function does not contain any
calls to functions that can throw an exception, indicate that
fact.
* decl2.c (mark_used): Do not defer the instantiation of
functions, if the current function does not throw.
* optimize.c (maybe_clone_body): Copy TREE_NOTHROW to the clones.
* pt.c (instantiate_decl): Make sure import_export_decl is called
before emitting things.
* rtti.c (throw_bad_cast): Use build_cxx_call.
(build_dynamic_cast_1): Likewise.
* typeck.c (build_function_call): Likewise.
* g++.dg/template/recurse.C: Adjust location of error messages.
From-SVN: r65929
|
|
From-SVN: r65928
|
|
* config/i386/winnt.c (i386_pe_mark_dllimport): Revert previous
changes.
From-SVN: r65920
|
|
From-SVN: r65915
|
|
type consistency and previously...
* 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.
From-SVN: r65913
|
|
conflict handling.
* doc/rtl.texi (RTX_UNCHANGING_P): Point to true_dependence for
details of conflict handling.
From-SVN: r65912
|
|
2003-04-21 Aldy Hernandez <aldyh@redhat.com>
* config/rs6000/rs6000.c (rs6000_override_options): No SPE means
64-bit long doubles.
From-SVN: r65911
|
|
2003-04-21 Aldy Hernandez <aldyh@redhat.com>
* config/rs6000/rs6000.c (rs6000_override_options): No SPE means
64-bit long doubles.
[[Split portion of a mixed commit.]]
From-SVN: r65910.2
|
|
From-SVN: r65908
|
|
potential division by zero in the...
* 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.
From-SVN: r65907
|
|
From-SVN: r65906
|
|
subprograms.
* calls.c (expand_call): Prevent sibcall optimization for calls to
nested subprograms.
From-SVN: r65904
|
|
* fold-const.c (extract_muldiv, case CONVERT_EXPR): Detect case
when conversion overflows.
From-SVN: r65900
|
|
From-SVN: r65899
|
|
* 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.
From-SVN: r65898
|
|
* 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.
From-SVN: r65897
|
|
2003-04-21 Matt Kraai <kraai@alumni.cmu.edu>
* config/rs6000/rs6000.md (*movsf_softfloat): Add "h" <- "0" case.
From-SVN: r65896
|
|
2003-04-21 Matt Kraai <kraai@alumni.cmu.edu>
* config/rs6000/rs6000.md (*movsf_softfloat): Add "h" <- "0" case.
From-SVN: r65895
|
|
* c-ppoutput.c (cb_include): Don't take a cpp_token.
* cppfiles.c: Don't undef strcmp.
(find_include_file): Don't take a cpp_token. Check for empty
file names.
(_cpp_execute_include, _cpp_compare_file_date): Don't take a cpp_token.
(cpp_push_include): Simplify.
* cpphash.h (_cpp_execute_include, _cpp_compare_file_date): Update.
* cpplib.c (glue_header_name): Return the file name, not a cpp_token.
(parse_include): Similary. Don't check for zero-length filenames.
(do_include_common, do_pragma_dependency): Update accordingly.
* cpplib.h (struct cpp_callbacks): Change prototype of include.
From-SVN: r65894
|
|
clearing.
* expr.c (store_constructor): Set RTX_UNCHANGING_P if readonly_field_p
before clearing.
From-SVN: r65890
|