dotnet / runtime

.NET is a cross-platform runtime for cloud, mobile, desktop, and IoT apps.
https://docs.microsoft.com/dotnet/core/
MIT License
15.07k stars 4.69k forks source link

SPMI replays missing on arm32 for `CORINFO_OBJECT_HANDLE` JIT-EE APIs #104329

Open jakobbotsch opened 3 months ago

jakobbotsch commented 3 months ago

The arm32 SPMI replay frequently has a very large miss rate compared to others. I was looking at a log today and noticed that it is mostly coming from GetObjectType and IsObjectImmutable. It looks like something related to sign vs zero extensions of the handles:

[20:38:26] MISSING: Method context 36804 failed to replay: SuperPMI assertion failed (missing key "key" in map IsObjectImmutable): key FFFFFFFFEE3A7040
[20:38:26] MISSING: Method context 36976 failed to replay: SuperPMI assertion failed (missing key "key" in map GetObjectType): key FFFFFFFFEE6A5264

cc @dotnet/jit-contrib @EgorBo

dotnet-policy-service[bot] commented 3 months ago

Tagging subscribers to this area: @JulieLeeMSFT, @jakobbotsch See info in area-owners.md if you want to be subscribed.

EgorBo commented 2 months ago

Moving to 10.0 since it's not clear whether this is a correctness issue or not