RFR: JDK-8298448: UndefinedBehaviorSanitizer
David Holmes
dholmes at openjdk.org
Mon Dec 12 01:35:36 UTC 2022
On Fri, 9 Dec 2022 06:53:31 GMT, Justin King <jcking at openjdk.org> wrote:
> Allow building OpenJDK with UBSan. Currently the build fails when optimizing the image due to lots of undefined behavior (it invokes the built JVM). Follow up PRs will either replace the undefined behavior with well defined behavior or suppress errors which are intentional. The goal is to make OpenJDK more well defined and thus more portable across compilers and architectures.
I think it requires much broader discussion as to whether OpenJDK is actively seen to endorse these tools. Why these tools? What if there are other tools, should we support them all?
I'm not saying use of these tools may not be useful, but actually incorporating them into OpenJDK is a decision that needs to be made at a higher-level IMO.
make/autoconf/spec.gmk.in line 459:
> 457:
> 458: # UndefinedBehaviorSanitizer
> 459: UBSAN_ENABLED:=@UBSAN_ENABLED@
I don't see anything reading this. ??
src/java.base/share/native/launcher/main.c line 37:
> 35: #include "jni.h"
> 36:
> 37: #ifdef UNDEFINED_BEHAVIOR_SANITIZER
I really do not like having to make source code changes to accommodate these kinds of tools.
-------------
PR: https://git.openjdk.org/jdk/pull/11604
More information about the core-libs-dev
mailing list