This is the mail archive of the java@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: need to focus on java performance?


Per Bothner wrote:
We really need to look at this in the context of shared libraries and
the dynamic linker: Shared libraries add their own overheads and
indirection.  The question is can we make use of the shared library
indirection without adding extra indirection?

The BC-ABI bypasses PIC indirection for the most part. For example, under the C++ ABI a call to a static method would be indirected though the PLT, with the PLT entry set at runtime by the linker to jump to the actual address of the function. With BC, the atable contains the actual function address - ie we swap one type of indirection for another. In this case, the BC indirection actually turns out to be faster (on benchmarks, at least), due to less branches.


Bryce


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