On Fri, 17 Nov 2023 12:06:48 GMT, Martin Doerr <mdo...@openjdk.org> wrote:
>>> > There is not generic way of generating this. It needs a manual >>> > intervention and symbols are to be added on a need basis in future. Looks >>> > like a list to be maintained. I had tried adding comments to explain the >>> > list, but that causes build failures. >>> >>> Would it be possible to paste the summary of the "instructions" to generate >>> this? My initial reaction when seeing this PR is to wonder why it can't be >>> generated at build time but from the discussion, it seems like it's a >>> subset symbols, just the functions used by libjvm or is it all the native >>> libraries? >> >> I just did a nm command and did a grep of " T " . That way i got all the >> symbols for math libraries. There were additional parsing instructions to >> remove the first column and remove periods at beginning. >> >> Then we had to remove certain symbols that are dependent on DFP symbols and >> xlc17 doesn't support them yet, So we had to trim down the list further, >> which is why it now becomes a list to be maintained. > > @suchismith1993: Can you add your explanations to the description at the top > of this PR, please? > I think restricting symbols to the ones from C standard makes sense. > @magicus: We need a solution for JDK22 since the FFI including symbol lookup > has become a required interface. RDP1 is coming closer and I don't see a > better solution coming soon enough. Can we go ahead with a symbol list file > for JDK22? Where should it reside if not in make/data/hotspot-symbols? @TheRealMDoerr A reasonable place to move the file to would be `src/java.base/aix/data/default-libraries-symbols/symbols`, or something like that. Data that is only used by a single module should be stored in that module, and if it is only used by a single OS it should be stored under that OS subdir. Feel free to chose a different name than `default-libraries-symbols` and for the actual file if you want, as long as it is descriptive enough. I still want to see some kind of documentation on how this list was created. This can be placed in the Lib.gmk file. And I still don't understand if this is the list of symbols that are required by our tests, or the complete list of symbols that FFI `defaultLookup` returns to user applications. If it is the latter, then this is sort-of okay as a final solution, but it is the former, I'm stll frowning upon this solution. But in the end, I realize that AIX is just being given the bare minimum of development time to stay functional, so maybe this'll just have to do. ------------- PR Comment: https://git.openjdk.org/jdk/pull/16414#issuecomment-1816311598