* shader_recompiler: Move shared mem lowering into emitter
* IR can be quite verbose during first stages of translation, before ssa and constant prop passes have run that drastically simplify it. This lowering can also be done during emission so why not do it then to save some compilation time
* runtime_info: Pack PsColorBuffer into 8 bytes
* Drops the size of the total structure by half from 396 to 204 bytes. Also should make comparison of the array a bit faster, since its a hot path done every draw
* emit_spirv_context: Add infrastructure for buffer aliases
* Splits out the buffer creation function so it can be reused when defining multiple type aliases
* shader_recompiler: Merge srt_flatbuf into buffers list
* Its no longer a special case, yay
* shader_recompiler: Complete buffer aliasing support
* Add a bunch more types into buffers, such as F32 for float reads/writes and 8/16 bit integer types for formatted buffers
* shader_recompiler: Remove existing shared memory emulation
* The current impl relies on backend side implementaton and hooking into every shared memory access. It also doesnt handle atomics. Will be replaced by an IR pass that solves these issues
* shader_recompiler: Reintroduce shared memory on ssbo emulation
* Now it is performed with an IR pass, and combined with the previous commit cleanup, is fully transparent from the backend, other than requiring workgroup_index be provided as an attribute (computing this on every shared memory access is gonna be too verbose
* clang format
* buffer_cache: Reduce buffer sizes
* vk_rasterizer: Cleanup resource binding code
* Reduce noise in the functions, also remove some arguments which are class members
* Fix gcc
* shader_recompiler: Replace texel buffers with in-shader buffer format interpretation
* shader_recompiler: Move 10/11-bit float conversion to functions and address some comments.
* vulkan: Remove VK_KHR_maintenance5 as it is no longer needed for buffer views.
* shader_recompiler: Add helpers for composites and bitfields in pack/unpack.
* shader_recompiler: Use initializer_list for bitfield insert helper.
* presenter: render the game inside a ImGui window
* presenter: render the previous frame to keep the render rendering
* swapchain: fix swapchain image view format not being converted to unorm
* devtools: fix frame graph timing
* shader_recompiler: Account for instruction array flag in image type.
* shader_recompiler: Check da flag for all mimg instructions.
* shader_recompiler: Convert cube images into 2D arrays.
* shader_recompiler: Move image resource functions into sharp type.
* shader_recompiler: Use native AMD cube instructions when possible.
* specialization: Fix buffer storage mistake.
* video_core: Implement conversion for uncommon/unsupported number formats.
* shader_recompiler: Reinterpret image sample output as well.
* liverpool_to_vk: Remove mappings for remapped number formats.
These were poorly supported by drivers anyway.
* resource_tracking_pass: Fix image write swizzle mistake.
* amdgpu: Add missing specialization and move format mapping data to types
* reinterpret: Fix U/SToF input type.