# HG changeset patch # User lana # Date 1438885071 25200 # Node ID 05020a092c0f6259ebfb229ce31679986808f91c # Parent 710376739d72ac008dd862debcb11cc41f90c7a1# Parent 258c54af95dd2b8e988d45d13cc17e741e0d46f5 Merge diff -r 710376739d72 -r 05020a092c0f make/Main.gmk --- a/make/Main.gmk Thu Aug 06 08:07:35 2015 -0700 +++ b/make/Main.gmk Thu Aug 06 11:17:51 2015 -0700 @@ -78,11 +78,14 @@ 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 @@ interim-langtools: $(LANGTOOLS_GENSRC_TARGETS) - buildtools-jdk: interim-langtools + buildtools-jdk: interim-langtools interim-cldrconverter $(CORBA_GENSRC_TARGETS): interim-langtools diff -r 710376739d72 -r 05020a092c0f test/lib/sun/hotspot/WhiteBox.java --- a/test/lib/sun/hotspot/WhiteBox.java Thu Aug 06 08:07:35 2015 -0700 +++ b/test/lib/sun/hotspot/WhiteBox.java Thu Aug 06 11:17:51 2015 -0700 @@ -182,6 +182,30 @@ 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*/); }