aboutsummaryrefslogtreecommitdiff
path: root/libjava/include/execution.h
diff options
context:
space:
mode:
authorTom Tromey <tromey@redhat.com>2006-02-08 20:07:29 +0000
committerTom Tromey <tromey@gcc.gnu.org>2006-02-08 20:07:29 +0000
commit8b1753e3ec0f38a18b8bcd3c13e2b6b55f799099 (patch)
treedad7dc41d043dce968c02f6043b92ddb8c7cbff7 /libjava/include/execution.h
parentb5642e202974f356bc85dafe0dfb4ab79736a48e (diff)
downloadgcc-8b1753e3ec0f38a18b8bcd3c13e2b6b55f799099.zip
gcc-8b1753e3ec0f38a18b8bcd3c13e2b6b55f799099.tar.gz
gcc-8b1753e3ec0f38a18b8bcd3c13e2b6b55f799099.tar.bz2
PR libgcj/26063, PR libgcj/17978, PR libgcj/10598:
* defineclass.cc (parse): Use _Jv_AllocRawObj. (read_constpool): Likewise. (read_one_code_attribute): Use internal function name. (handleConstantPool): Use _Jv_AllocRawObj. (handleInterfacesBegin): Likewise. (handleFieldsBegin): Likewise. (handleMethodsBegin): Likewise. (handleCodeAttribute): Likewise. (handleMethodsEnd): Likewise. * include/jvm.h (new_vtable): Use _Jv_AllocRawObj. * interpret.cc (do_allocate_static_fields): Use _Jv_AllocRawObj. Allocate reference fields separately. * link.cc (prepare_constant_time_tables): Use _Jv_AllocRawObj. (add_miranda_methods): Likewise. (generate_itable): Use _Jv_AllocBytes. (find_iindex): Likewise. (struct method_closure): New structure. (create_error_method): Use struct method_closure; allocate with _Jv_AllocBytes. (ensure_fields_laid_out): Separate reference fields from non-reference fields. * boehm.cc (_Jv_MarkObj): Mark vtable. Only mark direct fields of Class. (_Jv_MarkArray): Mark vtable. (_Jv_AllocRawObj): Don't allocate objects of size 0. * include/execution.h (_Jv_ExecutionEngine::allocate_static_fields): Added 'int' parameter. (struct _Jv_CompiledEngine): Updated. (class _Jv_InterpreterEngine): Updated. From-SVN: r110763
Diffstat (limited to 'libjava/include/execution.h')
-rw-r--r--libjava/include/execution.h8
1 files changed, 4 insertions, 4 deletions
diff --git a/libjava/include/execution.h b/libjava/include/execution.h
index b8f4746..88189f6 100644
--- a/libjava/include/execution.h
+++ b/libjava/include/execution.h
@@ -1,6 +1,6 @@
// execution.h - Execution engines. -*- c++ -*-
-/* Copyright (C) 2004 Free Software Foundation
+/* Copyright (C) 2004, 2006 Free Software Foundation
This file is part of libgcj.
@@ -23,7 +23,7 @@ struct _Jv_ExecutionEngine
// interpreter does it.
bool (*need_resolve_string_fields) ();
void (*verify) (jclass);
- void (*allocate_static_fields) (jclass, int);
+ void (*allocate_static_fields) (jclass, int, int);
void (*create_ncode) (jclass);
_Jv_ResolvedMethod *(*resolve_method) (_Jv_Method *, jclass,
jboolean, jint);
@@ -55,7 +55,7 @@ struct _Jv_CompiledEngine : public _Jv_ExecutionEngine
return NULL;
}
- static void do_allocate_static_fields (jclass, int)
+ static void do_allocate_static_fields (jclass, int, int)
{
// Compiled classes don't need this.
}
@@ -99,7 +99,7 @@ class _Jv_InterpreterEngine : public _Jv_ExecutionEngine
public:
static void do_verify (jclass);
- static void do_allocate_static_fields (jclass, int);
+ static void do_allocate_static_fields (jclass, int, int);
static void do_create_ncode (jclass);
static _Jv_ResolvedMethod *do_resolve_method (_Jv_Method *, jclass,
jboolean, jint);