// SPDX-License-Identifier: MIT #pragma once #include namespace FEXCore { class CPUIDEmu; struct HostFeatures; } // namespace FEXCore namespace FEXCore::Utils { class IntrusivePooledAllocator; } namespace FEXCore::IR { class Pass; class RegisterAllocationPass; fextl::unique_ptr CreateDeadFlagCalculationEliminination(); fextl::unique_ptr CreateRegisterAllocationPass(const FEXCore::CPUIDEmu* CPUID); fextl::unique_ptr CreateX87StackOptimizationPass(const FEXCore::HostFeatures&, OpSize GPROpSize); namespace Validation { fextl::unique_ptr CreateIRValidation(); } // namespace Validation namespace Debug { fextl::unique_ptr CreateIRDumper(); } } // namespace FEXCore::IR