8333098: ubsan: bytecodeInfo.cpp:318:59: runtime error: division by zero
Reviewed-by: kvn, iveresov
This commit is contained in:
parent
ff59532ddd
commit
f080b4bb8a
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (c) 1998, 2023, Oracle and/or its affiliates. All rights reserved.
|
* Copyright (c) 1998, 2024, Oracle and/or its affiliates. All rights reserved.
|
||||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||||
*
|
*
|
||||||
* This code is free software; you can redistribute it and/or modify it
|
* This code is free software; you can redistribute it and/or modify it
|
||||||
@ -315,7 +315,9 @@ bool InlineTree::should_not_inline(ciMethod* callee_method, ciMethod* caller_met
|
|||||||
int invoke_count = caller_method->interpreter_invocation_count();
|
int invoke_count = caller_method->interpreter_invocation_count();
|
||||||
assert(invoke_count != 0, "require invocation count greater than zero");
|
assert(invoke_count != 0, "require invocation count greater than zero");
|
||||||
double freq = (double)call_site_count / (double)invoke_count;
|
double freq = (double)call_site_count / (double)invoke_count;
|
||||||
double min_freq = MAX2(MinInlineFrequencyRatio, 1.0 / CompilationPolicy::min_invocations());
|
// avoid division by 0, set divisor to at least 1
|
||||||
|
int cp_min_inv = MAX2(1, CompilationPolicy::min_invocations());
|
||||||
|
double min_freq = MAX2(MinInlineFrequencyRatio, 1.0 / cp_min_inv);
|
||||||
|
|
||||||
if (freq < min_freq) {
|
if (freq < min_freq) {
|
||||||
set_msg("low call site frequency");
|
set_msg("low call site frequency");
|
||||||
|
Loading…
x
Reference in New Issue
Block a user