Bryce McKinlay [Wed, 20 Feb 2002 04:14:15 +0000 (04:14 +0000)]
libjava.exp: Add "xfail-byte-output" and "xfail-source-output".
* lib/libjava.exp: Add "xfail-byte-output" and "xfail-source-output".
Don't display expected and actual output for a failed output test.
* libjava.lang/ArrayStore.java: New file.
* libjava.lang/ArrayStore.out: New file.
* libjava.lang/ArrayStore.xfail: New file. xfail-byte-output.
* libjava.lang/ArrayStore2.java: New file.
* libjava.lang/ArrayStore2.out: New file.
* libjava.lang/ArrayStore2.xfail: New file. xfail-source-output.
Jason Merrill [Wed, 20 Feb 2002 04:09:05 +0000 (23:09 -0500)]
ABI change: Mangle `void (A::*)() const' as M1AKFvvE, not MK1AFvvE.
ABI change: Mangle `void (A::*)() const' as
M1AKFvvE, not MK1AFvvE.
* mangle.c (write_function_type): Write cv-quals for member
function type here.
(write_pointer_to_member_type): Not here.
Tom Tromey [Wed, 20 Feb 2002 03:16:30 +0000 (03:16 +0000)]
re PR libgcj/5696 (natClass.cc run through superclasses of target if they exist while comparing variable types.)
Fix for PR libgcj/5696:
* verify.cc (is_assignable_from_slow): Never call
_Jv_IsAssignableFrom.
(verify_instructions_0): Added new debug statement.
(state::print): Print information about whether local has
changed.
(state::merge): Don't call note_variable when merging locals.
(state::set_exception): Removed old FIXME comment.
Zack Weinberg [Wed, 20 Feb 2002 00:19:33 +0000 (00:19 +0000)]
tree.h (struct tree_common): Remove aux.
* tree.h (struct tree_common): Remove aux. Add unused_0 at
end of first block of bitfields (which was only seven bits);
rename dummy to unused_1; remove comment which is no longer true.
Scott Snyder [Tue, 19 Feb 2002 20:02:16 +0000 (20:02 +0000)]
demangle-expected: Add test case for infinite loop in demangler.
* testsuite/demangle-expected: Add test case for infinite loop in
demangler.
* cplus-dem.c (demangle_arm_hp_template): Stop trying to demangle
if do_type() doesn't make any progress --- prevents an infinite
loop.
* config/arm/arm.c (use_return_insn): Don't reject interrupt
functions.
(arm_compute_save_reg_mask): Save LR for interrupt functions too.
(output_return_instruction): Allow interrupt functions to return with
ldmfd sp!, {... pc}^. Use LDR to restore any single register.
(arm_expand_prologue): Subtract 4 before stacking LR in an
interrupt function.
Philip Blundell [Tue, 19 Feb 2002 18:04:05 +0000 (18:04 +0000)]
arm.c (arm_encode_call_attribute): Operate on any decl, not just FUNCTION_DECL.
2002-02-19 Philip Blundell <pb@nexus.co.uk>
* config/arm/arm.c (arm_encode_call_attribute): Operate on any
decl, not just FUNCTION_DECL.
(legitimize_pic_address): Handle local SYMBOL_REF like LABEL_REF.
(arm_assemble_integer): Likewise.
* config/arm/arm.h (ARM_ENCODE_CALL_TYPE): Allow any decl to be
marked local.
* varasm.c (output_constant_pool): Handle vectors.
(rtx_const): Add veclo and vechi fields.
(kind): Add RTX_VECTOR.
(decode_rtx_const): Add case for vector.
* config/rs6000/rs6000.c (rs6000_emit_move): Handle vector
constants. Force easy vector constants into memory.
(easy_vector_constant): New.
(emit_easy_vector_constant): New.
(rs6000_legitimize_reload_address): Do not generate bad reloads on
darwin.
Carlo Wood [Mon, 18 Feb 2002 22:41:45 +0000 (22:41 +0000)]
re PR other/5390 ([3.3 only?] Libiberty fails to demangle multi-digit template parameters.)
2002-02-18 Carlo Wood <carlo@gnu.org>
PR c++/5390
* cplus-dem.c (demangle_integral_value): Accept multi-digit
numbers that do not start with an underscore; This is needed
for integer template parameters. This doesn't break anything
because multi-digit numbers are never followed by a digit.
* testsuite/demangle-expected: Corrected all mangled test
cases with multi-digit template parameters: g++ 2.95.x does
not generate underscores around these parameters.
Paolo Carlini [Mon, 18 Feb 2002 21:23:26 +0000 (22:23 +0100)]
locale_facets.tcc (money_put::do_put): For the space field use __fill instead of ' ', uniformly.
2002-02-18 Paolo Carlini <pcarlini@unitus.it>
libstdc++/5708
* include/bits/locale_facets.tcc (money_put::do_put):
For the space field use __fill instead of ' ', uniformly.
* testsuite/22_locale/money_put_members_char.cc:
Add test05 distilled from PR.
(test01-02-03): Trim some '*' to ' '.
* testsuite/22_locale/money_put_members_wchar_t.cc: Ditto.
Loren J. Rittle [Mon, 18 Feb 2002 20:23:56 +0000 (20:23 +0000)]
Makefile.am (thread_builddir): Remove (map all existing uses to target_builddir).
libstdc++/5697
* include/Makefile.am (thread_builddir): Remove (map all
existing uses to target_builddir).
(thread_headers): Rename to...
(thread_target_headers): ...this.
(stamp-thread): Remove.
(stamp-target): Correctly state the position as built.
Update all dependencies to match the new reality. Remove all
dependency calculations on directories.
* include/Makefile.in: Rebuilt.
Philip Blundell [Mon, 18 Feb 2002 19:37:33 +0000 (19:37 +0000)]
arm.c (arm_compute_save_reg_mask): Fix typo in comment.
2002-02-18 Philip Blundell <pb@nexus.co.uk>
* config/arm/arm.c (arm_compute_save_reg_mask): Fix typo in
comment.
(output_return_instruction): Allow use of LDR to unstack
return addresss even for interrupt handlers or when
interworking. If compiling for ARMv5, use interworking-safe
return instructions by default. Remove duplicated code and
lengthy "strcat" sequences.
Philipp Thomas [Sun, 17 Feb 2002 14:23:53 +0000 (14:23 +0000)]
final.c (output_operand_lossage): Changed to accept printf style arguments.
2002-02-17 Philipp Thomas <pthomas@suse.de>
* final.c (output_operand_lossage): Changed to accept
printf style arguments. Change calls where necessary.
* output.h (output_operand_lossage): Change declaration
accordingly. Update copyright.
* config/arc/arc.c config/fr30/fr30.c config/m32r/m32r.c
config/m88k/m88k.c : Adapt all calls to output_operand_lossage.
Update copyright date where necessary.
* config/i386/i386.c (print_operand): Likewise. Remove use of
sprintf.
* config/cris/cris.c (cris_operand_lossage): Likewise.
Rename parameter so that exgettext recognizes it as
translatable message.
(LOSE_AND_RETURN): Rename parameter to msgid.
Kazu Hirata [Sun, 17 Feb 2002 12:41:46 +0000 (12:41 +0000)]
h8300.h (CONDITIONAL_REGISTER_USAGE): Replace a hard coded register number with an appropriate macro.
* config/h8300/h8300.h (CONDITIONAL_REGISTER_USAGE): Replace a
hard coded register number with an appropriate macro.
(HARD_REGNO_MODE_OK): Likewise.
(ARG_POINTER_REGNUM): Likewise.
(STATIC_CHAIN_REGNUM): Likewise.
(RETURN_ADDRESS_POINTER_REGNUM): Likewise.
* config/h8300/h8300.md (define_constants): Define more
register numbers.
Nathan Sidwell [Sat, 16 Feb 2002 12:13:41 +0000 (12:13 +0000)]
decl.c (grokdeclarator): Set typedef_decl for all TYPE_DECLs, remove incorrect comment.
cp:
* decl.c (grokdeclarator): Set typedef_decl for all TYPE_DECLs,
remove incorrect comment. Move #if 0'd code to common path. Use
IMPLICIT_TYPENAME_P. Simplify & reformat ARRAY_TYPE duplication.
testsuite:
* g++.dg/abi/bitfield1.C: New test.
* g++.dg/abi/bitfield2.C: New test.
* include/std/std_streambuf.h: Add definitions for private copy
ctor and assignment operator.
* include/std/std_istream.h: Remove declared but undefined copy
ctor and assignment operator. This is taken care of in ios_base,
so adding it in the derived class as well is superfluous.
* include/std/std_ostream.h: Same.
Tom Tromey [Fri, 15 Feb 2002 06:55:42 +0000 (06:55 +0000)]
re PR libgcj/5695 (verify.cc test that target is an object before running down interfaces)
Fix for PR libgcj/5695:
* verify.cc (is_assignable_from_slow): Check to see if target is
an Object before checking to see if source is an interface.
(verify_instructions_0) [op_invokeinterface]: Handle case where
we're making an interface call on Object.
Bryce McKinlay [Fri, 15 Feb 2002 05:53:29 +0000 (05:53 +0000)]
Makefile.in: Rebuilt with Eric's change below.
* Makefile.in: Rebuilt with Eric's change below.
* java/lang/natMath.cc (abs(jdouble), abs(jfloat), round(jfloat),
round(jdouble), min(jfloat), max(jfloat), min(jdouble), min(jfloat)):
Removed functions which are now implemented in Math.java.
Mark Wielaard [Thu, 14 Feb 2002 23:16:11 +0000 (23:16 +0000)]
[multiple changes]
2002-02-14 Mark Wielaard <mark@klomp.org>
* java/math/BigInteger.java: import gnu.java.math.MPN not the whole
package as a workaround for gcj 3.0.x
2002-02-14 Mark Wielaard <mark@klomp.org>
* java/security/BasicPermission.java: extends with fully qualified
classname as workaround for gcj 3.0.4.
2002-02-14 Eric Blake <ebb9@email.byu.edu>
* java/net/DatagramSocketImpl.java (setOption, getOption): Work
around gcj bug of wrong emitted qualifier for inherited method.
* java/net/SocketImpl.java (setOption, getOption): Ditto.
* java/util/WeakHashMap.java (WeakEntrySet): Add non-private
constructor to reduce amount of emitted bytecode. While this
happens to work around a jikes 1.15 bug, it is still a useful
patch even for correct compilers.
* java/rmi/server/RMIClassLoader.java (MyClassLoader): Ditto.
* gnu/java/rmi/server/UnicastRemoteCall.java
(DummyObjectOutputStream, DummyObjectInputStream): Ditto.
Kazu Hirata [Thu, 14 Feb 2002 13:25:30 +0000 (13:25 +0000)]
h8300-protos.h: Update the prototype for const_costs.
* config/h8300/h8300-protos.h: Update the prototype for
const_costs.
* config/h8300/h8300.c (const_costs): Treat SET as a little
more expensive operation.
* config/h8300/h8300.h (DEFAULT_RTX_COSTS): Update the
reference to const_costs.