当前位置: 首页>>代码示例>>Java>>正文


Java ResolvedJavaMethod.getProfilingInfo方法代码示例

本文整理汇总了Java中jdk.vm.ci.meta.ResolvedJavaMethod.getProfilingInfo方法的典型用法代码示例。如果您正苦于以下问题:Java ResolvedJavaMethod.getProfilingInfo方法的具体用法?Java ResolvedJavaMethod.getProfilingInfo怎么用?Java ResolvedJavaMethod.getProfilingInfo使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在jdk.vm.ci.meta.ResolvedJavaMethod的用法示例。


在下文中一共展示了ResolvedJavaMethod.getProfilingInfo方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: profile

import jdk.vm.ci.meta.ResolvedJavaMethod; //导入方法依赖的package包/类
private ProfilingInfo profile(boolean resetProfile, int executions, String methodName, Object... args) {
    ResolvedJavaMethod javaMethod = getResolvedJavaMethod(methodName);
    Assert.assertTrue(javaMethod.isStatic());
    if (resetProfile) {
        javaMethod.reprofile();
    }

    for (int i = 0; i < executions; ++i) {
        try {
            invoke(javaMethod, null, args);
        } catch (Throwable e) {
            Assert.fail("method should not throw an exception: " + e.toString());
        }
    }

    ProfilingInfo info = javaMethod.getProfilingInfo();
    // The execution counts are low so force maturity
    info.setMature();
    return info;
}
 
开发者ID:AdoptOpenJDK,项目名称:openjdk-jdk10,代码行数:21,代码来源:ProfilingInfoTest.java

示例2: getProfilingInfo

import jdk.vm.ci.meta.ResolvedJavaMethod; //导入方法依赖的package包/类
/**
 * Gets the profiling info for a given method that is or will be part of this graph, taking into
 * account {@link #useProfilingInfo()}.
 */
public ProfilingInfo getProfilingInfo(ResolvedJavaMethod m) {
    if (useProfilingInfo && m != null) {
        return m.getProfilingInfo();
    } else {
        return DefaultProfilingInfo.get(TriState.UNKNOWN);
    }
}
 
开发者ID:AdoptOpenJDK,项目名称:openjdk-jdk10,代码行数:12,代码来源:StructuredGraph.java

示例3: compileHelper

import jdk.vm.ci.meta.ResolvedJavaMethod; //导入方法依赖的package包/类
public CompilationResult compileHelper(CompilationResultBuilderFactory crbf, CompilationResult result, StructuredGraph graph, ResolvedJavaMethod method, int entryBCI, boolean useProfilingInfo,
                OptionValues options) {

    HotSpotBackend backend = graalRuntime.getHostBackend();
    HotSpotProviders providers = backend.getProviders();
    final boolean isOSR = entryBCI != JVMCICompiler.INVOCATION_ENTRY_BCI;

    Suites suites = getSuites(providers, options);
    LIRSuites lirSuites = getLIRSuites(providers, options);
    ProfilingInfo profilingInfo = useProfilingInfo ? method.getProfilingInfo(!isOSR, isOSR) : DefaultProfilingInfo.get(TriState.FALSE);
    OptimisticOptimizations optimisticOpts = getOptimisticOpts(profilingInfo, options);

    /*
     * Cut off never executed code profiles if there is code, e.g. after the osr loop, that is
     * never executed.
     */
    if (isOSR && !OnStackReplacementPhase.Options.DeoptAfterOSR.getValue(options)) {
        optimisticOpts.remove(Optimization.RemoveNeverExecutedCode);
    }

    result.setEntryBCI(entryBCI);
    boolean shouldDebugNonSafepoints = providers.getCodeCache().shouldDebugNonSafepoints();
    PhaseSuite<HighTierContext> graphBuilderSuite = configGraphBuilderSuite(providers.getSuites().getDefaultGraphBuilderSuite(), shouldDebugNonSafepoints, isOSR);
    GraalCompiler.compileGraph(graph, method, providers, backend, graphBuilderSuite, optimisticOpts, profilingInfo, suites, lirSuites, result, crbf);

    if (!isOSR && useProfilingInfo) {
        ProfilingInfo profile = profilingInfo;
        profile.setCompilerIRSize(StructuredGraph.class, graph.getNodeCount());
    }

    return result;
}
 
开发者ID:AdoptOpenJDK,项目名称:openjdk-jdk10,代码行数:33,代码来源:HotSpotGraalCompiler.java


注:本文中的jdk.vm.ci.meta.ResolvedJavaMethod.getProfilingInfo方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。