/* This file is part of the dynarmic project. * Copyright (c) 2018 MerryMage * SPDX-License-Identifier: 0BSD */ #pragma once #include #include #include #include #include "frontend/ir/location_descriptor.h" namespace Dynarmic::Backend::X64 { template class BlockRangeInformation { public: void AddRange(boost::icl::discrete_interval range, IR::LocationDescriptor location); void ClearCache(); tsl::robin_set InvalidateRanges(const boost::icl::interval_set& ranges); private: boost::icl::interval_map> block_ranges; }; } // namespace Dynarmic::Backend::X64