-
Bug
-
Resolution: Fixed
-
P4
-
18, 21, 23
-
b14
-
x86
-
linux
Issue | Fix Version | Assignee | Priority | Status | Resolution | Resolved In Build |
---|---|---|---|---|---|---|
JDK-8341417 | 23.0.2 | Matthias Baesken | P4 | Resolved | Fixed | b01 |
JDK-8340356 | 21.0.6 | Matthias Baesken | P4 | Resolved | Fixed | b01 |
compiler/classUnloading/methodUnloading/TestOverloadCompileQueues.java
with ubsan enabled binaries we run into the issue reported below.
Reason seems to be that we divide by zero in the code (maybe we should instead check for CompilationPolicy::min_invocations() == 0 in in this case set min_freq to MinInlineFrequencyRatio) .
double min_freq = MAX2(MinInlineFrequencyRatio, 1.0 / CompilationPolicy::min_invocations());
/jdk/src/hotspot/share/opto/bytecodeInfo.cpp:318:59: runtime error: division by zero
#0 0x7f5145c0dda2 in InlineTree::should_not_inline(ciMethod*, ciMethod*, int, bool&, ciCallProfile&) src/hotspot/share/opto/bytecodeInfo.cpp:318
#1 0x7f51466366d7 in InlineTree::try_to_inline(ciMethod*, ciMethod*, int, JVMState*, ciCallProfile&, bool&) src/hotspot/share/opto/bytecodeInfo.cpp:382
#2 0x7f514663d36b in InlineTree::ok_to_inline(ciMethod*, JVMState*, ciCallProfile&, bool&) src/hotspot/share/opto/bytecodeInfo.cpp:596
#3 0x7f51470dffd6 in Compile::call_generator(ciMethod*, int, bool, JVMState*, bool, float, ciKlass*, bool) src/hotspot/share/opto/doCall.cpp:189
#4 0x7f51470e18ab in Parse::do_call() src/hotspot/share/opto/doCall.cpp:641
#5 0x7f514887dbf1 in Parse::do_one_block() src/hotspot/share/opto/parse1.cpp:1607
#6 0x7f514887fefa in Parse::do_all_blocks() src/hotspot/share/opto/parse1.cpp:724
#7 0x7f514888d4da in Parse::Parse(JVMState*, ciMethod*, float) src/hotspot/share/opto/parse1.cpp:628
#8 0x7f51469d8418 in ParseGenerator::generate(JVMState*) src/hotspot/share/opto/callGenerator.cpp:99
#9 0x7f5146d99cff in Compile::Compile(ciEnv*, ciMethod*, int, Options, DirectiveSet*) src/hotspot/share/opto/compile.cpp:793
#10 0x7f51469d5ebf in C2Compiler::compile_method(ciEnv*, ciMethod*, int, bool, DirectiveSet*) src/hotspot/share/opto/c2compiler.cpp:142
#11 0x7f5146db0274 in CompileBroker::invoke_compiler_on_method(CompileTask*) src/hotspot/share/compiler/compileBroker.cpp:2303
#12 0x7f5146db2826 in CompileBroker::compiler_thread_loop() src/hotspot/share/compiler/compileBroker.cpp:1961
#13 0x7f51478d475a in JavaThread::thread_main_inner() src/hotspot/share/runtime/javaThread.cpp:759
#14 0x7f51491620ea in Thread::call_run() src/hotspot/share/runtime/thread.cpp:225
#15 0x7f51487ac201 in thread_native_entry src/hotspot/os/linux/os_linux.cpp:846
#16 0x7f514e5cf6e9 in start_thread (/lib64/libpthread.so.0+0xa6e9) (BuildId: 2f8d3c2d0f4d7888c2598d2ff6356537f5708a73)
#17 0x7f514db1550e in clone (/lib64/libc.so.6+0x11850e) (BuildId: f732026552f6adff988b338e92d466bc81a01c37)
- backported by
-
JDK-8340356 ubsan: bytecodeInfo.cpp:318:59: runtime error: division by zero
- Resolved
-
JDK-8341417 ubsan: bytecodeInfo.cpp:318:59: runtime error: division by zero
- Resolved
- relates to
-
JDK-8273712 C2: Add mechanism for rejecting inlining of low frequency call sites and deprecate MinInliningThreshold.
- Resolved
-
JDK-8339067 Convert Threshold flags (like Tier4MinInvocationThreshold and Tier3MinInvocationThreshold) to double
- Closed
- links to
-
Commit(master) openjdk/jdk21u-dev/466b87a8
-
Commit(master) openjdk/jdk23u/f4fc1b6a
-
Commit(master) openjdk/jdk/f080b4bb
-
Review(master) openjdk/jdk21u-dev/980
-
Review(master) openjdk/jdk23u/100
-
Review(master) openjdk/jdk/20615