When running some jtreg tests on macOS aarch64 e.g.
java/awt/image/BufferedImage/TinyScale.java
we see this issue with ubsan enabled binaries :
/jdk/src/hotspot/share/runtime/sharedRuntime.cpp:2211:7: runtime error: index 3 out of bounds for type 'int[3]'
#0 0x107b04618 in AdapterFingerPrint::AdapterFingerPrint(int, BasicType*) sharedRuntime.cpp:2211
#1 0x107afaad0 in AdapterHandlerLibrary::lookup(int, BasicType*) sharedRuntime.cpp:2454
#2 0x107afbfcc in AdapterHandlerLibrary::get_adapter(methodHandle const&) sharedRuntime.cpp:2741
#3 0x1078c7be4 in Method::make_adapters(methodHandle const&, JavaThread*) method.cpp:1252
#4 0x1078c7960 in Method::link_method(methodHandle const&, JavaThread*) method.cpp:1225
#5 0x1073a11a8 in InstanceKlass::link_methods(JavaThread*) instanceKlass.cpp:1090
#6 0x1073a0c98 in InstanceKlass::link_class_impl(JavaThread*) instanceKlass.cpp:1017
#7 0x1073a0320 in InstanceKlass::link_class(JavaThread*) instanceKlass.cpp:899
#8 0x10739eec4 in InstanceKlass::initialize_impl(JavaThread*) instanceKlass.cpp:1184
#9 0x10739ee10 in InstanceKlass::initialize(JavaThread*) instanceKlass.cpp:814
#10 0x1073d3d58 in InterpreterRuntime::_new(JavaThread*, ConstantPool*, int) interpreterRuntime.cpp:219
#11 0x137548050 (<unknown module>)
#12 0x137534150 (<unknown module>)
#13 0x1073eaf54 in JavaCalls::call_helper(JavaValue*, methodHandle const&, JavaCallArguments*, JavaThread*) javaCalls.cpp:415
#14 0x1073a2500 in InstanceKlass::call_class_initializer(JavaThread*) instanceKlass.cpp:1707
#15 0x10739f9d8 in InstanceKlass::initialize_impl(JavaThread*) instanceKlass.cpp:1316
#16 0x10739ee10 in InstanceKlass::initialize(JavaThread*) instanceKlass.cpp:814
#17 0x10773e0dc in LinkResolver::resolve_static_call(CallInfo&, LinkInfo const&, bool, JavaThread*) linkResolver.cpp:1115
#18 0x107741280 in LinkResolver::resolve_invokestatic(CallInfo&, constantPoolHandle const&, int, JavaThread*) linkResolver.cpp:1744
#19 0x107741160 in LinkResolver::resolve_invoke(CallInfo&, Handle, constantPoolHandle const&, int, Bytecodes::Code, JavaThread*) linkResolver.cpp:1703
#20 0x1073d7340 in InterpreterRuntime::resolve_invoke(JavaThread*, Bytecodes::Code) interpreterRuntime.cpp:819
#21 0x1073d83cc in InterpreterRuntime::resolve_from_cache(JavaThread*, Bytecodes::Code) interpreterRuntime.cpp:998
#22 0x137546f00 (<unknown module>)
#23 0x13753881c (<unknown module>)
#24 0x13753881c (<unknown module>)
#25 0x13753881c (<unknown module>)
#26 0x137538a8c (<unknown module>)
#27 0x137538a8c (<unknown module>)
#28 0x137538a8c (<unknown module>)
#29 0x13753881c (<unknown module>)
#30 0x13753881c (<unknown module>)
#31 0x13753881c (<unknown module>)
#32 0x137538dbc (<unknown module>)
#33 0x13753881c (<unknown module>)
#34 0x13753902c (<unknown module>)
#35 0x137538a8c (<unknown module>)
#36 0x137534150 (<unknown module>)
#37 0x1073eaf54 in JavaCalls::call_helper(JavaValue*, methodHandle const&, JavaCallArguments*, JavaThread*) javaCalls.cpp:415
#38 0x1073e9ab0 in JavaCalls::call_virtual(JavaValue*, Klass*, Symbol*, Symbol*, JavaCallArguments*, JavaThread*) javaCalls.cpp:179
#39 0x1073e9bdc in JavaCalls::call_virtual(JavaValue*, Handle, Klass*, Symbol*, Symbol*, JavaThread*) javaCalls.cpp:185
#40 0x107515984 in thread_entry(JavaThread*, JavaThread*) jvm.cpp:2748
#41 0x1074154d4 in JavaThread::thread_main_inner() javaThread.cpp:772
#42 0x107415094 in JavaThread::run() javaThread.cpp:757
#43 0x107e11080 in Thread::call_run() thread.cpp:224
#44 0x10798fde8 in thread_native_entry(Thread*) os_bsd.cpp:597
#45 0x19fa8ef90 in _pthread_start+0x84 (libsystem_pthread.dylib:arm64e+0x6f90)
#46 0x19fa89d30 in thread_start+0x4 (libsystem_pthread.dylib:arm64e+0x1d30)
java/awt/image/BufferedImage/TinyScale.java
we see this issue with ubsan enabled binaries :
/jdk/src/hotspot/share/runtime/sharedRuntime.cpp:2211:7: runtime error: index 3 out of bounds for type 'int[3]'
#0 0x107b04618 in AdapterFingerPrint::AdapterFingerPrint(int, BasicType*) sharedRuntime.cpp:2211
#1 0x107afaad0 in AdapterHandlerLibrary::lookup(int, BasicType*) sharedRuntime.cpp:2454
#2 0x107afbfcc in AdapterHandlerLibrary::get_adapter(methodHandle const&) sharedRuntime.cpp:2741
#3 0x1078c7be4 in Method::make_adapters(methodHandle const&, JavaThread*) method.cpp:1252
#4 0x1078c7960 in Method::link_method(methodHandle const&, JavaThread*) method.cpp:1225
#5 0x1073a11a8 in InstanceKlass::link_methods(JavaThread*) instanceKlass.cpp:1090
#6 0x1073a0c98 in InstanceKlass::link_class_impl(JavaThread*) instanceKlass.cpp:1017
#7 0x1073a0320 in InstanceKlass::link_class(JavaThread*) instanceKlass.cpp:899
#8 0x10739eec4 in InstanceKlass::initialize_impl(JavaThread*) instanceKlass.cpp:1184
#9 0x10739ee10 in InstanceKlass::initialize(JavaThread*) instanceKlass.cpp:814
#10 0x1073d3d58 in InterpreterRuntime::_new(JavaThread*, ConstantPool*, int) interpreterRuntime.cpp:219
#11 0x137548050 (<unknown module>)
#12 0x137534150 (<unknown module>)
#13 0x1073eaf54 in JavaCalls::call_helper(JavaValue*, methodHandle const&, JavaCallArguments*, JavaThread*) javaCalls.cpp:415
#14 0x1073a2500 in InstanceKlass::call_class_initializer(JavaThread*) instanceKlass.cpp:1707
#15 0x10739f9d8 in InstanceKlass::initialize_impl(JavaThread*) instanceKlass.cpp:1316
#16 0x10739ee10 in InstanceKlass::initialize(JavaThread*) instanceKlass.cpp:814
#17 0x10773e0dc in LinkResolver::resolve_static_call(CallInfo&, LinkInfo const&, bool, JavaThread*) linkResolver.cpp:1115
#18 0x107741280 in LinkResolver::resolve_invokestatic(CallInfo&, constantPoolHandle const&, int, JavaThread*) linkResolver.cpp:1744
#19 0x107741160 in LinkResolver::resolve_invoke(CallInfo&, Handle, constantPoolHandle const&, int, Bytecodes::Code, JavaThread*) linkResolver.cpp:1703
#20 0x1073d7340 in InterpreterRuntime::resolve_invoke(JavaThread*, Bytecodes::Code) interpreterRuntime.cpp:819
#21 0x1073d83cc in InterpreterRuntime::resolve_from_cache(JavaThread*, Bytecodes::Code) interpreterRuntime.cpp:998
#22 0x137546f00 (<unknown module>)
#23 0x13753881c (<unknown module>)
#24 0x13753881c (<unknown module>)
#25 0x13753881c (<unknown module>)
#26 0x137538a8c (<unknown module>)
#27 0x137538a8c (<unknown module>)
#28 0x137538a8c (<unknown module>)
#29 0x13753881c (<unknown module>)
#30 0x13753881c (<unknown module>)
#31 0x13753881c (<unknown module>)
#32 0x137538dbc (<unknown module>)
#33 0x13753881c (<unknown module>)
#34 0x13753902c (<unknown module>)
#35 0x137538a8c (<unknown module>)
#36 0x137534150 (<unknown module>)
#37 0x1073eaf54 in JavaCalls::call_helper(JavaValue*, methodHandle const&, JavaCallArguments*, JavaThread*) javaCalls.cpp:415
#38 0x1073e9ab0 in JavaCalls::call_virtual(JavaValue*, Klass*, Symbol*, Symbol*, JavaCallArguments*, JavaThread*) javaCalls.cpp:179
#39 0x1073e9bdc in JavaCalls::call_virtual(JavaValue*, Handle, Klass*, Symbol*, Symbol*, JavaThread*) javaCalls.cpp:185
#40 0x107515984 in thread_entry(JavaThread*, JavaThread*) jvm.cpp:2748
#41 0x1074154d4 in JavaThread::thread_main_inner() javaThread.cpp:772
#42 0x107415094 in JavaThread::run() javaThread.cpp:757
#43 0x107e11080 in Thread::call_run() thread.cpp:224
#44 0x10798fde8 in thread_native_entry(Thread*) os_bsd.cpp:597
#45 0x19fa8ef90 in _pthread_start+0x84 (libsystem_pthread.dylib:arm64e+0x6f90)
#46 0x19fa89d30 in thread_start+0x4 (libsystem_pthread.dylib:arm64e+0x1d30)