Skip to content

superpmi: crossgen and PMI collection "clean phase" replay failures #47546

@BruceForstall

Description

@BruceForstall

Related: #47540

Part of the SuperPMI collection process is to "clean" the collection. This takes the collected assets, runs a SuperPMI replay on them, and delete the method contexts (functions) that fail to replay. Thus, the final result replay is error-free. As long as there aren't too many functions removed, we still get great coverage and utility from the collection.

However, each of these failures indicates a potential bug (or limitation) in SuperPMI. We should track down the failures, figure out why they occur, and fix SuperPMI or the JIT, VM, or JIT interface protocols, as necessary.

For a sample crossgen collection of the libraries using this command (Windows x64 Checked):

py c:\gh\runtime2\src\coreclr\scripts\superpmi.py collect --crossgen -output_mch_path c:\bugs\spmicollect4\win-x64-cg.mch -assemblies c:\gh\runtime2\artifacts\tests\coreclr\windows.x64.Checked\Tests\Core_Root

The "clean" phase encountered 680 failures (out of 197906 compilations).

category:eng-sys
theme:super-pmi
skill-level:expert
cost:large

impact:medium

Metadata

Metadata

Assignees

Labels

area-CodeGen-coreclrCLR JIT compiler in src/coreclr/src/jit and related components such as SuperPMI

Type

No type

Projects

No projects

Relationships

None yet

Development

No branches or pull requests

Issue actions