eden-miror/src/video_core/texture_cache
crueter 7fda6dde73
[common] Switch to boost::unordered_flat containers (#4326)
Replaces all instances of ankerl's unordered map/set with boost's
`unordered_flat_*` classes. This uses std::hash since boost::hash is
actually a lot slower.

Also adds an abstraction layer in `Common` so future changes are quicker
and easier.

Other implementation details:
- ankerl provided hash specializations for tuple and pair, so those were
  ported here
- std::erase_if doesn't work on boost, so just used the ADL'd erase_if

This should be about equal or superior performance as unordered_dense for everything except iteration.

Signed-off-by: crueter <crueter@eden-emu.dev>

- [x] I have read and followed the [Contribution Guidelines](https://git.eden-emu.dev/eden-emu/eden/src/branch/master/CONTRIBUTING.md#code-contributions).
- [x] I have read and followed the [AI Policy](https://git.eden-emu.dev/eden-emu/eden/src/branch/master/docs/policies/AI.md)
- [x] I have read and followed the [Coding Guidelines](https://git.eden-emu.dev/eden-emu/eden/src/branch/master/docs/policies/Coding.md) to the best of my ability.

-------------------

Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/4326
Reviewed-by: Lizzie and Samuel <lizzie@eden-emu.dev>
Reviewed-by: MaranBr <maranbr@eden-emu.dev>
2026-08-31 02:58:09 +02:00
..
accelerated_swizzle.cpp Rework time service to fix time passing offline. 2024-01-24 04:26:55 +00:00
accelerated_swizzle.h general: Convert source file copyright comments over to SPDX 2022-04-23 05:55:32 -04:00
decode_bc.cpp [meta] fix license headers (#2547) 2025-09-21 21:58:59 +02:00
decode_bc.h video_core: Fix buffer_row_length computation for linear compressed textures 2023-12-26 16:33:03 +02:00
descriptor_table.h [video_core] fix redundant resize-copy overload and just use default-init resize, to reduce stutter on Mario BP (#3874) 2026-05-29 03:28:47 +02:00
format_lookup_table.cpp [vulkan] 3rd Vulkan Global Maintenance (#4189) 2026-07-09 04:22:43 +02:00
format_lookup_table.h general: Convert source file copyright comments over to SPDX 2022-04-23 05:55:32 -04:00
formatter.cpp [fmt] use {#:x} instead of 0x{:#x} (#4170) 2026-07-25 21:47:07 +02:00
formatter.h [vk, opengl] recognize and use ETC2 (if available) textures natively (#3237) 2026-05-15 22:08:09 +02:00
image_base.cpp [vulkan] Adjustments on MSAA and BlitHelpers (#4287) 2026-08-23 17:31:09 +02:00
image_base.h [vulkan] Adjustments on MSAA and BlitHelpers (#4287) 2026-08-23 17:31:09 +02:00
image_info.cpp [vulkan] 4th Vulkan Global Maintenance (#4212) 2026-07-16 20:56:00 +02:00
image_info.h Texture Cache: Fix untracking on GPU remap 2024-02-10 14:49:49 +01:00
image_view_base.cpp [meta] fix license headers (#2547) 2025-09-21 21:58:59 +02:00
image_view_base.h video_core: Add per-image anisotropy heuristics (format & mip count) 2023-06-15 18:19:32 +02:00
image_view_info.cpp [video_core] Remove redundant check on image_view and image_view_info (#2891) 2025-10-30 03:45:43 +01:00
image_view_info.h general: Convert source file copyright comments over to SPDX 2022-04-23 05:55:32 -04:00
render_targets.h [common] replace Common::BitCast with libc++ provided one (#2774) 2025-10-22 02:56:28 +02:00
samples_helper.h Get out of render pass before query barriers, fix image names with samples > 1, remove image alias bit 2023-10-11 17:15:35 +01:00
texture_cache.cpp [video_core] fix redundant resize-copy overload and just use default-init resize, to reduce stutter on Mario BP (#3874) 2026-05-29 03:28:47 +02:00
texture_cache.h [common] Switch to boost::unordered_flat containers (#4326) 2026-08-31 02:58:09 +02:00
texture_cache_base.h [common] Switch to boost::unordered_flat containers (#4326) 2026-08-31 02:58:09 +02:00
types.h [video_core] Increase MAX_MIP_LEVELS to 16 according to specs (#2965) 2025-11-07 01:42:52 +01:00
util.cpp [video_core] Increase MAX_MIP_LEVELS to 16 according to specs (#2965) 2025-11-07 01:42:52 +01:00
util.h [compat] Debian stable gcc12/clang14 compilation fixes (#2763) 2025-10-18 01:54:43 +02:00