Hi Erik, On Tue, Dec 20, 2016 at 9:17 AM, Erik Joelsson <[email protected]> wrote:
> Hello, > > I understand why you want to filter out the -qpic flag from the general > JVM_CFLAGS, but that kind of logic is brittle so we try to avoid it unless > absolutely necessary. I prefer to just rely on the tools treating command > line options as the last one takes precedence. I assume the AIX compiler > behaves that way too and that a -qpic=large will override a -qpic earlier > on the command line. We have consciously designed SetupNativeCompilation to > add all the *FLAGS in the order of most specific flags last for this reason. > > You are right, and Volker just complained about the same thing :) I'll post an updated ref where I just rely on qpic=large following qpic. I was not happy with that filter-out expression either. ..Thomas > So, could you try removing the filtering and see if it still works? > > /Erik > > > > On 2016-12-18 13:50, Thomas Stüfe wrote: > >> Hi all, >> >> please take a look at this small fix. In short, on AIX when linking the >> gtest version of libjvm.so, the TOC overflows. >> >> So the gtest libjvm.so must be linked with -bbigtoc, in contrast to the >> regular libjvm.so, which has no problems and can keep using a small TOC. >> >> Also, I compile all gtest objects with -qpic=large. Note that this only >> affects the gtest objects. The regular objects - which the gtest libjvm.so >> shares with the regular libjvm.so - I left at -qpic[=small]. This means we >> pay a bit of a performance overhead in the gtest libjvm.so but leave the >> regular libjvm.so at its optimal linker settings. >> >> Issue: >> https://bugs.openjdk.java.net/browse/JDK-8171408 >> >> Webrev: >> http://cr.openjdk.java.net/~stuefe/webrevs/8171408-aix-TOC- >> overflow-when-linking-the-gtest-libjvm/webrev.00/ >> >> (Hope the webrev link works, the webserver is still down). >> >> Kind Regards, Thomas >> > >
