Commit Graph

45935 Commits

Author SHA1 Message Date
Mark Mitchell
548502d3b1 call.c (build_special_member_call): Do not try to lookup VTTs by name.
* call.c (build_special_member_call): Do not try to lookup VTTs by
	name.
	* class.c (vtbl_init_data): Add generate_vcall_entries.
	(get_vtable_decl): Do not look up virtual tables by name.
	(copy_virtuals): Do not use BV_USE_VCALL_INDEX_P.
	(set_primary_base): Do not set CLASSTYPE_RTTI.
	(determine_primary_base): Likewise.
	(get_matching_virtual): Remove.
	(get_vcall_index): New function.
	(update_vtable_entry_for_fn): Do not try to use virtual thunks
	when they are not required.  Assign vcall indices at this point.
	(finish_struct_1): Do not set CLASSTYPE_NEEDS_VIRTUAL_REINIT.
	Do update dynamic_classes.
	(build_vtt): Do not add VTTs to the symbol table.
	(build_ctor_vtbl_group): Likewise.
	(build_vtbl_initializer): Simplify handling of vcall indices.
	(build_vcall_offset_vtbl_entries): Pretend to build vcall offsets
	for the most derived class.
	(add_vcall_offset_vtbl_entries_1): But do not actually add them to
	the vtable.
	* cp-tree.h (dynamic_classes): New macro.
	(lang_type_class): Remove rtti.  Add vtables.  Add vcall_indices.
	(CLASSTYPE_RTTI): Remove.
	(CLASSTYPE_NEEDS_VIRTUAL_REINIT): Remove.
	(CLASSTYPE_VCALL_INDICES): New macro.
	(CLASSTYPE_VTABLES): Likewise.
	(BV_USE_VCALL_INDEX_P): Remove.
	(build_vtable_path): Remove.
	* decl2.c (finish_vtable_vardecl): Remove.
	(key_method): Remove #if 0'd code.
	(finish_vtable_vardecl): Rename to ...
	(maybe_emit_vtables): ... this.
	(finish_file): Use it.
	* search.c (look_for_overrides_here): Update comment.

	* g++.dg/abi/thunk1.C: New test.
	* g++.dg/abi/thunk2.C: Likewise.
	* g++.dg/abi/vtt1.C: Likewise.

From-SVN: r58779
2002-11-04 01:45:58 +00:00
Anthony Green
55376e4128 New files.
From-SVN: r58778
2002-11-04 01:31:12 +00:00
Roger Sayle
c9fe6f9f39 re PR c/7128 (Undeclared variables as asm argument cause ICE)
PR c/7128
	* c-typeck.c (c_expand_asm_operands): Defend against
	error_mark_nodes in the output argument to avoid ICE.

From-SVN: r58777
2002-11-04 00:22:57 +00:00
Eric Botcazou
0b40e88e10 re PR middle-end/8408 (simple legal c program ice in fixup_var_refs_1, at function.c:1938)
PR middle-end/8408
        * genrecog.c (preds): Handle ADDRESSOF.
        (validate_pattern): Mark it as an lvalue.
	* gcc.c-torture/compile/20021103-1.c: New.

From-SVN: r58774
2002-11-03 15:42:51 -08:00
Tom Tromey
7189ea2902 AlreadyConnectedException.java: Extend IllegalStateException, per spec.
* java/nio/channels/AlreadyConnectedException.java: Extend
	IllegalStateException, per spec.

From-SVN: r58773
2002-11-03 21:18:32 +00:00
Mark Wielaard
de36f65dd1 GNU Classpath merge.
2002-10-31  Stephen Crawley  <crawley@dstc.edu.au>

	* java/lang/Double.java (valueOf): Return new Double(parseDouble(s)).

2002-10-31  Wu Gansha <gansha.wu@intel.com>:

        * java/util/ArrayList.java (readObject, writeObject): Only read/write
        size items.

2002-10-31  Wu Gansha <gansha.wu@intel.com>:

        * java/io/DataInputStream.java (convertFromUTF): Give StringBuffer an
        initial estimated size to avoid enlarge buffer frequently.

2002-10-31  Wu Gansha <gansha.wu@intel.com>:

	* java/lang/reflect/Proxy.java (ProxyType): Set loader to System
	ClassLoader when null.
	(ProxyType.hashCode): Loader null check no longer needed.
	(ProxyType.sameTypes): New method.
	(ProxyType.equals): Use new method.

2002-10-31  Mark Wielaard  <mark@klomp.org>

        * java/net/URLDecoder.java (decode): Initialize Stringbuffer size to
	length of String.
	* java/net/URLEncoder.java (encode): Likewise.

2002-10-31  Mark Wielaard  <mark@klomp.org>

	* java/util/zip/ZipInputStream.java (getNextEntry): Throw IOException
	when stream is closed.
	(closeEntry): Likewise.
	(read): Likewise.
	* java/util/zip/ZipOutputStream.java (putNextEntry): Throw
	ZipException when no entry active.
	(closeEntry): Likewise.
	(write): Likewise.

From-SVN: r58772
2002-11-03 20:27:31 +00:00
GCC Administrator
c33c471beb Daily bump.
From-SVN: r58771
2002-11-03 08:17:09 +00:00
Tom Tromey
863d115f33 initexc.java (fail): Static initializers must be able to complete normally.
* libjava.lang/initexc.java (fail): Static initializers must be
	able to complete normally.  From Eric Blake.

From-SVN: r58765
2002-11-03 01:30:28 +00:00
Tom Tromey
afa54b4c09 Class.h: Move JV_STATE_ERROR before JV_STATE_DONE.
* java/lang/Class.h: Move JV_STATE_ERROR before JV_STATE_DONE.
	* java/lang/natClass.cc (initializeClass): Don't return just
	because self==thread.

From-SVN: r58763
2002-11-02 23:52:56 +00:00
Tom Tromey
60b68525a5 * java-tree.h: Move JV_STATE_ERROR before JV_STATE_DONE.
From-SVN: r58762
2002-11-02 23:52:26 +00:00
Tom Tromey
2640ad1110 initexc.java: New file.
* libjava.lang/initexc.java: New file.
	* libjava.lang/initexc.out: New file.

From-SVN: r58761
2002-11-02 23:36:47 +00:00
Diego Novillo
8cd4a35974 re PR rtl-optimization/8423 (CSE1 not propagating __builtin_constant_p enough)
PR optimization/8423
	* gcc.c-torture/execute/builtin-constant.c: New test.

From-SVN: r58760
2002-11-02 17:58:54 -05:00
David Edelsohn
dff9f1b69e rs6000.c (rs6000_override_options): Use string instructions when optimizing for size.
* config/rs6000/rs6000.c (rs6000_override_options): Use string
        instructions when optimizing for size.

From-SVN: r58759
2002-11-02 16:55:55 -05:00
Tom Tromey
21140bebee re PR java/8415 (reflection bug: exception info for Method)
* class.c (make_method_value): Put class name, not signature, into
	`throws' field.  For PR java/8415.

From-SVN: r58758
2002-11-02 21:33:54 +00:00
Tom Tromey
fead5eb589 For PR java/8415:
* java/lang/reflect/natMethod.cc (getType): Use _Jv_FindClass.
	* prims.cc (_Jv_FindClassFromSignature): Indentation fix.

From-SVN: r58757
2002-11-02 21:33:30 +00:00
Tom Tromey
fafe87d07d Reverted erroneous checkin
From-SVN: r58756
2002-11-02 21:29:36 +00:00
Tom Tromey
77a106a531 re PR java/6388 (Integer.MIN_VALUE == 0x80000000 optimized to false on powerpc)
Fix for PR java/6388.
	* lex.h (JAVA_INTEGRAL_RANGE_ERROR): Wrap in do...while.
	* java-tree.h (enum java_tree_index): New values
	JTI_DECIMAL_INT_MAX_NODE, JTI_DECIMAL_LONG_MAX_NODE.
	(decimal_int_max, decimal_long_max): New defines.
	* lex.c (yylex): Rewrote range checking.  Sign extend literals.
	(error_if_numeric_overflow): Rewrote range checking.
	* decl.c (java_init_decl_processing): Initialize decimal_int_max,
	decimal_long_max.

From-SVN: r58755
2002-11-02 21:26:28 +00:00
Andreas Schwab
bbf6552920 Makefile.am (AM_MAKEFLAGS): Don't pass JC1FLAGS, CC and CXX, do pass GCJFLAGS.
* Makefile.am (AM_MAKEFLAGS): Don't pass JC1FLAGS, CC and CXX, do
	pass GCJFLAGS.
	(FLAGS_TO_PASS): Define.
	* Makefile.in: Regenerated.

From-SVN: r58752
2002-11-02 16:14:50 +00:00
Toon Moene
7dbedeb4e6 news.texi: Fix .f -> .r
2002-11-02  Toon Moene  <toon@moene.indiv.nluug.nl>

	* news.texi: Fix .f -> .r

From-SVN: r58751
2002-11-02 14:40:31 +00:00
Toon Moene
fec588d377 g77.texi: Correct documentation on generating C++ prototypes of Fortran routines with f2c.
2002-11-02  Toon Moene  <toon@moene.indiv.nluug.nl>

	* g77.texi: Correct documentation on generating C++ prototypes
	of Fortran routines with f2c.
	* news.texi: Document fixes in GCC-3.3, 3.2 and 3.1.

From-SVN: r58750
2002-11-02 14:36:45 +00:00
Toon Moene
c08a37a535 g77.texi: Correct documentation on generating C++ prototypes of Fortran routines with f2c.
2002-11-02  Toon Moene  <toon@moene.indiv.nluug.nl>

	* g77.texi: Correct documentation on generating C++ prototypes
	of Fortran routines with f2c.
	* news.texi: Document fixes in GCC-3.3, 3.2 and 3.1.

From-SVN: r58749
2002-11-02 14:30:12 +00:00
Kazu Hirata
46eefac471 h8300.h: Fix comment typos.
* config/h8300/h8300.h: Fix comment typos.
	* config/h8300/h8300.md: Likewise.
	* config/h8300/lib1funcs.asm: Likewise.

From-SVN: r58748
2002-11-02 12:51:05 +00:00
Gerald Pfeifer
102b60d127 Revert this change:
*doc/install.texi (Installing GCC: Configuration): Clarify
	the only supported ways to configure gcc.

From-SVN: r58746
2002-11-02 10:28:09 +00:00
GCC Administrator
ed6c7a042d Daily bump.
From-SVN: r58745
2002-11-02 08:17:09 +00:00
Benjamin Kosnik
a7c67c71db re PR libstdc++/8172 (undefined reference to operator+ for string)
2002-11-01  Benjamin Kosnik  <bkoz@redhat.com>

	PR libstdc++/8172
	* src/string-inst.cc: Add instantiation.

From-SVN: r58738
2002-11-02 02:18:18 +00:00
Zack Weinberg
04d57dd504 PR c/7353 redux
PR c/7353 redux
cp:
	* decl2.c (grokfield): Reject TYPE_DECLs with initializers.
testsuite:
	* g++.dg/ext/typedef-init.C, gcc.dg/typedef-init.C:
	Add some more cases.

From-SVN: r58737
2002-11-02 02:17:41 +00:00
Kazu Hirata
46be79e789 h8300.md (anonymous and:QI pattern): Use 'n' instead of 'O' for the constraint for the second operand.
* config/h8300/h8300.md (anonymous and:QI pattern): Use 'n'
	instead of 'O' for the constraint for the second operand.

From-SVN: r58736
2002-11-02 01:44:00 +00:00
Benjamin Kosnik
85ab9d2311 re PR libstdc++/7926 (i486 instructions in header files make c++ programs crash on i386)
2002-11-01  Benjamin Kosnik  <bkoz@redhat.com>

	PR libstdc++/7926
	* configure.target: Simplify.
	* config/cpu/i386/atomicity.h: Remove.
	* config/cpu/i386: Remove.
	* config/cpu/arm/atomicity.h: Remove.
	* config/cpu/arm: Remove.
	* config/cpu/x86-64/atomicity.h: Remove.
	* config/cpu/x86-64: Remove.

From-SVN: r58735
2002-11-02 01:42:22 +00:00
Mark Mitchell
bec80a45fd re PR c++/8391 (infinite loop in cp/decl2.c(finish_file))
PR c++/8391
	* toplev.c (rest_of_compilation): Do not refuse to output code for
	an inline function in a local class.

	PR c++/8391
	* g++.dg/opt/local1.C: New test.

From-SVN: r58734
2002-11-02 01:03:03 +00:00
Tom Tromey
a70b59e1db For PR java/8415:
* libjava.lang/pr8415.java: New file.
	* libjava.lang/pr8415.out: New file.

From-SVN: r58732
2002-11-02 00:19:52 +00:00
David O'Brien
8df91177c0 freebsd.h (CPP_CPU64_DEFAULT_SPEC): Define __arch64__.
2002-11-01  David O'Brien  <obrien@FreeBSD.org>
	* config/sparc/freebsd.h (CPP_CPU64_DEFAULT_SPEC): Define __arch64__.
	(TRANSFER_FROM_TRAMPOLINE): Reformat.
	Add comment.

Approved by:  Mark Mitchell <mark@codesourcery.com>
              Message-ID: <15490000.1036182355@warlock.codesourcery.com>

From-SVN: r58730
2002-11-01 22:19:38 +00:00
Kazu Hirata
616dc555ce * config/h8300/h8300.h (CAN_ELIMINATE): Simplify.
From-SVN: r58729
2002-11-01 21:36:37 +00:00
Toshiyasu Morita
25a533a018 * config/h8300/h8300.h (OPTIMIZATION_OPTIONS): New.
From-SVN: r58728
2002-11-01 21:22:15 +00:00
Steve Ellcey
dcffbadece ia64.h (MASK_INLINE_DIV_LAT): Remove.
* config/ia64/ia64.h (MASK_INLINE_DIV_LAT): Remove.
	(MASK_INLINE_DIV_THR): Remove.
	(TARGET_INLINE_DIV_LAT): Remove.
	(TARGET_INLINE_DIV_THR): Remove.
	(TARGET_INLINE_DIV): Remove.
	(MASK_INLINE_FLOAT_DIV_LAT): New macro.
	(MASK_INLINE_FLOAT_DIV_THR): New macro.
	(MASK_INLINE_INT_DIV_LAT): New macro.
	(MASK_INLINE_INT_DIV_THR): New macro.
	(TARGET_INLINE_FLOAT_DIV_LAT): New macro.
	(TARGET_INLINE_FLOAT_DIV_THR): New macro.
	(TARGET_INLINE_INT_DIV_LAT): New macro.
	(TARGET_INLINE_INT_DIV_THR): New macro.
	(TARGET_INLINE_FLOAT_DIV): New macro.
	(TARGET_INLINE_INT_DIV): New macro.
	* config/ia64/ia64.md (divsi3): Change to use new macros.
	(modsi3): Ditto.
	(udivsi3): Ditto.
	(umodsi3): Ditto.
	(divsi3_internal): Ditto.
	(divdi3): Ditto.
	(moddi3): Ditto.
	(udivdi3): Ditto.
	(umoddi3): Ditto.
	(divdi3_internal_lat): Ditto.
	(divdi3_internal_thr): Ditto.
	(divsf3): Ditto.
	(divsf3_internal_lat): Ditto.
	(divsf3_internal_thr): Ditto.
	(divdf3): Ditto.
	(divdf3_internal_lat): Ditto.
	(divdf3_internal_thr): Ditto.
	(divtf3): Ditto.
	(divtf3_internal_lat): Ditto.
	(divtf3_internal_thr): Ditto.
	* config/ia64/ia64.c (ia64_override_options): Change
	to check new macros for conflicts in settings.
	* doc/invoke.texi (-minline-divide-min-latency): Remove.
	(-minline-divide-max-throughput): Remove.
	(-minline-float-divide-min-latency): New.
	(-minline-float-divide-max-throughput): New.
	(-minline-int-divide-min-latency): New.
	(-minline-int-divide-max-throughput): New.

From-SVN: r58727
2002-11-01 20:25:35 +00:00
Tom Tromey
0e75523eb4 mauve.exp (find_mauve_sources): New proc.
* libjava.mauve/mauve.exp (find_mauve_sources): New proc.
	(test_mauve): Use it.
	(test_mauve_sim): Likewise.

From-SVN: r58725
2002-11-01 19:32:21 +00:00
Christian Ehrhardt
23ae3eb1f8 re PR libstdc++/8197 (std::sin(float) causes undefined reference to sinf)
2002-11-01  Christian Ehrhardt  <ehrhardt@mathematik.uni-ulm.de>

	PR libstdc++/8197
	* config/link-map.gnu: Export math stubbs.

From-SVN: r58721
2002-11-01 17:54:51 +00:00
Benjamin Kosnik
5112ae3a8f re PR libstdc++/8318 (Not all wide character based prototypes are included within #ifdef _GLIBCPP_USE_WCHAR_T)
2002-11-01  Benjamin Kosnik  <bkoz@redhat.com>

	PR libstdc++/8318
	* include/std/std_iostream.h: Tweak.
	* include/std/std_iosfwd.h: Add _GLIBCPP_USE_WCHAR_T.
	* include/std/std_iomanip.h: Same.
	* include/bits/stringfwd.h: Same.
	* include/bits/basic_string.tcc: Same.
	* include/bits/sstream.tcc: Same.
	* include/bits/fstream.tcc: Same.
	* include/bits/basic_ios.tcc: Same.
	* include/bits/streambuf.tcc: Same.
	* include/bits/locale_facets.tcc: Same.

From-SVN: r58720
2002-11-01 17:30:36 +00:00
John Carter
c86c54e6d1 re PR libstdc++/7961 (compare( char *) implemented incorrectly.)
2002-11-01  John Carter  <john.carter@tait.co.nz>

	PR libstdc++/7961
	* include/bits/basic_string.tcc
	(compare(const _CharT* __s)): Don't access __s past its length.

From-SVN: r58717
2002-11-01 15:21:17 +00:00
Richard Earnshaw
d5db54a12c re PR target/7856 ([arm] invalid offset in constant pool reference)
PR target/7856
* arm.c (use_return_insn): Don't use a return insn if there are
saved integer regs, but LR is not one of them.

From-SVN: r58716
2002-11-01 14:41:57 +00:00
Michael Koch
9dcb1ec813 ByteOrder.java: New file.
2002-11-01  Michael Koch  <konqueror@gmx.de>

	* java/nio/ByteOrder.java: New file.
	* java/nio/channels/DatagramChannel.java:
	(DatagramChannel): New constructor.
	* java/nio/channels/Pipe.java: New file.
	* java/nio/channels/SelectableChannel.java: New file.
	* java/nio/channels/SelectionKey.java: New file.
	* java/nio/channels/Selector.java: New file.
	* java/nio/channels/ServerSocketChannel.java
	(ServerSocketChannel): New constructor.
	* java/nio/channels/SocketChannel.java
	(SocketChannel): New constructor.
	* java/nio/channels/Pipe.java: New file.
	* java/nio/channels/spi/AbstractChannel.java: New file.
	* java/nio/channels/spi/AbstractInterruptibleChannel.java: New file.
	* java/nio/channels/spi/AbstractSelectableChannel.java:
	License added
	(AbstractSelectableChannel): New stubbed method.
	* java/nio/channels/spi/AbstractSelectionKey.java: New file.
	* java/nio/channels/spi/AbstractSelector.java: New file.
	* java/nio/channels/spi/SelectorProvider.java: New file.
	* java/nio/charset/Charset.java: New file.
	* java/nio/charset/CoderMalfunctionError.java: New file.
	* java/nio/charset/CodingErrorAction.java: New file.
	* java/nio/charset/spi/CharsetProvider.java
	(charsetForName): Uncommented.
	* Makefile.am (java_native_source_files): Added new files.
	* Makefile.in: Regenerated.

From-SVN: r58713
2002-11-01 12:03:40 +00:00
Jan Hubicka
075fc17aa5 expr.c (emit_move_insn): Use SCALAR_FLOAT_MODE_P
* expr.c (emit_move_insn):  Use SCALAR_FLOAT_MODE_P
	* machmode.h (SCALAR_FLOAT_MODE_P): New macro.

From-SVN: r58712
2002-11-01 09:35:24 +00:00
GCC Administrator
cfcfd176a1 Daily bump.
From-SVN: r58711
2002-11-01 08:17:07 +00:00
Nathanael Nerode
9efb4cb690 re PR inline-asm/6162 (i386 asm reloader ice in reload_cse_simplify_operands)
PR optimization/6162
	* md.texi: Document restriction on commutative operand
	specification.

From-SVN: r58705
2002-11-01 07:05:57 +00:00
Michael Koch
75fe3383d8 2002-11-01 Michael Koch <konqueror@gmx.de>
* java/net/InetAddress.java:
	(isAnyLocalAddress): Implemented.
	(isLoopbackAddress): Implemented, comment added.
	(isLinkLocalAddress): Implemented, documentation added.
	(isSiteLocalAddress): Implemented, documentation added.
	(isMCGlobal): Implemented, documentation added.
	(isMCNodeLocal): Implemented, documentation added.
	(isMCLinkLocal): Implemented, documentation added.
	(isMCSiteLocal): Implemented, documentation added.
	(isMCOrgLocal): Implemented, documentation added.
	(getHostName): Documentation added.
	(getCanonicalHostName): Implemented, documentation added.
	(getAddress): Documentation added.
	(hashCode): Documentation added.
	(equals): Documentation added.
	(toString): Fixed implementation.
	(getByAddress): Use Inet4Address and Inet6Address.
	(lookup): New linewrap.
	(getByName): SecurityManager check added, support Inet4Address and
	Inet6address, comments added.
	(getAllByName): SecurityManager check added, comments added.
	* java/net/Inet6Address.java:
	(Inet6Address): Initialize parent class with addr instead of null.
	* java/net/URL.java
	(equals): Documentation added.
	(getFile): Documentation added.
	(hashCode): Documentation added.
	* java/net/natInetAddress.cc:
	(aton): Fix IPv6 support.
	* java/net/natPlainDatagramSocketImpl.cc:
	(peek): Throw PortUnreachableException when suitable.
	(peekData): Throw PortUnreachableException when suitable.
	(send): Throw PortUnreachableException when suitable.
	(receive): Throw PortUnreachableException when suitable.

From-SVN: r58704
2002-11-01 06:35:14 +00:00
Benjamin Kosnik
04c7481ed2 re PR libstdc++/8348 (fail() flag is set in istringstream when eof() flag is set !)
2002-10-31  Benjamin Kosnik  <bkoz@redhat.com>

	PR libstdc++/8348
	* include/bits/istream.tcc (istream::tellg): Remove sentry bits.
	(istream::seekg): Same.
	* testsuite/27_io/istream_seeks.cc (test06): New.

From-SVN: r58703
2002-11-01 05:38:27 +00:00
Mark Wielaard
5e81d5beff ZipFile.java (readLeShort): Take and use DataInput as argument.
* java/util/zip/ZipFile.java (readLeShort): Take and use DataInput as
	argument.
	(readLeShort): Likewise and use byte[].
	(readLeInt): Likewise.
	(readEntries): Use new versions of methods and use byte[] for reading
	a complete zip entry. Add ZipFile name to exceptions.
	(entries): Add ZipFile name to exceptions.
	(getEntry): Likewise.
	(checkLocalHeader): Use new versions of methods and add ZipFile name
	to exceptions.

From-SVN: r58697
2002-10-31 21:56:32 +00:00
Jason Merrill
bab076f76a re PR c++/8186 (ICE in cp_expr_size, at cp/cp-lang.c:304)
PR c++/8186
        * cp-tree.h (ADDR_IS_INVISIREF): New macro.
        * call.c (convert_for_arg_passing): Set it.
        * except.c (stabilize_throw_expr): Recurse for such an arg.

From-SVN: r58696
2002-10-31 16:42:46 -05:00
Eric Christopher
ce02ba255c explow.c (convert_memory_address): Use shallow_copy_rtx.
2002-10-31  Eric Christopher  <echristo@redhat.com>

        * explow.c (convert_memory_address): Use shallow_copy_rtx.

From-SVN: r58695
2002-10-31 21:35:57 +00:00
Steve Ellcey
8efb33ec2d * expmed.c (store_bit_field): Check FUNCTION_ARG_REG_LITTLE_ENDIAN.
From-SVN: r58694
2002-10-31 20:43:07 +00:00
Steve Ellcey
a543c709ab * config/ia64/hpux.h (MEMBER_TYPE_FORCES_BLK): Set for non-floats.
From-SVN: r58693
2002-10-31 20:40:29 +00:00