dotnet / runtime

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

JIT: Replace `BlockSet` with `BitVec`, and remove BB epoch #110034

Closed amanasifkhalid closed 12 hours ago

amanasifkhalid commented 1 day ago

Part of #107749. Prerequisite for #110026.

Switch descriptor creation still uses bbNums as a key into a BitVec as a workaround for BB epoch invariants -- I'll try switching this over to bbID in a follow-up to evaluate the TP cost of a sparser bitset.

dotnet-policy-service[bot] commented 1 day ago

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

amanasifkhalid commented 1 day ago

cc @dotnet/jit-contrib, @jakobbotsch PTAL. No diffs. Thanks!

amanasifkhalid commented 17 hours ago

Can we delete BlockSet/and the epoch fields as well now?

Yes. I can include that in this PR, if you'd like.

amanasifkhalid commented 12 hours ago

/ba-g linux-x64 build timed out