RFR: 8354686: [AIX] now ubsan is possible
Erik Joelsson
erikj at openjdk.org
Tue Apr 15 19:45:51 UTC 2025
On Tue, 15 Apr 2025 18:40:57 GMT, Joachim Kern <jkern at openjdk.org> wrote:
> With the introduction of the open XL 17.1.2.13 Compiler and the runtime 17.1.3 as minimum requirement ubsan is supported for AIX now.
> Unfortunately there has to be some adoptions.
> - Currently the test for vptr does not work and produces crashes when active, so we have to deactivate it. (If fixed by IBM there will be a follow up JBS)
> - ubsan introduces so much new symbols to every executable that we have to link with -bbictoc.
> - The llvm_symbolizer is not found out of the box, so we have to provide the full qualified llvm_symbolizer path in the __ubsan_default_options() function.
make/autoconf/jdk-options.m4 line 526:
> 524: UBSAN_LDFLAGS="$UBSAN_CHECKS"
> 525: if test "x$TOOLCHAIN_TYPE" = "xclang" && test "x$OPENJDK_TARGET_OS" = "xaix"; then
> 526: UBSAN_CFLAGS="$UBSAN_CFLAGS -fno-sanitize=function,vptr -DLLVM_SYMBOLIZER=$(dirname $(dirname $CC))/tools/ibm-llvm-symbolizer"
I would recommend handling this tool path properly, by first trying to look it up with one of the standard macros and then falling back to a default, and let configure fail if it wasn't found. This would also implicitly add the ability for the user to specify a different path if ever needed (using VAR_NAME=/path/to/tool on the command line). However, since this isn't a platform I'm supporting, I won't force you.
-------------
PR Review Comment: https://git.openjdk.org/jdk/pull/24667#discussion_r2045346013
More information about the build-dev
mailing list