Mark Mitchell [Tue, 11 Jan 2000 06:50:19 +0000 (06:50 +0000)]
class.c (dfs_modify_vtables_queue_p): Remove.
* class.c (dfs_modify_vtables_queue_p): Remove.
(modify_all_vtables): Use dfs_unmarked_real_bases_queue_p
and dfs_marked_real_bases_queue_p instead of
dfs_modify_vtables_queue_p.
Mark Mitchell [Tue, 11 Jan 2000 03:15:32 +0000 (03:15 +0000)]
class.c (build_base_field): New function, split out from ...
* class.c (build_base_field): New function, split out from ...
(build_base_fields): ... here. Use it. Allocate primary bases
first, under the new ABI.
(get_vtable_entry): Remove.
(remove_base_field): New function, split out from ...
(remove_base_fields): ... here. Adjust since primary bases come
first under the new ABI.
Kaveh R. Ghazi [Mon, 10 Jan 2000 23:48:03 +0000 (23:48 +0000)]
Makefile.in (optabs.o): Depend on real.h
* Makefile.in (optabs.o): Depend on real.h
(resource.o): Depend on insn-attr.h
* builtins.c (result_vector): Wrap prototype in macro conditions
governing definition and use.
* c-common.c: Include tm_p.h.
* c-lex.c: Likewise.
* elfos.h: Constify a char*.
* final.c (align_fuzz): Wrap prototype in macro HAVE_ATTR_length.
(get_attr_length, shorten_branches, profile_after_prologue): Mark
parameter with ATTRIBUTE_UNUSED.
* fold-const.c (exact_real_inverse): Wrap variable `i' in
CHECK_FLOAT_VALUE.
* haifa-sched.c (schedule_insns): Mark parameter with
ATTRIBUTE_UNUSED.
* optabs.c: Include real.h.
* real.h (ereal_atof): Add prototype arguments.
* resource.c: Include insn-attr.h.
* sdbout.c (sdbout_queue_anonymous_type,
sdbout_dequeue_anonymous_types): Wrap in macro
SDB_ALLOW_FORWARD_REFERENCES.
(sdbout_init, sdbout_start_new_source_file): Mark parameter with
ATTRIBUTE_UNUSED.
* stmt.c (expand_return): Wrap variable `op0' in macro HAVE_return.
* stupid.c: Include tm_p.h.
* tree.c (real_value_from_int_cst): Mark parameter with
ATTRIBUTE_UNUSED.
Jeff Sturm [Mon, 10 Jan 2000 20:02:47 +0000 (20:02 +0000)]
natMath.cc (pow): Cast args to `double', not `jdouble'.
2000-01-10 Jeff Sturm <jsturm@sigma6.com>
* java/lang/natMath.cc (pow): Cast args to `double', not
`jdouble'.
(atan2): Likewise.
(IEEEremainder): Likewise.
* java/lang/mprec.h: Don't wrap includes in `extern "C"'.
* java/lang/fdlibm.h: Don't wrap includes in `extern "C"'.
Anthony Green [Sun, 9 Jan 2000 22:25:54 +0000 (22:25 +0000)]
natString.cc (init): Test for overflow condition during out of bounds check.
2000-01-09 Anthony Green <green@cygnus.com>
* java/lang/natString.cc (init): Test for overflow condition
during out of bounds check.
(getChars): Throw StringIndexOutOfBoundsException, not
ArrayIndexOutOfBoundsException.
(getBytes): Ditto.
(regionMatches): Obey case option during string comparison.
* configure.host (ligcj_interpreter): New variable. Enable
interpreter by default on IA-32.
* configure.in: Examine libgcj_interpreter.
* configure: Rebuilt.
expr.c (java_lang_expand_expr): Switch to permanent obstack before calling expand_eh_region_start and...
Wed Dec 8 15:33:26 1999 Alexandre Petit-Bianco <apbianco@cygnus.com>
* expr.c (java_lang_expand_expr): Switch to permanent obstack
before calling expand_eh_region_start and expand_start_all_catch.
* except.c (expand_start_java_handler): Switch to permanent
obstack before calling expand_eh_region_start.
(expand_end_java_handler): Switch to permanent obstack before
calling expand_start_all_catch.
re GNATS gcj/122 (SP mismatch error from certain code constructs)
Thu Jan 6 00:54:10 2000 Alexandre Petit-Bianco <apbianco@cygnus.com>
* jcf-write.c (generate_byecode_conditional): Fixed indentation in
method invocation and typo in conditional expression.
(generate_bytecode_insns): COND_EXPR can be part of a binop. Issue
the appropriate NOTE_POP.
* parse.y (patch_binop): Shift value mask to feature the right
type.
(This is a fix for the PR #122:
http://sourceware.cygnus.com/ml/java-prs/2000-q1/msg00000.html)
David Edelsohn [Fri, 7 Jan 2000 18:33:12 +0000 (13:33 -0500)]
rs6000.c (processor_target_table): Add power3 as alias for 630.
* rs6000.c (processor_target_table): Add power3 as alias for 630.
* aix43.h: Revert Aug 2 change.
(HAS_INIT_SECTION): Define, not visible yet.
(LD_INIT_SWITCH): Define, not visible yet.
* t-aix43 (MULTILIB_OPTIONS): Revert Aug 2 change.
alpha.md (adddi_2+1): Limit offset such that it will be loadable with a single ldah+lda pair.
* alpha.md (adddi_2+1): Limit offset such that it will be
loadable with a single ldah+lda pair.
(adddi_2+2): Explicitly fail split if we can't make it work.
Fri Dec 24 00:25:29 1999 Alexandre Petit-Bianco <apbianco@cygnus.com>
* Makefile.in (LIBDEPS): Added gcc's errors.o
(../jcf-dump$(exeext):): Link with gcc's errors.o
(../gcjh$(exeext):): Likewise.
* expr.c (expand_java_NEW): Layout the entire target type instead of
laying out its methods only.
(lookup_field): Layout the class after having loaded it.
* java-tree.h (java_debug_context): Declared.
* jcf-io.c (toplev.h): Included.
(find_class): Removed assignment to jcf's outofsynch
field. Force source file to be read if newer than its matching
class file. Tweaked debug messages.
* jcf-parse.c (jcf_out_of_synch): Deleted.
(read_class): Call to jcf_out_of_synch removed.
* jcf.h (typedef struct JCF): Field `outofsynch' deleted.
(jcf_out_of_synch): Prototype deleted.
* parse.h (struct parser_ctxt): `minus_seen', `java_error_flag',
`deprecated' and `class_err': integer turned into bit fields.
New bit fields `saved_data_ctx' and `saved_data'. Fixed comments.
* parse.y (package_list): New global.
(package_declaration:): Record newly parsed package name.
(extra_ctxp_pushed_p): Static global deleted.
(java_parser_context_save_global): Create buffer context for the
purpose of saving globals, if necessary.
(java_parser_context_restore_global): Pop context pushed for the
purpose of saving globals, if necessary.
(java_debug_context_do): New prototype and function.
(java_debug_context): Likewise.
(do_resolve_class): Use already parsed package names to qualify
and lookup class candidate.
(java_pre_expand_clinit): Removed unnecessary local variable.
Tom Tromey [Thu, 6 Jan 2000 18:18:15 +0000 (18:18 +0000)]
natClass.cc (_getConstructors): Correctly check whether method name is the init name.
* java/lang/natClass.cc (_getConstructors): Correctly check
whether method name is the init name.
(getMethod): Look at accflags on method in `klass', not `this'.
defaults.h (DWARF_FRAME_REGISTERS): if not defined, default to FIRST_PSEUDO_REGISTER
2000-01-06 Gabriel Dos Reis <dosreis@cmla.ens-cachan.fr>
* defaults.h (DWARF_FRAME_REGISTERS): if not defined, default to
FIRST_PSEUDO_REGISTER
* dwarf2out.c: Don't include frame.h
* dwarfout.c: Likewise
* Makefile.in (dwarfout.o, dwarf2out.o): Remove dependence on
frame.h
Tom Tromey [Thu, 6 Jan 2000 00:56:21 +0000 (00:56 +0000)]
natClass.cc (getMethod): Compute offset relative to `klass's methods table, not `this's table.
* java/lang/natClass.cc (getMethod): Compute offset relative to
`klass's methods table, not `this's table.
* java/lang/reflect/natMethod.cc (_Jv_CallNonvirtualMethodA):
In unwrapping/widening case, check whether `k' is null, not
whether it is primitive. Initialize `num' from `argelts', not
`paramelts'. Correct create and pass arguments to ffi_call.
Don't let presence of `this' argument affect index used to look in
argument arrays.
(COPY): Set appropriate element in `values' vector.
* c-decl.c (finish_enum): Simplify code to determine minimum and
maximum values of the enum, and calculate the type. Remove check
for FUNCTION_DECLs in the values list, which cannot happen. Replace
the DECL_INITIAL of each enumeration constant with a copy converted
to the enumeration type. When updating variant types, don't bother
updating the type itself.
* c-typeck.c (build_binary_op): Simplify conditional expressions
when weeding out spurious signed-unsigned warnings. Add new
spurious warning category: if the unsigned quantity is an enum
and its maximum value fits in signed_type(result_type). Update
commentary.
(build_conditional_expr): Warn here if one alternative is signed
and the other is unsigned.
Tom Tromey [Wed, 5 Jan 2000 17:23:34 +0000 (17:23 +0000)]
natMethod.cc (get_ffi_type): Test size of jboolean and select correct ffi type on that basis.
* java/lang/reflect/natMethod.cc (get_ffi_type): Test size of
jboolean and select correct ffi type on that basis.
(_Jv_CallNonvirtualMethodA): Handle `void' return type.
Constructor call always has `void' return type.
Tom Tromey [Wed, 5 Jan 2000 16:35:20 +0000 (16:35 +0000)]
Class.h (getSignature): Updated.
* java/lang/Class.h (getSignature): Updated.
* java/lang/Class.java (getSignature): Updated.
* java/lang/natClass.cc (getSignature): Added `is_constructor'
argument.
(getConstructor): Ensure constructor is public.
(_getConstructors): Check for public-ness of constructor when
`declared' is false, not when it is true.
Joel Sherrill [Wed, 5 Jan 2000 07:10:35 +0000 (07:10 +0000)]
configure.in (m68*-*-rtemscoff*): New target, formal name for old m68*-*-rtems*.
* configure.in (m68*-*-rtemscoff*): New target, formal name for
old m68*-*-rtems*.
(m68*-*-rtemself*): New target.
(mips64orion-*-rtems*): Remove duplicate definition of tm_file.
(sparc*-*-rtemsaout*): New target, formal name for old sparc*-*-rtems*.
(sparc*-*-rtemself*): New target.
(sparc*-*-rtems*): Now elf not a.out.
* config/i386/rtems.h: Include config/rtems.h.
* config/i386/rtemself.h: Include config/rtems.h.
* config/i960/rtems.h: Include config/rtems.h.
* config/m68k/rtems.h: Include config/rtems.h.
* config/m68k/rtemself.h: Include config/rtems.h.
* config/mips/rtems64.h: Include config/rtems.h.
* config/pa/rtems.h: Include config/rtems.h.
* config/rs6000/rtems.h: Include config/rtems.h.
* config/sh/rtems.h: Include config/rtems.h.
* config/sh/rtemself.h: Include config/rtems.h.
* config/sparc/rtems.h: Include config/rtems.h.
* config/sparc/rtemself.h: Include config/rtems.h
* configure.in: Add pj target.
* configure: Regenerate.
* config/pj: New directory.
* config/pj/lib1funcs.S: New file.
* config/pj/linux.h: New file.
* config/pj/pj.c: New file.
* config/pj/pj.md: New file.
* config/pj/pjl.h: New file.
* config/pj/t-pj: New file.
* config/pj/xm-pj.h: New file
Michael Hayes [Tue, 4 Jan 2000 23:57:40 +0000 (23:57 +0000)]
c4x.h (IS_XXX_REG, [...]): Swap behaviour of macros so that they're consistent with their names.
* config/c4x/c4x.h (IS_XXX_REG, IS_XXX_REGNO): Swap behaviour of
macros so that they're consistent with their names.
* config/c4x/c4x.c (IS_XXX_REG, IS_XXX_REGNO): Likewise.
* config/c4x/c4x.md (IS_XXX_REG, IS_XXX_REGNO): Likewise.