diff options
| author | lizzie <lizzie@eden-emu.dev> | 2025-10-22 12:23:13 +0200 |
|---|---|---|
| committer | crueter <crueter@eden-emu.dev> | 2025-10-22 12:23:13 +0200 |
| commit | 71241b7560ea4bb2955a57db6688ce2bc01ede9c (patch) | |
| tree | 853d8f648fb4ce3b178f2153d9fdd07faf3b7ac4 /src/video_core/texture_cache/image_info.cpp | |
| parent | e0c554976ac9078d4cff78cb1adc1b609e5fe2c9 (diff) | |
[dynarmic] remove bloated LUT usage that makes giant functions for no good reason (#2801)
Long story short, each of these LUT generates a function that is only ran once, spam the entire code with bunch of little "specialized templates" (remember, N * M * L) and basically bloat codesize for no good reason
Additionally it tries to outsmart the compiler which it's not always a good idea - herein I replace most (except 1) of those "helper" LUTs with something the compiler can actually work satisfiably
Happy reminder of the sheer amount of functions spammed:
mcl::list thing generates a number from 0 to 63 for (fsize 64), add the 0-31 for fsize 32, 0-15 for fsize 16 and you got around... 64+32+16 = 112 functions for a single parameter
Now include in the equation rounding_mode, which is about, what, 6? so 112*6 = 672
Yeah
Signed-off-by: lizzie <lizzie@eden-emu.dev>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/2801
Reviewed-by: crueter <crueter@eden-emu.dev>
Reviewed-by: Shinmegumi <shinmegumi@eden-emu.dev>
Co-authored-by: lizzie <lizzie@eden-emu.dev>
Co-committed-by: lizzie <lizzie@eden-emu.dev>
Diffstat (limited to 'src/video_core/texture_cache/image_info.cpp')
0 files changed, 0 insertions, 0 deletions
