comparison test/testlibrary/whitebox/sun/hotspot/WhiteBox.java @ 12073:f99558245e5c

8022832: Add WB APIs for OSR compilation Reviewed-by: kvn
author iignatyev
date Wed, 14 Aug 2013 23:50:23 +0400
parents f54c85acc043
children 5fd8e2fbafd4
comparison
equal deleted inserted replaced
12072:6c72125a2f40 12073:f99558245e5c
91 public native void NMTReleaseMemory(long addr, long size); 91 public native void NMTReleaseMemory(long addr, long size);
92 public native boolean NMTWaitForDataMerge(); 92 public native boolean NMTWaitForDataMerge();
93 93
94 // Compiler 94 // Compiler
95 public native void deoptimizeAll(); 95 public native void deoptimizeAll();
96 public native boolean isMethodCompiled(Executable method); 96 public boolean isMethodCompiled(Executable method) {
97 public boolean isMethodCompilable(Executable method) { 97 return isMethodCompiled(method, false /*not osr*/);
98 return isMethodCompilable(method, -1 /*any*/);
99 } 98 }
100 public native boolean isMethodCompilable(Executable method, int compLevel); 99 public native boolean isMethodCompiled(Executable method, boolean isOsr);
100 public boolean isMethodCompilable(Executable method) {
101 return isMethodCompilable(method, -1 /*any*/);
102 }
103 public boolean isMethodCompilable(Executable method, int compLevel) {
104 return isMethodCompilable(method, compLevel, false /*not osr*/);
105 }
106 public native boolean isMethodCompilable(Executable method, int compLevel, boolean isOsr);
101 public native boolean isMethodQueuedForCompilation(Executable method); 107 public native boolean isMethodQueuedForCompilation(Executable method);
102 public native int deoptimizeMethod(Executable method); 108 public int deoptimizeMethod(Executable method) {
103 public void makeMethodNotCompilable(Executable method) { 109 return deoptimizeMethod(method, false /*not osr*/);
104 makeMethodNotCompilable(method, -1 /*any*/);
105 } 110 }
106 public native void makeMethodNotCompilable(Executable method, int compLevel); 111 public native int deoptimizeMethod(Executable method, boolean isOsr);
107 public native int getMethodCompilationLevel(Executable method); 112 public void makeMethodNotCompilable(Executable method) {
113 makeMethodNotCompilable(method, -1 /*any*/);
114 }
115 public void makeMethodNotCompilable(Executable method, int compLevel) {
116 makeMethodNotCompilable(method, compLevel, false /*not osr*/);
117 }
118 public native void makeMethodNotCompilable(Executable method, int compLevel, boolean isOsr);
119 public int getMethodCompilationLevel(Executable method) {
120 return getMethodCompilationLevel(method, false /*not ost*/);
121 }
122 public native int getMethodCompilationLevel(Executable method, boolean isOsr);
108 public native boolean testSetDontInlineMethod(Executable method, boolean value); 123 public native boolean testSetDontInlineMethod(Executable method, boolean value);
109 public native int getCompileQueuesSize(); 124 public int getCompileQueuesSize() {
125 return getCompileQueueSize(-1 /*any*/);
126 }
127 public native int getCompileQueueSize(int compLevel);
110 public native boolean testSetForceInlineMethod(Executable method, boolean value); 128 public native boolean testSetForceInlineMethod(Executable method, boolean value);
111 public native boolean enqueueMethodForCompilation(Executable method, int compLevel); 129 public boolean enqueueMethodForCompilation(Executable method, int compLevel) {
130 return enqueueMethodForCompilation(method, compLevel, -1 /*InvocationEntryBci*/);
131 }
132 public native boolean enqueueMethodForCompilation(Executable method, int compLevel, int entry_bci);
112 public native void clearMethodState(Executable method); 133 public native void clearMethodState(Executable method);
134 public native int getMethodEntryBci(Executable method);
113 135
114 // Intered strings 136 // Intered strings
115 public native boolean isInStringTable(String str); 137 public native boolean isInStringTable(String str);
116 138
117 // Memory 139 // Memory