Per Bothner [Sun, 29 Feb 2004 19:10:46 +0000 (11:10 -0800)]
FileChannelImpl.java: Moved to package gnu/java/nio/channels, since we need to refer to it from java.io.
* java/nio/channels/FileChannelImpl.java: Moved to package
gnu/java/nio/channels, since we need to refer to it from java.io.
* java/nio/channels/natFileChannelImpl.cc: Removed file.
Per Bothner [Sun, 29 Feb 2004 19:09:28 +0000 (11:09 -0800)]
FileChannelImpl.java: New class, renamed from java/nio/channels.
* gnu/java/nio/channels/FileChannelImpl.java: New class, renamed
from java/nio/channels. Don't depend on FileDescriptor.
(in, out, err): New static fields.
(mode): New field.
(SET, CUR, READ, WRITE, APPEND, EXCL, SYNC, DSYNC): Moved constants
from FileDescriptor.
(by): Removed MappedByteBuffer field.
(map): New working implementation.
* gnu/java/nio/channels/natFileChannelPosix.cc: New file, though
some code "ported" from natFileDescriptoPosix.cc.
* gnu/java/nio/channels/natFileChannelEcos.cc: Likewise.
* gnu/java/nio/channels/natFileChannelWin32.cc Likewise.
Kazu Hirata [Sun, 29 Feb 2004 15:11:12 +0000 (15:11 +0000)]
sibcall-3.c (recurser_void1): Make it an extern function with __attribute__((noinline)).
* gcc.dg/sibcall-3.c (recurser_void1): Make it an extern
function with __attribute__((noinline)).
(recurser_void2): Likewise.
* gcc.dg/sibcall-4.c (recurser_void1): Likewise.
(recurser_void2): Likewise.
atomicity.h (__atomic_add): Make first argument volatile.
* config/cpu/hppa/atomicity.h (__atomic_add): Make first argument
volatile.
* config/os/hpux/os_defines.h (_GLIBCXX_INST_ATOMICITY_LOCK): Use
__GXX_WEAK__ instead of _GLIBCXX_SUPPORTS_WEAK.
Guilhem Lavaux [Sat, 28 Feb 2004 21:28:53 +0000 (21:28 +0000)]
2004-02-28 Guilhem Lavaux <guilhem@kaffe.org>
* java/io/ObjectInputStream.java
(readClassDescriptor): Keep elements of the mapping non null.
(checkTypeConsistency): New method.
(readFields): Fixed main loop and base logic. Small reindentation.
* java/io/ObjectStreamField.java
(lookupField): New method to update the field reference.
(checkFieldType): New method.
* java/io/ObjectStreamClass.java
(setClass, setFields): Call lookupField when building the field
database. Check the real field type.
Paolo Carlini [Sat, 28 Feb 2004 20:37:54 +0000 (20:37 +0000)]
locale_facets.tcc (num_get<>::_M_extract_float): According to 22.2.3.1...
2004-02-28 Paolo Carlini <pcarlini@suse.de>
* include/bits/locale_facets.tcc (num_get<>::_M_extract_float):
According to 22.2.3.1, p2, 'units' may be followed by 'e' with
no 'decimal-point' in the middle: in this case too we must fix
up __found_grouping; slightly tweak.
* testsuite/22_locale/num_get/get/char/14.cc: New.
* testsuite/22_locale/num_get/get/wchar_t/14.cc: New.
mips.c (override_options): Remove an obsolete duplicate definition of the "e" constraint.
* config/mips/mips.c (override_options): Remove an obsolete
duplicate definition of the "e" constraint.
* config/mips/mips.h: Update a comment accordingly.
mips.md: Complete the unfinished R4000 multiply/shift errata workaround.
* config/mips/mips.md: Complete the unfinished R4000
multiply/shift errata workaround. Improve documentation.
(hazard): Use TARGET_FIX_R4000 to decide whether an "imul" instruction
has a hilo hazard.
(mulsi3, mulsi3_internal, mulsi3_r4000): Use TARGET_FIX_R4000.
(muldi3, muldi3_internal): Likewise.
(muldi3_internal2): Remove, replacing with...
(muldi3_mult3, muldi3_r4000): ...these new patterns.
(mulsidi3): Take the errata into account.
(mulsidi3_32bit): Remove, replacing with...
(mulsidi3_32bit_internal, mulsidi3_32bit_r4000): ...these new patterns.
(mulsidi3_64bit, mulsidi3_64bit_parts): Disable if TARGET_FIX_R4000.
(umulsidi3): Take the errata into account.
(umulsidi3_32bit): Remove, replacing with..
(umulsidi3_32bit_internal, umulsidi3_32bit_r4000): ...these patterns.
(umulsi3_highpart, umulsi3_highpart_internal): Disable if
TARGET_FIX_R4000.
(smulsi3_highpart, smulsi3_highpart_internal): Likewise.
(smuldi3_highpart, umuldi3_highpart): Likewise.
* doc/invoke.texi: Document the errata workaround.
* config/mips/mips-protos.h (mips_idiv_insns): Declare.
* config/mips/mips.h (MASK_FIX_SB1): Bump.
(MASK_FIX_R4000, TARGET_FIX_R4000): New macros.
(TARGET_SWITCHES): Add -mfix-r4000 and -mno-fix-r4000.
* config/mips/mips.c (mips_idiv_insns): New function.
(override_options): Make -march=r4000 imply -mfix-r4000 by default.
(mips_output_division): Add a workaround for the R4000 divide/shift
errata.
* config/mips/mips.md (length): Use mips_idiv_insns() to calculate
the length of an "idiv" instruction.
* doc/invoke.texi: Document the new switches.
Ian Lance Taylor [Sat, 28 Feb 2004 02:43:41 +0000 (02:43 +0000)]
re PR rtl-optimization/7871 (ICE on legal code, global register variables problems)
PR optimization/7871
* flow.c (mark_set_1): Don't add LOG_LINKS for global registers
from or to call insns.
(propagate_one_insn): Interpret calls as setting global registers,
not merely clobbering them.
2004-02-27 Dale Johannesen <dalej@apple.com>
* config/darwin.c (machopic_output_possible_stub_label): Remove.
config/darwin-protos.h: Ditto.
config/darwin.h: Remove call to it.
* combine.c (distribute_notes): Do not place a REG_DEAD note
when value is both set and used.
Phil Edwards [Fri, 27 Feb 2004 22:01:32 +0000 (22:01 +0000)]
default.exp: Update with comments.
2004-02-27 Phil Edwards <phil@codesourcery.com>
* testsuite/config/default.exp: Update with comments.
(${tool}_target_compile): New wrapper routine.
* testsuite/lib/dg-options.exp: New file, with dg-require-iconv.
* testsuite/lib/libstdc++.exp: Update with comments and cosmetic
fixes.
(load_gcc_lib, v3track): New routines.
(v3-init): Rename to libstdc++_init.
* testsuite/libstdc++-dg/normal.exp: No longer call v3-init.
Move DEFAULT_CXXFLAGS handling into libstdc++_init.
Paolo Carlini [Fri, 27 Feb 2004 14:30:19 +0000 (14:30 +0000)]
locale_facets.tcc (num_get<>::_M_extract_float, [...]): If appropriate, call reserve on the __tmp_gruping string.
2004-02-27 Paolo Carlini <pcarlini@suse.de>
* include/bits/locale_facets.tcc (num_get<>::_M_extract_float,
num_get<>::_M_extract_int, money_get<>::_M_extract): If appropriate,
call reserve on the __tmp_gruping string.
(num_get<>::_M_extract_float): Don't append unnecessarily a
char() to the returned string.
* include/bits/locale_facets.tcc: Trivial reformattings.
Paolo Carlini [Fri, 27 Feb 2004 10:12:01 +0000 (10:12 +0000)]
locale_facets.h (money_get<>::_M_extract): Change signature: now takes a plain string&.
2004-02-27 Paolo Carlini <pcarlini@suse.de>
* include/bits/locale_facets.h (money_get<>::_M_extract):
Change signature: now takes a plain string&.
* include/bits/locale_facets.tcc (money_get<>::_M_extract):
Update consistently the definition; use the moneypunct cache
to parse the value; use swap to change __units.
(money_get<>::do_get(long double&)): Update call of _M_extract,
avoid ctype::narrow, not correct wrt the standard.
(money_get<>::do_get(string_type&)): Likewise, update call
of _M_extract, use ctype::widen.
* src/locale-inst.cc: Tweak instantiations of _M_extract.
Eric Botcazou [Fri, 27 Feb 2004 08:11:34 +0000 (09:11 +0100)]
fold-const.c (fold): Revert 2004-02-25 change.
* fold-const.c (fold): Revert 2004-02-25 change. Use the original
operands to build a tree with swapped operands.
* expr.c (expand_expr_real) <MAX_EXPR>: Consistently use the
'unsignedp' predicate to specify the signedness.
Co-Authored-By: Roger Sayle <roger@eyesopen.com>
From-SVN: r78558
* c-lex.c (c_lex_string_translate): New variable.
(lex_string): Use to determine string translation.
* c-pragma.h: Prototype.
* c-parse.in (start_string_translation): New. Set above.
(stop_string_translation): Ditto.
(attribute, attribute_list, asm_def, asm_stmt,
asm_operand): Use above functions.
* cp/parser.c (cp_parser_declaration): Translate strings
unless token is RID_EXTERN. Set c_lex_string_translate
for recursive use.
(cp_parser_asm_definition): Only translate argument strings
to asms.
(cp_parser_asm_operand_list): Ditto.
(cp_parser_attribute_list): Do not translate attribute strings.
Jan Hubicka [Thu, 26 Feb 2004 21:43:37 +0000 (22:43 +0100)]
config.gcc: Add support for nocoma/prescott/pentium-m/pentium3m /pentium4m.
* config.gcc: Add support for nocoma/prescott/pentium-m/pentium3m
/pentium4m.
* i386.c (override_options): Add support for new CPUs.
* i386.h (TARGET_CPU_DEFAULT_NAMES): New names.
(TARGET_CPU_DEFAULT_pentium_m, TARGET_CPU_DEFAULT_pentium4e): New
constants.
* invoke.texi: Extend documentation of -mtune/-march for new CPUs.
Michael Koch [Thu, 26 Feb 2004 19:45:51 +0000 (19:45 +0000)]
2004-02-26 Michael Koch <konqueror@gmx.de>
* gnu/java/nio/FileLockImpl.java
(finalize): Made protected.
* java/nio/channels/FileChannel.java
(MapMode.READ_ONLY): Made final.
(MapMode.READ_WRITE): Made final.
(MapMode.PRIVATE): Made final.
* java/nio/channels/SocketChannel.java
(open): Simplified code.
* java/nio/channels/spi/AbstractSelectableChannel.java
(registered): Unused, removed.
(keyFor): Check channel is open, only locate key
and not add a new one.
(register): Don't delete attachments.
* config/sparc/sparc-protos.h (sparc_emit_floatunsdi): Add 'mode'.
(sparc_emit_fixunsdi): New prototype.
* config/sparc/sparc.c (sparc_emit_floatunsdi): Use 'mode' argument.
(sparc_emit_fixunsdi): New function.
* config/sparc/sparc.md (floatunsdisf2): Use 'general_operand' for
operand 1. Pass SFmode to sparc_emit_floatunsdi.
(floatunsdidf2): Use 'general_operand' for operand 1. Pass DFmode
to sparc_emit_floatunsdi.
(fixuns_truncsfdi2): New expander.
(fixuns_truncdfdi2): Likewise.
Andrew Haley [Thu, 26 Feb 2004 15:34:05 +0000 (15:34 +0000)]
re PR java/14231 (Incorrect interface method called when compiling against .class files)
2004-02-26 Andrew Haley <aph@redhat.com>
PR java/14231:
* parse.y (check_interface_throws_clauses): Check for
!METHOD_INVISIBLE (iface_method).
* class.c (layout_class_methods): Check for CLASS_INTERFACE as
well as CLASS_ABSTRACT.
explow.c (force_reg): Call mark_reg_pointer as appropriate.
* explow.c (force_reg): Call mark_reg_pointer as appropriate.
* config/alpha/alpha.c (alpha_emit_conditional_branch): Don't
use (op0-op1) == 0 if op0 is a pointer.
* config/alpha/alpha.md (cmpdi): Use some_operand.
(three comparison combine splits): Remove.