RFR: 8174961: [JVMCI] incorrect implementation of isCompilable
vladimir.kozlov at oracle.com
Tue Feb 14 20:47:37 UTC 2017
Should you also remove flag check in previous lines in the test?:
boolean isCompilable = CompilerToVMHelper.isCompilable(method);
boolean expected = UseJVMCICompiler || WB.isMethodCompilable(aMethod);
On 2/14/17 12:40 PM, Doug Simon wrote:
>> On 14 Feb 2017, at 21:28, Vladimir Kozlov <vladimir.kozlov at oracle.com> wrote:
>> I did not get the condition. Why a method is *compilable* if JVMCICompiler is not used? Should it be
>> UseJVMCICompiler && !method->is_not_compilable(
>> Then comment is wrong. Please, explain.
> If UseJVMCICompiler is false, then JVMCI is not being used by the VM as a jit but is only being used in hosted mode (e.g. by Truffle). The thinking was that hosted clients do not typically care about VM policies effecting the compilability of a method (e.g. whether it has a breakpoint etc). However, now that I reflect on this further, such clients should ignore this call altogether as they may be in a VM environment where both hosted and non-hosted compilations are being requested of JVMCI. With that in mind, I’ve updated the webrev to remove all mention and use of UseJVMCICompiler.
>> On 2/14/17 12:11 PM, Doug Simon wrote:
>>> Please review this fix for a rather embarrassing bug I committed as part of JDK-8172733.
More information about the hotspot-compiler-dev