Ryujinx/ARMeilleure/Translation/PTC
FICTURE7 89791ba68d
Add inlined on translation call counting (#2190)
* Add EntryTable<TEntry>

* Add on translation call counting

* Add Counter

* Add PPTC support

* Make Counter a generic & use a 32-bit counter instead

* Return false on overflow

* Set PPTC version

* Print more information about the rejit queue

* Make Counter<T> disposable

* Remove Block.TailCall since it is not used anymore

* Apply suggestions from code review

Address gdkchan's feedback

Co-authored-by: gdkchan <gab.dark.100@gmail.com>

* Fix more stale docs

* Remove rejit requests queue logging

* Make Counter<T> finalizable

Most certainly quite an odd use case.

* Make EntryTable<T>.TryAllocate set entry to default

* Re-trigger CI

* Dispose Counters before they hit the finalizer queue

* Re-trigger CI

Just for good measure...

* Make EntryTable<T> expandable

* EntryTable is now expandable instead of being a fixed slab.
* Remove EntryTable<T>.TryAllocate
* Remove Counter<T>.TryCreate

Address LDj3SNuD's feedback

* Apply suggestions from code review

Address LDj3SNuD's feedback

Co-authored-by: LDj3SNuD <35856442+LDj3SNuD@users.noreply.github.com>

* Remove useless return

* POH approach, but the sequel

* Revert "POH approach, but the sequel"

This reverts commit 5f5abaa247.

The sequel got shelved

* Add extra documentation

Co-authored-by: gdkchan <gab.dark.100@gmail.com>
Co-authored-by: LDj3SNuD <35856442+LDj3SNuD@users.noreply.github.com>
2021-04-18 23:43:53 +02:00
..
DegreeOfParallelism.cs PPTC vs. giant ExeFS. (#2168) 2021-04-13 03:24:36 +02:00
EncodingCache.cs PPTC vs. giant ExeFS. (#2168) 2021-04-13 03:24:36 +02:00
Ptc.cs Add inlined on translation call counting (#2190) 2021-04-18 23:43:53 +02:00
PtcFormatter.cs PPTC vs. giant ExeFS. (#2168) 2021-04-13 03:24:36 +02:00
PtcInfo.cs PPTC vs. giant ExeFS. (#2168) 2021-04-13 03:24:36 +02:00
PtcJumpTable.cs PPTC vs. giant ExeFS. (#2168) 2021-04-13 03:24:36 +02:00
PtcLoadingState.cs Fix inconsistencies in progress reporting (#2129) 2021-03-22 19:40:07 +01:00
PtcProfiler.cs PPTC vs. giant ExeFS. (#2168) 2021-04-13 03:24:36 +02:00
PtcState.cs Add Profiled Persistent Translation Cache. (#769) 2020-06-16 20:28:02 +02:00
RelocEntry.cs PPTC vs. giant ExeFS. (#2168) 2021-04-13 03:24:36 +02:00