This is the mail archive of the java-patches@gcc.gnu.org mailing list for the Java project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH] libjava: Add option to disable BC ABI in libgcj.


Andrew Haley wrote:
David Daney wrote:
Gerald Pfeifer wrote:
+@item --disable-libgcj-bc
+Disable BC ABI compilation of certain parts of libgcj.  By default,
+some portions of libgcj are compiled with @option{-findirect-dispatch}
+@option{-fno-indirect-classes}.  This allows them to be overridden at
+runtime.

When first reading this, I got a bit confused by two aspects. Perhaps this is something to address in a follow-up patch, David?

One was that "BC API compilation" (including myself ;-) isn't something most readers of doc/install.texi would be familiar with. How about
expanding this or adding a reference/cross-reference?


The second one was that I wasn't sure what "This" referred to: the configure option, or the previous sentence explaining BC ABI compilation.
Perhaps replacing this by ", which" might be more clear?


+If @option{--disable-libgcj-bc} is specified, libgcj is built without
+these options. This makes it impossible to override portions of
+libgcj at runtime, but can make it easier to statically link to libgcj.


Why does this read "can make" and not just "makes"? I'm sure there is
some technical background here which I'm missing. :-) Perhaps a (cross)
reference to more detailed information somewhere else could clarify that?
How about this version instead?  I think it gets rid of some of the
ambiguity and explains things a bit better.

There really is nothing other than e-mail archives that could be cross
referenced to provide deeper information about this option.

See ftp://gcc.gnu.org/pub/gcc/summit/2004/GCJ%20New%20ABI.pdf

While I could certainly reference this paper, I am not sure that install.texi is the best place for such a reference.


I was thinking that if someone wanted to know the gory details, they could look up -findirect-dispatch. I was trying to keep the install documentation as small as possible while still describing what the new option does.


Tested with make info and make html with no errors.

2008-01-25 David Daney <ddaney@avtrex.com>

* doc/install.texi (--disable-libgcj-bc): Reword documentation.



------------------------------------------------------------------------

Index: doc/install.texi
===================================================================
--- doc/install.texi (revision 131856)
+++ doc/install.texi (working copy)
@@ -1557,12 +1557,13 @@ Disable JVMPI support.
@item --disable-libgcj-bc
Disable BC ABI compilation of certain parts of libgcj. By default,
some portions of libgcj are compiled with @option{-findirect-dispatch}
-@option{-fno-indirect-classes}. This allows them to be overridden at
-runtime.
+and @option{-fno-indirect-classes}, allowing them to be overridden at
+run-time.
If @option{--disable-libgcj-bc} is specified, libgcj is built without
-these options. This makes it impossible to override portions of
-libgcj at runtime, but can make it easier to statically link to libgcj.
+these options. This allows the compile-time linker to resolve
+dependencies when statically linking to libgcj. However it makes it
+impossible to override the effected portions of libgcj at run-time.

Is that *a*ffected rather than *e*ffected?


I don't think so, but I have a limited grasp of the English language. I will defer to others on which of 'affected' or 'effected' should be used here.

David Daney


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]