Commit Graph

48318 Commits

Author SHA1 Message Date
Jan Hubicka
b255a03659 Makefile.in (calls.o, [...]): Depend on cgraph.h
* Makefile.in (calls.o, toplev.o alias.o): Depend on cgraph.h
	* alias.c:  Include cgraph.h
	(mark_constant_function): Use cgraph_rtl_info.
	* calls.c:  Include cgraph.h
	(flags_from_decl_or_type): Use cgraph_rtl_info to find pure and const
	calls.
	(expand_call): Use cgraph_rtl_info to set preferred stack boundary.
	* cgraph.c (cgraph_rtl_info): New function.
	* cgraph.h (cgraph_rtl_info): Declare
	(cgraph_rtl_info): Likewise.
	* function.h (struct function): Add recursive_call_emit.
	* toplev.c: Include cgraph.h.
	(rest_of_compilation): Set preferred_incoming_stack_boundary.

	* gcc.dg/i386-local2.c: New.

From-SVN: r63868
2003-03-05 22:19:33 +00:00
Kazu Hirata
0eb933a0d0 h8300.c (output_simode_bld): Clear the destination first if possible.
* config/h8300/h8300.c (output_simode_bld): Clear the
	destination first if possible.
	* config/h8300/h8300.md (extzv_1_r_h8300hs): Add an
	alternative.
	(extzv_1_r_inv_h8300hs): Likewise.

From-SVN: r63867
2003-03-05 22:10:52 +00:00
Matt Austern
1d555f7aec decl.c (cp_binding_level): Add static_decls varray member.
* decl.c (cp_binding_level): Add static_decls varray member.
	(add_decl_to_level): Add static/inline namespace scope
	declarations to static_decls array.
	(wrapup_global_for_namespace): Pass static_decls only, instead of
	all decls, to wrapup_global_declarations/check_global_declarations.
	(push_namespace): Initialize static_decls for ordinary namespaces.
	(cxx_init_decl_processing): Initialize static_decls for global
	namespace.

From-SVN: r63866
2003-03-05 22:08:39 +00:00
Zdenek Dvorak
35b0708052 basic-block.h (EDGE_IRREDUCIBLE_LOOP, [...]): New.
* basic-block.h (EDGE_IRREDUCIBLE_LOOP, EDGE_ALL_FLAGS): New.
	* cfg.c (dump_edge_info): Add EDGE_IRREDUCIBLE_LOOP flag dump.
	* cfgloop.c (flow_loop_free): Made global.
	(establish_preds): New static function.
	(flow_loop_tree_node_add): Handle subloops of added loop correctly.
	(get_loop_exit_edges): New.
	(verify_loop_structure): Verify EDGE_IRREDUCIBLE_LOOP flags.
	* cfgloop.h (flow_loop_free, get_loop_exit_edges, unloop): Declare.
	* cfgloopanal.c (mark_irreducible_loops): Mark edges in irreducible
	loops.
	* cfgloopmanip.c (loop_delete_branch_edge): Allow to test for
	removability of an edge.
	(fix_irreducible_loops): New static function.
	(find_path, remove_path): Add ability to remove enclosing loops.
	(unloop): New.
	(copy_bbs, duplicate_loop_to_header_edge): Use EDGE_IRREDUCIBLE_LOOP
	flags.
	* cfgrtl.c (verify_flow_info): Handle EDGE_IRREDUCIBLE_LOOP flag.
	* loop-unroll.c (peel_loops_completely): Do not duplicate loop if
	not neccessary.
	(decide_peel_completely, peel_loops_completely): Allow complete peeling
	of non-duplicable once rolling loops.
	* loop-unswitch.c (unswitch_loop): Update EDGE_IRREDUCIBLE_LOOP flags.

From-SVN: r63864
2003-03-05 22:05:18 +00:00
J"orn Rennecke
bb182d238a sh.h (OVERRIDE_OPTIONS): For TARGET_SHMEDIA, the minimum value for align_jumps is 4.
* sh.h (OVERRIDE_OPTIONS): For TARGET_SHMEDIA, the minimum value
	for align_jumps is 4.

	(SECONDARY_INPUT_RELOAD_CLASS): If reloading a PLUS into FPUL,
	use GENERAL_REGS.

From-SVN: r63863
2003-03-05 21:45:41 +00:00
Stephane Carrez
f2d0440f54 m68hc11.h (PAD_VARARGS_DOWN): Define and return according to va_arg type.
* config/m68hc11/m68hc11.h (PAD_VARARGS_DOWN): Define and return
	according to va_arg type.
	(EXPAND_BUILTIN_VA_ARG): Remove.
	* config/m68hc11/m68hc11.c (m68hc11_va_arg): Remove.
	* config/m68hc11/m68hc11-protos.h (m68hc11_va_arg): Remove.

From-SVN: r63859
2003-03-05 22:32:11 +01:00
Mark Mitchell
1c442892b3 * g++.dg/abi/layout3.C: New test.
From-SVN: r63856
2003-03-05 20:52:53 +00:00
Carlo Wood
0530d3b00b ios_base.h (ios_base::Init::_S_initialized()): Added _S_initialized() in order to allow debugging libraries to detect when...
2003-03-05  Carlo Wood  <carlo@alinoe.com>

        * include/bits/ios_base.h(ios_base::Init::_S_initialized()): Added
	_S_initialized() in order to allow debugging libraries to detect
	when the std streams are initialized from an overloaded operator
	new.

From-SVN: r63852
2003-03-05 18:53:18 +00:00
Benjamin Kosnik
83e924e101 demangle.h: Move to..
2003-03-05  Benjamin Kosnik  <bkoz@redhat.com>

	* libsupc++/demangle.h: Move to..
	* include/bits/demangle.h: ...here.
	* src/demangle.cc: Adjust include.
	* include/Makefile.am (bits_headers): Add.
	* include/Makefile.in: Regenerate.

From-SVN: r63851
2003-03-05 17:57:52 +00:00
David Edelsohn
165b263e39 rs6000.c (rs6000_variable_issue): Remove unnecessary else clauses.
* config/rs6000/rs6000.c (rs6000_variable_issue): Remove unnecessary
        else clauses.

From-SVN: r63850
2003-03-05 12:51:24 -05:00
Geert Bosch
3d713bb882 raise.c (__gnat_Unwind_RaiseException): Add prototype to avoid warning, and fix return type for the IN_RTS && !SJLJ case.
ada/9961
        * raise.c (__gnat_Unwind_RaiseException): Add prototype to avoid
        warning, and fix return type for the IN_RTS && !SJLJ case.

From-SVN: r63842
2003-03-05 17:09:55 +01:00
Michael Matz
8c38a24fa0 i386.c (ix86_save_reg): Also test current_function_uses_const_pool.
* i386/i386.c (ix86_save_reg): Also test
        current_function_uses_const_pool.

From-SVN: r63840
2003-03-05 13:06:50 +00:00
Michael Matz
336d0d96d0 unwind.h: Add the GPL exception.
* unwind.h: Add the GPL exception.
        * Makefile.in (USER_H): Add unwind.h.

From-SVN: r63839
2003-03-05 13:04:30 +00:00
Eric Botcazou
be2fa21183 re PR c/9799 (mismatching structure initializer with nested flexible array member, segfaults)
PR c/9799
	* c-typeck.c (push_init_level): Add sanity check.

From-SVN: r63831
2003-03-05 08:37:57 +00:00
Mark Mitchell
8234c6c11a * class.c (end_of_class): Correct thinko.
From-SVN: r63829
2003-03-05 08:27:42 +00:00
Andreas Jaeger
4e263cd91b * treetree.c (init_c_lex): Follow change to c-common.h.
From-SVN: r63828
2003-03-05 07:29:01 +01:00
Nathanael Nerode
dc2b3526d4 * config-lang.in: Replace ${libstdcxx_version} by its value.
From-SVN: r63827
2003-03-05 06:14:08 +00:00
Benjamin Kosnik
4e7a2c6f9a globals.cc: Clarify comments, remove c_locale_imp_compat.
2003-03-04  Benjamin Kosnik  <bkoz@redhat.com>

	* src/globals.cc: Clarify comments, remove c_locale_imp_compat.

	* config/linker-map.gnu: Filter typeinfo and vtable info.

From-SVN: r63826
2003-03-05 06:02:15 +00:00
Jerry Quinn
c524ed5dc9 ios.cc (ios_base::_M_grow_words): Don't delete _M_word on new failure.
2003-03-04  Jerry Quinn  <jlquinn@optonline.net>

	* src/ios.cc (ios_base::_M_grow_words): Don't delete _M_word on
	new failure.  Throw exception if badbit and exception mask when ix
	>= numeric_limits<int>::max().

From-SVN: r63824
2003-03-05 03:01:42 +00:00
Nathanael Nerode
3aa8317698 Makefile.tpl: Reindent.
* Makefile.tpl: Reindent.
	* Makefile.in: Regenerate.
	* configure.in: Reindent.  Don't set unused variables.
	* configure: Regenerate.

From-SVN: r63823
2003-03-05 01:45:09 +00:00
Jan Hubicka
dafc5b82d5 i386-local.c: New.
* gcc.dg/i386-local.c: New.

	* toplev.c (rest_of_compilation):  Deffer RTL compilation only when
	RTL inlining is done.

	* cgraphunit.c (cgraph_mark_local_functions): New local function.
	(cgraph_optimize): Mark local functions.
	* i386-protos.h (init_cumulative_args): Update prototype.
	* i386.c (init_cumulative_args): Use register passing convention for
	local functions.

	* cgraph.c (cgraph_global_info_ready): New global variable
	(cgraph_local_info, cgraph_global_info): New functions.
	* cgraph.h (struct cgraph_local_info, cgraph_global_info): New
	structures.
	(cgraph_local_info, cgraph_global_info, cgraph_global_info_ready):
	Declare.
	* cgraphunit.c (cgraph_finalize_function): Set inline_many.
	(cgraph_mark_functions_to_output): Use inline_many.
	(cgraph_expand_function): Free DECL_SAVED_TREE uncondtionally.
	(cgraph_expand_functions): Expand inline functions last.
	(cgraph_optimize): Do not emit uneeded functions.

From-SVN: r63822
2003-03-05 01:33:27 +00:00
GCC Administrator
75d8f260df Daily bump.
From-SVN: r63821
2003-03-05 00:17:14 +00:00
Steve Ellcey
006c9f4a1a * expr.c (convert_modes): Check for legal hard register.
From-SVN: r63813
2003-03-05 00:12:40 +00:00
Gabriel Dos Reis
000d38ea95 cp-tree.h (cxx_saved_binding): Declare.
* cp-tree.h (cxx_saved_binding): Declare.
        (struct saved_scope): Adjust type of field 'old_binding'.
        * decl.c (cxx_saved_binding_make): New macro.
        (struct cxx_saved_binding): Define.
        (store_bindings): Adjust prototype.  Use cxx_saved_binding to save
        C++ bindings.
        (maybe_push_to_top_level): Adjust local variable type.
        (pop_from_top_level): Likewise.

From-SVN: r63810
2003-03-04 23:23:16 +00:00
Hans Boehm
c62b906422 gcconfig.h (GC_data_start): declare when needed.
2003-03-04  Hans Boehm <Hans.Boehm@hp.com>
	* include/private/gcconfig.h (GC_data_start): declare when needed.
	* include/private/gc_priv.h: Include gcconfig.h after ptr_t
	declaration.
	* dyn_load.c (GC_register_dynamic_libraries_dl_iterate_phdr,
	GC_register_dynlib_callback): Register main data for static
	executable if dl_iterate_phdr() didn't.
	* misc.c (GC_init_inner): Call GC_init_linux_data_start() even
	if we don't expect to register main static data.

From-SVN: r63809
2003-03-04 22:18:08 +00:00
Tom Tromey
65ebbf8160 sourcebuild.texi (Front End Directory): Document tags.
* doc/sourcebuild.texi (Front End Directory): Document tags.
	* configure: Rebuilt.
	* configure.in (target_list): Added tags.
	* Makefile.in (TAGS): Depend on lang.clean.  Include subdirectory
	TAGS files by reference.
	* objc/Make-lang.in (objc.tags): New target.

From-SVN: r63808
2003-03-04 21:48:53 +00:00
Tom Tromey
361617e7d4 * Make-lang.in (treelang.tags): New target.
From-SVN: r63807
2003-03-04 21:33:35 +00:00
Tom Tromey
5993642d6f * Make-lang.in (java.tags): New target.
From-SVN: r63806
2003-03-04 21:33:09 +00:00
Tom Tromey
b87141b367 * Make-lang.in (c++.tags): New target.
From-SVN: r63805
2003-03-04 21:32:09 +00:00
Tom Tromey
72340cd4c2 * Make-lang.in (f77.tags): New target.
From-SVN: r63804
2003-03-04 21:31:21 +00:00
Tom Tromey
8b89fcdfbe * Make-lang.in (ada.tags): New target.
From-SVN: r63803
2003-03-04 21:30:50 +00:00
Alexandre Oliva
1a8f10da2c strstream.cc (strstreambuf::overflow): Make sure operands of min and max have the same type.
* src/strstream.cc (strstreambuf::overflow): Make sure operands of
min and max have the same type.
* include/bits/basic_string.tcc (append, rfind, compare): Likewise.

From-SVN: r63802
2003-03-04 21:21:44 +00:00
Zdenek Dvorak
ec4a0419ad gcov-io.h (gcov_save_position, [...]): Modified to enable reading/ writing of whole .da file just once.
* gcov-io.h (gcov_save_position, gcov_reserve_length, gcov_resync,
	gcov_skip, gcov_skip_string, gcov_write_unsigned, gcov_write_counter,
	gcov_write_string, gcov_read_unsigned, gcov_read_counter,
	gcov_read_string, gcov_write_length): Modified to enable reading/
	writing of whole .da file just once.
	(da_file_open, da_file_close, da_file_eof, da_file_error,
	da_file_position, da_file_seek, da_file_write, da_file_read): New
	functions.
	(actual_da_file, actual_da_file_position, actual_da_file_length,
	actual_da_file_buffer, actual_da_file_buffer_size): New static
	functions.
	* libgcov.c (gcov_exit): Modified to read/write the whole .da file at
	just once.

From-SVN: r63800
2003-03-04 20:56:24 +00:00
Andreas Schwab
79dbeefca8 m68k.c (m68k_output_function_prologue): Fix CFA offset without frame pointer.
* config/m68k/m68k.c (m68k_output_function_prologue): Fix CFA
	offset without frame pointer.

From-SVN: r63799
2003-03-04 20:27:02 +00:00
Steve Ellcey
3ac1a31954 * expr.c (expand_expr): Call promote_mode to set unsignedp.
From-SVN: r63796
2003-03-04 20:16:24 +00:00
Olivier Hainque
23cae84fbb a-except.adb (Unwind_RaiseException): Import a GNAT specific wrapper...
ada/9911
	* a-except.adb (Unwind_RaiseException): Import a GNAT specific
	wrapper, which name remains constant whatever underlying GCC
	scheme.

	* raise.c (__gnat_Unwind_RaiseException): New wrappers, providing
	the stable interface needed for a-except.

From-SVN: r63795
2003-03-04 21:14:59 +01:00
Daniel Jacobowitz
db720d9a74 configure.in: Don't always define TARGET_SYSTEM_ROOT.
* configure.in: Don't always define TARGET_SYSTEM_ROOT.
	* configure: Regenerated.
	* gcc.c: Check whether TARGET_SYSTEM_ROOT is defined.

From-SVN: r63793
2003-03-04 19:44:09 +00:00
Daniel Jacobowitz
9124bc53e9 configure.in: Include $(build_tooldir)/sys-include in FLAGS_FOR_TARGET.
* configure.in: Include $(build_tooldir)/sys-include in
	FLAGS_FOR_TARGET.
	* configure: Regenerated.

From-SVN: r63792
2003-03-04 19:43:35 +00:00
J"orn Rennecke
754047bb1f * gcc.dg/sh-relax.c: Disable for sh64-*-*.
From-SVN: r63791
2003-03-04 19:40:34 +00:00
Andreas Jaeger
9a79ab7e47 Oops forgot to commit ChangeLog for:
* configure.in: Check for <memcheck.h>.
        * configure: Regenerated.

	* config.in: Define HAVE_MEMCHECK_H.

	* ggc-common.c: Use <memcheck.h> if available instead of
	<valgrind.h>.
	* ggc-page.c: Likewise.
	* cppfiles.c: Likewise.

From-SVN: r63790
2003-03-04 19:01:16 +01:00
Andreas Jaeger
14011ca451 configure.in: Check for <memcheck.h>.
* configure.in: Check for <memcheck.h>.
        * configure: Regenerated.

	* config.in: Define HAVE_MEMCHECK_H.

	* ggc-common.c: Use <memcheck.h> if available instead of
	<valgrind.h>.
	* ggc-page.c: Likewise.
	* cppfiles.c: Likewise.

From-SVN: r63788
2003-03-04 18:51:00 +01:00
Benjamin Kosnik
6b919a8ab9 Makefile.am (allstamps): Remove stamp-std-precompile.
2003-03-04  Benjamin Kosnik  <bkoz@redhat.com>

	* include/Makefile.am (allstamps): Remove stamp-std-precompile.
	* include/Makefile.in: Regenerate.

From-SVN: r63787
2003-03-04 16:22:17 +00:00
Kazu Hirata
a8f0e84899 * config/h8300/h8300.md (*extzv_8_8): Fix cc and lengths.
From-SVN: r63784
2003-03-04 14:14:53 +00:00
Eric Botcazou
2ad1815d45 re PR c/9262 (ICE on false case label)
PR c/9262
	* c-typeck.c (do_case): Attach the first case label to the SWITCH_BODY.
	(c_finish_case): Rechain the next statements to the SWITCH_STMT.

From-SVN: r63783
2003-03-04 11:06:32 +00:00
Jan Hubicka
e2483ef7c7 invoke.texi: Document that unit-at-a-time is enabled for -O3
* doc/invoke.texi:  Document that unit-at-a-time is enabled for -O3
	* toplev.c (parse_options_and_default_flags): Enable flag_unit_at_a_time
	for -O3.

From-SVN: r63782
2003-03-04 10:30:47 +00:00
Nathanael Nerode
865fb6f5c1 Make sure I committed the right version. :-(
From-SVN: r63779
2003-03-04 08:35:25 +00:00
Nathanael Nerode
34a86c2b9c configure.in: Delete three unused variables.
* configure.in: Delete three unused variables.  Move a variable
	definition closer to its use.  Simplify use_collect2 logic.  Start to
	organize.  Simplify tests for in-tree gas and ld.
	* configure: Regenerate.

From-SVN: r63778
2003-03-04 07:41:00 +00:00
Nathanael Nerode
c858bf1e21 Makefile.tpl: Always pass down RANLIB.
* Makefile.tpl: Always pass down RANLIB.
	* Makefile.in: Regenerate.

From-SVN: r63777
2003-03-04 07:32:20 +00:00
Nathanael Nerode
aa9c3ab4b1 Makefile.tpl: Don't set unused enable_shared, enable_threads macros.
* Makefile.tpl: Don't set unused enable_shared, enable_threads macros.
	* Makefile.in: Regenerate.
	* configure.in: Remove unused logic relating to --enable-shared
	and --enable-threads.  Remove bogus comments.  Remove redundant
	noconfigdirs.
	* configure: Regenerate.

From-SVN: r63776
2003-03-04 07:27:54 +00:00
Nathanael Nerode
cb543528a6 configure.in: Replace ${libstdcxx_version} by its value.
* configure.in: Replace ${libstdcxx_version} by its value.
	Remove reference to mh-dgux.
	* configure: Regenerate.

	* mh-dgux: Delete.

From-SVN: r63775
2003-03-04 07:23:56 +00:00