Commit Graph

36731 Commits

Author SHA1 Message Date
Jan Hubicka
d69d031618 flow.c (last_loop_beg_note): New function.
* flow.c (last_loop_beg_note): New function.
	(redirect_edge_and_branch): Use it.
	(split_edge): Likewise.

	* alias.c (loop_p): Avoid uninitialized memory access.

	* flow.c (try_forward_edges): Avoid accessing freed memory.

	* flow.c (backward_edge_of_syntactic_loop_p): Avoid uninitialized
	variable access.

From-SVN: r44429
2001-07-27 15:55:41 +00:00
Andrew Haley
f636e2a57d linux.h (CPP_DEFAULT_CPU_SPEC): New.
2001-07-26  Andrew Haley  <aph@redhat.com>
        Joern Rennecke <amylaar@redhat.com>

        * config/sh/linux.h (CPP_DEFAULT_CPU_SPEC): New.
        (SUBTARGET_CPP_ENDIAN_SPEC): New.
        (SUBTARGET_CPP_SPEC): New.
        (CPP_SPEC): Remove.
        * config/sh/sh.h (SUBTARGET_CPP_ENDIAN_SPEC): New.
        (SUBTARGET_CPP_PTR_SPEC): New.
        (CPP_DEFAULT_CPU_SPEC): New.
        (EXTRA_SPECS): Add SUBTARGET_CPP_ENDIAN_SPEC,
        SUBTARGET_CPP_PTR_SPEC, and CPP_DEFAULT_CPU_SPEC.
        (CPP_SPEC): Break out parts into SUBTARGET_CPP_ENDIAN_SPEC,
        SUBTARGET_CPP_PTR_SPEC, and CPP_DEFAULT_CPU_SPEC.
        (SUBTARGET_CPP_SPEC): Define as an empty string.

From-SVN: r44428
2001-07-27 15:20:41 +00:00
Nathan Sidwell
0ab142b027 class.c (mark_primary_virtual_base): Don't adjust base offsets here.
cp:
	* class.c (mark_primary_virtual_base): Don't adjust base
	offsets here.
	(dfs_unshared_virtual_bases): Adjust them here.
	(mark_primary_bases): Explain why we adjust at the end.
testsuite:
	* g++.dg/abi/vbase8-21.C: New test.

From-SVN: r44425
2001-07-27 15:12:49 +00:00
Nathan Sidwell
d60d223b17 class.c (finish_struct_1): When copying the primary base's VFIELD, make sure we find it is at offset zero.
cp:
	* class.c (finish_struct_1): When copying the primary base's
	VFIELD, make sure we find it is at offset zero.
testsuite:
	* g++.dg/abi/vbase8-10.C: New test.

From-SVN: r44421
2001-07-27 15:07:40 +00:00
Rainer Orth
08ecdbebab g++.exp (g++_set_ld_library_path): Renamed to ${tool}_set_ld_library_path.
gcc/testsuite:
	* lib/g++.exp (g++_set_ld_library_path): Renamed to
	${tool}_set_ld_library_path.
	Changed caller.
	* lib/objc.exp (${tool}_set_ld_library_path): New, copied from
	g++.exp.

	libjava/testsuite:
	* lib/libjava.exp (${tool}_set_ld_library_path): New, copied from
	g++.exp.

From-SVN: r44420
2001-07-27 12:21:56 +00:00
Gerald Pfeifer
e69aa43364 install.texi (Configuration): Properly link the host specific instructions also when generating HTML.
* doc/install.texi (Configuration): Properly link the host
	specific instructions also when generating HTML.

From-SVN: r44416
2001-07-27 08:48:38 +00:00
GCC Administrator
e42834b84a Daily bump.
From-SVN: r44415
2001-07-27 07:16:44 +00:00
Richard Henderson
2a08c780d3 gcc_update: Dump timestamp in LAST_UPDATED.
* contrib/gcc_update: Dump timestamp in LAST_UPDATED.
        * .cvsignore: Add LAST_UPDATED.

From-SVN: r44413
2001-07-26 23:00:45 -07:00
John Wehle
a727094f58 flow.c (redirect_edge_and_branch_force): Test target->global_live_at_start.
* flow.c (redirect_edge_and_branch_force): Test
	target->global_live_at_start.

From-SVN: r44412
2001-07-27 04:35:18 +00:00
Richard Henderson
732910b9c5 simplify-rtx.c (avoid_constant_pool_reference): Export.
* simplify-rtx.c (avoid_constant_pool_reference): Export.
        * rtl.h (avoid_constant_pool_reference): Declare it.
        * dwarf2out.c (add_location_or_const_value_attribute): Use it.
        (add_const_value_attribute): Use add_AT_unsigned for unsigned values.

From-SVN: r44411
2001-07-26 16:47:15 -07:00
Stan Cox
62ba5f39b2 g++.exp (g++_exit, [...]): Removed.
* lib/g++.exp (g++_exit, g++_check_unsupported_p): Removed.
	* lib/gcc.exp (gcc_check_compile, gcc_pass, gcc_fail, gcc_finish,
	gcc_exit, gcc_check_unsupported_p):
	Moved to gcc-deps.exp
	* gcc-deps.exp: New file.

From-SVN: r44410
2001-07-26 21:38:14 +00:00
Jan Hubicka
01f62f016b rtl.h (cleanup_barriers): Declare.
* rtl.h (cleanup_barriers): Declare.
	* jump.c (cleanup_barriers): New function.
	* toplev.c (rest_of_compilation): Call cleanup_barriers
	before loop optimizer and after bb_reorder.

	* flow.c (back_edge_of_syntactic_loop_p): New.
	(split_edge): Use it.

From-SVN: r44409
2001-07-26 20:36:01 +00:00
Rainer Orth
aa069f77b2 * glimits.h (_MACH_MACHLIMITS_H_): Delete.
From-SVN: r44408
2001-07-26 20:19:15 +00:00
Denis Chertykov
c96208fae7 cse.c (cse_process_notes): Replace any registers if the address remains valid.
* cse.c (cse_process_notes): Replace any registers if the address
	remains valid.

From-SVN: r44406
2001-07-26 22:31:01 +04:00
John Wehle
11f6816516 basic-block.h (PROP_ALLOW_CFG_CHANGES): Define.
* basic-block.h (PROP_ALLOW_CFG_CHANGES): Define.
	(PROP_FINAL): Include PROP_ALLOW_CFG_CHANGES.
	(propagate_block): Update prototype.
	* flow.c (update_life_info): Simplify the CFG and
	recalculate the global regs which are alive when
	removing dead code during a global update.
	(propagate_block): Return non-zero if an INSN is
	deleted.

From-SVN: r44403
2001-07-26 18:06:45 +00:00
Rainer Orth
62c62a4fde Makefile.in (LIBICONV): Define.
2001-07-26  Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>

	* Makefile.in (LIBICONV): Define.

From-SVN: r44401
2001-07-26 12:27:36 -04:00
Catherine Moore
06e937ed39 v850.h (ENCODE_SECTION_INFO): Change order of conditional to avoid tree checking errors.
* config/v850/v850.h (ENCODE_SECTION_INFO):  Change order
        of conditional to avoid tree checking errors.

From-SVN: r44400
2001-07-26 11:42:54 -04:00
Kazu Hirata
f302906571 regmove.c (regmove_optimize): Don't replace a reg with another reg of a different mode.
* regmove.c (regmove_optimize): Don't replace a reg with
	another reg of a different mode.

From-SVN: r44399
2001-07-26 15:23:07 +00:00
Andrew MacLeod
4a121cc34c params.def (PARAM_MAX_PENDING_LIST_LENGTH): Add parameter to limit length of dependancy flush list.
2001-07-26  Andrew MacLeod  <amacleod@redhat.com>

	* params.def (PARAM_MAX_PENDING_LIST_LENGTH): Add parameter to
	limit length of dependancy flush list.
	* params.h (MAX_PENDING_LIST_LENGTH): Define.
	* sched-int.h  (struct deps): Add pending_flush_length field.
	* sched-deps.c (flush_pending_lists): Last_pending_memory_flush now
	has 1 element in it.
	(sched_analyze_1): Use MAX_PENDING_LIST_LENGTH.
	(sched_analyze): After a jump, if the pending memory flush list is too
	large, flush the pending lists.
	(init_deps): Initialize pending_flush_length to 0.
	* doc/invoke.texi (max_pending_list_length): Document parameter.

From-SVN: r44398
2001-07-26 13:59:22 +00:00
Kriang Lerdsuwanakij
db3ef87b8a pt.c (tsubst_template_parms): Call maybe_fold_nontype_arg and tsubst_expr for default template arguments.
2001-07-22  Kriang Lerdsuwanakij  <lerdsuwa@users.sourceforge.net>

	* pt.c (tsubst_template_parms): Call maybe_fold_nontype_arg and
	tsubst_expr for default template arguments.

2001-07-22  Kriang Lerdsuwanakij  <lerdsuwa@users.sourceforge.net>

	* g++.old-deja/g++.pt/defarg14.C: New test.

From-SVN: r44396
2001-07-26 12:48:01 +00:00
Bryce McKinlay
fa397ddafb Calendar.java (set): Never recompute fields here.
* java/util/Calendar.java (set): Never recompute fields here. They
	will already be set if someone set time explicitly, and it can cause
	problems to do so. Don't invalidate AM_PM setting if HOUR is set.
	* java/util/GregorianCalendar.java (computeTime): Don't ignore an
	HOUR setting if AM_PM is set. Don't try to ensure the HOUR value is
	sane.
	* java/text/SimpleDateFormat.java (defaultCentury): New field.
	(readObject): Call set2DigitYearStart if appropriate so that
	defaultCentury is calculated.
	(SimpleDateFormat): Don't bother clearing calendar here. Call
	computeCenturyStart().
	(set2DigitYearStart): Calculate and set defaultCentury.
	(format): Don't clone the calendar. Use "calendar" not "theCalendar"
	everywhere.
	(parse): Likewise. If the pattern is "y" or "yy" and it found exactly
	2 numeric digits, use the 80-20 heuristic to parse the value into a
	default century based on defaultCenturyStart.
	(computeCenturyStart): Rewritten. Call set2DigitYearStart().

From-SVN: r44395
2001-07-26 12:21:45 +01:00
Daniel Jacobowitz
2cf50fd3a4 * Makefile.in (regex.o): Add dependency on config.h.
From-SVN: r44394
2001-07-26 08:41:40 +00:00
Nathan Sidwell
312b7c9dd9 spew.c (yylex): Only copy the token's lineno, if it is non-zero.
cp:
	* spew.c (yylex): Only copy the token's lineno, if it is
	non-zero.
testsuite:
	* g++.old-deja/g++.other/lineno5.C: New test.

From-SVN: r44391
2001-07-26 08:15:43 +00:00
Nathan Sidwell
648c220695 re PR c++/3624 (Internal error: Segmentation fault)
cp:
	PR c++/3624
	* call.c (resolve_args): Simplify, call
	convert_from_reference.
	(build_new_op): Resolve and convert from reference ARG1
	earlier. Adjust ARG2 & ARG3 resolve and conversion.
testsuite:
	* g++.old-deja/g++.pt/crash68.C: New test.

From-SVN: r44388
2001-07-26 08:12:00 +00:00
Nathan Sidwell
969fd501d6 re PR c++/3152 (g++-3.0 segfaults when compiling program using -g)
cp:
	* decl.c (last_function_parm_tags): Remove.
	(current_function_parm_tags): Remove.
	(init_decl_processing): Adjust.
	(start_function): Adjust.
	(store_parm_decls): Adjust.

	PR c++/3152
	* decl.c (grokdeclarator): Detect when a function typedef is
	declaring a function, and create last_function_parms correctly.
testsuite:
	* g++.old-deja/g++.other/crash42.C: New test.

From-SVN: r44387
2001-07-26 08:07:56 +00:00
GCC Administrator
4d10215152 Daily bump.
From-SVN: r44383
2001-07-26 07:16:10 +00:00
Neil Booth
440aabf865 toplev.c, [...]: Include xcoffout.h if appropriate.
* toplev.c, varasm.c, final.c: Include xcoffout.h if appropriate.
	* dbxout.c (dbxout_global_decl): Move outside #ifdef.
	* Makefile.in (varasm.o, final.o, toplev.o): Update dependencies.

From-SVN: r44382
2001-07-26 06:56:13 +00:00
Andreas Jaeger
a6ed70ef1d * analyze_brprob: Fix documentation.
From-SVN: r44381
2001-07-26 08:41:48 +02:00
Neil Booth
cef0d199d2 cpphash.h (struct_lexer_state): Delete was_skipping.
* cpphash.h (struct_lexer_state): Delete was_skipping.
	Move skipping here from struct cpp_reader.
	* cpplex.c (parse_identifier): Update.
	(_cpp_lex_token): Don't skip tokens in a directive.
	* cpplib.c (struct if_stack): Update.
	(start_directive, end_directive): Don't change skipping state.
	(_cpp_handle_directive): Update.
	(do_ifdef, do_ifndef, do_if, do_elif): Similarly.
	(do_else, do_endif): Update; only check for excess tokens if not
	in a skipped conditional block.
	(push_conditional): Update for new struct if_stack.

	* gcc.dg/cpp/extratokens.c: Fix.
	* gcc.dg/cpp/skipping2.c: New tests.

From-SVN: r44380
2001-07-26 06:02:47 +00:00
Graham Stott
2e824adbe4 function.c (locate_and_pad_parm): Also pad initial offset so that the total argument size also includes the padding.
* function.c (locate_and_pad_parm): Also pad initial offset
        so that the total argument size also includes the padding.

From-SVN: r44379
2001-07-26 05:45:25 +00:00
Graham Stott
66621f9e02 gensupport.c (alter_output_for_insn): Correct enable checking failure change XSTR to XTMPL.
* gensupport.c (alter_output_for_insn): Correct enable checking failure
        change XSTR to XTMPL.

        (process_one_cond_exec): Likewise

From-SVN: r44378
2001-07-26 05:44:18 +00:00
Graham Stott
5b16f5560b function.c (locate_and_pad_parm): Also pad initial offset so that the total argument size also includes the padding.
* function.c (locate_and_pad_parm): Also pad initial offset
        so that the total argument size also includes the padding.

        * gensupport.c (alter_output_for_insn): Correct enable checking failure
        change XSTR to XTMPL.

        (process_one_cond_exec): Likewise

From-SVN: r44377
2001-07-26 05:43:34 +00:00
H.J. Lu
3f19669a7c configure.target (cpu_include_dir): Set to `config/cpu/mips' for mips.
2001-07-25  H.J. Lu <hjl@gnu.org>

	* configure.target (cpu_include_dir): Set to `config/cpu/mips'
	for mips.

	* config/cpu/mips/bits/atomicity.h: New.

From-SVN: r44375
2001-07-25 22:04:48 -07:00
H.J. Lu
95b02d7e3a configure.target (cpu_include_dir): Set to `config/cpu/mips' for mips.
2001-07-25  H.J. Lu <hjl@gnu.org>

	* configure.target (cpu_include_dir): Set to `config/cpu/mips'
	for mips.

	* config/cpu/mips/bits/atomicity.h: New.

[[Split portion of a mixed commit.]]

From-SVN: r44374.2
2001-07-25 22:04:48 -07:00
Richard Henderson
17eee61c6d varasm.c (assemble_variable): Create DECL_RTL before setting TREE_ASM_WRITTEN.
* varasm.c (assemble_variable): Create DECL_RTL before setting
        TREE_ASM_WRITTEN.

From-SVN: r44372
2001-07-25 18:28:01 -07:00
Jan Hubicka
b0fd92a3c8 Fix typo spotted by Richard.
From-SVN: r44370
2001-07-25 22:36:42 +00:00
Jan Hubicka
c4f81e4a6b predict.c (estimate_probability): Avoid duplicated predictions.
* predict.c (estimate_probability): Avoid duplicated predictions.

	* loop.c (find_and_verify_loops): Grok multiple barriers.

From-SVN: r44369
2001-07-25 22:23:09 +00:00
Richard Kenner
472385a25f * config/alpha/alpha.c (print_operand, case '/'): Don't write '/'.
From-SVN: r44368
2001-07-25 18:08:05 -04:00
Richard Kenner
02e3f1a8e2 dbxout.c: Consistently use putc instead of fputc.
* dbxout.c: Consistently use putc instead of fputc.
 	(print_wide_int): New function; call instead of direct fprintf.
	(dbxout_type_index): Adjust calls of CHARS to be more accurate.
	(dbxout_type_fields, dbxout_type_method_1): Likewise.
	(dbxout_type_methods, dbxout_range_type, dbxout_type): Likewise.
	(print_int_cst_octal): Likewise.
	(print_octal): Show we wrote characters.
	(dbxout_type): Set have_used_extensions in more places.

From-SVN: r44367
2001-07-25 18:03:03 -04:00
Catherine Moore
f2d28b14f3 v850.c (v850_va_arg): Use addr instead of valist to build incr.
* config/v850/v850.c (v850_va_arg):  Use addr
        instead of valist to build incr.

From-SVN: r44366
2001-07-25 17:49:46 -04:00
Jan Hubicka
6e64a52a92 flow.c (delete_dead_jumptables): New function.
* flow.c (delete_dead_jumptables): New function.
	(life_analyzis): Call it.
	* bb-reorder.c (skip_insns_after_block): Handle contradictive sequences.

From-SVN: r44365
2001-07-25 20:51:24 +00:00
Richard Henderson
7f206d8f42 except.c (reachable_handlers): Handle a region being removed out from under a RESX.
* except.c (reachable_handlers): Handle a region being removed
        out from under a RESX.

From-SVN: r44363
2001-07-25 12:59:39 -07:00
Jason Merrill
2c938d4292 xfail until patch applied
From-SVN: r44361
2001-07-25 14:11:45 -04:00
Richard Henderson
56f19d9276 alpha.c (alpha_emit_conditional_move): Always swap GE/GT if its an fp comparison.
* config/alpha/alpha.c (alpha_emit_conditional_move): Always
        swap GE/GT if its an fp comparison.

From-SVN: r44360
2001-07-25 10:34:04 -07:00
Tom Tromey
a9e83c1b1b Makefile.in: Rebuilt.
* Makefile.in: Rebuilt.
	* Makefile.am (libgcj.jar): Correctly fail when bytecode
	compilation fails.

From-SVN: r44359
2001-07-25 16:40:04 +00:00
Jason Merrill
08ac397c04 call.c (joust): Only prefer a non-builtin candidate to a builtin one if...
* call.c (joust): Only prefer a non-builtin candidate to a builtin
        one if they have the same signature.

        * cvt.c (build_up_reference): Take DECL parm.  Check TREE_STATIC on
        it rather than toplevel_bindings_p.  Give it a mangled name if static.
        (convert_to_reference): Adjust.
        * decl2.c (get_temp_name): Lose.
        * mangle.c (mangle_ref_init_variable): New fn.
        (mangle_guard_variable): Strip the ref-init header.
        * cp-tree.h: Adjust.
        * decl.c (cp_finish_decl): Add the DECL_STMT after processing the
        initializer.
        (grok_reference_init): Always use DECL_INITIAL.

From-SVN: r44358
2001-07-25 11:04:32 -04:00
Jeffrey A Law
ea0eceb165 ssa.c (rename_insn_1): Do not wrap an assignment to a paradoxical SUBREG inside a SEQUENCE.
* ssa.c (rename_insn_1): Do not wrap an assignment to a
        paradoxical SUBREG inside a SEQUENCE.  Fix minor formatting
        glitch.

From-SVN: r44357
2001-07-25 08:41:35 -06:00
Andrew Haley
3237ac1875 alias.c (rtx_equal_for_memref_p): Allow strings as types in operands.
2001-07-19  Andrew Haley  <aph@cambridge.redhat.com>

	* alias.c (rtx_equal_for_memref_p): Allow strings as types in
	operands.

From-SVN: r44356
2001-07-25 14:38:29 +00:00
Jeffrey A Law
42f28de90b ssa-ccp.c (visit_expression): Handle CALL_INSNs that can throw an exception.
* ssa-ccp.c (visit_expression): Handle CALL_INSNs that can
        throw an exception.
        (visit_expression): When attempting to simplify an expression,
        retrieve any modes for arguments before they are simplified
        to constants.

From-SVN: r44355
2001-07-25 08:23:08 -06:00
Andrew MacLeod
7c2b017c9a stmt.c (expand_goto): A nonlocal goto can be a call too.
2001-07-25  Andrew MacLeod  <amacleod@redhat.com>
	    Janis Johnson  <janis@us.ibm.com>

	* stmt.c (expand_goto): A nonlocal goto can be a call too.
	* builtins.c (expand_builtin_longjmp): Reverse label and static chain
	pointer parameters to match documented usage of nonlocal_goto.
	* config/ia64/ia64.md (nonlocal_goto): Revert label and static chain
	parameters to their correct order.
	* config/sparc/sparc.md (nonlocal_goto): Revert label and static chain
	parameters to their correct order.

Co-Authored-By: Janis Johnson <janis@us.ibm.com>

From-SVN: r44353
2001-07-25 13:33:17 +00:00