我试图在 Java HotSpot VM 中使用 C1 查看标准 JIT 编译而不是 OSR 的结果。我已经关闭了 OSR using-XX:-UseOnStackReplacement并使用-XX:TieredStopAtLevel=1. 但是现在我的方法根本没有被编译。我打开了 Print Compilation,如果我让它使用 OSR,它会很好地记录编译。此外,在没有 OSR 的情况下,我的所有断点都不会在 C1 文件中命中。
我正在使用一个非常简单的代码片段来测试这个
class Demo {
public static void main(String[] args) {
int a = workload();
System.out.println("Calculated answer is: " + a);
}
private static int workload() {
int a = 14;
for (int i = 0; i<100000; i++) {
a = a + i;
}
return a;
}
}
慕神8447489
相关分类