Commit Graph

29303 Commits

Author SHA1 Message Date
Jakub Jelinek
ba62473eba atomicity.h (__exchange_and_add): Use extended word instructions to match 64bit _Atomic_word.
2000-07-20  Jakub Jelinek  <jakub@redhat.com>

        * config/cpu/sparc/sparc64/bits/atomicity.h (__exchange_and_add):
        Use extended word instructions to match 64bit _Atomic_word.
        (__atomic_add): Likewise.
        * math/clog10l.c (clog10l): Use M_PIl if defined.
        * math/c_logl.c (c_logl): Likewise.
        * math/signbitl.c (__signbitl): Adapt for IEEE quad long doubles.
        * math/mathconf.h (ieee_quad_double_shape_type): New type.
        (GET_LDOUBLE_MSW64): New define.

From-SVN: r35166
2000-07-21 01:01:00 +00:00
Geoff Keating
538befca2c aix43.h (CPP_SPEC): Define __LONG_MAX__ correctly in 64-bit mode.
* config/rs6000/aix43.h (CPP_SPEC): Define __LONG_MAX__ correctly
in 64-bit mode.
* glimits.h: Don't do #if defined for ARCH_PPC.

From-SVN: r35165
2000-07-21 00:47:27 +00:00
Geoff Keating
a9098fd024 rs6000.h (ASM_OUTPUT_SPECIAL_POOL_ENTRY_P): All constants of size no larger than a pointer should go in the TOC.
* config/rs6000/rs6000.h (ASM_OUTPUT_SPECIAL_POOL_ENTRY_P): All
constants of size no larger than a pointer should go in the TOC.
Add 'MODE' parameter.
(LEGITIMIZE_RELOAD_ADDRESS): Add MODE parameter to
ASM_OUTPUT_SPECIAL_POOL_ENTRY_P.
(ASM_OUTPUT_SPECIAL_POOL_ENTRY): Likewise.
* config/rs6000/aix.h (SELECT_RTX_SECTION): Likewise.
* config/rs6000/netware.h (SELECT_RTX_SECTION): Likewise.
* config/rs6000/rs6000.c (constant_pool_expr_1): Likewise.
(rs6000_legitimize_address): Likewise.
(rs6000_emit_move): Likewise.
(rs6000_select_rtx_section): Likewise.
(output_toc): Deal properly with outputting small constants like
HImode, and SFmode in 32-bit mode, and DFmode in 64-bit mode.
* config/rs6000/sysv4.h (ASM_OUTPUT_SPECIAL_POOL_ENTRY_P): Add
MODE parameter.  Put small constants in the TOC.

* config/rs6000/rs6000.c (easy_fp_constant_p): All constants are
easy in SImode.
(rs6000_emit_move): When reload calls us with an illegitimate
address, exit early.  Move the change_address calls to one place
at the end of the routine.  Merge the SImode and DImode expanders.
When called by reload to put an integer into a FP register, force
it to memory.

* config/rs6000/rs6000.c (struct toc_hash_struct): Add 'key_mode'
field.
(rs6000_hash_constant): Hash mode too.
(toc_hash_function): Allow for key_mode.
(toc_hash_eq): Structures are different if key_mode differs.
(output_toc): Add 'mode' parameter.  Save key_mode.
* config/rs6000/rs6000.h (ASM_OUTPUT_SPECIAL_POOL_ENTRY):
Pass 'mode' parameter.
* config/rs6000/rs6000-protos.h (output_toc): Add 'mode' param.

From-SVN: r35164
2000-07-21 00:46:23 +00:00
Geoff Keating
89c01f0e75 rs6000.c (output_toc): Use RS6000_OUTPUT_BASENAME for vtable references.
* config/rs6000/rs6000.c (output_toc): Use RS6000_OUTPUT_BASENAME
for vtable references.

From-SVN: r35163
2000-07-21 00:45:19 +00:00
Geoff Keating
1e66d55591 rs6000.h (PREFERRED_RELOAD_CLASS): If we have a choice, don't put integer values in FP regs.
* config/rs6000/rs6000.h (PREFERRED_RELOAD_CLASS): If we have a
choice, don't put integer values in FP regs.

From-SVN: r35162
2000-07-21 00:44:14 +00:00
Christopher Faylor
21f096b3a9 Update Windows maintainers.
From-SVN: r35161
2000-07-21 00:40:22 +00:00
Jeffrey A Law
6ff71a97b1 flow.c (verify_flow_info): Revamp code to verify that the head and end of each basic block are in the insn...
* flow.c (verify_flow_info): Revamp code to verify that the
        head and end of each basic block are in the insn chain.

From-SVN: r35160
2000-07-20 18:15:44 -06:00
Alexandre Petit-Bianco
11b26d723e ChangeLog to fixes to gcj/242, gcj/249, gcj/239, gcj/225 and gcj/256:
http://gcc.gnu.org/ml/gcc-patches/2000-07/msg00801.html

From-SVN: r35159
2000-07-20 17:14:35 -07:00
Michael Matz
274969ea8e gcse.c (record_one_set): Prepend instead of append onto reg_set_table, making it O(n) instead O(n^2).
* gcse.c (record_one_set): Prepend instead of append onto
        reg_set_table, making it O(n) instead O(n^2).
        * lcm.c (compute_antinout_edge,compute_laterin,compute_available):
        Use a queue instead of a stack as worklist.

From-SVN: r35158
2000-07-20 18:07:33 -06:00
Benjamin Kosnik
7be50fd30f [multiple changes]
2000-07-20  Benjamin Kosnik  <bkoz@cygnus.com>

	* bits/std_streambuf.h: Add bits for pback buffers here, so that
	in_avail, etc can use them.
	* bits/std_fstream.h: Ditto.
	* bits/fstream.tcc: Ditto.
	* testsuite/27_io/filebuf.cc: Tweaks.
	* testsuite/27_io/filebuf-3.tst: Correct for pbackfail bits.

2000-07-19  Benjamin Kosnik  <bkoz@cygnus.com>

	* src/localename.cc: Same.
	* src/locale.cc: Same.
	* bits/localefwd.h: _M_init_facet to _M_facet_init.

	* bits/locale_facets.h: _M_init_boolnames to _M_boolnames_init.

	* bits/std_sstream.h: Change _M_init_stringbuf to _M_stringbuf_init.

	* bits/fstream.tcc: Change _M_init_filebuf to _M_filebuf_init.
	* bits/std_fstream.h: Same.

	* bits/basic_string.h: Tweaks.

From-SVN: r35157
2000-07-21 00:06:51 +00:00
Alexandre Petit-Bianco
4dbf449657 [multiple changes]
2000-07-13  Alexandre Petit-Bianco  <apbianco@cygnus.com>

	* parse.y (patch_method_invocation): Fixed comment.
	(maybe_use_access_method): Build this$<n>s to the context of the
	target method, or a type that extends it. Fixes gcj/242.

2000-07-13  Alexandre Petit-Bianco  <apbianco@cygnus.com>

	* parse.y (not_accessible_p): Access granted to innerclasses
	(indirectly) extending the reference type. Fixes gcj/249.

2000-07-10  Alexandre Petit-Bianco  <apbianco@cygnus.com>

	* parse.y (resolve_qualified_expression_name): Verify qualified
	access to `this.' Fixes gcj/239.

2000-07-10  Alexandre Petit-Bianco  <apbianco@cygnus.com>

	* class.c (set_super_info): Handled protected inner classes.
	(common_enclosing_context_p): Bail early if arguments aren't both
	inner classes.
	(get_access_flags_from_decl): Handle private and protected inner
	classes.
	* java-tree.h (TYPE_PROTECTED_INNER_CLASS): New macro.
	(CLASS_PROTECTED): Likewise.
	(struct lang_type): New bitfield `poic.'
	* parse.y (jdep_resolve_class): Call check_inner_class_access on
	inner classes only.
	(check_inner_class_access): Renamed arguments, added
	comments. Handles protected inner classes (fixes gcj/225)
	(not_accessible_p): Fixed comments. Avoid handling inner classes.

2000-07-07  Alexandre Petit-Bianco  <apbianco@cygnus.com>

	* parse.y (resolve_qualified_expression_name): Handle inner class
	access. Fixes gcj/256.

(Fixes gcj/242, gcj/249, gcj/239, gcj/225 and gcj/256:
 http://gcc.gnu.org/ml/gcc-patches/2000-07/msg00801.html)

From-SVN: r35156
2000-07-20 17:01:43 -07:00
Kazu Hirata
c59ff527c5 h8300.c (two_insn_adds_subs_operand): Fix a typo.
* h8300.c (two_insn_adds_subs_operand): Fix a typo.
        * h8300.h (OK_FOR_T): New.
        (EXTRA_CONSTRAINT): Support OK_FOR_T.
        * h8300.md: Use inc/dec.[wl] for increment/decrement
        by 1 and 2 in HI and SI modes.

From-SVN: r35155
2000-07-20 15:34:07 -06:00
Jim Wilson
591eb4baa8 Fix out-of-range immediate for large thunk offset.
* config/ia64/ia64.h (ASM_OUTPUT_MI_THUNK): Handle DELTA values
	larger than 14 bits.

From-SVN: r35154
2000-07-20 14:27:15 -07:00
Joseph Myers
e995813266 cplus-dem.c (demangle_fund_type): Make 'dec' an unsigned int, and print it with %u.
* cplus-dem.c (demangle_fund_type): Make 'dec' an unsigned int,
        and print it with %u.

From-SVN: r35153
2000-07-20 13:58:34 -06:00
Tom Tromey
266a442034 * scripts/showval.java: New file.
From-SVN: r35152
2000-07-20 19:35:43 +00:00
Tom Tromey
7f8a07dbea classes.pl (scan): Print inner classes properly.
* scripts/classes.pl (scan): Print inner classes properly.
	* gcj/javaprims.h: Updated class list.

From-SVN: r35151
2000-07-20 19:34:29 +00:00
Tom Tromey
5e5c1371d3 natClassLoader.cc (_Jv_PrepareCompiledClass): Only initialize String fields for interpreted classes.
* java/lang/natClassLoader.cc (_Jv_PrepareCompiledClass): Only
	initialize String fields for interpreted classes.  Fixes bug
	reported by Hans Boehm.

From-SVN: r35150
2000-07-20 19:31:16 +00:00
Tom Tromey
373d3b1863 File.java (getParentFile): New method, from Classpath via Oskar Liljeblad.
* java/io/File.java (getParentFile): New method, from Classpath
	via Oskar Liljeblad.

From-SVN: r35149
2000-07-20 19:29:14 +00:00
Tom Tromey
75723df4d3 * java/util/Vector.java (remove(Object)): Implemented.
From-SVN: r35148
2000-07-20 19:27:57 +00:00
Zack Weinberg
983318fc16 old-dejagnu.exp: Check for both "Internal compiler error" and "Internal error".
* lib/old-dejagnu.exp: Check for both "Internal compiler error"
	and "Internal error".

From-SVN: r35147
2000-07-20 18:04:46 +00:00
Zack Weinberg
6fee6033e7 cppmacro.c (CAN_PASTE_AFTER): New macro.
* cppmacro.c (CAN_PASTE_AFTER): New macro.
	(count_params): Don't set GNU_REST_ARGS on anything.
	(save_expansion): Set PASTE_LEFT only on tokens for which
	CAN_PASTE_AFTER is true, or which are named operators.

	* cpplex.c (parse_args): Distinguish between a rest argument
	given one empty argument, and a rest argument given zero arguments.
	(maybe_paste_with_next): Look for VOID_REST tag, and trigger
	deletion of previous token based on that.
	(get_raw_token): Flatten some control structure.

	* cpplib.h (CPP_LAST_EQ): Correct.
	(VOID_REST): New token flag.
	(GNU_REST_ARGS): Delete.

	* gcc.dg/cpp/20000625-2.c, gcc.dg/cpp/macsyntx.c: Update error
	regexps.
	* gcc.dg/cpp/paste6.c: New test.

From-SVN: r35146
2000-07-20 17:57:38 +00:00
Zack Weinberg
1e18a243c2 [multiple changes]
2000-07-20  Zack Weinberg  <zack@wolery.cumb.org>

	* tradcpp.c (main): Don't munge -D options.
	(make_definition): Bring -D handling in line with cpplib.
	(do_define): Strip all leading whitespace from macro definitions.

2000-07-20  David Billinghurst <David.Billinghurst@riotinto.com.au>

	* Makefile.in (tradcpp): Depend on intl.o and version.o.

From-SVN: r35145
2000-07-20 17:14:23 +00:00
Bruce Korb
5685bed383 new test result
From-SVN: r35144
2000-07-20 13:36:04 +00:00
Bruce Korb
a83b3e4f5d use platform specific types in gnu_type_fix
From-SVN: r35143
2000-07-20 13:29:29 +00:00
Jeff Law
038cc6b420 Daily bump.
From-SVN: r35142
2000-07-20 01:45:09 -06:00
H.J. Lu
15794a9567 Applied H.J.Lu's patch to not require -lpthread when compiling single threaded Objective-C programs.
From-SVN: r35141
2000-07-20 07:27:26 +00:00
Jim Wilson
0ea1e106b2 Fix for abort while compiling PlumHall.
* config/ia64/ia64.h (HARD_REGNO_MODE_OK): Don't allow XFmode in
	GR_REGS.

From-SVN: r35140
2000-07-19 16:02:03 -07:00
Zack Weinberg
53fdf0be63 tradcpp.c (rescan): Do not recognize directives when the # is indented.
* tradcpp.c (rescan): Do not recognize directives when the #
	is indented.

	* gcc.dg/cpp/tr-direct.c: New test.

From-SVN: r35139
2000-07-19 20:37:26 +00:00
Phil Edwards
0fab9d0a5d howto.html: Update.
2000-07-19  Phil Edwards  <pme@sourceware.cygnus.com>

	* docs/18_support/howto.html:  Update.

From-SVN: r35138
2000-07-19 20:20:51 +00:00
Zack Weinberg
92936ecf1a cpplib.h (TTYPE_TABLE): Move CPP_MIN and CPP_MAX into block of operators allowed in #if...
* cpplib.h (TTYPE_TABLE): Move CPP_MIN and CPP_MAX into block
	of operators allowed in #if and having an _EQ variant.  Add
	CPP_MIN_EQ, CPP_MAX_EQ, and CPP_DEFINED.
	(cpp_token flags): Add NAMED_OP.
	(enum node_type): Add T_OPERATOR.
	(struct cpp_hashnode): Add code slot to value union.
	* cpphash.h (spec_nodes): Remove n_defined.

	* cpplex.c (lex_line): Convert T_OPERATOR nodes to their proper types.
	(spell_token, can_paste, maybe_paste_with_next): Handle named operators.
	(is_macro_disabled): Tweak error messages.

	* cpplib.c (get_define_node): Disallow all named operators as
	macro names.  Tweak error messages.
	(_cpp_init_stacks): Don't set up spec_nodes->n_defined.

	* cppinit.c (builtin_array): Add entries for the named operators.
	* cppexp.c (lex): Check for CPP_DEFINED token.
	(priority table): Add entries for CPP_MIN and CPP_MAX.
	(_cpp_parse_expr): Handle CPP_MIN and CPP_MAX.

testsuite:
	* gcc.dg/cpp/directiv.c, gcc.dg/cpp/macsyntx.c,
	gcc.dg/cpp/undef1.c: Tweak error regexps.

From-SVN: r35137
2000-07-19 20:18:08 +00:00
Bernd Schmidt
b86db3ebc2 Additional ENABLE_CHECKING code.
From-SVN: r35136
2000-07-19 17:22:01 +00:00
Jeff Sturm
5cc80caa27 natThrowable.cc (fillInStackTrace): Check for zero return from backtrace().
2000-07-19  Jeff Sturm  <jeff.sturm@appnet.com>

	* java/lang/natThrowable.cc (fillInStackTrace): Check for
	zero return from backtrace().

From-SVN: r35135
2000-07-19 14:37:56 +00:00
Bruce Korb
4e62ab0ba3 Newly modified test results
From-SVN: r35134
2000-07-19 14:18:31 +00:00
Bruce Korb
e02ecf39cb activate the auto-edit marker on the fixed output files
From-SVN: r35133
2000-07-19 14:10:41 +00:00
Jeff Sturm
ca2875c40b lang-specs.h: Added %(jc1) to java compiler options.
2000-07-18  Jeff Sturm  <jeff.sturm@appnet.com>

	* lang-specs.h: Added %(jc1) to java compiler options.

From-SVN: r35130
2000-07-19 12:59:13 +00:00
Benjamin Kosnik
456183bbea Internal consistency checks.....
2000-07-19  Benjamin Kosnik  <bkoz@milou.soma.redhat.com>

	Internal consistency checks.....
	* bits/ios_base.h: Change _M_locale_ios to _M_ios_locale.
	* src/ios.cc: Same.

	* bits/basic_ios.h: Change _M_fctype_ios to _M_ios_fctype.
	* bits/basic_ios.tcc: Same.

	* bits/std_streambuf.h: Change _M_locale_buf to _M_buf_locale.
	Change _M_fctype_buf to _M_buf_fctype.
	* bits/fstream.tcc: Same.

	* bits/std_streambuf.h: Change _M_buf_bump to _M_out_cur_move.
	Change _M_locale_set to _M_buf_locale_init.
	* bits/streambuf.tcc: Same.
	* bits/sstream.tcc: Same.
	* bits/fstream.tcc: Same.

	* bits/std_streambuf.h: Make typedefs consistent.
	(_M_buf_bump): Be more careful with input sequence.

	* bits/std_sstream.h: Same.
	* bits/std_fstream.h: Same.

From-SVN: r35129
2000-07-19 08:04:38 +00:00
Jeff Law
622c0bfebd Daily bump.
From-SVN: r35128
2000-07-19 01:45:08 -06:00
Benjamin Kosnik
dd75251ff0 acinclude.m4: Tweaks.
2000-07-18  Benjamin Kosnik  <bkoz@soma.redhat.com>

	* acinclude.m4: Tweaks.
	* config/c_io_libio.cc: Tweaks.
	* bits/sstream.tcc (stringbuf::pbackfail): Simplify.
	* libio/_G_config.h: Don't define _G_HAVE_ST_BLKSIZE.
	* libio/[iofwide.c, wfiledoalloc.c, wfiteopos.c, wgenops.c]: New files.
	* libio/iofclose.c iofopen.c, stdio.c: New files.
	* libio/Makefile.am: Add files, add flags, etc.
	* src/Makefile.am (sources): Add filebuf.cc.
	* acinclude.m4 (GLIBCPP_CHECK_WCHAR_T_SUPPORT):
	(GLIBCPP_ENABLE_CSTDIO): Versioning testing, etc etc.

From-SVN: r35127
2000-07-19 00:57:38 +00:00
Zack Weinberg
a0add19302 * gcc.c (.h spec): Fix typo.
From-SVN: r35126
2000-07-19 00:04:14 +00:00
Marc Espie
08d7216d46 Wed Jul 19 01:22:15 CEST 2000 Marc Espie <espie@cvs.openbsd.org>
* Makefile.in: Fix tradcif.c path.

From-SVN: r35125
2000-07-18 23:46:11 +00:00
Zack Weinberg
96be699833 cpplib.h (TTYPE_TABLE): Rearrange to use only two per-entry macros, not five.
* cpplib.h (TTYPE_TABLE): Rearrange to use only two per-entry
          macros, not five.

	* cpphash.h (TOKEN_NAME): New macro.
	(_cpp_spell_operator): Deleted.
	(token_spellings): Now _cpp_token_spellings.

	* cppexp.c: Use TOKEN_NAME or TYPE_NAME, not _cpp_spell_operator.
	* cpplex.c: Use OP and TK macros when expanding the
	TTYPE_TABLE.  Eliminate token_names.  For non-OPERATOR tokens,
	store the stringification of the enumeration name (CPP_CHAR,
	etc.) in the name slot of token_spellings.
	Use TOKEN_NAME and/or TOKEN_SPELL, do not reference
	token_spellings directly.
	* cpplib.c: Use TOKEN_SPELL.

	* cpplex.c (_cpp_push_token): If the token being pushed back
	is the previous token in this context, just subtract one from
	context->posn.
	* cppmacro.c (save_expansion): Clear aux field when storing a
	placemarker.

	* gcc.dg/cpp/paste5.c: New test.
	* gcc.dg/cpp/vararg1.c: New test.

From-SVN: r35124
2000-07-18 23:25:06 +00:00
Jakub Jelinek
d0089985e7 cpplex.c (cpp_scan_buffer): Output line command even at the stop buffer, provided it is not NULL.
* cpplex.c (cpp_scan_buffer): Output line command even at the stop
	buffer, provided it is not NULL.

From-SVN: r35123
2000-07-18 21:30:18 +02:00
Alexandre Oliva
611a0be7ae * gcc.dg/noncompile/redecl-1.c: New test.
From-SVN: r35122
2000-07-18 18:27:12 +00:00
Alexandre Oliva
79c282037d c-decl.c (duplicate_decls): Do not call make_var_volatile() in case of invalid volatile re-declaration.
* c-decl.c (duplicate_decls): Do not call make_var_volatile() in
case of invalid volatile re-declaration.

From-SVN: r35119
2000-07-18 17:53:35 +00:00
Nathan Sidwell
a306451c69 typeck.c (comp_target_parms): Remove obsolete parameter.
* typeck.c (comp_target_parms): Remove obsolete parameter.
	(comp_target_types): Adjust.

From-SVN: r35118
2000-07-18 10:51:46 +00:00
Jakub Jelinek
4c6b3b2af0 calls.c (store_arg): Return non-zero if sibcall_failure is desired.
* calls.c (store_arg): Return non-zero if sibcall_failure is
	desired.
	(expand_call): Adjust caller.
	* gcc.c-torture/execute/20000717-5.c: New test.
	* gcc.c-torture/execute/20000717-1.x: Removed.

From-SVN: r35117
2000-07-18 10:54:33 +02:00
Gabriel Dos Reis
e81b4d6305 diagnostic.h (report_diagnostic): Change prototype.
2000-07-17  Gabriel Dos Reis  <gdr@codesourcery.com>

        * diagnostic.h (report_diagnostic): Change prototype.

        * diagnostic.c (output_do_verbatim, diagnostic_for_asm,
        diagnostic_for_decl):  Change prototype.
        (error_with_decl, warning_with_decl, pedwarn_with_decl, warning,
        error, warning, error_with_file_and_line,
        warning_with_file_and_line, pedwarn_with_file_and_line, fatal):
        Adjust call to report_diagnostic, diagnostic_for_decl.
        (error_for_asm, warning_for_asm): Adjust call to diagnostic_for_asm.
        (output_verbatim, verbatim): Adjust call to output_do_verbatim.

        * c-errors.c (pedwarn_c99): Adjust call to report_diagnostic. End
        varaible argument list.

From-SVN: r35116
2000-07-18 08:40:32 +00:00
Jeff Law
485c3e11a0 Daily bump.
From-SVN: r35115
2000-07-18 01:45:06 -06:00
Mark Mitchell
69690d98c8 cp-tree.h (THUNK_VCALL_OFFSET): Update documentation.
* cp-tree.h (THUNK_VCALL_OFFSET): Update documentation.
	* method.c (use_thunk): Correct handling of vcall offsets.

From-SVN: r35114
2000-07-18 07:23:10 +00:00
Zack Weinberg
711b88243b [multiple changes]
2000-02-17  Zack Weinberg  <zack@wolery.cumb.org>

	* cpphash.c: Don't include hashtab.h.  Most macro-handling code
	moved to cppmacro.c.
	(hash_HASHNODE, eq_HASHNODE, _cpp_dump_macro_hash,
	dump_hash_helper): Delete.
	(expand_hash, higher_prime_number, _cpp_lookup_with_hash,
	cpp_forall_identifiers): New. Implement specialized version of
	Vlad's expandable hash table.
	(cpp_lookup): Use new functions.
	(_cpp_init_macros, _cpp_cleanup_macros): Adjust for new
	implementation.
	* cppmacro.c: New file.
	* cppinit.c (dump_macros_helper): New.
	(cpp_finish): Iterate over the identifier table directly.
	* cpplex.c (parse_name): Calculate the hash of the identifier
	while we scan it.  Use _cpp_lookup_with_hash when we can.

	* cpphash.h: Update prototypes.
	(xcnewvec, HASHSTEP): New helper macros.
	* cpplib.h: Update prototypes.
	* Makefile.in (LIBCPP_OBJS): Add cppmacro.o.
	(cppmacro.o): New rule.
	(cpphash.o): Update deps.

	* cppmain.c: Do not set pfile->printer if no_output is on.

2000-02-15  Neil Booth  <neilb@earthling.net>

	* cpplib.c: Change all directive-handler functions to return
	void, not int.
	* cpphash.h: Update typedefs.

From-SVN: r35113
2000-07-18 00:59:49 +00:00