Commit Graph

28538 Commits

Author SHA1 Message Date
Jeff Law
e483d5cc05 * Makefile.in (objalloc.o): Depend on config.h
From-SVN: r34275
2000-05-30 15:06:31 -06:00
Richard Henderson
48b710ddb7 * bb-reorder.c (emit_jump_to_block_after): Protect use of HAVE_return.
From-SVN: r34274
2000-05-30 14:02:06 -07:00
Bruce Korb
7ae2112bd2 restore old algorighm for char_macro_*_fix routines
From-SVN: r34273
2000-05-30 20:55:50 +00:00
Jeff Law
fc84333959 Split the ChangeLog
From-SVN: r34272
2000-05-30 14:50:33 -06:00
Bruce Korb
22e50c5bb9 restore old algorighm for char_macro_*_fix routines
From-SVN: r34271
2000-05-30 20:24:44 +00:00
Bruce Korb
26e903eefb diff of diff does not work well, so use expected test result files
From-SVN: r34270
2000-05-30 19:41:37 +00:00
Mark Mitchell
54ae96de89 * call.c (joust): Fix handling of overloaded builtin operators.
From-SVN: r34269
2000-05-30 17:39:59 +00:00
Richard Henderson
28ecb7ab47 alpha.md (*setne_internal): Use match_operator instead of working down from insn.
* config/alpha/alpha.md (*setne_internal): Use match_operator
        instead of working down from insn.

From-SVN: r34268
2000-05-30 08:52:03 -07:00
Zack Weinberg
935d1834f1 cp-tree.h (DECL_ANTICIPATED): New macro.
* cp-tree.h (DECL_ANTICIPATED): New macro.
	Document new use of DECL_LANG_FLAG_7.
	* decl.c (builtin_function): Set DECL_ANTICIPATED on builtins
	in the user namespace.
	* lex.c (do_identifier): If the identifier's declaration has
	DECL_ANTICIPATED on, it has not yet been declared.  But do not
	replace it with an ordinary implicit declaration.

	* tinfo2.cc: Include stdlib.h.

From-SVN: r34267
2000-05-30 15:44:20 +00:00
Philipp Thomas
7758b73fae * MAINTAINERS: Add self as i18n maintainer
From-SVN: r34266
2000-05-30 14:46:26 +00:00
Kaveh R. Ghazi
7f094a9477 * invoke.texi (-Wtraditional): Update WRT function macros.
From-SVN: r34265
2000-05-30 14:37:22 +00:00
Jason Merrill
4003d7f9e6 update explicit instantiation docs
From-SVN: r34264
2000-05-30 04:47:25 -04:00
Philippe De Muyter
d3a36404ba * except.c (free_exception_table): Do not free NULL.
From-SVN: r34263
2000-05-30 07:58:30 +00:00
Jeff Law
79368e3fe2 Daily bump.
From-SVN: r34262
2000-05-30 01:45:07 -06:00
Richard Henderson
4cb1433cad Document FUNCTION_OK_FOR_SIBCALL.
From-SVN: r34261
2000-05-29 23:12:37 -07:00
Zack Weinberg
37dbf7aa9c cpplib.c (do_if): Don't save and restore only_seen_white here.
* cpplib.c (do_if): Don't save and restore only_seen_white here.
	* cppexp.c (_cpp_parse_expr): Save and restore only_seen_white
	and skipping here.

From-SVN: r34260
2000-05-30 02:40:48 +00:00
Richard Earnshaw
6a3dbe6543 flow.c (mark_used_reg): If a register is unconditionally live, remove any conditional death information.
* flow.c (mark_used_reg): If a register is unconditionally live,
remove any conditional death information.

From-SVN: r34259
2000-05-29 22:37:37 +00:00
Richard Henderson
b1a9f6a07a final.c (current_output_insn): New.
* final.c (current_output_insn): New.
        (final_scan_insn): Set it.
        * output.h: Declare it.

From-SVN: r34258
2000-05-29 15:02:42 -07:00
Richard Henderson
c5daf9c4e9 * stor-layout.c (finalize_record_size): Fix typo.
From-SVN: r34257
2000-05-29 14:46:43 -07:00
Richard Henderson
5cb7d6b405 jump.c (redirect_jump): Don't emit NOTE_INSN_FUNCTION_END if nlabel is null.
* jump.c (redirect_jump): Don't emit NOTE_INSN_FUNCTION_END
        if nlabel is null.

From-SVN: r34256
2000-05-29 14:39:55 -07:00
Zack Weinberg
4e2c85f6d2 concatstr.c, exh.c: Include stdlib.h and string.h.
* concatstr.c, exh.c: Include stdlib.h and string.h.
	* delaycase.c, eqstr.c, memmove.c, printbuffer.c,
	printevent.c, sendbuffer.c, waitbuffer.c: Include string.h.

From-SVN: r34255
2000-05-29 19:34:51 +00:00
Zack Weinberg
d11ec6f0d9 hashtab.c, [...]: Include string.h if HAVE_STRING_H.
* hashtab.c, partition.c, sort.c, xmemdup.c: Include string.h
	if HAVE_STRING_H.
	* pexecute.c, xexit.c: Include stdlib.h if HAVE_STDLIB_H.
	* objalloc.c: Include config.h.  Include stdlib.h and don't
	declare malloc or free if HAVE_STDLIB_H.
	* strerror.c, strsignal.c: Include stdlib.h if HAVE_STDLIB_H,
	else declare malloc without prototype.  Include string.h if
	HAVE_STRING_H, else declare memset without prototype.  Don't
	include stddef.h.

From-SVN: r34254
2000-05-29 19:33:52 +00:00
Zack Weinberg
ea4a453b89 cpplib.h (cpp_reader): Remove if_stack.
* cpplib.h (cpp_reader): Remove if_stack.  Change
	potential_control_macro to a cpp_hashnode *.  Add skipping flag.
	* cpphash.h (struct ihash): Change control_macro to a
	cpp_hashnode * and shorten name to cmacro.
	Add NEVER_REINCLUDE constant.

	* cppfiles.c (redundant_include_p): Drop cpp_reader argument.
	Examine the cmacro node directly, no need to call cpp_defined.
	(_cpp_execute_include, read_include_file): Set cmacro to
	NEVER_REINCLUDE, not U"".
	* cpplex.c (cpp_push_buffer): Don't set new->if_stack.
	(cpp_get_token): If pfile->skipping is true, discard text and
	keep scanning until we hit a directive; don't expand macros.

	* cpplib.c (struct if_stack): Remove if_succeeded, add
	was_skipping. Change control_macro to a cpp_hashnode * and
	shorten name to cmacro.  Remove typedef IF_STACK.
	(parse_ifdef), detect_if_not_defined): Return a cpp_hashnode *.
	(conditional_skip, skip_if_group,
	consider_directive_while_skipping): Delete.
	(push_conditional): New.
	(_cpp_handle_directive): Don't process directives other than
	conditionals if we are skipping.

	(do_ifdef, do_ifndef, do_if, do_else, do_elif, do_endif):
	Update to new scheme.
	(validate_else): Skip rest of line here, unconditionally.
	(_cpp_unwind_if_stack): The stack is per-buffer.  Force
	pfile->skipping off.

	(all): Remove `scare quotes' from error messages.

	* gcc.dg/cpp-mi.c: Add another case, cpp-mix.h, where the
	guard macro is already defined when the header is first
	included.
	* gcc.dg/cpp-mix.h: New file.
	* gcc.dg/endif-label.c: Update patterns to match compiler.

	* g++.brendan/complex1.C: Declare abort.
	* g++.law/refs4.C: Remove XFAIL.
	* g++.oliva/expr2.C: Declare abort and exit.

From-SVN: r34253
2000-05-29 16:19:32 +00:00
Mark Mitchell
1b50716d21 cp-tree.h (CLASSTYPE_ALIGN_UNIT): New macro.
* cp-tree.h (CLASSTYPE_ALIGN_UNIT): New macro.
	* class.c (layout_empty_base): Use CLASSTYPE_ALIGN_UNIT, not
	CLASSTYPE_ALIGN.

From-SVN: r34252
2000-05-29 15:35:06 +00:00
Richard Henderson
86c8265412 function.c (emit_return_into_block): New line_note arg; emit it.
* function.c (emit_return_into_block): New line_note arg; emit it.
        (thread_prologue_and_epilogue_insns): Attempt to locate a line note
        for the close brace to accompany HAVE_return.  Move all line notes
        following the epilogue to before the NOTE_INSN_EPILOGUE_BEG.

From-SVN: r34251
2000-05-29 01:18:30 -07:00
Richard Henderson
8f4773eae7 longlong.h [__alpha] (count_leading_zeros): New.
* longlong.h [__alpha] (count_leading_zeros): New.
        (count_trailing_zeros): New.
        (COUNT_LEADING_ZEROS_0): New.

        * config/alpha/alpha.c (alpha_zero_comparison_operator): New.
        (alpha_split_conditional_move): New.
        * config/alpha/alpha-protos.h: Prototype them.
        * config/alpha/alpha.h (PREDICATE_CODES): Update.
        (CPP_CPU_DEFAULT_SPEC): Fix typo for EV67.
        * config/alpha/alpha.md: Update ffs cix commentary.
        (*ze_and_ne): New.
        (*nabssf2, *nabsdf2): New.
        (*mov[qhsd]icc_internal): Use add_operand.
        (if_then_else constant splitters): New.
        (*cmp_sadd_di, *cmp_sadd_si, *cmp_sadd_sidi): New.
        (*cmp_ssub_di, *cmp_ssub_si, *cmp_ssub_sidi): New.

From-SVN: r34250
2000-05-29 00:52:26 -07:00
Jeff Law
e2c7a29e97 Daily bump.
From-SVN: r34249
2000-05-29 01:45:08 -06:00
Richard Henderson
d41638e4c5 combine.c (force_to_mode): Convert subtraction from a constant to NEG or NOT when conditions allow.
* combine.c (force_to_mode) [MINUS]: Convert subtraction from
        a constant to NEG or NOT when conditions allow.

From-SVN: r34248
2000-05-29 00:40:51 -07:00
Richard Henderson
085f17143f combine.c (combine_simplify_rtx): Don't create an if_then_else unless both args are general_operand.
* combine.c (combine_simplify_rtx): Don't create an if_then_else
        unless both args are general_operand.  Don't canonicalize plus
        to ior unless it helps.

From-SVN: r34247
2000-05-29 00:29:13 -07:00
Richard Henderson
7b40bc6bda toplev.c (rest_of_compilation): Set no_new_pseudos after flow1; instead track register_life_up_to_date.
* toplev.c (rest_of_compilation): Set no_new_pseudos after flow1;
        instead track register_life_up_to_date.  Toggle no_new_pseudos
        around if_convert.

From-SVN: r34246
2000-05-29 00:09:53 -07:00
Bryce McKinlay
f192590a79 re GNATS gcj/242 (Compiler generates call to wrong method from inner class)
2000-05-29  Bryce McKinlay  <bryce@albatross.co.nz>

	* libjava.lang/PR242.java: New file. PR gcj/242.

From-SVN: r34245
2000-05-29 06:26:14 +01:00
Geoff Keating
37c67319e1 rs6000.c (output_cbranch): Escape '%' characters so output_operand doesn't see them.
* config/rs6000/rs6000.c (output_cbranch): Escape '%' characters
so output_operand doesn't see them.

From-SVN: r34244
2000-05-29 05:18:03 +00:00
Clinton Popetz
1270c25504 lcm.c (make_preds_opaque): Fix comment.
* lcm.c (make_preds_opaque): Fix comment.
	(optimize_mode_switching): Use NORMAL_MODE instead of
	MODE_USES_IN_EXIT_BLOCK.  Change leftover instance of
	FP_MODE_NONE to no_mode.  Rename MODE_AT_ENTRY to NORMAL_MODE.
	Handle insertions before an existing NOTE_INSN_BASIC_BLOCK.
	* tm.texi (OPTIMIZE_MODE_SWITCHING): Refer to NORMAL_MODE.
	(MODE_USES_IN_EXIT_BLOCK): Delete.
	(MODE_AT_ENTRY) Rename to NORMAL_MODE.
	* sh.h (MODE_USES_IN_EXIT_BLOCK): Delete.
	(MODE_AT_ENTRY): Rename to NORMAL_MODE.
	(MODE_NEEDED): Don't look for USE.
	(EPILOGUE_USES): Define.

From-SVN: r34243
2000-05-28 19:40:20 -04:00
Alexandre Oliva
bb078eb403 * gcc.c-torture/execute/20000528-1.c: New test.
From-SVN: r34242
2000-05-28 23:31:55 +00:00
Philippe De Muyter
d7bfe26780 * mklibgcc.in (all): Variable initialised to `libgcc'.
From-SVN: r34241
2000-05-28 21:52:37 +00:00
Gabriel Dos Reis
6f5ef761df toplev.h (skip_leading_substring): New macro.
2000-05-28  Gabriel Dos Reis  <gdr@codesourcery.com>

        * toplev.h (skip_leading_substring): New macro.
        * toplev.c (decode_f_option): Use skip_leading_substring instead
        of strncmp.
        (decode_W_option): Likewise.

cp/

2000-05-28  Gabriel Dos Reis  <gdr@codesourcery.com>

        * decl2.c (lang_decode_option): Use skip_leading_substring instead
        of plain strncmp.

From-SVN: r34240
2000-05-28 21:22:12 +00:00
Nick Clifton
055177dc83 Docuement that CONSITIONAL_REGISTER_USAGE can modify reg_names.
From-SVN: r34239
2000-05-28 21:08:51 +00:00
Richard Henderson
9ef07cf1d4 regclass.c (record_operand_costs): Protect reg_changes_size with CLASS_CANNOT_CHANGE_SIZE.
* regclass.c (record_operand_costs): Protect reg_changes_size
        with CLASS_CANNOT_CHANGE_SIZE.

From-SVN: r34238
2000-05-28 13:39:51 -07:00
Richard Henderson
f83ed23817 * loop.c (instrument_loop_bct): Set JUMP_LABEL on the new insn.
From-SVN: r34237
2000-05-28 13:01:28 -07:00
Alexandre Oliva
97b0694adc Remove duplicate name and extraneous blank line
From-SVN: r34236
2000-05-28 17:36:14 +00:00
Alexandre Oliva
5ac707b8d5 refs4.C: Mark as XFAIL.
* g++.old-deja/g++.law/refs4.C: Mark as XFAIL.
* g++.old-deja/g++.law/temps4.C: Likewise.

From-SVN: r34235
2000-05-28 17:35:16 +00:00
Alexandre Oliva
7fcc15aa32 * expr2.C: New test.
From-SVN: r34234
2000-05-28 14:20:27 +00:00
Alexandre Oliva
e801c5c267 code-gen4.C: Include stdio.h and stdlib.h.
* g++.old-deja/g++.brendan/code-gen4.C: Include stdio.h and
stdlib.h.  Call abort() on failure.
* g++.old-deja/g++.law/refs4.C: Likewise.
* g++.old-deja/g++.law/temps4.C: Likewise.
* g++.old-deja/g++.brendan/complex1.C: Don't assume argc is 1.
* gcc.c-torture/execute/20000112-1.c: Include string.h.

From-SVN: r34233
2000-05-28 13:42:47 +00:00
Alexandre Oliva
9193780a0e operators.def (<?): Duplicated, should have been...
* operators.def (<?): Duplicated, should have been...
(>?): this.  Fixed.

From-SVN: r34232
2000-05-28 13:24:58 +00:00
Toon Moene
6c2a6a8514 bugs.texi: Note that debugging information for common block items is emitted now.
2000-05-28  Toon Moene  <toon@moene.indiv.nluug.nl>

	* bugs.texi: Note that debugging information for
	common block items is emitted now.
	* news.texi: Ditto.

From-SVN: r34231
2000-05-28 12:34:53 +00:00
Richard Henderson
5828d72574 function.c (diddle_return_value): A pcc-style struct return returns a pointer.
* function.c (diddle_return_value): A pcc-style struct return
        returns a pointer.

From-SVN: r34230
2000-05-28 05:31:40 -07:00
Jeff Law
6745c1b9dd Daily bump.
From-SVN: r34229
2000-05-28 01:45:07 -06:00
Zack Weinberg
f8f769ea4e cppfiles.c: Read files in, using mmap if possible, then prescan them separately.
* cppfiles.c: Read files in, using mmap if possible, then
	prescan them separately.
	(read_file, read_with_read): New functions.
	* cpplex.c: Don't define UCHAR_MAX.
	(_cpp_read_and_prescan): Rename to _cpp_prescan.  Don't read
	the file here.

	* cppinit.c (handle_option): Automatically define __cplusplus,
	__OBJC__, __ASEEMBLER__, _LANGUAGE_FORTRAN here when we see
	the respective -lang switch.

	* cpphash.h (enum node_type, struct hashnode, _cpp_lookup
	prototype): Move to...
	* cpplib.h: ... here.  Rename struct hashnode to struct
	cpp_hashnode and give it a typedef.  Rename _cpp_lookup to
	cpp_lookup.  Add 'fe_value' slot, a union tree_node *.

From-SVN: r34228
2000-05-28 05:56:38 +00:00
Geoff Keating
e79f71f73d rs6000.md (movsi): Constify 'name'.
* config/rs6000/rs6000.md (movsi): Constify 'name'.

* regclass.c [CLASS_CANNOT_CHANGE_SIZE]
(class_can_change_size): New variable.
(reg_changes_size): New variable.
(init_reg_sets_1): Initialise class_can_change_size.
(record_operand_costs): Remove subreg_changes_size.
Don't pass it around.  Instead update reg_changes_size.
(regclass): Initialise and free reg_changes_size.  If a register
changes size, don't preference it to a class that contains
registers that can't change size.
(record_reg_classes): Don't look at subreg_changes_size.

From-SVN: r34227
2000-05-28 05:51:16 +00:00
Zack Weinberg
d2b51b106a Relative to g++.dg/special:
* conpr-1.C, conpr-2.C, conpr-3.C: Include stdlib.h.

	Relative to g++.old-deja:
	* g++.brendan/complex1.C, g++.jason/optimize2.C,
	g++.mike/p9732b.C, g++.other/addrof1.C, g++.other/dyncast5.C,
	g++.other/init5.C, g++.other/init7.C, g++.other/union2.C,
	g++.pt/vbase1.C, g++.robertl/eb14.C, g++.robertl/eh990323-1.C,
	g++.robertl/eh990323-2.C, g++.robertl/eh990323-3.C,
	g++.robertl/eh990323-4.C, g++.robertl/eh990323-5.C,
	g++.robertl/ice990323-2.C: Prototype exit and/or abort.

	* g++.brendan/nest21.C, g++.eh/rethrow3.C, g++.jason/init3.C,
	g++.law/arm15.C, g++.law/cvt2.C, g++.law/visibility17.C,
	g++.mike/eh23.C, g++.mike/eh25.C, g++.mike/eh34.C,
	g++.mike/eh48.C, g++.mike/eh55.C, g++.mike/p2736.C,
	g++.oliva/new1.C, g++.other/align.C, g++.robertl/eb39.C,
	g++.robertl/eb54.C, g++.robertl/eb63.C: Include stdlib.h
	and/or string.h.

	* g++.other/goto1.C: Update expectations for error messages.

From-SVN: r34226
2000-05-28 05:38:02 +00:00