mirror of
https://git.ryujinx.app/kenji-nx/ryujinx.git
synced 2025-12-15 10:37:04 +00:00
* Store constant `Operand`s in the `LocalInfo` Since the spill slot and register assigned is fixed, we can just store the `Operand` reference in the `LocalInfo` struct. This allows skipping hitting the intern-table for a look up. * Skip `Uses`/`Assignments` management Since the `HybridAllocator` is the last pass and we do not care about uses/assignments we can skip managing that when setting destinations or sources. * Make `GetLocalInfo` inlineable Also fix a possible issue where with numbered locals. See or-assignment operator in `SetVisited(local)` before patch. * Do not run `BlockPlacement` in LCQ With the host mapped memory manager, there is a lot less cold code to split from hot code. So disabling this in LCQ gives some extra throughput - where we need it. * Address Mou-Ikkai's feedback * Apply suggestions from code review Co-authored-by: VocalFan <45863583+Mou-Ikkai@users.noreply.github.com> * Move check to an assert Co-authored-by: VocalFan <45863583+Mou-Ikkai@users.noreply.github.com> |
||
|---|---|---|
| .. | ||
| Assembler.cs | ||
| CallConvName.cs | ||
| CallingConvention.cs | ||
| CodeGenCommon.cs | ||
| CodeGenContext.cs | ||
| CodeGenerator.cs | ||
| HardwareCapabilities.cs | ||
| IntrinsicInfo.cs | ||
| IntrinsicTable.cs | ||
| IntrinsicType.cs | ||
| PreAllocator.cs | ||
| X86Condition.cs | ||
| X86Instruction.cs | ||
| X86Optimizer.cs | ||
| X86Register.cs | ||