summaryrefslogtreecommitdiffstats
path: root/gcc/java/gcj.texi
diff options
context:
space:
mode:
authorfitzsim <fitzsim@138bc75d-0d04-0410-961f-82ee72b054a4>2006-05-31 23:12:09 +0000
committerfitzsim <fitzsim@138bc75d-0d04-0410-961f-82ee72b054a4>2006-05-31 23:12:09 +0000
commitb756fae74558bbe96c6a3ab94105639590acc0e1 (patch)
treed8f59d7c64714486fbf35bab84a09347819ed6b6 /gcc/java/gcj.texi
parentc9e1b8d8e16c0c50fee1a4146f4d3ef6d3ea0b9a (diff)
downloadppe42-gcc-b756fae74558bbe96c6a3ab94105639590acc0e1.tar.gz
ppe42-gcc-b756fae74558bbe96c6a3ab94105639590acc0e1.zip
2006-05-31 Thomas Fitzsimmons <fitzsim@redhat.com>
* gcj.texi (Extensions): Document the new gcj-dbtool-based classname-to-library resolution mechanism. Declare the old gnu.gcj.runtime.VMClassLoader.library_control mechanism deprecated. (libgcj Runtime Properties): Document gnu.gcj.runtime.VMClassLoader.library_control's new default. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@114282 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/java/gcj.texi')
-rw-r--r--gcc/java/gcj.texi32
1 files changed, 21 insertions, 11 deletions
diff --git a/gcc/java/gcj.texi b/gcc/java/gcj.texi
index ae7bcb7532b..2f82d7f981b 100644
--- a/gcc/java/gcj.texi
+++ b/gcc/java/gcj.texi
@@ -670,16 +670,26 @@ added are to facilitate this functionality.
@xref{About CNI}, for more info on how to use this in your programs.
@item
-When you compile your classes into a shared library they can be automatically
-loaded by the @code{libgcj} system classloader. When trying to load a class
-@code{gnu.pkg.SomeClass} the system classloader will first try to load the
-shared library @file{lib-gnu-pkg-SomeClass.so}, if that fails to load the
-class then it will try to load @file{lib-gnu-pkg.so} and finally when the
-class is still not loaded it will try to load @file{lib-gnu.so}. Note that
+When you compile your classes into a shared library using
+@code{-findirect-dispatch} then add them to the system-wide
+classmap.db file using @code{gcj-dbtool}, they will be automatically
+loaded by the @code{libgcj} system classloader. This is the new,
+preferred classname-to-library resolution mechanism. @xref{Invoking
+gcj-dbtool}, for more information on using the classmap database.
+
+@item
+The old classname-to-library lookup mechanism is still supported
+through the @code{gnu.gcj.runtime.VMClassLoader.library_control}
+property, but it is deprecated and will likely be removed in some
+future release. When trying to load a class @code{gnu.pkg.SomeClass}
+the system classloader will first try to load the shared library
+@file{lib-gnu-pkg-SomeClass.so}, if that fails to load the class then
+it will try to load @file{lib-gnu-pkg.so} and finally when the class
+is still not loaded it will try to load @file{lib-gnu.so}. Note that
all @samp{.}s will be transformed into @samp{-}s and that searching
-for inner classes starts with their outermost outer class. If the class
-cannot be found this way the system classloader tries to use
-the @code{libgcj} bytecode interpreter to load the class from the standard
+for inner classes starts with their outermost outer class. If the
+class cannot be found this way the system classloader tries to use the
+@code{libgcj} bytecode interpreter to load the class from the standard
classpath. This process can be controlled to some degree via the
@code{gnu.gcj.runtime.VMClassLoader.library_control} property;
@xref{libgcj Runtime Properties}.
@@ -2787,8 +2797,8 @@ frequently.
This controls how shared libraries are automatically loaded by the
built-in class loader. If this property is set to @samp{full}, a full
search is done for each requested class. If this property is set to
-@samp{cache} (the default), then any failed lookups are cached and not
-tried again. If this property is set to @samp{never}, then lookups
+@samp{cache}, then any failed lookups are cached and not tried again.
+If this property is set to @samp{never} (the default), then lookups
are never done. For more information, @xref{Extensions}.
@item gnu.gcj.runtime.endorsed.dirs
OpenPOWER on IntegriCloud