This commit is contained in:
J. Duke 2017-07-05 20:44:31 +02:00
commit f16af09f83
3 changed files with 30 additions and 2 deletions

@ -318,3 +318,4 @@ c706ef5ea5da00078dc5e4334660315f7d99c15b jdk9-b71
4c2cbaae528bce970dabbb5676005d379357f4b6 jdk9-b73
57f3134853ecdd4a3ee2d4d26f22ba981d653d79 jdk9-b74
8fd6eeb878606e39c908f12535f34ebbfd225a4a jdk9-b75
d82072b699b880a1f647a5e2d7c0f86cec958941 jdk9-b76

@ -78,11 +78,14 @@ interim-corba:
interim-rmic:
+($(CD) $(JDK_TOPDIR)/make && $(MAKE) $(MAKE_ARGS) -f CompileInterimRmic.gmk)
interim-cldrconverter:
+($(CD) $(JDK_TOPDIR)/make && $(MAKE) $(MAKE_ARGS) -f CopyInterimCLDRConverter.gmk)
buildtools-jdk:
+($(CD) $(JDK_TOPDIR)/make && $(MAKE) $(MAKE_ARGS) -f Tools.gmk java-tools)
ALL_TARGETS += buildtools-langtools interim-langtools interim-corba \
interim-rmic buildtools-jdk
interim-rmic interim-cldrconverter buildtools-jdk
################################################################################
# Special targets for certain modules
@ -345,7 +348,7 @@ else
interim-langtools: $(LANGTOOLS_GENSRC_TARGETS)
buildtools-jdk: interim-langtools
buildtools-jdk: interim-langtools interim-cldrconverter
$(CORBA_GENSRC_TARGETS): interim-langtools

@ -182,6 +182,30 @@ public class WhiteBox {
Objects.requireNonNull(method);
return isMethodQueuedForCompilation0(method);
}
// Determine if the compiler corresponding to the compilation level 'compLevel'
// and to the compilation context 'compilation_context' provides an intrinsic
// for the method 'method'. An intrinsic is available for method 'method' if:
// - the intrinsic is enabled (by using the appropriate command-line flag) and
// - the platform on which the VM is running provides the instructions necessary
// for the compiler to generate the intrinsic code.
//
// The compilation context is related to using the DisableIntrinsic flag on a
// per-method level, see hotspot/src/share/vm/compiler/abstractCompiler.hpp
// for more details.
public boolean isIntrinsicAvailable(Executable method,
Executable compilationContext,
int compLevel) {
Objects.requireNonNull(method);
return isIntrinsicAvailable0(method, compilationContext, compLevel);
}
// If usage of the DisableIntrinsic flag is not expected (or the usage can be ignored),
// use the below method that does not require the compilation context as argument.
public boolean isIntrinsicAvailable(Executable method, int compLevel) {
return isIntrinsicAvailable(method, null, compLevel);
}
private native boolean isIntrinsicAvailable0(Executable method,
Executable compilationContext,
int compLevel);
public int deoptimizeMethod(Executable method) {
return deoptimizeMethod(method, false /*not osr*/);
}