From 888d5044e0b4ec530eb027a154681d17cbb9b7e1 Mon Sep 17 00:00:00 2001 From: Triang3l Date: Sun, 22 May 2022 21:07:38 +0300 Subject: [PATCH] [GPU] 2x1-subsampled texture RGBA8 conversion shader --- src/xenia/gpu/d3d12/d3d12_texture_cache.cc | 22 +- src/xenia/gpu/d3d12/d3d12_texture_cache.h | 2 + ...led_cs.h => texture_load_bgrg8_rgba8_cs.h} | 1444 +++++++++-------- ...led_cs.h => texture_load_gbgr8_rgba8_cs.h} | 1406 ++++++++-------- .../texture_load_bgrg8_rgba8_cs.h | 754 +++++++++ .../texture_load_bgrg8_rgbg8_scaled_cs.h | 689 -------- .../texture_load_gbgr8_grgb8_scaled_cs.h | 689 -------- .../texture_load_gbgr8_rgba8_cs.h | 758 +++++++++ src/xenia/gpu/shaders/pixel_formats.xesli | 26 + ....xesl => texture_load_bgrg8_rgba8.cs.xesl} | 5 +- ....xesl => texture_load_gbgr8_rgba8.cs.xesl} | 5 +- 11 files changed, 3033 insertions(+), 2767 deletions(-) rename src/xenia/gpu/shaders/bytecode/d3d12_5_1/{texture_load_gbgr8_grgb8_scaled_cs.h => texture_load_bgrg8_rgba8_cs.h} (58%) rename src/xenia/gpu/shaders/bytecode/d3d12_5_1/{texture_load_bgrg8_rgbg8_scaled_cs.h => texture_load_gbgr8_rgba8_cs.h} (56%) create mode 100644 src/xenia/gpu/shaders/bytecode/vulkan_spirv/texture_load_bgrg8_rgba8_cs.h delete mode 100644 src/xenia/gpu/shaders/bytecode/vulkan_spirv/texture_load_bgrg8_rgbg8_scaled_cs.h delete mode 100644 src/xenia/gpu/shaders/bytecode/vulkan_spirv/texture_load_gbgr8_grgb8_scaled_cs.h create mode 100644 src/xenia/gpu/shaders/bytecode/vulkan_spirv/texture_load_gbgr8_rgba8_cs.h rename src/xenia/gpu/shaders/{texture_load_bgrg8_rgbg8_scaled.cs.xesl => texture_load_bgrg8_rgba8.cs.xesl} (79%) rename src/xenia/gpu/shaders/{texture_load_gbgr8_grgb8_scaled.cs.xesl => texture_load_gbgr8_rgba8.cs.xesl} (79%) diff --git a/src/xenia/gpu/d3d12/d3d12_texture_cache.cc b/src/xenia/gpu/d3d12/d3d12_texture_cache.cc index 485704a4a..334d479fc 100644 --- a/src/xenia/gpu/d3d12/d3d12_texture_cache.cc +++ b/src/xenia/gpu/d3d12/d3d12_texture_cache.cc @@ -44,8 +44,8 @@ namespace shaders { #include "xenia/gpu/shaders/bytecode/d3d12_5_1/texture_load_64bpb_scaled_cs.h" #include "xenia/gpu/shaders/bytecode/d3d12_5_1/texture_load_8bpb_cs.h" #include "xenia/gpu/shaders/bytecode/d3d12_5_1/texture_load_8bpb_scaled_cs.h" +#include "xenia/gpu/shaders/bytecode/d3d12_5_1/texture_load_bgrg8_rgba8_cs.h" #include "xenia/gpu/shaders/bytecode/d3d12_5_1/texture_load_bgrg8_rgbg8_cs.h" -#include "xenia/gpu/shaders/bytecode/d3d12_5_1/texture_load_bgrg8_rgbg8_scaled_cs.h" #include "xenia/gpu/shaders/bytecode/d3d12_5_1/texture_load_ctx1_cs.h" #include "xenia/gpu/shaders/bytecode/d3d12_5_1/texture_load_depth_float_cs.h" #include "xenia/gpu/shaders/bytecode/d3d12_5_1/texture_load_depth_float_scaled_cs.h" @@ -59,7 +59,7 @@ namespace shaders { #include "xenia/gpu/shaders/bytecode/d3d12_5_1/texture_load_dxt5_rgba8_cs.h" #include "xenia/gpu/shaders/bytecode/d3d12_5_1/texture_load_dxt5a_r8_cs.h" #include "xenia/gpu/shaders/bytecode/d3d12_5_1/texture_load_gbgr8_grgb8_cs.h" -#include "xenia/gpu/shaders/bytecode/d3d12_5_1/texture_load_gbgr8_grgb8_scaled_cs.h" +#include "xenia/gpu/shaders/bytecode/d3d12_5_1/texture_load_gbgr8_rgba8_cs.h" #include "xenia/gpu/shaders/bytecode/d3d12_5_1/texture_load_r10g11b11_rgba16_cs.h" #include "xenia/gpu/shaders/bytecode/d3d12_5_1/texture_load_r10g11b11_rgba16_scaled_cs.h" #include "xenia/gpu/shaders/bytecode/d3d12_5_1/texture_load_r10g11b11_rgba16_snorm_cs.h" @@ -133,17 +133,15 @@ const D3D12TextureCache::HostFormat D3D12TextureCache::host_formats_[64] = { LoadMode::kUnknown, xenos::XE_GPU_TEXTURE_SWIZZLE_RGGG}, // k_Cr_Y1_Cb_Y0_REP // Red and blue swapped in the load shader for simplicity. - // TODO(Triang3l): Decompress if the size is uneven. {DXGI_FORMAT_G8R8_G8B8_UNORM, DXGI_FORMAT_G8R8_G8B8_UNORM, LoadMode::kGBGR8ToGRGB8, DXGI_FORMAT_UNKNOWN, LoadMode::kUnknown, true, - DXGI_FORMAT_UNKNOWN, LoadMode::kUnknown, + DXGI_FORMAT_R8G8B8A8_UNORM, LoadMode::kGBGR8ToRGBA8, xenos::XE_GPU_TEXTURE_SWIZZLE_RGBB}, // k_Y1_Cr_Y0_Cb_REP // Red and blue swapped in the load shader for simplicity. - // TODO(Triang3l): Decompress if the size is uneven. {DXGI_FORMAT_R8G8_B8G8_UNORM, DXGI_FORMAT_R8G8_B8G8_UNORM, LoadMode::kBGRG8ToRGBG8, DXGI_FORMAT_UNKNOWN, LoadMode::kUnknown, true, - DXGI_FORMAT_UNKNOWN, LoadMode::kUnknown, + DXGI_FORMAT_R8G8B8A8_UNORM, LoadMode::kBGRG8ToRGBA8, xenos::XE_GPU_TEXTURE_SWIZZLE_RGBB}, // k_16_16_EDRAM // Not usable as a texture, also has -32...32 range. @@ -406,13 +404,13 @@ const D3D12TextureCache::LoadModeInfo D3D12TextureCache::load_mode_info_[] = { shaders::texture_load_r4g4b4a4_b4g4r4a4_scaled_cs, sizeof(shaders::texture_load_r4g4b4a4_b4g4r4a4_scaled_cs), 4, 4, 2, 4, 16}, {shaders::texture_load_gbgr8_grgb8_cs, - sizeof(shaders::texture_load_gbgr8_grgb8_cs), - shaders::texture_load_gbgr8_grgb8_scaled_cs, - sizeof(shaders::texture_load_gbgr8_grgb8_scaled_cs), 4, 4, 4, 3, 8}, + sizeof(shaders::texture_load_gbgr8_grgb8_cs), nullptr, 0, 4, 4, 4, 3, 8}, + {shaders::texture_load_gbgr8_rgba8_cs, + sizeof(shaders::texture_load_gbgr8_rgba8_cs), nullptr, 0, 4, 4, 8, 3, 16}, {shaders::texture_load_bgrg8_rgbg8_cs, - sizeof(shaders::texture_load_bgrg8_rgbg8_cs), - shaders::texture_load_bgrg8_rgbg8_scaled_cs, - sizeof(shaders::texture_load_bgrg8_rgbg8_scaled_cs), 4, 4, 4, 3, 8}, + sizeof(shaders::texture_load_bgrg8_rgbg8_cs), nullptr, 0, 4, 4, 4, 3, 8}, + {shaders::texture_load_bgrg8_rgba8_cs, + sizeof(shaders::texture_load_bgrg8_rgba8_cs), nullptr, 0, 4, 4, 8, 3, 16}, {shaders::texture_load_r10g11b11_rgba16_cs, sizeof(shaders::texture_load_r10g11b11_rgba16_cs), shaders::texture_load_r10g11b11_rgba16_scaled_cs, diff --git a/src/xenia/gpu/d3d12/d3d12_texture_cache.h b/src/xenia/gpu/d3d12/d3d12_texture_cache.h index a2aff8a5e..ba0717c97 100644 --- a/src/xenia/gpu/d3d12/d3d12_texture_cache.h +++ b/src/xenia/gpu/d3d12/d3d12_texture_cache.h @@ -190,7 +190,9 @@ class D3D12TextureCache final : public TextureCache { kR5G5B6ToB5G6R5WithRBGASwizzle, kR4G4B4A4ToB4G4R4A4, kGBGR8ToGRGB8, + kGBGR8ToRGBA8, kBGRG8ToRGBG8, + kBGRG8ToRGBA8, kR10G11B11ToRGBA16, kR10G11B11ToRGBA16SNorm, kR11G11B10ToRGBA16, diff --git a/src/xenia/gpu/shaders/bytecode/d3d12_5_1/texture_load_gbgr8_grgb8_scaled_cs.h b/src/xenia/gpu/shaders/bytecode/d3d12_5_1/texture_load_bgrg8_rgba8_cs.h similarity index 58% rename from src/xenia/gpu/shaders/bytecode/d3d12_5_1/texture_load_gbgr8_grgb8_scaled_cs.h rename to src/xenia/gpu/shaders/bytecode/d3d12_5_1/texture_load_bgrg8_rgba8_cs.h index 667fc9325..10c1c1940 100644 --- a/src/xenia/gpu/shaders/bytecode/d3d12_5_1/texture_load_gbgr8_grgb8_scaled_cs.h +++ b/src/xenia/gpu/shaders/bytecode/d3d12_5_1/texture_load_bgrg8_rgba8_cs.h @@ -56,150 +56,149 @@ or r0.y, r0.z, r0.y if_nz r0.y ret endif -ishl r0.y, r0.x, l(2) +ishl r0.y, r0.x, l(3) imad r0.z, vThreadID.z, CB0[0][1].y, vThreadID.y imad r0.y, r0.z, CB0[0][2].x, r0.y iadd r0.y, r0.y, CB0[0][1].w -and r0.z, CB0[0][0].x, l(2) -ubfe r1.xyz, l(2, 2, 2, 0), l(4, 6, 2, 0), CB0[0][0].xxxx -ushr r2.x, r0.x, l(2) -mov r2.y, vThreadID.y -udiv r0.xw, null, r2.xxxy, r1.xxxy -ishl r1.w, r0.x, l(2) +and r0.z, CB0[0][0].x, l(1) if_nz r0.z - ishr r2.zw, r0.wwww, l(0, 0, 4, 3) - ishr r0.z, vThreadID.z, l(2) - ushr r3.xy, CB0[0][0].wzww, l(4, 5, 0, 0) - imad r2.z, r0.z, r3.x, r2.z - ibfe r3.xz, l(27, 0, 29, 0), l(3, 0, 1, 0), r0.xxxx - imad r2.z, r2.z, r3.y, r3.x - ishl r3.x, r0.w, l(10) - and r3.x, r3.x, l(6144) - bfi r3.x, l(3), l(8), r1.w, r3.x - ishr r3.x, r3.x, l(6) - iadd r0.z, r0.z, r2.w - bfi r2.w, l(1), l(1), r0.z, l(0) - iadd r2.w, r2.w, r3.z - bfi r2.w, l(2), l(1), r2.w, l(0) - bfi r0.z, l(1), l(0), r0.z, r2.w - bfi r2.zw, l(0, 0, 20, 20), l(0, 0, 10, 13), r2.zzzz, l(0, 0, 0, 0) - imad r2.zw, r3.xxxx, l(0, 0, 2, 16), r2.zzzw - bfi r2.zw, l(0, 0, 2, 2), l(0, 0, 8, 11), vThreadID.zzzz, r2.zzzw - bfi r3.x, l(1), l(4), r0.w, l(0) - ubfe r3.y, l(3), l(6), r2.z - and r3.z, r0.z, l(6) - bfi r0.z, l(1), l(8), r0.z, l(0) - imad r0.z, r3.y, l(32), r0.z - imad r0.z, r3.z, l(4), r0.z - bfi r2.zw, l(0, 0, 5, 5), l(0, 0, 0, 3), r3.xxxx, r2.zzzw - bfi r0.z, l(9), l(3), r0.z, r2.w - bfi r0.z, l(6), l(0), r2.z, r0.z -else - ibfe r2.zw, l(0, 0, 27, 29), l(0, 0, 3, 1), r0.xxxx - ishr r3.xy, r0.wwww, l(5, 2, 0, 0) - ushr r3.z, CB0[0][0].z, l(5) - imad r2.z, r3.x, r3.z, r2.z - ishl r3.xz, r0.wwww, l(5, 0, 7, 0) - and r3.xz, r3.xxzx, l(448, 0, 2048, 0) - bfi r3.w, l(3), l(3), r1.w, r3.x - bfi r3.w, l(23), l(9), r2.z, r3.w - bfi r4.x, l(1), l(4), r0.w, l(0) - iadd r3.w, r3.w, r4.x - ishl r4.yz, r3.xxxx, l(0, 3, 2, 0) - bfi r4.yz, l(0, 3, 3, 0), l(0, 6, 5, 0), r1.wwww, r4.yyzy - bfi r4.yz, l(0, 23, 23, 0), l(0, 12, 11, 0), r2.zzzz, r4.yyzy - imad r4.xy, r4.xxxx, l(8, 4, 0, 0), r4.yzyy - bfi r1.w, l(12), l(0), r3.z, r4.x - and r2.z, r4.y, l(1792) - iadd r1.w, r1.w, r2.z - and r2.z, r3.y, l(2) - iadd r2.z, r2.w, r2.z - bfi r2.z, l(2), l(6), r2.z, l(0) - iadd r1.w, r1.w, r2.z - bfi r0.z, l(6), l(0), r3.w, r1.w -endif -imad r0.xw, -r0.xxxw, r1.xxxy, r2.xxxy -imul null, r1.w, r1.y, r1.x -imad r0.x, r0.x, r1.y, r0.w -ishl r0.x, r0.x, l(4) -imad r0.x, r0.z, r1.w, r0.x -iadd r0.x, r0.x, CB0[0][0].y -ushr r0.xy, r0.xyxx, l(4, 4, 0, 0) -ld r3.xyzw, r0.xxxx, T0[0].xyzw -ieq r2.yzw, r1.zzzz, l(0, 1, 2, 3) -or r0.zw, r2.zzzw, r2.yyyz -if_nz r0.z - ishl r4.xyzw, r3.xyzw, l(8, 8, 8, 8) - and r4.xyzw, r4.xyzw, l(0xff00ff00, 0xff00ff00, 0xff00ff00, 0xff00ff00) - ushr r5.xyzw, r3.xyzw, l(8, 8, 8, 8) - and r5.xyzw, r5.xyzw, l(0x00ff00ff, 0x00ff00ff, 0x00ff00ff, 0x00ff00ff) - iadd r3.xyzw, r4.xyzw, r5.xyzw -endif -if_nz r0.w - ushr r4.xyzw, r3.xyzw, l(16, 16, 16, 16) - bfi r3.xyzw, l(16, 16, 16, 16), l(16, 16, 16, 16), r3.xyzw, r4.xyzw -endif -and r4.xyzw, r3.xyzw, l(0x00ff00ff, 0x00ff00ff, 0x00ff00ff, 0x00ff00ff) -ishl r5.xyzw, r3.xyzw, l(16, 16, 16, 16) -bfi r4.xyzw, l(24, 24, 24, 24), l(0, 0, 0, 0), r4.xyzw, r5.xyzw -ushr r3.xyzw, r3.xyzw, l(16, 16, 16, 16) -and r3.xyzw, r3.xyzw, l(0x0000ff00, 0x0000ff00, 0x0000ff00, 0x0000ff00) -iadd r3.xyzw, r3.xyzw, r4.xyzw -store_uav_typed U0[0].xyzw, r0.yyyy, r3.xyzw -iadd r1.z, r0.y, l(1) -ult r1.w, l(1), r1.x -if_nz r1.w - udiv r1.w, null, r2.x, r1.x - imad r1.w, -r1.w, r1.x, r2.x - iadd r2.x, r1.w, l(1) - ieq r2.x, r1.x, r2.x - if_nz r2.x - ishl r1.x, r1.x, l(5) - ishl r1.w, r1.w, l(4) - iadd r1.x, -r1.w, r1.x + and r0.w, CB0[0][0].x, l(2) + if_nz r0.w + ishr r1.xyz, vThreadID.yzyy, l(4, 2, 3, 0) + ushr r2.xy, CB0[0][0].wzww, l(4, 5, 0, 0) + imad r0.w, r1.y, r2.x, r1.x + ibfe r1.xw, l(27, 0, 0, 29), l(2, 0, 0, 0), vThreadID.xxxx + imad r0.w, r0.w, r2.y, r1.x + ishl r1.x, vThreadID.y, l(10) + ishr r1.x, r1.x, l(6) + and r1.x, r1.x, l(96) + iadd r1.y, r1.y, r1.z + bfi r1.z, l(1), l(1), r1.y, l(0) + iadd r1.z, r1.z, r1.w + bfi r1.z, l(2), l(1), r1.z, l(0) + bfi r1.y, l(1), l(0), r1.y, r1.z + bfi r1.zw, l(0, 0, 20, 20), l(0, 0, 10, 13), r0.wwww, l(0, 0, 0, 0) + imad r1.xz, r1.xxxx, l(2, 0, 16, 0), r1.zzwz + bfi r1.xz, l(2, 0, 2, 0), l(8, 0, 11, 0), vThreadID.zzzz, r1.xxzx + bfi r0.w, l(1), l(4), vThreadID.y, l(0) + ubfe r1.w, l(3), l(6), r1.x + and r2.x, r1.y, l(6) + bfi r1.y, l(1), l(8), r1.y, l(0) + imad r1.y, r1.w, l(32), r1.y + imad r1.y, r2.x, l(4), r1.y + bfi r1.xz, l(6, 0, 6, 0), l(0, 0, 3, 0), r0.wwww, r1.xxzx + bfi r0.w, l(9), l(3), r1.y, r1.z + bfi r0.w, l(6), l(0), r1.x, r0.w else - mov r1.x, l(16) + ibfe r1.xy, l(27, 29, 0, 0), l(2, 0, 0, 0), vThreadID.xxxx + ishr r1.zw, vThreadID.yyyy, l(0, 0, 5, 2) + ushr r2.x, CB0[0][0].z, l(5) + imad r1.x, r1.z, r2.x, r1.x + ishl r2.xy, vThreadID.yyyy, l(5, 7, 0, 0) + and r2.xy, r2.xyxx, l(448, 2048, 0, 0) + bfi r1.z, l(23), l(9), r1.x, r2.x + bfi r2.z, l(1), l(4), vThreadID.y, l(0) + iadd r1.z, r1.z, r2.z + ishl r2.xw, r2.xxxx, l(3, 0, 0, 2) + bfi r2.xw, l(23, 0, 0, 23), l(12, 0, 0, 11), r1.xxxx, r2.xxxw + imad r2.xz, r2.zzzz, l(8, 0, 4, 0), r2.xxwx + bfi r1.x, l(12), l(0), r2.y, r2.x + and r2.x, r2.z, l(1792) + iadd r1.x, r1.x, r2.x + and r1.w, r1.w, l(2) + iadd r1.y, r1.y, r1.w + bfi r1.y, l(2), l(6), r1.y, l(0) + iadd r1.x, r1.x, r1.y + bfi r0.w, l(6), l(0), r1.z, r1.x endif else - mov r1.x, l(32) + ishl r0.x, r0.x, l(2) + imad r1.x, vThreadID.z, CB0[0][0].w, vThreadID.y + imad r0.w, r1.x, CB0[0][0].z, r0.x endif -imul null, r1.x, r1.y, r1.x -ushr r1.x, r1.x, l(4) -iadd r0.x, r0.x, r1.x -ld r2.xyzw, r0.xxxx, T0[0].xyzw -if_nz r0.z - ishl r3.xyzw, r2.xyzw, l(8, 8, 8, 8) +iadd r0.x, r0.w, CB0[0][0].y +ushr r0.xy, r0.xyxx, l(4, 4, 0, 0) +ubfe r0.w, l(2), l(2), CB0[0][0].x +ld r1.xyzw, r0.xxxx, T0[0].xyzw +ieq r2.xyz, r0.wwww, l(1, 2, 3, 0) +or r2.xy, r2.yzyy, r2.xyxx +if_nz r2.x + ishl r3.xyzw, r1.xyzw, l(8, 8, 8, 8) and r3.xyzw, r3.xyzw, l(0xff00ff00, 0xff00ff00, 0xff00ff00, 0xff00ff00) - ushr r4.xyzw, r2.xyzw, l(8, 8, 8, 8) + ushr r4.xyzw, r1.xyzw, l(8, 8, 8, 8) and r4.xyzw, r4.xyzw, l(0x00ff00ff, 0x00ff00ff, 0x00ff00ff, 0x00ff00ff) - iadd r2.xyzw, r3.xyzw, r4.xyzw + iadd r1.xyzw, r3.xyzw, r4.xyzw endif -if_nz r0.w - ushr r3.xyzw, r2.xyzw, l(16, 16, 16, 16) - bfi r2.xyzw, l(16, 16, 16, 16), l(16, 16, 16, 16), r2.xyzw, r3.xyzw +if_nz r2.y + ushr r3.xyzw, r1.xyzw, l(16, 16, 16, 16) + bfi r1.xyzw, l(16, 16, 16, 16), l(16, 16, 16, 16), r1.xyzw, r3.xyzw endif -and r3.xyzw, r2.xyzw, l(0x00ff00ff, 0x00ff00ff, 0x00ff00ff, 0x00ff00ff) -ishl r4.xyzw, r2.xyzw, l(16, 16, 16, 16) -bfi r3.xyzw, l(24, 24, 24, 24), l(0, 0, 0, 0), r3.xyzw, r4.xyzw -ushr r2.xyzw, r2.xyzw, l(16, 16, 16, 16) -and r2.xyzw, r2.xyzw, l(0x0000ff00, 0x0000ff00, 0x0000ff00, 0x0000ff00) -iadd r2.xyzw, r2.xyzw, r3.xyzw -store_uav_typed U0[0].xyzw, r1.zzzz, r2.xyzw +ushr r2.zw, r1.xxxy, l(0, 0, 16, 16) +bfi r3.xyzw, l(8, 8, 8, 8), l(16, 16, 16, 16), r1.xxyy, l(0, 0, 0, 0) +bfi r3.xyzw, l(8, 8, 8, 8), l(0, 0, 0, 0), r2.zzww, r3.xyzw +iadd r3.xyzw, r3.xyzw, l(0xff000000, 0xff000000, 0xff000000, 0xff000000) +and r4.xz, r1.xxyx, l(0x0000ff00, 0, 0x0000ff00, 0) +and r4.yw, r2.zzzw, l(0, 0x0000ff00, 0, 0x0000ff00) +iadd r3.xyzw, r3.xyzw, r4.xyzw +ushr r1.xy, r1.zwzz, l(16, 16, 0, 0) +bfi r4.xyzw, l(8, 8, 8, 8), l(16, 16, 16, 16), r1.zzww, l(0, 0, 0, 0) +bfi r4.xyzw, l(8, 8, 8, 8), l(0, 0, 0, 0), r1.xxyy, r4.xyzw +iadd r4.xyzw, r4.xyzw, l(0xff000000, 0xff000000, 0xff000000, 0xff000000) +and r5.xyzw, r1.zxwy, l(0x0000ff00, 0x0000ff00, 0x0000ff00, 0x0000ff00) +iadd r1.xyzw, r4.xyzw, r5.xyzw +store_uav_typed U0[0].xyzw, r0.yyyy, r3.xyzw +iadd r3.xyz, r0.yyyy, l(1, 2, 3, 0) +store_uav_typed U0[0].xyzw, r3.xxxx, r1.xyzw +if_nz r0.z + mov r0.z, l(32) +else + mov r0.z, l(16) +endif +ushr r0.z, r0.z, l(4) +iadd r0.x, r0.z, r0.x +ld r1.xyzw, r0.xxxx, T0[0].xyzw +if_nz r2.x + ishl r4.xyzw, r1.xyzw, l(8, 8, 8, 8) + and r4.xyzw, r4.xyzw, l(0xff00ff00, 0xff00ff00, 0xff00ff00, 0xff00ff00) + ushr r5.xyzw, r1.xyzw, l(8, 8, 8, 8) + and r5.xyzw, r5.xyzw, l(0x00ff00ff, 0x00ff00ff, 0x00ff00ff, 0x00ff00ff) + iadd r1.xyzw, r4.xyzw, r5.xyzw +endif +if_nz r2.y + ushr r2.xyzw, r1.xyzw, l(16, 16, 16, 16) + bfi r1.xyzw, l(16, 16, 16, 16), l(16, 16, 16, 16), r1.xyzw, r2.xyzw +endif +ushr r0.xz, r1.xxyx, l(16, 0, 16, 0) +bfi r2.xyzw, l(8, 8, 8, 8), l(16, 16, 16, 16), r1.xxyy, l(0, 0, 0, 0) +bfi r2.xyzw, l(8, 8, 8, 8), l(0, 0, 0, 0), r0.xxzz, r2.xyzw +iadd r2.xyzw, r2.xyzw, l(0xff000000, 0xff000000, 0xff000000, 0xff000000) +and r4.xz, r1.xxyx, l(0x0000ff00, 0, 0x0000ff00, 0) +and r4.yw, r0.xxxz, l(0, 0x0000ff00, 0, 0x0000ff00) +iadd r2.xyzw, r2.xyzw, r4.xyzw +ushr r0.xz, r1.zzwz, l(16, 0, 16, 0) +bfi r4.xyzw, l(8, 8, 8, 8), l(16, 16, 16, 16), r1.zzww, l(0, 0, 0, 0) +bfi r4.xyzw, l(8, 8, 8, 8), l(0, 0, 0, 0), r0.xxzz, r4.xyzw +iadd r4.xyzw, r4.xyzw, l(0xff000000, 0xff000000, 0xff000000, 0xff000000) +and r1.xz, r1.zzwz, l(0x0000ff00, 0, 0x0000ff00, 0) +and r1.yw, r0.xxxz, l(0, 0x0000ff00, 0, 0x0000ff00) +iadd r1.xyzw, r1.xyzw, r4.xyzw +store_uav_typed U0[0].xyzw, r3.yyyy, r2.xyzw +store_uav_typed U0[0].xyzw, r3.zzzz, r1.xyzw ret -// Approximately 137 instruction slots used +// Approximately 136 instruction slots used #endif -const BYTE texture_load_gbgr8_grgb8_scaled_cs[] = +const BYTE texture_load_bgrg8_rgba8_cs[] = { - 68, 88, 66, 67, 74, 29, - 237, 221, 64, 4, 255, 165, - 202, 15, 99, 149, 255, 197, - 183, 153, 1, 0, 0, 0, - 84, 23, 0, 0, 5, 0, + 68, 88, 66, 67, 50, 170, + 137, 93, 249, 183, 205, 57, + 180, 173, 235, 247, 158, 49, + 140, 60, 1, 0, 0, 0, + 52, 24, 0, 0, 5, 0, 0, 0, 52, 0, 0, 0, 32, 4, 0, 0, 48, 4, 0, 0, 64, 4, 0, 0, - 184, 22, 0, 0, 82, 68, + 152, 23, 0, 0, 82, 68, 69, 70, 228, 3, 0, 0, 1, 0, 0, 0, 252, 0, 0, 0, 3, 0, 0, 0, @@ -373,8 +372,8 @@ const BYTE texture_load_gbgr8_grgb8_scaled_cs[] = 71, 78, 8, 0, 0, 0, 0, 0, 0, 0, 8, 0, 0, 0, 83, 72, 69, 88, - 112, 18, 0, 0, 81, 0, - 5, 0, 156, 4, 0, 0, + 80, 19, 0, 0, 81, 0, + 5, 0, 212, 4, 0, 0, 106, 8, 0, 1, 89, 0, 0, 7, 70, 142, 48, 0, 0, 0, 0, 0, 0, 0, @@ -419,7 +418,7 @@ const BYTE texture_load_gbgr8_grgb8_scaled_cs[] = 0, 7, 34, 0, 16, 0, 0, 0, 0, 0, 10, 0, 16, 0, 0, 0, 0, 0, - 1, 64, 0, 0, 2, 0, + 1, 64, 0, 0, 3, 0, 0, 0, 35, 0, 0, 9, 66, 0, 16, 0, 0, 0, 0, 0, 42, 0, 2, 0, @@ -445,442 +444,586 @@ const BYTE texture_load_gbgr8_grgb8_scaled_cs[] = 48, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 64, 0, 0, - 2, 0, 0, 0, 138, 0, - 0, 17, 114, 0, 16, 0, - 1, 0, 0, 0, 2, 64, - 0, 0, 2, 0, 0, 0, - 2, 0, 0, 0, 2, 0, + 1, 0, 0, 0, 31, 0, + 4, 3, 42, 0, 16, 0, + 0, 0, 0, 0, 1, 0, + 0, 9, 130, 0, 16, 0, + 0, 0, 0, 0, 10, 128, + 48, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 2, 64, 0, 0, 4, 0, - 0, 0, 6, 0, 0, 0, - 2, 0, 0, 0, 0, 0, - 0, 0, 6, 128, 48, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 85, 0, 0, 7, 18, 0, - 16, 0, 2, 0, 0, 0, - 10, 0, 16, 0, 0, 0, 0, 0, 1, 64, 0, 0, - 2, 0, 0, 0, 54, 0, - 0, 4, 34, 0, 16, 0, - 2, 0, 0, 0, 26, 0, - 2, 0, 78, 0, 0, 8, - 146, 0, 16, 0, 0, 0, - 0, 0, 0, 208, 0, 0, - 6, 4, 16, 0, 2, 0, - 0, 0, 6, 4, 16, 0, - 1, 0, 0, 0, 41, 0, - 0, 7, 130, 0, 16, 0, - 1, 0, 0, 0, 10, 0, - 16, 0, 0, 0, 0, 0, - 1, 64, 0, 0, 2, 0, - 0, 0, 31, 0, 4, 3, - 42, 0, 16, 0, 0, 0, - 0, 0, 42, 0, 0, 10, - 194, 0, 16, 0, 2, 0, - 0, 0, 246, 15, 16, 0, - 0, 0, 0, 0, 2, 64, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 4, 0, + 2, 0, 0, 0, 31, 0, + 4, 3, 58, 0, 16, 0, + 0, 0, 0, 0, 42, 0, + 0, 9, 114, 0, 16, 0, + 1, 0, 0, 0, 150, 5, + 2, 0, 2, 64, 0, 0, + 4, 0, 0, 0, 2, 0, 0, 0, 3, 0, 0, 0, - 42, 0, 0, 6, 66, 0, - 16, 0, 0, 0, 0, 0, - 42, 0, 2, 0, 1, 64, - 0, 0, 2, 0, 0, 0, - 85, 0, 0, 12, 50, 0, - 16, 0, 3, 0, 0, 0, - 182, 143, 48, 0, 0, 0, + 0, 0, 0, 0, 85, 0, + 0, 12, 50, 0, 16, 0, + 2, 0, 0, 0, 182, 143, + 48, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 2, 64, - 0, 0, 4, 0, 0, 0, - 5, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 35, 0, 0, 9, 66, 0, - 16, 0, 2, 0, 0, 0, - 42, 0, 16, 0, 0, 0, - 0, 0, 10, 0, 16, 0, - 3, 0, 0, 0, 42, 0, - 16, 0, 2, 0, 0, 0, - 139, 0, 0, 15, 82, 0, - 16, 0, 3, 0, 0, 0, - 2, 64, 0, 0, 27, 0, - 0, 0, 0, 0, 0, 0, - 29, 0, 0, 0, 0, 0, 0, 0, 2, 64, 0, 0, - 3, 0, 0, 0, 0, 0, - 0, 0, 1, 0, 0, 0, - 0, 0, 0, 0, 6, 0, - 16, 0, 0, 0, 0, 0, - 35, 0, 0, 9, 66, 0, - 16, 0, 2, 0, 0, 0, - 42, 0, 16, 0, 2, 0, - 0, 0, 26, 0, 16, 0, - 3, 0, 0, 0, 10, 0, - 16, 0, 3, 0, 0, 0, - 41, 0, 0, 7, 18, 0, - 16, 0, 3, 0, 0, 0, - 58, 0, 16, 0, 0, 0, - 0, 0, 1, 64, 0, 0, - 10, 0, 0, 0, 1, 0, - 0, 7, 18, 0, 16, 0, - 3, 0, 0, 0, 10, 0, - 16, 0, 3, 0, 0, 0, - 1, 64, 0, 0, 0, 24, - 0, 0, 140, 0, 0, 11, - 18, 0, 16, 0, 3, 0, - 0, 0, 1, 64, 0, 0, - 3, 0, 0, 0, 1, 64, - 0, 0, 8, 0, 0, 0, - 58, 0, 16, 0, 1, 0, + 4, 0, 0, 0, 5, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 35, 0, + 0, 9, 130, 0, 16, 0, + 0, 0, 0, 0, 26, 0, + 16, 0, 1, 0, 0, 0, + 10, 0, 16, 0, 2, 0, 0, 0, 10, 0, 16, 0, - 3, 0, 0, 0, 42, 0, + 1, 0, 0, 0, 139, 0, + 0, 14, 146, 0, 16, 0, + 1, 0, 0, 0, 2, 64, + 0, 0, 27, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 29, 0, 0, 0, + 2, 64, 0, 0, 2, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 6, 0, 2, 0, + 35, 0, 0, 9, 130, 0, + 16, 0, 0, 0, 0, 0, + 58, 0, 16, 0, 0, 0, + 0, 0, 26, 0, 16, 0, + 2, 0, 0, 0, 10, 0, + 16, 0, 1, 0, 0, 0, + 41, 0, 0, 6, 18, 0, + 16, 0, 1, 0, 0, 0, + 26, 0, 2, 0, 1, 64, + 0, 0, 10, 0, 0, 0, + 42, 0, 0, 7, 18, 0, + 16, 0, 1, 0, 0, 0, + 10, 0, 16, 0, 1, 0, + 0, 0, 1, 64, 0, 0, + 6, 0, 0, 0, 1, 0, 0, 7, 18, 0, 16, 0, - 3, 0, 0, 0, 10, 0, - 16, 0, 3, 0, 0, 0, - 1, 64, 0, 0, 6, 0, + 1, 0, 0, 0, 10, 0, + 16, 0, 1, 0, 0, 0, + 1, 64, 0, 0, 96, 0, 0, 0, 30, 0, 0, 7, - 66, 0, 16, 0, 0, 0, - 0, 0, 42, 0, 16, 0, - 0, 0, 0, 0, 58, 0, - 16, 0, 2, 0, 0, 0, - 140, 0, 0, 11, 130, 0, - 16, 0, 2, 0, 0, 0, + 34, 0, 16, 0, 1, 0, + 0, 0, 26, 0, 16, 0, + 1, 0, 0, 0, 42, 0, + 16, 0, 1, 0, 0, 0, + 140, 0, 0, 11, 66, 0, + 16, 0, 1, 0, 0, 0, 1, 64, 0, 0, 1, 0, 0, 0, 1, 64, 0, 0, - 1, 0, 0, 0, 42, 0, - 16, 0, 0, 0, 0, 0, + 1, 0, 0, 0, 26, 0, + 16, 0, 1, 0, 0, 0, 1, 64, 0, 0, 0, 0, 0, 0, 30, 0, 0, 7, - 130, 0, 16, 0, 2, 0, - 0, 0, 58, 0, 16, 0, - 2, 0, 0, 0, 42, 0, - 16, 0, 3, 0, 0, 0, - 140, 0, 0, 11, 130, 0, - 16, 0, 2, 0, 0, 0, + 66, 0, 16, 0, 1, 0, + 0, 0, 42, 0, 16, 0, + 1, 0, 0, 0, 58, 0, + 16, 0, 1, 0, 0, 0, + 140, 0, 0, 11, 66, 0, + 16, 0, 1, 0, 0, 0, 1, 64, 0, 0, 2, 0, 0, 0, 1, 64, 0, 0, - 1, 0, 0, 0, 58, 0, - 16, 0, 2, 0, 0, 0, + 1, 0, 0, 0, 42, 0, + 16, 0, 1, 0, 0, 0, 1, 64, 0, 0, 0, 0, 0, 0, 140, 0, 0, 11, - 66, 0, 16, 0, 0, 0, + 34, 0, 16, 0, 1, 0, 0, 0, 1, 64, 0, 0, 1, 0, 0, 0, 1, 64, 0, 0, 0, 0, 0, 0, - 42, 0, 16, 0, 0, 0, - 0, 0, 58, 0, 16, 0, - 2, 0, 0, 0, 140, 0, + 26, 0, 16, 0, 1, 0, + 0, 0, 42, 0, 16, 0, + 1, 0, 0, 0, 140, 0, 0, 20, 194, 0, 16, 0, - 2, 0, 0, 0, 2, 64, + 1, 0, 0, 0, 2, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 20, 0, 0, 0, 20, 0, 0, 0, 2, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 10, 0, 0, 0, 13, 0, - 0, 0, 166, 10, 16, 0, - 2, 0, 0, 0, 2, 64, + 0, 0, 246, 15, 16, 0, + 0, 0, 0, 0, 2, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 35, 0, 0, 12, 194, 0, - 16, 0, 2, 0, 0, 0, - 6, 0, 16, 0, 3, 0, + 35, 0, 0, 12, 82, 0, + 16, 0, 1, 0, 0, 0, + 6, 0, 16, 0, 1, 0, 0, 0, 2, 64, 0, 0, + 2, 0, 0, 0, 0, 0, + 0, 0, 16, 0, 0, 0, + 0, 0, 0, 0, 166, 11, + 16, 0, 1, 0, 0, 0, + 140, 0, 0, 16, 82, 0, + 16, 0, 1, 0, 0, 0, + 2, 64, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 2, 0, 0, 0, - 16, 0, 0, 0, 166, 14, - 16, 0, 2, 0, 0, 0, - 140, 0, 0, 16, 194, 0, - 16, 0, 2, 0, 0, 0, - 2, 64, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 2, 0, 0, 0, 2, 0, + 2, 0, 0, 0, 0, 0, 0, 0, 2, 64, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 8, 0, 0, 0, - 11, 0, 0, 0, 166, 10, - 2, 0, 166, 14, 16, 0, - 2, 0, 0, 0, 140, 0, - 0, 11, 18, 0, 16, 0, - 3, 0, 0, 0, 1, 64, + 8, 0, 0, 0, 0, 0, + 0, 0, 11, 0, 0, 0, + 0, 0, 0, 0, 166, 10, + 2, 0, 6, 2, 16, 0, + 1, 0, 0, 0, 140, 0, + 0, 10, 130, 0, 16, 0, + 0, 0, 0, 0, 1, 64, 0, 0, 1, 0, 0, 0, 1, 64, 0, 0, 4, 0, - 0, 0, 58, 0, 16, 0, - 0, 0, 0, 0, 1, 64, - 0, 0, 0, 0, 0, 0, - 138, 0, 0, 9, 34, 0, - 16, 0, 3, 0, 0, 0, - 1, 64, 0, 0, 3, 0, - 0, 0, 1, 64, 0, 0, - 6, 0, 0, 0, 42, 0, - 16, 0, 2, 0, 0, 0, - 1, 0, 0, 7, 66, 0, - 16, 0, 3, 0, 0, 0, - 42, 0, 16, 0, 0, 0, - 0, 0, 1, 64, 0, 0, - 6, 0, 0, 0, 140, 0, - 0, 11, 66, 0, 16, 0, - 0, 0, 0, 0, 1, 64, - 0, 0, 1, 0, 0, 0, - 1, 64, 0, 0, 8, 0, - 0, 0, 42, 0, 16, 0, - 0, 0, 0, 0, 1, 64, - 0, 0, 0, 0, 0, 0, - 35, 0, 0, 9, 66, 0, - 16, 0, 0, 0, 0, 0, - 26, 0, 16, 0, 3, 0, - 0, 0, 1, 64, 0, 0, - 32, 0, 0, 0, 42, 0, - 16, 0, 0, 0, 0, 0, - 35, 0, 0, 9, 66, 0, - 16, 0, 0, 0, 0, 0, - 42, 0, 16, 0, 3, 0, - 0, 0, 1, 64, 0, 0, - 4, 0, 0, 0, 42, 0, - 16, 0, 0, 0, 0, 0, - 140, 0, 0, 17, 194, 0, - 16, 0, 2, 0, 0, 0, - 2, 64, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 5, 0, 0, 0, 5, 0, - 0, 0, 2, 64, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 3, 0, 0, 0, 6, 0, - 16, 0, 3, 0, 0, 0, - 166, 14, 16, 0, 2, 0, - 0, 0, 140, 0, 0, 11, - 66, 0, 16, 0, 0, 0, - 0, 0, 1, 64, 0, 0, - 9, 0, 0, 0, 1, 64, - 0, 0, 3, 0, 0, 0, - 42, 0, 16, 0, 0, 0, - 0, 0, 58, 0, 16, 0, - 2, 0, 0, 0, 140, 0, - 0, 11, 66, 0, 16, 0, - 0, 0, 0, 0, 1, 64, - 0, 0, 6, 0, 0, 0, + 0, 0, 26, 0, 2, 0, 1, 64, 0, 0, 0, 0, - 0, 0, 42, 0, 16, 0, - 2, 0, 0, 0, 42, 0, - 16, 0, 0, 0, 0, 0, - 18, 0, 0, 1, 139, 0, - 0, 15, 194, 0, 16, 0, - 2, 0, 0, 0, 2, 64, + 0, 0, 138, 0, 0, 9, + 130, 0, 16, 0, 1, 0, + 0, 0, 1, 64, 0, 0, + 3, 0, 0, 0, 1, 64, + 0, 0, 6, 0, 0, 0, + 10, 0, 16, 0, 1, 0, + 0, 0, 1, 0, 0, 7, + 18, 0, 16, 0, 2, 0, + 0, 0, 26, 0, 16, 0, + 1, 0, 0, 0, 1, 64, + 0, 0, 6, 0, 0, 0, + 140, 0, 0, 11, 34, 0, + 16, 0, 1, 0, 0, 0, + 1, 64, 0, 0, 1, 0, + 0, 0, 1, 64, 0, 0, + 8, 0, 0, 0, 26, 0, + 16, 0, 1, 0, 0, 0, + 1, 64, 0, 0, 0, 0, + 0, 0, 35, 0, 0, 9, + 34, 0, 16, 0, 1, 0, + 0, 0, 58, 0, 16, 0, + 1, 0, 0, 0, 1, 64, + 0, 0, 32, 0, 0, 0, + 26, 0, 16, 0, 1, 0, + 0, 0, 35, 0, 0, 9, + 34, 0, 16, 0, 1, 0, + 0, 0, 10, 0, 16, 0, + 2, 0, 0, 0, 1, 64, + 0, 0, 4, 0, 0, 0, + 26, 0, 16, 0, 1, 0, + 0, 0, 140, 0, 0, 17, + 82, 0, 16, 0, 1, 0, + 0, 0, 2, 64, 0, 0, + 6, 0, 0, 0, 0, 0, + 0, 0, 6, 0, 0, 0, + 0, 0, 0, 0, 2, 64, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 27, 0, + 0, 0, 0, 0, 3, 0, + 0, 0, 0, 0, 0, 0, + 246, 15, 16, 0, 0, 0, + 0, 0, 6, 2, 16, 0, + 1, 0, 0, 0, 140, 0, + 0, 11, 130, 0, 16, 0, + 0, 0, 0, 0, 1, 64, + 0, 0, 9, 0, 0, 0, + 1, 64, 0, 0, 3, 0, + 0, 0, 26, 0, 16, 0, + 1, 0, 0, 0, 42, 0, + 16, 0, 1, 0, 0, 0, + 140, 0, 0, 11, 130, 0, + 16, 0, 0, 0, 0, 0, + 1, 64, 0, 0, 6, 0, + 0, 0, 1, 64, 0, 0, + 0, 0, 0, 0, 10, 0, + 16, 0, 1, 0, 0, 0, + 58, 0, 16, 0, 0, 0, + 0, 0, 18, 0, 0, 1, + 139, 0, 0, 14, 50, 0, + 16, 0, 1, 0, 0, 0, + 2, 64, 0, 0, 27, 0, 0, 0, 29, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 2, 64, 0, 0, + 2, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 6, 0, + 2, 0, 42, 0, 0, 9, + 194, 0, 16, 0, 1, 0, + 0, 0, 86, 5, 2, 0, 2, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 3, 0, 0, 0, 1, 0, - 0, 0, 6, 0, 16, 0, - 0, 0, 0, 0, 42, 0, - 0, 10, 50, 0, 16, 0, - 3, 0, 0, 0, 246, 15, - 16, 0, 0, 0, 0, 0, - 2, 64, 0, 0, 5, 0, - 0, 0, 2, 0, 0, 0, - 0, 0, 0, 0, 0, 0, + 5, 0, 0, 0, 2, 0, 0, 0, 85, 0, 0, 9, - 66, 0, 16, 0, 3, 0, + 18, 0, 16, 0, 2, 0, 0, 0, 42, 128, 48, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 64, 0, 0, 5, 0, 0, 0, 35, 0, 0, 9, - 66, 0, 16, 0, 2, 0, - 0, 0, 10, 0, 16, 0, - 3, 0, 0, 0, 42, 0, - 16, 0, 3, 0, 0, 0, - 42, 0, 16, 0, 2, 0, - 0, 0, 41, 0, 0, 10, - 82, 0, 16, 0, 3, 0, - 0, 0, 246, 15, 16, 0, - 0, 0, 0, 0, 2, 64, - 0, 0, 5, 0, 0, 0, - 0, 0, 0, 0, 7, 0, - 0, 0, 0, 0, 0, 0, - 1, 0, 0, 10, 82, 0, - 16, 0, 3, 0, 0, 0, - 6, 2, 16, 0, 3, 0, - 0, 0, 2, 64, 0, 0, - 192, 1, 0, 0, 0, 0, - 0, 0, 0, 8, 0, 0, - 0, 0, 0, 0, 140, 0, - 0, 11, 130, 0, 16, 0, - 3, 0, 0, 0, 1, 64, - 0, 0, 3, 0, 0, 0, - 1, 64, 0, 0, 3, 0, - 0, 0, 58, 0, 16, 0, + 18, 0, 16, 0, 1, 0, + 0, 0, 42, 0, 16, 0, 1, 0, 0, 0, 10, 0, - 16, 0, 3, 0, 0, 0, - 140, 0, 0, 11, 130, 0, - 16, 0, 3, 0, 0, 0, + 16, 0, 2, 0, 0, 0, + 10, 0, 16, 0, 1, 0, + 0, 0, 41, 0, 0, 9, + 50, 0, 16, 0, 2, 0, + 0, 0, 86, 5, 2, 0, + 2, 64, 0, 0, 5, 0, + 0, 0, 7, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 1, 0, 0, 10, + 50, 0, 16, 0, 2, 0, + 0, 0, 70, 0, 16, 0, + 2, 0, 0, 0, 2, 64, + 0, 0, 192, 1, 0, 0, + 0, 8, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 140, 0, 0, 11, 66, 0, + 16, 0, 1, 0, 0, 0, 1, 64, 0, 0, 23, 0, 0, 0, 1, 64, 0, 0, - 9, 0, 0, 0, 42, 0, - 16, 0, 2, 0, 0, 0, - 58, 0, 16, 0, 3, 0, - 0, 0, 140, 0, 0, 11, - 18, 0, 16, 0, 4, 0, + 9, 0, 0, 0, 10, 0, + 16, 0, 1, 0, 0, 0, + 10, 0, 16, 0, 2, 0, + 0, 0, 140, 0, 0, 10, + 66, 0, 16, 0, 2, 0, 0, 0, 1, 64, 0, 0, 1, 0, 0, 0, 1, 64, 0, 0, 4, 0, 0, 0, - 58, 0, 16, 0, 0, 0, - 0, 0, 1, 64, 0, 0, - 0, 0, 0, 0, 30, 0, - 0, 7, 130, 0, 16, 0, - 3, 0, 0, 0, 58, 0, - 16, 0, 3, 0, 0, 0, - 10, 0, 16, 0, 4, 0, - 0, 0, 41, 0, 0, 10, - 98, 0, 16, 0, 4, 0, - 0, 0, 6, 0, 16, 0, - 3, 0, 0, 0, 2, 64, + 26, 0, 2, 0, 1, 64, 0, 0, 0, 0, 0, 0, - 3, 0, 0, 0, 2, 0, - 0, 0, 0, 0, 0, 0, - 140, 0, 0, 17, 98, 0, - 16, 0, 4, 0, 0, 0, - 2, 64, 0, 0, 0, 0, - 0, 0, 3, 0, 0, 0, - 3, 0, 0, 0, 0, 0, - 0, 0, 2, 64, 0, 0, - 0, 0, 0, 0, 6, 0, - 0, 0, 5, 0, 0, 0, - 0, 0, 0, 0, 246, 15, + 30, 0, 0, 7, 66, 0, 16, 0, 1, 0, 0, 0, - 86, 6, 16, 0, 4, 0, + 42, 0, 16, 0, 1, 0, + 0, 0, 42, 0, 16, 0, + 2, 0, 0, 0, 41, 0, + 0, 10, 146, 0, 16, 0, + 2, 0, 0, 0, 6, 0, + 16, 0, 2, 0, 0, 0, + 2, 64, 0, 0, 3, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 2, 0, 0, 0, 140, 0, 0, 17, - 98, 0, 16, 0, 4, 0, + 146, 0, 16, 0, 2, 0, 0, 0, 2, 64, 0, 0, - 0, 0, 0, 0, 23, 0, - 0, 0, 23, 0, 0, 0, - 0, 0, 0, 0, 2, 64, + 23, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 12, 0, 0, 0, 11, 0, + 23, 0, 0, 0, 2, 64, + 0, 0, 12, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 166, 10, 16, 0, 2, 0, - 0, 0, 86, 6, 16, 0, - 4, 0, 0, 0, 35, 0, - 0, 12, 50, 0, 16, 0, - 4, 0, 0, 0, 6, 0, - 16, 0, 4, 0, 0, 0, + 0, 0, 11, 0, 0, 0, + 6, 0, 16, 0, 1, 0, + 0, 0, 6, 12, 16, 0, + 2, 0, 0, 0, 35, 0, + 0, 12, 82, 0, 16, 0, + 2, 0, 0, 0, 166, 10, + 16, 0, 2, 0, 0, 0, 2, 64, 0, 0, 8, 0, - 0, 0, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 150, 5, 16, 0, - 4, 0, 0, 0, 140, 0, - 0, 11, 130, 0, 16, 0, + 4, 0, 0, 0, 0, 0, + 0, 0, 6, 3, 16, 0, + 2, 0, 0, 0, 140, 0, + 0, 11, 18, 0, 16, 0, 1, 0, 0, 0, 1, 64, 0, 0, 12, 0, 0, 0, 1, 64, 0, 0, 0, 0, - 0, 0, 42, 0, 16, 0, - 3, 0, 0, 0, 10, 0, - 16, 0, 4, 0, 0, 0, - 1, 0, 0, 7, 66, 0, + 0, 0, 26, 0, 16, 0, + 2, 0, 0, 0, 10, 0, 16, 0, 2, 0, 0, 0, - 26, 0, 16, 0, 4, 0, + 1, 0, 0, 7, 18, 0, + 16, 0, 2, 0, 0, 0, + 42, 0, 16, 0, 2, 0, 0, 0, 1, 64, 0, 0, 0, 7, 0, 0, 30, 0, - 0, 7, 130, 0, 16, 0, - 1, 0, 0, 0, 58, 0, + 0, 7, 18, 0, 16, 0, + 1, 0, 0, 0, 10, 0, 16, 0, 1, 0, 0, 0, - 42, 0, 16, 0, 2, 0, + 10, 0, 16, 0, 2, 0, 0, 0, 1, 0, 0, 7, - 66, 0, 16, 0, 2, 0, - 0, 0, 26, 0, 16, 0, - 3, 0, 0, 0, 1, 64, + 130, 0, 16, 0, 1, 0, + 0, 0, 58, 0, 16, 0, + 1, 0, 0, 0, 1, 64, 0, 0, 2, 0, 0, 0, - 30, 0, 0, 7, 66, 0, - 16, 0, 2, 0, 0, 0, - 58, 0, 16, 0, 2, 0, - 0, 0, 42, 0, 16, 0, - 2, 0, 0, 0, 140, 0, - 0, 11, 66, 0, 16, 0, - 2, 0, 0, 0, 1, 64, + 30, 0, 0, 7, 34, 0, + 16, 0, 1, 0, 0, 0, + 26, 0, 16, 0, 1, 0, + 0, 0, 58, 0, 16, 0, + 1, 0, 0, 0, 140, 0, + 0, 11, 34, 0, 16, 0, + 1, 0, 0, 0, 1, 64, 0, 0, 2, 0, 0, 0, 1, 64, 0, 0, 6, 0, - 0, 0, 42, 0, 16, 0, - 2, 0, 0, 0, 1, 64, + 0, 0, 26, 0, 16, 0, + 1, 0, 0, 0, 1, 64, 0, 0, 0, 0, 0, 0, - 30, 0, 0, 7, 130, 0, + 30, 0, 0, 7, 18, 0, 16, 0, 1, 0, 0, 0, - 58, 0, 16, 0, 1, 0, - 0, 0, 42, 0, 16, 0, - 2, 0, 0, 0, 140, 0, - 0, 11, 66, 0, 16, 0, + 10, 0, 16, 0, 1, 0, + 0, 0, 26, 0, 16, 0, + 1, 0, 0, 0, 140, 0, + 0, 11, 130, 0, 16, 0, 0, 0, 0, 0, 1, 64, 0, 0, 6, 0, 0, 0, 1, 64, 0, 0, 0, 0, - 0, 0, 58, 0, 16, 0, - 3, 0, 0, 0, 58, 0, - 16, 0, 1, 0, 0, 0, - 21, 0, 0, 1, 35, 0, - 0, 10, 146, 0, 16, 0, - 0, 0, 0, 0, 6, 12, - 16, 128, 65, 0, 0, 0, - 0, 0, 0, 0, 6, 4, - 16, 0, 1, 0, 0, 0, - 6, 4, 16, 0, 2, 0, - 0, 0, 38, 0, 0, 8, - 0, 208, 0, 0, 130, 0, - 16, 0, 1, 0, 0, 0, - 26, 0, 16, 0, 1, 0, - 0, 0, 10, 0, 16, 0, - 1, 0, 0, 0, 35, 0, - 0, 9, 18, 0, 16, 0, - 0, 0, 0, 0, 10, 0, - 16, 0, 0, 0, 0, 0, - 26, 0, 16, 0, 1, 0, - 0, 0, 58, 0, 16, 0, - 0, 0, 0, 0, 41, 0, - 0, 7, 18, 0, 16, 0, - 0, 0, 0, 0, 10, 0, - 16, 0, 0, 0, 0, 0, - 1, 64, 0, 0, 4, 0, - 0, 0, 35, 0, 0, 9, - 18, 0, 16, 0, 0, 0, 0, 0, 42, 0, 16, 0, - 0, 0, 0, 0, 58, 0, + 1, 0, 0, 0, 10, 0, 16, 0, 1, 0, 0, 0, - 10, 0, 16, 0, 0, 0, - 0, 0, 30, 0, 0, 9, + 21, 0, 0, 1, 18, 0, + 0, 1, 41, 0, 0, 7, 18, 0, 16, 0, 0, 0, 0, 0, 10, 0, 16, 0, - 0, 0, 0, 0, 26, 128, + 0, 0, 0, 0, 1, 64, + 0, 0, 2, 0, 0, 0, + 35, 0, 0, 9, 18, 0, + 16, 0, 1, 0, 0, 0, + 42, 0, 2, 0, 58, 128, 48, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 85, 0, 0, 10, - 50, 0, 16, 0, 0, 0, - 0, 0, 70, 0, 16, 0, - 0, 0, 0, 0, 2, 64, - 0, 0, 4, 0, 0, 0, - 4, 0, 0, 0, 0, 0, + 0, 0, 26, 0, 2, 0, + 35, 0, 0, 11, 130, 0, + 16, 0, 0, 0, 0, 0, + 10, 0, 16, 0, 1, 0, + 0, 0, 42, 128, 48, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 10, 0, 16, 0, 0, 0, + 0, 0, 21, 0, 0, 1, + 30, 0, 0, 9, 18, 0, + 16, 0, 0, 0, 0, 0, + 58, 0, 16, 0, 0, 0, + 0, 0, 26, 128, 48, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 85, 0, 0, 10, 50, 0, + 16, 0, 0, 0, 0, 0, + 70, 0, 16, 0, 0, 0, + 0, 0, 2, 64, 0, 0, + 4, 0, 0, 0, 4, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 138, 0, + 0, 11, 130, 0, 16, 0, + 0, 0, 0, 0, 1, 64, + 0, 0, 2, 0, 0, 0, + 1, 64, 0, 0, 2, 0, + 0, 0, 10, 128, 48, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 45, 0, 0, 8, 242, 0, - 16, 0, 3, 0, 0, 0, + 16, 0, 1, 0, 0, 0, 6, 0, 16, 0, 0, 0, 0, 0, 70, 126, 32, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32, 0, 0, 10, - 226, 0, 16, 0, 2, 0, - 0, 0, 166, 10, 16, 0, - 1, 0, 0, 0, 2, 64, + 114, 0, 16, 0, 2, 0, + 0, 0, 246, 15, 16, 0, + 0, 0, 0, 0, 2, 64, + 0, 0, 1, 0, 0, 0, + 2, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, - 1, 0, 0, 0, 2, 0, - 0, 0, 3, 0, 0, 0, - 60, 0, 0, 7, 194, 0, - 16, 0, 0, 0, 0, 0, - 166, 14, 16, 0, 2, 0, - 0, 0, 86, 9, 16, 0, + 60, 0, 0, 7, 50, 0, + 16, 0, 2, 0, 0, 0, + 150, 5, 16, 0, 2, 0, + 0, 0, 70, 0, 16, 0, 2, 0, 0, 0, 31, 0, - 4, 3, 42, 0, 16, 0, - 0, 0, 0, 0, 41, 0, + 4, 3, 10, 0, 16, 0, + 2, 0, 0, 0, 41, 0, + 0, 10, 242, 0, 16, 0, + 3, 0, 0, 0, 70, 14, + 16, 0, 1, 0, 0, 0, + 2, 64, 0, 0, 8, 0, + 0, 0, 8, 0, 0, 0, + 8, 0, 0, 0, 8, 0, + 0, 0, 1, 0, 0, 10, + 242, 0, 16, 0, 3, 0, + 0, 0, 70, 14, 16, 0, + 3, 0, 0, 0, 2, 64, + 0, 0, 0, 255, 0, 255, + 0, 255, 0, 255, 0, 255, + 0, 255, 0, 255, 0, 255, + 85, 0, 0, 10, 242, 0, + 16, 0, 4, 0, 0, 0, + 70, 14, 16, 0, 1, 0, + 0, 0, 2, 64, 0, 0, + 8, 0, 0, 0, 8, 0, + 0, 0, 8, 0, 0, 0, + 8, 0, 0, 0, 1, 0, 0, 10, 242, 0, 16, 0, 4, 0, 0, 0, 70, 14, + 16, 0, 4, 0, 0, 0, + 2, 64, 0, 0, 255, 0, + 255, 0, 255, 0, 255, 0, + 255, 0, 255, 0, 255, 0, + 255, 0, 30, 0, 0, 7, + 242, 0, 16, 0, 1, 0, + 0, 0, 70, 14, 16, 0, + 3, 0, 0, 0, 70, 14, + 16, 0, 4, 0, 0, 0, + 21, 0, 0, 1, 31, 0, + 4, 3, 26, 0, 16, 0, + 2, 0, 0, 0, 85, 0, + 0, 10, 242, 0, 16, 0, + 3, 0, 0, 0, 70, 14, + 16, 0, 1, 0, 0, 0, + 2, 64, 0, 0, 16, 0, + 0, 0, 16, 0, 0, 0, + 16, 0, 0, 0, 16, 0, + 0, 0, 140, 0, 0, 17, + 242, 0, 16, 0, 1, 0, + 0, 0, 2, 64, 0, 0, + 16, 0, 0, 0, 16, 0, + 0, 0, 16, 0, 0, 0, + 16, 0, 0, 0, 2, 64, + 0, 0, 16, 0, 0, 0, + 16, 0, 0, 0, 16, 0, + 0, 0, 16, 0, 0, 0, + 70, 14, 16, 0, 1, 0, + 0, 0, 70, 14, 16, 0, + 3, 0, 0, 0, 21, 0, + 0, 1, 85, 0, 0, 10, + 194, 0, 16, 0, 2, 0, + 0, 0, 6, 4, 16, 0, + 1, 0, 0, 0, 2, 64, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 16, 0, + 0, 0, 16, 0, 0, 0, + 140, 0, 0, 20, 242, 0, 16, 0, 3, 0, 0, 0, + 2, 64, 0, 0, 8, 0, + 0, 0, 8, 0, 0, 0, + 8, 0, 0, 0, 8, 0, + 0, 0, 2, 64, 0, 0, + 16, 0, 0, 0, 16, 0, + 0, 0, 16, 0, 0, 0, + 16, 0, 0, 0, 6, 5, + 16, 0, 1, 0, 0, 0, + 2, 64, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 140, 0, 0, 17, + 242, 0, 16, 0, 3, 0, + 0, 0, 2, 64, 0, 0, + 8, 0, 0, 0, 8, 0, + 0, 0, 8, 0, 0, 0, + 8, 0, 0, 0, 2, 64, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 166, 15, 16, 0, 2, 0, + 0, 0, 70, 14, 16, 0, + 3, 0, 0, 0, 30, 0, + 0, 10, 242, 0, 16, 0, + 3, 0, 0, 0, 70, 14, + 16, 0, 3, 0, 0, 0, + 2, 64, 0, 0, 0, 0, + 0, 255, 0, 0, 0, 255, + 0, 0, 0, 255, 0, 0, + 0, 255, 1, 0, 0, 10, + 82, 0, 16, 0, 4, 0, + 0, 0, 6, 1, 16, 0, + 1, 0, 0, 0, 2, 64, + 0, 0, 0, 255, 0, 0, + 0, 0, 0, 0, 0, 255, + 0, 0, 0, 0, 0, 0, + 1, 0, 0, 10, 162, 0, + 16, 0, 4, 0, 0, 0, + 166, 14, 16, 0, 2, 0, + 0, 0, 2, 64, 0, 0, + 0, 0, 0, 0, 0, 255, + 0, 0, 0, 0, 0, 0, + 0, 255, 0, 0, 30, 0, + 0, 7, 242, 0, 16, 0, + 3, 0, 0, 0, 70, 14, + 16, 0, 3, 0, 0, 0, + 70, 14, 16, 0, 4, 0, + 0, 0, 85, 0, 0, 10, + 50, 0, 16, 0, 1, 0, + 0, 0, 230, 10, 16, 0, + 1, 0, 0, 0, 2, 64, + 0, 0, 16, 0, 0, 0, + 16, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 140, 0, 0, 20, 242, 0, + 16, 0, 4, 0, 0, 0, + 2, 64, 0, 0, 8, 0, + 0, 0, 8, 0, 0, 0, + 8, 0, 0, 0, 8, 0, + 0, 0, 2, 64, 0, 0, + 16, 0, 0, 0, 16, 0, + 0, 0, 16, 0, 0, 0, + 16, 0, 0, 0, 166, 15, + 16, 0, 1, 0, 0, 0, + 2, 64, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 140, 0, 0, 17, + 242, 0, 16, 0, 4, 0, + 0, 0, 2, 64, 0, 0, + 8, 0, 0, 0, 8, 0, + 0, 0, 8, 0, 0, 0, + 8, 0, 0, 0, 2, 64, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 6, 5, 16, 0, 1, 0, + 0, 0, 70, 14, 16, 0, + 4, 0, 0, 0, 30, 0, + 0, 10, 242, 0, 16, 0, + 4, 0, 0, 0, 70, 14, + 16, 0, 4, 0, 0, 0, + 2, 64, 0, 0, 0, 0, + 0, 255, 0, 0, 0, 255, + 0, 0, 0, 255, 0, 0, + 0, 255, 1, 0, 0, 10, + 242, 0, 16, 0, 5, 0, + 0, 0, 38, 7, 16, 0, + 1, 0, 0, 0, 2, 64, + 0, 0, 0, 255, 0, 0, + 0, 255, 0, 0, 0, 255, + 0, 0, 0, 255, 0, 0, + 30, 0, 0, 7, 242, 0, + 16, 0, 1, 0, 0, 0, + 70, 14, 16, 0, 4, 0, + 0, 0, 70, 14, 16, 0, + 5, 0, 0, 0, 164, 0, + 0, 8, 242, 224, 33, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 86, 5, 16, 0, + 0, 0, 0, 0, 70, 14, + 16, 0, 3, 0, 0, 0, + 30, 0, 0, 10, 114, 0, + 16, 0, 3, 0, 0, 0, + 86, 5, 16, 0, 0, 0, + 0, 0, 2, 64, 0, 0, + 1, 0, 0, 0, 2, 0, + 0, 0, 3, 0, 0, 0, + 0, 0, 0, 0, 164, 0, + 0, 8, 242, 224, 33, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 6, 0, 16, 0, + 3, 0, 0, 0, 70, 14, + 16, 0, 1, 0, 0, 0, + 31, 0, 4, 3, 42, 0, + 16, 0, 0, 0, 0, 0, + 54, 0, 0, 5, 66, 0, + 16, 0, 0, 0, 0, 0, + 1, 64, 0, 0, 32, 0, + 0, 0, 18, 0, 0, 1, + 54, 0, 0, 5, 66, 0, + 16, 0, 0, 0, 0, 0, + 1, 64, 0, 0, 16, 0, + 0, 0, 21, 0, 0, 1, + 85, 0, 0, 7, 66, 0, + 16, 0, 0, 0, 0, 0, + 42, 0, 16, 0, 0, 0, + 0, 0, 1, 64, 0, 0, + 4, 0, 0, 0, 30, 0, + 0, 7, 18, 0, 16, 0, + 0, 0, 0, 0, 42, 0, + 16, 0, 0, 0, 0, 0, + 10, 0, 16, 0, 0, 0, + 0, 0, 45, 0, 0, 8, + 242, 0, 16, 0, 1, 0, + 0, 0, 6, 0, 16, 0, + 0, 0, 0, 0, 70, 126, + 32, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 31, 0, + 4, 3, 10, 0, 16, 0, + 2, 0, 0, 0, 41, 0, + 0, 10, 242, 0, 16, 0, + 4, 0, 0, 0, 70, 14, + 16, 0, 1, 0, 0, 0, 2, 64, 0, 0, 8, 0, 0, 0, 8, 0, 0, 0, 8, 0, 0, 0, 8, 0, @@ -893,7 +1036,7 @@ const BYTE texture_load_gbgr8_grgb8_scaled_cs[] = 0, 255, 0, 255, 0, 255, 85, 0, 0, 10, 242, 0, 16, 0, 5, 0, 0, 0, - 70, 14, 16, 0, 3, 0, + 70, 14, 16, 0, 1, 0, 0, 0, 2, 64, 0, 0, 8, 0, 0, 0, 8, 0, 0, 0, 8, 0, 0, 0, @@ -905,21 +1048,21 @@ const BYTE texture_load_gbgr8_grgb8_scaled_cs[] = 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 30, 0, 0, 7, - 242, 0, 16, 0, 3, 0, + 242, 0, 16, 0, 1, 0, 0, 0, 70, 14, 16, 0, 4, 0, 0, 0, 70, 14, 16, 0, 5, 0, 0, 0, 21, 0, 0, 1, 31, 0, - 4, 3, 58, 0, 16, 0, - 0, 0, 0, 0, 85, 0, + 4, 3, 26, 0, 16, 0, + 2, 0, 0, 0, 85, 0, 0, 10, 242, 0, 16, 0, - 4, 0, 0, 0, 70, 14, - 16, 0, 3, 0, 0, 0, + 2, 0, 0, 0, 70, 14, + 16, 0, 1, 0, 0, 0, 2, 64, 0, 0, 16, 0, 0, 0, 16, 0, 0, 0, 16, 0, 0, 0, 16, 0, 0, 0, 140, 0, 0, 17, - 242, 0, 16, 0, 3, 0, + 242, 0, 16, 0, 1, 0, 0, 0, 2, 64, 0, 0, 16, 0, 0, 0, 16, 0, 0, 0, 16, 0, 0, 0, @@ -927,254 +1070,147 @@ const BYTE texture_load_gbgr8_grgb8_scaled_cs[] = 0, 0, 16, 0, 0, 0, 16, 0, 0, 0, 16, 0, 0, 0, 16, 0, 0, 0, - 70, 14, 16, 0, 3, 0, + 70, 14, 16, 0, 1, 0, 0, 0, 70, 14, 16, 0, - 4, 0, 0, 0, 21, 0, - 0, 1, 1, 0, 0, 10, - 242, 0, 16, 0, 4, 0, - 0, 0, 70, 14, 16, 0, - 3, 0, 0, 0, 2, 64, - 0, 0, 255, 0, 255, 0, - 255, 0, 255, 0, 255, 0, - 255, 0, 255, 0, 255, 0, - 41, 0, 0, 10, 242, 0, - 16, 0, 5, 0, 0, 0, - 70, 14, 16, 0, 3, 0, + 2, 0, 0, 0, 21, 0, + 0, 1, 85, 0, 0, 10, + 82, 0, 16, 0, 0, 0, + 0, 0, 6, 1, 16, 0, + 1, 0, 0, 0, 2, 64, + 0, 0, 16, 0, 0, 0, + 0, 0, 0, 0, 16, 0, + 0, 0, 0, 0, 0, 0, + 140, 0, 0, 20, 242, 0, + 16, 0, 2, 0, 0, 0, + 2, 64, 0, 0, 8, 0, + 0, 0, 8, 0, 0, 0, + 8, 0, 0, 0, 8, 0, 0, 0, 2, 64, 0, 0, 16, 0, 0, 0, 16, 0, 0, 0, 16, 0, 0, 0, - 16, 0, 0, 0, 140, 0, - 0, 17, 242, 0, 16, 0, - 4, 0, 0, 0, 2, 64, - 0, 0, 24, 0, 0, 0, - 24, 0, 0, 0, 24, 0, - 0, 0, 24, 0, 0, 0, + 16, 0, 0, 0, 6, 5, + 16, 0, 1, 0, 0, 0, 2, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 70, 14, 16, 0, - 4, 0, 0, 0, 70, 14, - 16, 0, 5, 0, 0, 0, - 85, 0, 0, 10, 242, 0, - 16, 0, 3, 0, 0, 0, - 70, 14, 16, 0, 3, 0, - 0, 0, 2, 64, 0, 0, - 16, 0, 0, 0, 16, 0, - 0, 0, 16, 0, 0, 0, - 16, 0, 0, 0, 1, 0, - 0, 10, 242, 0, 16, 0, - 3, 0, 0, 0, 70, 14, - 16, 0, 3, 0, 0, 0, - 2, 64, 0, 0, 0, 255, - 0, 0, 0, 255, 0, 0, - 0, 255, 0, 0, 0, 255, - 0, 0, 30, 0, 0, 7, - 242, 0, 16, 0, 3, 0, - 0, 0, 70, 14, 16, 0, - 3, 0, 0, 0, 70, 14, - 16, 0, 4, 0, 0, 0, - 164, 0, 0, 8, 242, 224, - 33, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 86, 5, - 16, 0, 0, 0, 0, 0, - 70, 14, 16, 0, 3, 0, - 0, 0, 30, 0, 0, 7, - 66, 0, 16, 0, 1, 0, - 0, 0, 26, 0, 16, 0, - 0, 0, 0, 0, 1, 64, - 0, 0, 1, 0, 0, 0, - 79, 0, 0, 7, 130, 0, - 16, 0, 1, 0, 0, 0, - 1, 64, 0, 0, 1, 0, - 0, 0, 10, 0, 16, 0, - 1, 0, 0, 0, 31, 0, - 4, 3, 58, 0, 16, 0, - 1, 0, 0, 0, 78, 0, - 0, 8, 130, 0, 16, 0, - 1, 0, 0, 0, 0, 208, - 0, 0, 10, 0, 16, 0, - 2, 0, 0, 0, 10, 0, - 16, 0, 1, 0, 0, 0, - 35, 0, 0, 10, 130, 0, - 16, 0, 1, 0, 0, 0, - 58, 0, 16, 128, 65, 0, - 0, 0, 1, 0, 0, 0, - 10, 0, 16, 0, 1, 0, - 0, 0, 10, 0, 16, 0, - 2, 0, 0, 0, 30, 0, - 0, 7, 18, 0, 16, 0, - 2, 0, 0, 0, 58, 0, - 16, 0, 1, 0, 0, 0, - 1, 64, 0, 0, 1, 0, - 0, 0, 32, 0, 0, 7, - 18, 0, 16, 0, 2, 0, - 0, 0, 10, 0, 16, 0, - 1, 0, 0, 0, 10, 0, - 16, 0, 2, 0, 0, 0, - 31, 0, 4, 3, 10, 0, - 16, 0, 2, 0, 0, 0, - 41, 0, 0, 7, 18, 0, - 16, 0, 1, 0, 0, 0, - 10, 0, 16, 0, 1, 0, - 0, 0, 1, 64, 0, 0, - 5, 0, 0, 0, 41, 0, - 0, 7, 130, 0, 16, 0, - 1, 0, 0, 0, 58, 0, - 16, 0, 1, 0, 0, 0, - 1, 64, 0, 0, 4, 0, - 0, 0, 30, 0, 0, 8, - 18, 0, 16, 0, 1, 0, - 0, 0, 58, 0, 16, 128, - 65, 0, 0, 0, 1, 0, - 0, 0, 10, 0, 16, 0, - 1, 0, 0, 0, 18, 0, - 0, 1, 54, 0, 0, 5, - 18, 0, 16, 0, 1, 0, - 0, 0, 1, 64, 0, 0, - 16, 0, 0, 0, 21, 0, - 0, 1, 18, 0, 0, 1, - 54, 0, 0, 5, 18, 0, - 16, 0, 1, 0, 0, 0, - 1, 64, 0, 0, 32, 0, - 0, 0, 21, 0, 0, 1, - 38, 0, 0, 8, 0, 208, - 0, 0, 18, 0, 16, 0, - 1, 0, 0, 0, 26, 0, - 16, 0, 1, 0, 0, 0, - 10, 0, 16, 0, 1, 0, - 0, 0, 85, 0, 0, 7, - 18, 0, 16, 0, 1, 0, - 0, 0, 10, 0, 16, 0, - 1, 0, 0, 0, 1, 64, - 0, 0, 4, 0, 0, 0, - 30, 0, 0, 7, 18, 0, - 16, 0, 0, 0, 0, 0, - 10, 0, 16, 0, 0, 0, - 0, 0, 10, 0, 16, 0, - 1, 0, 0, 0, 45, 0, - 0, 8, 242, 0, 16, 0, - 2, 0, 0, 0, 6, 0, - 16, 0, 0, 0, 0, 0, - 70, 126, 32, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 31, 0, 4, 3, 42, 0, - 16, 0, 0, 0, 0, 0, - 41, 0, 0, 10, 242, 0, - 16, 0, 3, 0, 0, 0, - 70, 14, 16, 0, 2, 0, - 0, 0, 2, 64, 0, 0, - 8, 0, 0, 0, 8, 0, - 0, 0, 8, 0, 0, 0, - 8, 0, 0, 0, 1, 0, - 0, 10, 242, 0, 16, 0, - 3, 0, 0, 0, 70, 14, - 16, 0, 3, 0, 0, 0, - 2, 64, 0, 0, 0, 255, - 0, 255, 0, 255, 0, 255, - 0, 255, 0, 255, 0, 255, - 0, 255, 85, 0, 0, 10, - 242, 0, 16, 0, 4, 0, - 0, 0, 70, 14, 16, 0, - 2, 0, 0, 0, 2, 64, - 0, 0, 8, 0, 0, 0, - 8, 0, 0, 0, 8, 0, - 0, 0, 8, 0, 0, 0, - 1, 0, 0, 10, 242, 0, - 16, 0, 4, 0, 0, 0, - 70, 14, 16, 0, 4, 0, - 0, 0, 2, 64, 0, 0, - 255, 0, 255, 0, 255, 0, - 255, 0, 255, 0, 255, 0, - 255, 0, 255, 0, 30, 0, - 0, 7, 242, 0, 16, 0, - 2, 0, 0, 0, 70, 14, - 16, 0, 3, 0, 0, 0, - 70, 14, 16, 0, 4, 0, - 0, 0, 21, 0, 0, 1, - 31, 0, 4, 3, 58, 0, - 16, 0, 0, 0, 0, 0, - 85, 0, 0, 10, 242, 0, - 16, 0, 3, 0, 0, 0, - 70, 14, 16, 0, 2, 0, - 0, 0, 2, 64, 0, 0, - 16, 0, 0, 0, 16, 0, - 0, 0, 16, 0, 0, 0, - 16, 0, 0, 0, 140, 0, - 0, 17, 242, 0, 16, 0, - 2, 0, 0, 0, 2, 64, - 0, 0, 16, 0, 0, 0, - 16, 0, 0, 0, 16, 0, - 0, 0, 16, 0, 0, 0, - 2, 64, 0, 0, 16, 0, - 0, 0, 16, 0, 0, 0, - 16, 0, 0, 0, 16, 0, - 0, 0, 70, 14, 16, 0, - 2, 0, 0, 0, 70, 14, - 16, 0, 3, 0, 0, 0, - 21, 0, 0, 1, 1, 0, - 0, 10, 242, 0, 16, 0, - 3, 0, 0, 0, 70, 14, - 16, 0, 2, 0, 0, 0, - 2, 64, 0, 0, 255, 0, - 255, 0, 255, 0, 255, 0, - 255, 0, 255, 0, 255, 0, - 255, 0, 41, 0, 0, 10, - 242, 0, 16, 0, 4, 0, - 0, 0, 70, 14, 16, 0, - 2, 0, 0, 0, 2, 64, - 0, 0, 16, 0, 0, 0, - 16, 0, 0, 0, 16, 0, - 0, 0, 16, 0, 0, 0, - 140, 0, 0, 17, 242, 0, - 16, 0, 3, 0, 0, 0, - 2, 64, 0, 0, 24, 0, - 0, 0, 24, 0, 0, 0, - 24, 0, 0, 0, 24, 0, - 0, 0, 2, 64, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 70, 14, - 16, 0, 3, 0, 0, 0, - 70, 14, 16, 0, 4, 0, - 0, 0, 85, 0, 0, 10, + 0, 0, 140, 0, 0, 17, 242, 0, 16, 0, 2, 0, - 0, 0, 70, 14, 16, 0, - 2, 0, 0, 0, 2, 64, - 0, 0, 16, 0, 0, 0, - 16, 0, 0, 0, 16, 0, - 0, 0, 16, 0, 0, 0, - 1, 0, 0, 10, 242, 0, - 16, 0, 2, 0, 0, 0, - 70, 14, 16, 0, 2, 0, 0, 0, 2, 64, 0, 0, + 8, 0, 0, 0, 8, 0, + 0, 0, 8, 0, 0, 0, + 8, 0, 0, 0, 2, 64, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 6, 10, 16, 0, 0, 0, + 0, 0, 70, 14, 16, 0, + 2, 0, 0, 0, 30, 0, + 0, 10, 242, 0, 16, 0, + 2, 0, 0, 0, 70, 14, + 16, 0, 2, 0, 0, 0, + 2, 64, 0, 0, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, + 0, 255, 1, 0, 0, 10, + 82, 0, 16, 0, 4, 0, + 0, 0, 6, 1, 16, 0, + 1, 0, 0, 0, 2, 64, + 0, 0, 0, 255, 0, 0, + 0, 0, 0, 0, 0, 255, + 0, 0, 0, 0, 0, 0, + 1, 0, 0, 10, 162, 0, + 16, 0, 4, 0, 0, 0, + 6, 8, 16, 0, 0, 0, + 0, 0, 2, 64, 0, 0, + 0, 0, 0, 0, 0, 255, + 0, 0, 0, 0, 0, 0, 0, 255, 0, 0, 30, 0, 0, 7, 242, 0, 16, 0, 2, 0, 0, 0, 70, 14, 16, 0, 2, 0, 0, 0, - 70, 14, 16, 0, 3, 0, + 70, 14, 16, 0, 4, 0, + 0, 0, 85, 0, 0, 10, + 82, 0, 16, 0, 0, 0, + 0, 0, 166, 11, 16, 0, + 1, 0, 0, 0, 2, 64, + 0, 0, 16, 0, 0, 0, + 0, 0, 0, 0, 16, 0, + 0, 0, 0, 0, 0, 0, + 140, 0, 0, 20, 242, 0, + 16, 0, 4, 0, 0, 0, + 2, 64, 0, 0, 8, 0, + 0, 0, 8, 0, 0, 0, + 8, 0, 0, 0, 8, 0, + 0, 0, 2, 64, 0, 0, + 16, 0, 0, 0, 16, 0, + 0, 0, 16, 0, 0, 0, + 16, 0, 0, 0, 166, 15, + 16, 0, 1, 0, 0, 0, + 2, 64, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 140, 0, 0, 17, + 242, 0, 16, 0, 4, 0, + 0, 0, 2, 64, 0, 0, + 8, 0, 0, 0, 8, 0, + 0, 0, 8, 0, 0, 0, + 8, 0, 0, 0, 2, 64, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 6, 10, 16, 0, 0, 0, + 0, 0, 70, 14, 16, 0, + 4, 0, 0, 0, 30, 0, + 0, 10, 242, 0, 16, 0, + 4, 0, 0, 0, 70, 14, + 16, 0, 4, 0, 0, 0, + 2, 64, 0, 0, 0, 0, + 0, 255, 0, 0, 0, 255, + 0, 0, 0, 255, 0, 0, + 0, 255, 1, 0, 0, 10, + 82, 0, 16, 0, 1, 0, + 0, 0, 166, 11, 16, 0, + 1, 0, 0, 0, 2, 64, + 0, 0, 0, 255, 0, 0, + 0, 0, 0, 0, 0, 255, + 0, 0, 0, 0, 0, 0, + 1, 0, 0, 10, 162, 0, + 16, 0, 1, 0, 0, 0, + 6, 8, 16, 0, 0, 0, + 0, 0, 2, 64, 0, 0, + 0, 0, 0, 0, 0, 255, + 0, 0, 0, 0, 0, 0, + 0, 255, 0, 0, 30, 0, + 0, 7, 242, 0, 16, 0, + 1, 0, 0, 0, 70, 14, + 16, 0, 1, 0, 0, 0, + 70, 14, 16, 0, 4, 0, 0, 0, 164, 0, 0, 8, 242, 224, 33, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 166, 10, 16, 0, 1, 0, + 86, 5, 16, 0, 3, 0, 0, 0, 70, 14, 16, 0, - 2, 0, 0, 0, 62, 0, - 0, 1, 83, 84, 65, 84, - 148, 0, 0, 0, 137, 0, - 0, 0, 6, 0, 0, 0, - 0, 0, 0, 0, 1, 0, + 2, 0, 0, 0, 164, 0, + 0, 8, 242, 224, 33, 0, 0, 0, 0, 0, 0, 0, - 50, 0, 0, 0, 31, 0, - 0, 0, 5, 0, 0, 0, - 8, 0, 0, 0, 0, 0, + 0, 0, 166, 10, 16, 0, + 3, 0, 0, 0, 70, 14, + 16, 0, 1, 0, 0, 0, + 62, 0, 0, 1, 83, 84, + 65, 84, 148, 0, 0, 0, + 136, 0, 0, 0, 6, 0, + 0, 0, 0, 0, 0, 0, + 1, 0, 0, 0, 0, 0, + 0, 0, 43, 0, 0, 0, + 33, 0, 0, 0, 5, 0, + 0, 0, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, + 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 4, 0, 0, 0, + 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, @@ -1185,6 +1221,6 @@ const BYTE texture_load_gbgr8_grgb8_scaled_cs[] = 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 2, 0, - 0, 0 + 0, 0, 0, 0, 0, 0, + 4, 0, 0, 0 }; diff --git a/src/xenia/gpu/shaders/bytecode/d3d12_5_1/texture_load_bgrg8_rgbg8_scaled_cs.h b/src/xenia/gpu/shaders/bytecode/d3d12_5_1/texture_load_gbgr8_rgba8_cs.h similarity index 56% rename from src/xenia/gpu/shaders/bytecode/d3d12_5_1/texture_load_bgrg8_rgbg8_scaled_cs.h rename to src/xenia/gpu/shaders/bytecode/d3d12_5_1/texture_load_gbgr8_rgba8_cs.h index 9f3e10d09..a25af7173 100644 --- a/src/xenia/gpu/shaders/bytecode/d3d12_5_1/texture_load_bgrg8_rgbg8_scaled_cs.h +++ b/src/xenia/gpu/shaders/bytecode/d3d12_5_1/texture_load_gbgr8_rgba8_cs.h @@ -56,146 +56,154 @@ or r0.y, r0.z, r0.y if_nz r0.y ret endif -ishl r0.y, r0.x, l(2) +ishl r0.y, r0.x, l(3) imad r0.z, vThreadID.z, CB0[0][1].y, vThreadID.y imad r0.y, r0.z, CB0[0][2].x, r0.y iadd r0.y, r0.y, CB0[0][1].w -and r0.z, CB0[0][0].x, l(2) -ubfe r1.xyz, l(2, 2, 2, 0), l(4, 6, 2, 0), CB0[0][0].xxxx -ushr r2.x, r0.x, l(2) -mov r2.y, vThreadID.y -udiv r0.xw, null, r2.xxxy, r1.xxxy -ishl r1.w, r0.x, l(2) +and r0.z, CB0[0][0].x, l(1) if_nz r0.z - ishr r2.zw, r0.wwww, l(0, 0, 4, 3) - ishr r0.z, vThreadID.z, l(2) - ushr r3.xy, CB0[0][0].wzww, l(4, 5, 0, 0) - imad r2.z, r0.z, r3.x, r2.z - ibfe r3.xz, l(27, 0, 29, 0), l(3, 0, 1, 0), r0.xxxx - imad r2.z, r2.z, r3.y, r3.x - ishl r3.x, r0.w, l(10) - and r3.x, r3.x, l(6144) - bfi r3.x, l(3), l(8), r1.w, r3.x - ishr r3.x, r3.x, l(6) - iadd r0.z, r0.z, r2.w - bfi r2.w, l(1), l(1), r0.z, l(0) - iadd r2.w, r2.w, r3.z - bfi r2.w, l(2), l(1), r2.w, l(0) - bfi r0.z, l(1), l(0), r0.z, r2.w - bfi r2.zw, l(0, 0, 20, 20), l(0, 0, 10, 13), r2.zzzz, l(0, 0, 0, 0) - imad r2.zw, r3.xxxx, l(0, 0, 2, 16), r2.zzzw - bfi r2.zw, l(0, 0, 2, 2), l(0, 0, 8, 11), vThreadID.zzzz, r2.zzzw - bfi r3.x, l(1), l(4), r0.w, l(0) - ubfe r3.y, l(3), l(6), r2.z - and r3.z, r0.z, l(6) - bfi r0.z, l(1), l(8), r0.z, l(0) - imad r0.z, r3.y, l(32), r0.z - imad r0.z, r3.z, l(4), r0.z - bfi r2.zw, l(0, 0, 5, 5), l(0, 0, 0, 3), r3.xxxx, r2.zzzw - bfi r0.z, l(9), l(3), r0.z, r2.w - bfi r0.z, l(6), l(0), r2.z, r0.z -else - ibfe r2.zw, l(0, 0, 27, 29), l(0, 0, 3, 1), r0.xxxx - ishr r3.xy, r0.wwww, l(5, 2, 0, 0) - ushr r3.z, CB0[0][0].z, l(5) - imad r2.z, r3.x, r3.z, r2.z - ishl r3.xz, r0.wwww, l(5, 0, 7, 0) - and r3.xz, r3.xxzx, l(448, 0, 2048, 0) - bfi r3.w, l(3), l(3), r1.w, r3.x - bfi r3.w, l(23), l(9), r2.z, r3.w - bfi r4.x, l(1), l(4), r0.w, l(0) - iadd r3.w, r3.w, r4.x - ishl r4.yz, r3.xxxx, l(0, 3, 2, 0) - bfi r4.yz, l(0, 3, 3, 0), l(0, 6, 5, 0), r1.wwww, r4.yyzy - bfi r4.yz, l(0, 23, 23, 0), l(0, 12, 11, 0), r2.zzzz, r4.yyzy - imad r4.xy, r4.xxxx, l(8, 4, 0, 0), r4.yzyy - bfi r1.w, l(12), l(0), r3.z, r4.x - and r2.z, r4.y, l(1792) - iadd r1.w, r1.w, r2.z - and r2.z, r3.y, l(2) - iadd r2.z, r2.w, r2.z - bfi r2.z, l(2), l(6), r2.z, l(0) - iadd r1.w, r1.w, r2.z - bfi r0.z, l(6), l(0), r3.w, r1.w -endif -imad r0.xw, -r0.xxxw, r1.xxxy, r2.xxxy -imul null, r1.w, r1.y, r1.x -imad r0.x, r0.x, r1.y, r0.w -ishl r0.x, r0.x, l(4) -imad r0.x, r0.z, r1.w, r0.x -iadd r0.x, r0.x, CB0[0][0].y -ushr r0.xy, r0.xyxx, l(4, 4, 0, 0) -ld r3.xyzw, r0.xxxx, T0[0].xyzw -ieq r2.yzw, r1.zzzz, l(0, 1, 2, 3) -or r0.zw, r2.zzzw, r2.yyyz -if_nz r0.z - ishl r4.xyzw, r3.xyzw, l(8, 8, 8, 8) - and r4.xyzw, r4.xyzw, l(0xff00ff00, 0xff00ff00, 0xff00ff00, 0xff00ff00) - ushr r5.xyzw, r3.xyzw, l(8, 8, 8, 8) - and r5.xyzw, r5.xyzw, l(0x00ff00ff, 0x00ff00ff, 0x00ff00ff, 0x00ff00ff) - iadd r3.xyzw, r4.xyzw, r5.xyzw -endif -if_nz r0.w - ushr r4.xyzw, r3.xyzw, l(16, 16, 16, 16) - bfi r3.xyzw, l(16, 16, 16, 16), l(16, 16, 16, 16), r3.xyzw, r4.xyzw -endif -and r4.xyzw, r3.xyzw, l(0xff00ff00, 0xff00ff00, 0xff00ff00, 0xff00ff00) -bfi r4.xyzw, l(8, 8, 8, 8), l(16, 16, 16, 16), r3.xyzw, r4.xyzw -ubfe r3.xyzw, l(8, 8, 8, 8), l(16, 16, 16, 16), r3.xyzw -iadd r3.xyzw, r4.xyzw, r3.xyzw -store_uav_typed U0[0].xyzw, r0.yyyy, r3.xyzw -iadd r1.z, r0.y, l(1) -ult r1.w, l(1), r1.x -if_nz r1.w - udiv r1.w, null, r2.x, r1.x - imad r1.w, -r1.w, r1.x, r2.x - iadd r2.x, r1.w, l(1) - ieq r2.x, r1.x, r2.x - if_nz r2.x - ishl r1.x, r1.x, l(5) - ishl r1.w, r1.w, l(4) - iadd r1.x, -r1.w, r1.x + and r0.w, CB0[0][0].x, l(2) + if_nz r0.w + ishr r1.xyz, vThreadID.yzyy, l(4, 2, 3, 0) + ushr r2.xy, CB0[0][0].wzww, l(4, 5, 0, 0) + imad r0.w, r1.y, r2.x, r1.x + ibfe r1.xw, l(27, 0, 0, 29), l(2, 0, 0, 0), vThreadID.xxxx + imad r0.w, r0.w, r2.y, r1.x + ishl r1.x, vThreadID.y, l(10) + ishr r1.x, r1.x, l(6) + and r1.x, r1.x, l(96) + iadd r1.y, r1.y, r1.z + bfi r1.z, l(1), l(1), r1.y, l(0) + iadd r1.z, r1.z, r1.w + bfi r1.z, l(2), l(1), r1.z, l(0) + bfi r1.y, l(1), l(0), r1.y, r1.z + bfi r1.zw, l(0, 0, 20, 20), l(0, 0, 10, 13), r0.wwww, l(0, 0, 0, 0) + imad r1.xz, r1.xxxx, l(2, 0, 16, 0), r1.zzwz + bfi r1.xz, l(2, 0, 2, 0), l(8, 0, 11, 0), vThreadID.zzzz, r1.xxzx + bfi r0.w, l(1), l(4), vThreadID.y, l(0) + ubfe r1.w, l(3), l(6), r1.x + and r2.x, r1.y, l(6) + bfi r1.y, l(1), l(8), r1.y, l(0) + imad r1.y, r1.w, l(32), r1.y + imad r1.y, r2.x, l(4), r1.y + bfi r1.xz, l(6, 0, 6, 0), l(0, 0, 3, 0), r0.wwww, r1.xxzx + bfi r0.w, l(9), l(3), r1.y, r1.z + bfi r0.w, l(6), l(0), r1.x, r0.w else - mov r1.x, l(16) + ibfe r1.xy, l(27, 29, 0, 0), l(2, 0, 0, 0), vThreadID.xxxx + ishr r1.zw, vThreadID.yyyy, l(0, 0, 5, 2) + ushr r2.x, CB0[0][0].z, l(5) + imad r1.x, r1.z, r2.x, r1.x + ishl r2.xy, vThreadID.yyyy, l(5, 7, 0, 0) + and r2.xy, r2.xyxx, l(448, 2048, 0, 0) + bfi r1.z, l(23), l(9), r1.x, r2.x + bfi r2.z, l(1), l(4), vThreadID.y, l(0) + iadd r1.z, r1.z, r2.z + ishl r2.xw, r2.xxxx, l(3, 0, 0, 2) + bfi r2.xw, l(23, 0, 0, 23), l(12, 0, 0, 11), r1.xxxx, r2.xxxw + imad r2.xz, r2.zzzz, l(8, 0, 4, 0), r2.xxwx + bfi r1.x, l(12), l(0), r2.y, r2.x + and r2.x, r2.z, l(1792) + iadd r1.x, r1.x, r2.x + and r1.w, r1.w, l(2) + iadd r1.y, r1.y, r1.w + bfi r1.y, l(2), l(6), r1.y, l(0) + iadd r1.x, r1.x, r1.y + bfi r0.w, l(6), l(0), r1.z, r1.x endif else - mov r1.x, l(32) + ishl r0.x, r0.x, l(2) + imad r1.x, vThreadID.z, CB0[0][0].w, vThreadID.y + imad r0.w, r1.x, CB0[0][0].z, r0.x endif -imul null, r1.x, r1.y, r1.x -ushr r1.x, r1.x, l(4) -iadd r0.x, r0.x, r1.x -ld r2.xyzw, r0.xxxx, T0[0].xyzw -if_nz r0.z - ishl r3.xyzw, r2.xyzw, l(8, 8, 8, 8) +iadd r0.x, r0.w, CB0[0][0].y +ushr r0.xy, r0.xyxx, l(4, 4, 0, 0) +ubfe r0.w, l(2), l(2), CB0[0][0].x +ld r1.xyzw, r0.xxxx, T0[0].xyzw +ieq r2.xyz, r0.wwww, l(1, 2, 3, 0) +or r2.xy, r2.yzyy, r2.xyxx +if_nz r2.x + ishl r3.xyzw, r1.xyzw, l(8, 8, 8, 8) and r3.xyzw, r3.xyzw, l(0xff00ff00, 0xff00ff00, 0xff00ff00, 0xff00ff00) - ushr r4.xyzw, r2.xyzw, l(8, 8, 8, 8) + ushr r4.xyzw, r1.xyzw, l(8, 8, 8, 8) and r4.xyzw, r4.xyzw, l(0x00ff00ff, 0x00ff00ff, 0x00ff00ff, 0x00ff00ff) - iadd r2.xyzw, r3.xyzw, r4.xyzw + iadd r1.xyzw, r3.xyzw, r4.xyzw endif -if_nz r0.w - ushr r3.xyzw, r2.xyzw, l(16, 16, 16, 16) - bfi r2.xyzw, l(16, 16, 16, 16), l(16, 16, 16, 16), r2.xyzw, r3.xyzw +if_nz r2.y + ushr r3.xyzw, r1.xyzw, l(16, 16, 16, 16) + bfi r1.xyzw, l(16, 16, 16, 16), l(16, 16, 16, 16), r1.xyzw, r3.xyzw endif -and r3.xyzw, r2.xyzw, l(0xff00ff00, 0xff00ff00, 0xff00ff00, 0xff00ff00) -bfi r3.xyzw, l(8, 8, 8, 8), l(16, 16, 16, 16), r2.xyzw, r3.xyzw -ubfe r2.xyzw, l(8, 8, 8, 8), l(16, 16, 16, 16), r2.xyzw -iadd r2.xyzw, r3.xyzw, r2.xyzw -store_uav_typed U0[0].xyzw, r1.zzzz, r2.xyzw +ushr r3.xyzw, r1.xyxy, l(24, 24, 8, 8) +ishl r4.xyzw, r1.xxyy, l(8, 8, 8, 8) +and r4.xyzw, r4.xyzw, l(0x00ff0000, 0x00ff0000, 0x00ff0000, 0x00ff0000) +iadd r4.xyzw, r3.xxyy, r4.xyzw +iadd r4.xyzw, r4.xyzw, l(0xff000000, 0xff000000, 0xff000000, 0xff000000) +bfi r5.xz, l(8, 0, 8, 0), l(8, 0, 8, 0), r1.xxyx, l(0, 0, 0, 0) +and r5.yw, r3.zzzw, l(0, 0x0000ff00, 0, 0x0000ff00) +iadd r3.xyzw, r4.xyzw, r5.xyzw +ushr r4.xyzw, r1.zwzw, l(24, 24, 8, 8) +ishl r5.xyzw, r1.zzww, l(8, 8, 8, 8) +and r5.xyzw, r5.xyzw, l(0x00ff0000, 0x00ff0000, 0x00ff0000, 0x00ff0000) +iadd r5.xyzw, r4.xxyy, r5.xyzw +iadd r5.xyzw, r5.xyzw, l(0xff000000, 0xff000000, 0xff000000, 0xff000000) +bfi r1.xz, l(8, 0, 8, 0), l(8, 0, 8, 0), r1.zzwz, l(0, 0, 0, 0) +and r1.yw, r4.zzzw, l(0, 0x0000ff00, 0, 0x0000ff00) +iadd r1.xyzw, r1.xyzw, r5.xyzw +store_uav_typed U0[0].xyzw, r0.yyyy, r3.xyzw +iadd r3.xyz, r0.yyyy, l(1, 2, 3, 0) +store_uav_typed U0[0].xyzw, r3.xxxx, r1.xyzw +if_nz r0.z + mov r0.z, l(32) +else + mov r0.z, l(16) +endif +ushr r0.z, r0.z, l(4) +iadd r0.x, r0.z, r0.x +ld r1.xyzw, r0.xxxx, T0[0].xyzw +if_nz r2.x + ishl r4.xyzw, r1.xyzw, l(8, 8, 8, 8) + and r4.xyzw, r4.xyzw, l(0xff00ff00, 0xff00ff00, 0xff00ff00, 0xff00ff00) + ushr r5.xyzw, r1.xyzw, l(8, 8, 8, 8) + and r5.xyzw, r5.xyzw, l(0x00ff00ff, 0x00ff00ff, 0x00ff00ff, 0x00ff00ff) + iadd r1.xyzw, r4.xyzw, r5.xyzw +endif +if_nz r2.y + ushr r2.xyzw, r1.xyzw, l(16, 16, 16, 16) + bfi r1.xyzw, l(16, 16, 16, 16), l(16, 16, 16, 16), r1.xyzw, r2.xyzw +endif +ushr r2.xyzw, r1.xyxy, l(24, 24, 8, 8) +ishl r4.xyzw, r1.xxyy, l(8, 8, 8, 8) +and r4.xyzw, r4.xyzw, l(0x00ff0000, 0x00ff0000, 0x00ff0000, 0x00ff0000) +iadd r4.xyzw, r2.xxyy, r4.xyzw +iadd r4.xyzw, r4.xyzw, l(0xff000000, 0xff000000, 0xff000000, 0xff000000) +bfi r5.xz, l(8, 0, 8, 0), l(8, 0, 8, 0), r1.xxyx, l(0, 0, 0, 0) +and r5.yw, r2.zzzw, l(0, 0x0000ff00, 0, 0x0000ff00) +iadd r2.xyzw, r4.xyzw, r5.xyzw +ushr r4.xyzw, r1.zwzw, l(24, 24, 8, 8) +ishl r5.xyzw, r1.zzww, l(8, 8, 8, 8) +and r5.xyzw, r5.xyzw, l(0x00ff0000, 0x00ff0000, 0x00ff0000, 0x00ff0000) +iadd r5.xyzw, r4.xxyy, r5.xyzw +iadd r5.xyzw, r5.xyzw, l(0xff000000, 0xff000000, 0xff000000, 0xff000000) +bfi r1.xz, l(8, 0, 8, 0), l(8, 0, 8, 0), r1.zzwz, l(0, 0, 0, 0) +and r1.yw, r4.zzzw, l(0, 0x0000ff00, 0, 0x0000ff00) +iadd r1.xyzw, r1.xyzw, r5.xyzw +store_uav_typed U0[0].xyzw, r3.yyyy, r2.xyzw +store_uav_typed U0[0].xyzw, r3.zzzz, r1.xyzw ret -// Approximately 133 instruction slots used +// Approximately 141 instruction slots used #endif -const BYTE texture_load_bgrg8_rgbg8_scaled_cs[] = +const BYTE texture_load_gbgr8_rgba8_cs[] = { - 68, 88, 66, 67, 134, 10, - 114, 83, 36, 198, 83, 192, - 97, 89, 130, 125, 237, 158, - 100, 152, 1, 0, 0, 0, - 220, 22, 0, 0, 5, 0, + 68, 88, 66, 67, 66, 234, + 58, 60, 17, 14, 65, 217, + 196, 222, 106, 101, 176, 251, + 140, 191, 1, 0, 0, 0, + 92, 24, 0, 0, 5, 0, 0, 0, 52, 0, 0, 0, 32, 4, 0, 0, 48, 4, 0, 0, 64, 4, 0, 0, - 64, 22, 0, 0, 82, 68, + 192, 23, 0, 0, 82, 68, 69, 70, 228, 3, 0, 0, 1, 0, 0, 0, 252, 0, 0, 0, 3, 0, 0, 0, @@ -369,8 +377,8 @@ const BYTE texture_load_bgrg8_rgbg8_scaled_cs[] = 71, 78, 8, 0, 0, 0, 0, 0, 0, 0, 8, 0, 0, 0, 83, 72, 69, 88, - 248, 17, 0, 0, 81, 0, - 5, 0, 126, 4, 0, 0, + 120, 19, 0, 0, 81, 0, + 5, 0, 222, 4, 0, 0, 106, 8, 0, 1, 89, 0, 0, 7, 70, 142, 48, 0, 0, 0, 0, 0, 0, 0, @@ -415,7 +423,7 @@ const BYTE texture_load_bgrg8_rgbg8_scaled_cs[] = 0, 7, 34, 0, 16, 0, 0, 0, 0, 0, 10, 0, 16, 0, 0, 0, 0, 0, - 1, 64, 0, 0, 2, 0, + 1, 64, 0, 0, 3, 0, 0, 0, 35, 0, 0, 9, 66, 0, 16, 0, 0, 0, 0, 0, 42, 0, 2, 0, @@ -441,481 +449,423 @@ const BYTE texture_load_bgrg8_rgbg8_scaled_cs[] = 48, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 64, 0, 0, - 2, 0, 0, 0, 138, 0, - 0, 17, 114, 0, 16, 0, - 1, 0, 0, 0, 2, 64, - 0, 0, 2, 0, 0, 0, - 2, 0, 0, 0, 2, 0, + 1, 0, 0, 0, 31, 0, + 4, 3, 42, 0, 16, 0, + 0, 0, 0, 0, 1, 0, + 0, 9, 130, 0, 16, 0, + 0, 0, 0, 0, 10, 128, + 48, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 2, 64, 0, 0, 4, 0, - 0, 0, 6, 0, 0, 0, - 2, 0, 0, 0, 0, 0, - 0, 0, 6, 128, 48, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 85, 0, 0, 7, 18, 0, - 16, 0, 2, 0, 0, 0, - 10, 0, 16, 0, 0, 0, 0, 0, 1, 64, 0, 0, - 2, 0, 0, 0, 54, 0, - 0, 4, 34, 0, 16, 0, - 2, 0, 0, 0, 26, 0, - 2, 0, 78, 0, 0, 8, - 146, 0, 16, 0, 0, 0, - 0, 0, 0, 208, 0, 0, - 6, 4, 16, 0, 2, 0, - 0, 0, 6, 4, 16, 0, - 1, 0, 0, 0, 41, 0, - 0, 7, 130, 0, 16, 0, - 1, 0, 0, 0, 10, 0, - 16, 0, 0, 0, 0, 0, - 1, 64, 0, 0, 2, 0, - 0, 0, 31, 0, 4, 3, - 42, 0, 16, 0, 0, 0, - 0, 0, 42, 0, 0, 10, - 194, 0, 16, 0, 2, 0, - 0, 0, 246, 15, 16, 0, - 0, 0, 0, 0, 2, 64, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 4, 0, + 2, 0, 0, 0, 31, 0, + 4, 3, 58, 0, 16, 0, + 0, 0, 0, 0, 42, 0, + 0, 9, 114, 0, 16, 0, + 1, 0, 0, 0, 150, 5, + 2, 0, 2, 64, 0, 0, + 4, 0, 0, 0, 2, 0, 0, 0, 3, 0, 0, 0, - 42, 0, 0, 6, 66, 0, - 16, 0, 0, 0, 0, 0, - 42, 0, 2, 0, 1, 64, - 0, 0, 2, 0, 0, 0, - 85, 0, 0, 12, 50, 0, - 16, 0, 3, 0, 0, 0, - 182, 143, 48, 0, 0, 0, + 0, 0, 0, 0, 85, 0, + 0, 12, 50, 0, 16, 0, + 2, 0, 0, 0, 182, 143, + 48, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 2, 64, - 0, 0, 4, 0, 0, 0, - 5, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 35, 0, 0, 9, 66, 0, - 16, 0, 2, 0, 0, 0, - 42, 0, 16, 0, 0, 0, - 0, 0, 10, 0, 16, 0, - 3, 0, 0, 0, 42, 0, - 16, 0, 2, 0, 0, 0, - 139, 0, 0, 15, 82, 0, - 16, 0, 3, 0, 0, 0, - 2, 64, 0, 0, 27, 0, - 0, 0, 0, 0, 0, 0, - 29, 0, 0, 0, 0, 0, 0, 0, 2, 64, 0, 0, - 3, 0, 0, 0, 0, 0, - 0, 0, 1, 0, 0, 0, - 0, 0, 0, 0, 6, 0, - 16, 0, 0, 0, 0, 0, - 35, 0, 0, 9, 66, 0, - 16, 0, 2, 0, 0, 0, - 42, 0, 16, 0, 2, 0, - 0, 0, 26, 0, 16, 0, - 3, 0, 0, 0, 10, 0, - 16, 0, 3, 0, 0, 0, - 41, 0, 0, 7, 18, 0, - 16, 0, 3, 0, 0, 0, - 58, 0, 16, 0, 0, 0, - 0, 0, 1, 64, 0, 0, - 10, 0, 0, 0, 1, 0, - 0, 7, 18, 0, 16, 0, - 3, 0, 0, 0, 10, 0, - 16, 0, 3, 0, 0, 0, - 1, 64, 0, 0, 0, 24, - 0, 0, 140, 0, 0, 11, - 18, 0, 16, 0, 3, 0, - 0, 0, 1, 64, 0, 0, - 3, 0, 0, 0, 1, 64, - 0, 0, 8, 0, 0, 0, - 58, 0, 16, 0, 1, 0, + 4, 0, 0, 0, 5, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 35, 0, + 0, 9, 130, 0, 16, 0, + 0, 0, 0, 0, 26, 0, + 16, 0, 1, 0, 0, 0, + 10, 0, 16, 0, 2, 0, 0, 0, 10, 0, 16, 0, - 3, 0, 0, 0, 42, 0, + 1, 0, 0, 0, 139, 0, + 0, 14, 146, 0, 16, 0, + 1, 0, 0, 0, 2, 64, + 0, 0, 27, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 29, 0, 0, 0, + 2, 64, 0, 0, 2, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 6, 0, 2, 0, + 35, 0, 0, 9, 130, 0, + 16, 0, 0, 0, 0, 0, + 58, 0, 16, 0, 0, 0, + 0, 0, 26, 0, 16, 0, + 2, 0, 0, 0, 10, 0, + 16, 0, 1, 0, 0, 0, + 41, 0, 0, 6, 18, 0, + 16, 0, 1, 0, 0, 0, + 26, 0, 2, 0, 1, 64, + 0, 0, 10, 0, 0, 0, + 42, 0, 0, 7, 18, 0, + 16, 0, 1, 0, 0, 0, + 10, 0, 16, 0, 1, 0, + 0, 0, 1, 64, 0, 0, + 6, 0, 0, 0, 1, 0, 0, 7, 18, 0, 16, 0, - 3, 0, 0, 0, 10, 0, - 16, 0, 3, 0, 0, 0, - 1, 64, 0, 0, 6, 0, + 1, 0, 0, 0, 10, 0, + 16, 0, 1, 0, 0, 0, + 1, 64, 0, 0, 96, 0, 0, 0, 30, 0, 0, 7, - 66, 0, 16, 0, 0, 0, - 0, 0, 42, 0, 16, 0, - 0, 0, 0, 0, 58, 0, - 16, 0, 2, 0, 0, 0, - 140, 0, 0, 11, 130, 0, - 16, 0, 2, 0, 0, 0, + 34, 0, 16, 0, 1, 0, + 0, 0, 26, 0, 16, 0, + 1, 0, 0, 0, 42, 0, + 16, 0, 1, 0, 0, 0, + 140, 0, 0, 11, 66, 0, + 16, 0, 1, 0, 0, 0, 1, 64, 0, 0, 1, 0, 0, 0, 1, 64, 0, 0, - 1, 0, 0, 0, 42, 0, - 16, 0, 0, 0, 0, 0, + 1, 0, 0, 0, 26, 0, + 16, 0, 1, 0, 0, 0, 1, 64, 0, 0, 0, 0, 0, 0, 30, 0, 0, 7, - 130, 0, 16, 0, 2, 0, - 0, 0, 58, 0, 16, 0, - 2, 0, 0, 0, 42, 0, - 16, 0, 3, 0, 0, 0, - 140, 0, 0, 11, 130, 0, - 16, 0, 2, 0, 0, 0, + 66, 0, 16, 0, 1, 0, + 0, 0, 42, 0, 16, 0, + 1, 0, 0, 0, 58, 0, + 16, 0, 1, 0, 0, 0, + 140, 0, 0, 11, 66, 0, + 16, 0, 1, 0, 0, 0, 1, 64, 0, 0, 2, 0, 0, 0, 1, 64, 0, 0, - 1, 0, 0, 0, 58, 0, - 16, 0, 2, 0, 0, 0, + 1, 0, 0, 0, 42, 0, + 16, 0, 1, 0, 0, 0, 1, 64, 0, 0, 0, 0, 0, 0, 140, 0, 0, 11, - 66, 0, 16, 0, 0, 0, + 34, 0, 16, 0, 1, 0, 0, 0, 1, 64, 0, 0, 1, 0, 0, 0, 1, 64, 0, 0, 0, 0, 0, 0, - 42, 0, 16, 0, 0, 0, - 0, 0, 58, 0, 16, 0, - 2, 0, 0, 0, 140, 0, + 26, 0, 16, 0, 1, 0, + 0, 0, 42, 0, 16, 0, + 1, 0, 0, 0, 140, 0, 0, 20, 194, 0, 16, 0, - 2, 0, 0, 0, 2, 64, + 1, 0, 0, 0, 2, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 20, 0, 0, 0, 20, 0, 0, 0, 2, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 10, 0, 0, 0, 13, 0, - 0, 0, 166, 10, 16, 0, - 2, 0, 0, 0, 2, 64, + 0, 0, 246, 15, 16, 0, + 0, 0, 0, 0, 2, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 35, 0, 0, 12, 194, 0, - 16, 0, 2, 0, 0, 0, - 6, 0, 16, 0, 3, 0, + 35, 0, 0, 12, 82, 0, + 16, 0, 1, 0, 0, 0, + 6, 0, 16, 0, 1, 0, 0, 0, 2, 64, 0, 0, + 2, 0, 0, 0, 0, 0, + 0, 0, 16, 0, 0, 0, + 0, 0, 0, 0, 166, 11, + 16, 0, 1, 0, 0, 0, + 140, 0, 0, 16, 82, 0, + 16, 0, 1, 0, 0, 0, + 2, 64, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 2, 0, 0, 0, - 16, 0, 0, 0, 166, 14, - 16, 0, 2, 0, 0, 0, - 140, 0, 0, 16, 194, 0, - 16, 0, 2, 0, 0, 0, - 2, 64, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 2, 0, 0, 0, 2, 0, + 2, 0, 0, 0, 0, 0, 0, 0, 2, 64, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 8, 0, 0, 0, - 11, 0, 0, 0, 166, 10, - 2, 0, 166, 14, 16, 0, - 2, 0, 0, 0, 140, 0, - 0, 11, 18, 0, 16, 0, - 3, 0, 0, 0, 1, 64, + 8, 0, 0, 0, 0, 0, + 0, 0, 11, 0, 0, 0, + 0, 0, 0, 0, 166, 10, + 2, 0, 6, 2, 16, 0, + 1, 0, 0, 0, 140, 0, + 0, 10, 130, 0, 16, 0, + 0, 0, 0, 0, 1, 64, 0, 0, 1, 0, 0, 0, 1, 64, 0, 0, 4, 0, - 0, 0, 58, 0, 16, 0, - 0, 0, 0, 0, 1, 64, - 0, 0, 0, 0, 0, 0, - 138, 0, 0, 9, 34, 0, - 16, 0, 3, 0, 0, 0, - 1, 64, 0, 0, 3, 0, - 0, 0, 1, 64, 0, 0, - 6, 0, 0, 0, 42, 0, - 16, 0, 2, 0, 0, 0, - 1, 0, 0, 7, 66, 0, - 16, 0, 3, 0, 0, 0, - 42, 0, 16, 0, 0, 0, - 0, 0, 1, 64, 0, 0, - 6, 0, 0, 0, 140, 0, - 0, 11, 66, 0, 16, 0, - 0, 0, 0, 0, 1, 64, - 0, 0, 1, 0, 0, 0, - 1, 64, 0, 0, 8, 0, - 0, 0, 42, 0, 16, 0, - 0, 0, 0, 0, 1, 64, - 0, 0, 0, 0, 0, 0, - 35, 0, 0, 9, 66, 0, - 16, 0, 0, 0, 0, 0, - 26, 0, 16, 0, 3, 0, - 0, 0, 1, 64, 0, 0, - 32, 0, 0, 0, 42, 0, - 16, 0, 0, 0, 0, 0, - 35, 0, 0, 9, 66, 0, - 16, 0, 0, 0, 0, 0, - 42, 0, 16, 0, 3, 0, - 0, 0, 1, 64, 0, 0, - 4, 0, 0, 0, 42, 0, - 16, 0, 0, 0, 0, 0, - 140, 0, 0, 17, 194, 0, - 16, 0, 2, 0, 0, 0, - 2, 64, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 5, 0, 0, 0, 5, 0, - 0, 0, 2, 64, 0, 0, - 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 3, 0, 0, 0, 6, 0, - 16, 0, 3, 0, 0, 0, - 166, 14, 16, 0, 2, 0, - 0, 0, 140, 0, 0, 11, - 66, 0, 16, 0, 0, 0, - 0, 0, 1, 64, 0, 0, - 9, 0, 0, 0, 1, 64, - 0, 0, 3, 0, 0, 0, - 42, 0, 16, 0, 0, 0, - 0, 0, 58, 0, 16, 0, - 2, 0, 0, 0, 140, 0, - 0, 11, 66, 0, 16, 0, - 0, 0, 0, 0, 1, 64, - 0, 0, 6, 0, 0, 0, + 0, 0, 26, 0, 2, 0, 1, 64, 0, 0, 0, 0, - 0, 0, 42, 0, 16, 0, - 2, 0, 0, 0, 42, 0, - 16, 0, 0, 0, 0, 0, - 18, 0, 0, 1, 139, 0, - 0, 15, 194, 0, 16, 0, - 2, 0, 0, 0, 2, 64, + 0, 0, 138, 0, 0, 9, + 130, 0, 16, 0, 1, 0, + 0, 0, 1, 64, 0, 0, + 3, 0, 0, 0, 1, 64, + 0, 0, 6, 0, 0, 0, + 10, 0, 16, 0, 1, 0, + 0, 0, 1, 0, 0, 7, + 18, 0, 16, 0, 2, 0, + 0, 0, 26, 0, 16, 0, + 1, 0, 0, 0, 1, 64, + 0, 0, 6, 0, 0, 0, + 140, 0, 0, 11, 34, 0, + 16, 0, 1, 0, 0, 0, + 1, 64, 0, 0, 1, 0, + 0, 0, 1, 64, 0, 0, + 8, 0, 0, 0, 26, 0, + 16, 0, 1, 0, 0, 0, + 1, 64, 0, 0, 0, 0, + 0, 0, 35, 0, 0, 9, + 34, 0, 16, 0, 1, 0, + 0, 0, 58, 0, 16, 0, + 1, 0, 0, 0, 1, 64, + 0, 0, 32, 0, 0, 0, + 26, 0, 16, 0, 1, 0, + 0, 0, 35, 0, 0, 9, + 34, 0, 16, 0, 1, 0, + 0, 0, 10, 0, 16, 0, + 2, 0, 0, 0, 1, 64, + 0, 0, 4, 0, 0, 0, + 26, 0, 16, 0, 1, 0, + 0, 0, 140, 0, 0, 17, + 82, 0, 16, 0, 1, 0, + 0, 0, 2, 64, 0, 0, + 6, 0, 0, 0, 0, 0, + 0, 0, 6, 0, 0, 0, + 0, 0, 0, 0, 2, 64, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 27, 0, + 0, 0, 0, 0, 3, 0, + 0, 0, 0, 0, 0, 0, + 246, 15, 16, 0, 0, 0, + 0, 0, 6, 2, 16, 0, + 1, 0, 0, 0, 140, 0, + 0, 11, 130, 0, 16, 0, + 0, 0, 0, 0, 1, 64, + 0, 0, 9, 0, 0, 0, + 1, 64, 0, 0, 3, 0, + 0, 0, 26, 0, 16, 0, + 1, 0, 0, 0, 42, 0, + 16, 0, 1, 0, 0, 0, + 140, 0, 0, 11, 130, 0, + 16, 0, 0, 0, 0, 0, + 1, 64, 0, 0, 6, 0, + 0, 0, 1, 64, 0, 0, + 0, 0, 0, 0, 10, 0, + 16, 0, 1, 0, 0, 0, + 58, 0, 16, 0, 0, 0, + 0, 0, 18, 0, 0, 1, + 139, 0, 0, 14, 50, 0, + 16, 0, 1, 0, 0, 0, + 2, 64, 0, 0, 27, 0, 0, 0, 29, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 2, 64, 0, 0, + 2, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 6, 0, + 2, 0, 42, 0, 0, 9, + 194, 0, 16, 0, 1, 0, + 0, 0, 86, 5, 2, 0, 2, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 3, 0, 0, 0, 1, 0, - 0, 0, 6, 0, 16, 0, - 0, 0, 0, 0, 42, 0, - 0, 10, 50, 0, 16, 0, - 3, 0, 0, 0, 246, 15, - 16, 0, 0, 0, 0, 0, - 2, 64, 0, 0, 5, 0, - 0, 0, 2, 0, 0, 0, - 0, 0, 0, 0, 0, 0, + 5, 0, 0, 0, 2, 0, 0, 0, 85, 0, 0, 9, - 66, 0, 16, 0, 3, 0, + 18, 0, 16, 0, 2, 0, 0, 0, 42, 128, 48, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 64, 0, 0, 5, 0, 0, 0, 35, 0, 0, 9, - 66, 0, 16, 0, 2, 0, - 0, 0, 10, 0, 16, 0, - 3, 0, 0, 0, 42, 0, - 16, 0, 3, 0, 0, 0, - 42, 0, 16, 0, 2, 0, - 0, 0, 41, 0, 0, 10, - 82, 0, 16, 0, 3, 0, - 0, 0, 246, 15, 16, 0, - 0, 0, 0, 0, 2, 64, - 0, 0, 5, 0, 0, 0, - 0, 0, 0, 0, 7, 0, - 0, 0, 0, 0, 0, 0, - 1, 0, 0, 10, 82, 0, - 16, 0, 3, 0, 0, 0, - 6, 2, 16, 0, 3, 0, - 0, 0, 2, 64, 0, 0, - 192, 1, 0, 0, 0, 0, - 0, 0, 0, 8, 0, 0, - 0, 0, 0, 0, 140, 0, - 0, 11, 130, 0, 16, 0, - 3, 0, 0, 0, 1, 64, - 0, 0, 3, 0, 0, 0, - 1, 64, 0, 0, 3, 0, - 0, 0, 58, 0, 16, 0, + 18, 0, 16, 0, 1, 0, + 0, 0, 42, 0, 16, 0, 1, 0, 0, 0, 10, 0, - 16, 0, 3, 0, 0, 0, - 140, 0, 0, 11, 130, 0, - 16, 0, 3, 0, 0, 0, + 16, 0, 2, 0, 0, 0, + 10, 0, 16, 0, 1, 0, + 0, 0, 41, 0, 0, 9, + 50, 0, 16, 0, 2, 0, + 0, 0, 86, 5, 2, 0, + 2, 64, 0, 0, 5, 0, + 0, 0, 7, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 1, 0, 0, 10, + 50, 0, 16, 0, 2, 0, + 0, 0, 70, 0, 16, 0, + 2, 0, 0, 0, 2, 64, + 0, 0, 192, 1, 0, 0, + 0, 8, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 140, 0, 0, 11, 66, 0, + 16, 0, 1, 0, 0, 0, 1, 64, 0, 0, 23, 0, 0, 0, 1, 64, 0, 0, - 9, 0, 0, 0, 42, 0, - 16, 0, 2, 0, 0, 0, - 58, 0, 16, 0, 3, 0, - 0, 0, 140, 0, 0, 11, - 18, 0, 16, 0, 4, 0, + 9, 0, 0, 0, 10, 0, + 16, 0, 1, 0, 0, 0, + 10, 0, 16, 0, 2, 0, + 0, 0, 140, 0, 0, 10, + 66, 0, 16, 0, 2, 0, 0, 0, 1, 64, 0, 0, 1, 0, 0, 0, 1, 64, 0, 0, 4, 0, 0, 0, - 58, 0, 16, 0, 0, 0, - 0, 0, 1, 64, 0, 0, - 0, 0, 0, 0, 30, 0, - 0, 7, 130, 0, 16, 0, - 3, 0, 0, 0, 58, 0, - 16, 0, 3, 0, 0, 0, - 10, 0, 16, 0, 4, 0, - 0, 0, 41, 0, 0, 10, - 98, 0, 16, 0, 4, 0, - 0, 0, 6, 0, 16, 0, - 3, 0, 0, 0, 2, 64, + 26, 0, 2, 0, 1, 64, 0, 0, 0, 0, 0, 0, - 3, 0, 0, 0, 2, 0, - 0, 0, 0, 0, 0, 0, - 140, 0, 0, 17, 98, 0, - 16, 0, 4, 0, 0, 0, - 2, 64, 0, 0, 0, 0, - 0, 0, 3, 0, 0, 0, - 3, 0, 0, 0, 0, 0, - 0, 0, 2, 64, 0, 0, - 0, 0, 0, 0, 6, 0, - 0, 0, 5, 0, 0, 0, - 0, 0, 0, 0, 246, 15, + 30, 0, 0, 7, 66, 0, 16, 0, 1, 0, 0, 0, - 86, 6, 16, 0, 4, 0, + 42, 0, 16, 0, 1, 0, + 0, 0, 42, 0, 16, 0, + 2, 0, 0, 0, 41, 0, + 0, 10, 146, 0, 16, 0, + 2, 0, 0, 0, 6, 0, + 16, 0, 2, 0, 0, 0, + 2, 64, 0, 0, 3, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 2, 0, 0, 0, 140, 0, 0, 17, - 98, 0, 16, 0, 4, 0, + 146, 0, 16, 0, 2, 0, 0, 0, 2, 64, 0, 0, - 0, 0, 0, 0, 23, 0, - 0, 0, 23, 0, 0, 0, - 0, 0, 0, 0, 2, 64, + 23, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 12, 0, 0, 0, 11, 0, + 23, 0, 0, 0, 2, 64, + 0, 0, 12, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 166, 10, 16, 0, 2, 0, - 0, 0, 86, 6, 16, 0, - 4, 0, 0, 0, 35, 0, - 0, 12, 50, 0, 16, 0, - 4, 0, 0, 0, 6, 0, - 16, 0, 4, 0, 0, 0, + 0, 0, 11, 0, 0, 0, + 6, 0, 16, 0, 1, 0, + 0, 0, 6, 12, 16, 0, + 2, 0, 0, 0, 35, 0, + 0, 12, 82, 0, 16, 0, + 2, 0, 0, 0, 166, 10, + 16, 0, 2, 0, 0, 0, 2, 64, 0, 0, 8, 0, - 0, 0, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 150, 5, 16, 0, - 4, 0, 0, 0, 140, 0, - 0, 11, 130, 0, 16, 0, + 4, 0, 0, 0, 0, 0, + 0, 0, 6, 3, 16, 0, + 2, 0, 0, 0, 140, 0, + 0, 11, 18, 0, 16, 0, 1, 0, 0, 0, 1, 64, 0, 0, 12, 0, 0, 0, 1, 64, 0, 0, 0, 0, - 0, 0, 42, 0, 16, 0, - 3, 0, 0, 0, 10, 0, - 16, 0, 4, 0, 0, 0, - 1, 0, 0, 7, 66, 0, + 0, 0, 26, 0, 16, 0, + 2, 0, 0, 0, 10, 0, 16, 0, 2, 0, 0, 0, - 26, 0, 16, 0, 4, 0, + 1, 0, 0, 7, 18, 0, + 16, 0, 2, 0, 0, 0, + 42, 0, 16, 0, 2, 0, 0, 0, 1, 64, 0, 0, 0, 7, 0, 0, 30, 0, - 0, 7, 130, 0, 16, 0, - 1, 0, 0, 0, 58, 0, + 0, 7, 18, 0, 16, 0, + 1, 0, 0, 0, 10, 0, 16, 0, 1, 0, 0, 0, - 42, 0, 16, 0, 2, 0, + 10, 0, 16, 0, 2, 0, 0, 0, 1, 0, 0, 7, - 66, 0, 16, 0, 2, 0, - 0, 0, 26, 0, 16, 0, - 3, 0, 0, 0, 1, 64, + 130, 0, 16, 0, 1, 0, + 0, 0, 58, 0, 16, 0, + 1, 0, 0, 0, 1, 64, 0, 0, 2, 0, 0, 0, - 30, 0, 0, 7, 66, 0, - 16, 0, 2, 0, 0, 0, - 58, 0, 16, 0, 2, 0, - 0, 0, 42, 0, 16, 0, - 2, 0, 0, 0, 140, 0, - 0, 11, 66, 0, 16, 0, - 2, 0, 0, 0, 1, 64, + 30, 0, 0, 7, 34, 0, + 16, 0, 1, 0, 0, 0, + 26, 0, 16, 0, 1, 0, + 0, 0, 58, 0, 16, 0, + 1, 0, 0, 0, 140, 0, + 0, 11, 34, 0, 16, 0, + 1, 0, 0, 0, 1, 64, 0, 0, 2, 0, 0, 0, 1, 64, 0, 0, 6, 0, - 0, 0, 42, 0, 16, 0, - 2, 0, 0, 0, 1, 64, + 0, 0, 26, 0, 16, 0, + 1, 0, 0, 0, 1, 64, 0, 0, 0, 0, 0, 0, - 30, 0, 0, 7, 130, 0, + 30, 0, 0, 7, 18, 0, 16, 0, 1, 0, 0, 0, - 58, 0, 16, 0, 1, 0, - 0, 0, 42, 0, 16, 0, - 2, 0, 0, 0, 140, 0, - 0, 11, 66, 0, 16, 0, + 10, 0, 16, 0, 1, 0, + 0, 0, 26, 0, 16, 0, + 1, 0, 0, 0, 140, 0, + 0, 11, 130, 0, 16, 0, 0, 0, 0, 0, 1, 64, 0, 0, 6, 0, 0, 0, 1, 64, 0, 0, 0, 0, - 0, 0, 58, 0, 16, 0, - 3, 0, 0, 0, 58, 0, - 16, 0, 1, 0, 0, 0, - 21, 0, 0, 1, 35, 0, - 0, 10, 146, 0, 16, 0, - 0, 0, 0, 0, 6, 12, - 16, 128, 65, 0, 0, 0, - 0, 0, 0, 0, 6, 4, - 16, 0, 1, 0, 0, 0, - 6, 4, 16, 0, 2, 0, - 0, 0, 38, 0, 0, 8, - 0, 208, 0, 0, 130, 0, - 16, 0, 1, 0, 0, 0, - 26, 0, 16, 0, 1, 0, - 0, 0, 10, 0, 16, 0, - 1, 0, 0, 0, 35, 0, - 0, 9, 18, 0, 16, 0, - 0, 0, 0, 0, 10, 0, - 16, 0, 0, 0, 0, 0, - 26, 0, 16, 0, 1, 0, - 0, 0, 58, 0, 16, 0, - 0, 0, 0, 0, 41, 0, - 0, 7, 18, 0, 16, 0, - 0, 0, 0, 0, 10, 0, - 16, 0, 0, 0, 0, 0, - 1, 64, 0, 0, 4, 0, - 0, 0, 35, 0, 0, 9, - 18, 0, 16, 0, 0, 0, 0, 0, 42, 0, 16, 0, - 0, 0, 0, 0, 58, 0, + 1, 0, 0, 0, 10, 0, 16, 0, 1, 0, 0, 0, - 10, 0, 16, 0, 0, 0, - 0, 0, 30, 0, 0, 9, + 21, 0, 0, 1, 18, 0, + 0, 1, 41, 0, 0, 7, 18, 0, 16, 0, 0, 0, 0, 0, 10, 0, 16, 0, - 0, 0, 0, 0, 26, 128, + 0, 0, 0, 0, 1, 64, + 0, 0, 2, 0, 0, 0, + 35, 0, 0, 9, 18, 0, + 16, 0, 1, 0, 0, 0, + 42, 0, 2, 0, 58, 128, 48, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 85, 0, 0, 10, - 50, 0, 16, 0, 0, 0, - 0, 0, 70, 0, 16, 0, - 0, 0, 0, 0, 2, 64, - 0, 0, 4, 0, 0, 0, - 4, 0, 0, 0, 0, 0, + 0, 0, 26, 0, 2, 0, + 35, 0, 0, 11, 130, 0, + 16, 0, 0, 0, 0, 0, + 10, 0, 16, 0, 1, 0, + 0, 0, 42, 128, 48, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 10, 0, 16, 0, 0, 0, + 0, 0, 21, 0, 0, 1, + 30, 0, 0, 9, 18, 0, + 16, 0, 0, 0, 0, 0, + 58, 0, 16, 0, 0, 0, + 0, 0, 26, 128, 48, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 85, 0, 0, 10, 50, 0, + 16, 0, 0, 0, 0, 0, + 70, 0, 16, 0, 0, 0, + 0, 0, 2, 64, 0, 0, + 4, 0, 0, 0, 4, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 138, 0, + 0, 11, 130, 0, 16, 0, + 0, 0, 0, 0, 1, 64, + 0, 0, 2, 0, 0, 0, + 1, 64, 0, 0, 2, 0, + 0, 0, 10, 128, 48, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 45, 0, 0, 8, 242, 0, - 16, 0, 3, 0, 0, 0, + 16, 0, 1, 0, 0, 0, 6, 0, 16, 0, 0, 0, 0, 0, 70, 126, 32, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32, 0, 0, 10, - 226, 0, 16, 0, 2, 0, - 0, 0, 166, 10, 16, 0, - 1, 0, 0, 0, 2, 64, + 114, 0, 16, 0, 2, 0, + 0, 0, 246, 15, 16, 0, + 0, 0, 0, 0, 2, 64, + 0, 0, 1, 0, 0, 0, + 2, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, - 1, 0, 0, 0, 2, 0, - 0, 0, 3, 0, 0, 0, - 60, 0, 0, 7, 194, 0, - 16, 0, 0, 0, 0, 0, - 166, 14, 16, 0, 2, 0, - 0, 0, 86, 9, 16, 0, + 60, 0, 0, 7, 50, 0, + 16, 0, 2, 0, 0, 0, + 150, 5, 16, 0, 2, 0, + 0, 0, 70, 0, 16, 0, 2, 0, 0, 0, 31, 0, - 4, 3, 42, 0, 16, 0, - 0, 0, 0, 0, 41, 0, + 4, 3, 10, 0, 16, 0, + 2, 0, 0, 0, 41, 0, 0, 10, 242, 0, 16, 0, - 4, 0, 0, 0, 70, 14, - 16, 0, 3, 0, 0, 0, + 3, 0, 0, 0, 70, 14, + 16, 0, 1, 0, 0, 0, 2, 64, 0, 0, 8, 0, 0, 0, 8, 0, 0, 0, 8, 0, 0, 0, 8, 0, 0, 0, 1, 0, 0, 10, - 242, 0, 16, 0, 4, 0, + 242, 0, 16, 0, 3, 0, 0, 0, 70, 14, 16, 0, - 4, 0, 0, 0, 2, 64, + 3, 0, 0, 0, 2, 64, 0, 0, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 85, 0, 0, 10, 242, 0, - 16, 0, 5, 0, 0, 0, - 70, 14, 16, 0, 3, 0, + 16, 0, 4, 0, 0, 0, + 70, 14, 16, 0, 1, 0, 0, 0, 2, 64, 0, 0, 8, 0, 0, 0, 8, 0, 0, 0, 8, 0, 0, 0, 8, 0, 0, 0, 1, 0, 0, 10, 242, 0, 16, 0, - 5, 0, 0, 0, 70, 14, - 16, 0, 5, 0, 0, 0, + 4, 0, 0, 0, 70, 14, + 16, 0, 4, 0, 0, 0, 2, 64, 0, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 30, 0, 0, 7, - 242, 0, 16, 0, 3, 0, + 242, 0, 16, 0, 1, 0, 0, 0, 70, 14, 16, 0, - 4, 0, 0, 0, 70, 14, - 16, 0, 5, 0, 0, 0, + 3, 0, 0, 0, 70, 14, + 16, 0, 4, 0, 0, 0, 21, 0, 0, 1, 31, 0, - 4, 3, 58, 0, 16, 0, - 0, 0, 0, 0, 85, 0, + 4, 3, 26, 0, 16, 0, + 2, 0, 0, 0, 85, 0, 0, 10, 242, 0, 16, 0, - 4, 0, 0, 0, 70, 14, - 16, 0, 3, 0, 0, 0, + 3, 0, 0, 0, 70, 14, + 16, 0, 1, 0, 0, 0, 2, 64, 0, 0, 16, 0, 0, 0, 16, 0, 0, 0, 16, 0, 0, 0, 16, 0, 0, 0, 140, 0, 0, 17, - 242, 0, 16, 0, 3, 0, + 242, 0, 16, 0, 1, 0, 0, 0, 2, 64, 0, 0, 16, 0, 0, 0, 16, 0, 0, 0, 16, 0, 0, 0, @@ -923,145 +873,169 @@ const BYTE texture_load_bgrg8_rgbg8_scaled_cs[] = 0, 0, 16, 0, 0, 0, 16, 0, 0, 0, 16, 0, 0, 0, 16, 0, 0, 0, - 70, 14, 16, 0, 3, 0, + 70, 14, 16, 0, 1, 0, 0, 0, 70, 14, 16, 0, - 4, 0, 0, 0, 21, 0, - 0, 1, 1, 0, 0, 10, - 242, 0, 16, 0, 4, 0, - 0, 0, 70, 14, 16, 0, - 3, 0, 0, 0, 2, 64, - 0, 0, 0, 255, 0, 255, - 0, 255, 0, 255, 0, 255, - 0, 255, 0, 255, 0, 255, - 140, 0, 0, 17, 242, 0, - 16, 0, 4, 0, 0, 0, - 2, 64, 0, 0, 8, 0, - 0, 0, 8, 0, 0, 0, - 8, 0, 0, 0, 8, 0, - 0, 0, 2, 64, 0, 0, - 16, 0, 0, 0, 16, 0, - 0, 0, 16, 0, 0, 0, - 16, 0, 0, 0, 70, 14, - 16, 0, 3, 0, 0, 0, - 70, 14, 16, 0, 4, 0, - 0, 0, 138, 0, 0, 15, + 3, 0, 0, 0, 21, 0, + 0, 1, 85, 0, 0, 10, 242, 0, 16, 0, 3, 0, - 0, 0, 2, 64, 0, 0, - 8, 0, 0, 0, 8, 0, + 0, 0, 70, 4, 16, 0, + 1, 0, 0, 0, 2, 64, + 0, 0, 24, 0, 0, 0, + 24, 0, 0, 0, 8, 0, 0, 0, 8, 0, 0, 0, - 8, 0, 0, 0, 2, 64, - 0, 0, 16, 0, 0, 0, - 16, 0, 0, 0, 16, 0, - 0, 0, 16, 0, 0, 0, - 70, 14, 16, 0, 3, 0, - 0, 0, 30, 0, 0, 7, - 242, 0, 16, 0, 3, 0, - 0, 0, 70, 14, 16, 0, - 4, 0, 0, 0, 70, 14, - 16, 0, 3, 0, 0, 0, - 164, 0, 0, 8, 242, 224, - 33, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 86, 5, - 16, 0, 0, 0, 0, 0, - 70, 14, 16, 0, 3, 0, - 0, 0, 30, 0, 0, 7, - 66, 0, 16, 0, 1, 0, - 0, 0, 26, 0, 16, 0, - 0, 0, 0, 0, 1, 64, - 0, 0, 1, 0, 0, 0, - 79, 0, 0, 7, 130, 0, - 16, 0, 1, 0, 0, 0, - 1, 64, 0, 0, 1, 0, - 0, 0, 10, 0, 16, 0, - 1, 0, 0, 0, 31, 0, - 4, 3, 58, 0, 16, 0, - 1, 0, 0, 0, 78, 0, - 0, 8, 130, 0, 16, 0, - 1, 0, 0, 0, 0, 208, - 0, 0, 10, 0, 16, 0, - 2, 0, 0, 0, 10, 0, - 16, 0, 1, 0, 0, 0, - 35, 0, 0, 10, 130, 0, - 16, 0, 1, 0, 0, 0, - 58, 0, 16, 128, 65, 0, - 0, 0, 1, 0, 0, 0, - 10, 0, 16, 0, 1, 0, - 0, 0, 10, 0, 16, 0, - 2, 0, 0, 0, 30, 0, - 0, 7, 18, 0, 16, 0, - 2, 0, 0, 0, 58, 0, - 16, 0, 1, 0, 0, 0, - 1, 64, 0, 0, 1, 0, - 0, 0, 32, 0, 0, 7, - 18, 0, 16, 0, 2, 0, - 0, 0, 10, 0, 16, 0, - 1, 0, 0, 0, 10, 0, - 16, 0, 2, 0, 0, 0, - 31, 0, 4, 3, 10, 0, - 16, 0, 2, 0, 0, 0, - 41, 0, 0, 7, 18, 0, - 16, 0, 1, 0, 0, 0, - 10, 0, 16, 0, 1, 0, - 0, 0, 1, 64, 0, 0, - 5, 0, 0, 0, 41, 0, - 0, 7, 130, 0, 16, 0, - 1, 0, 0, 0, 58, 0, - 16, 0, 1, 0, 0, 0, - 1, 64, 0, 0, 4, 0, - 0, 0, 30, 0, 0, 8, - 18, 0, 16, 0, 1, 0, - 0, 0, 58, 0, 16, 128, - 65, 0, 0, 0, 1, 0, - 0, 0, 10, 0, 16, 0, - 1, 0, 0, 0, 18, 0, - 0, 1, 54, 0, 0, 5, - 18, 0, 16, 0, 1, 0, - 0, 0, 1, 64, 0, 0, - 16, 0, 0, 0, 21, 0, - 0, 1, 18, 0, 0, 1, - 54, 0, 0, 5, 18, 0, - 16, 0, 1, 0, 0, 0, - 1, 64, 0, 0, 32, 0, - 0, 0, 21, 0, 0, 1, - 38, 0, 0, 8, 0, 208, - 0, 0, 18, 0, 16, 0, - 1, 0, 0, 0, 26, 0, - 16, 0, 1, 0, 0, 0, - 10, 0, 16, 0, 1, 0, - 0, 0, 85, 0, 0, 7, - 18, 0, 16, 0, 1, 0, - 0, 0, 10, 0, 16, 0, - 1, 0, 0, 0, 1, 64, - 0, 0, 4, 0, 0, 0, - 30, 0, 0, 7, 18, 0, - 16, 0, 0, 0, 0, 0, - 10, 0, 16, 0, 0, 0, - 0, 0, 10, 0, 16, 0, - 1, 0, 0, 0, 45, 0, - 0, 8, 242, 0, 16, 0, - 2, 0, 0, 0, 6, 0, - 16, 0, 0, 0, 0, 0, - 70, 126, 32, 0, 0, 0, - 0, 0, 0, 0, 0, 0, - 31, 0, 4, 3, 42, 0, - 16, 0, 0, 0, 0, 0, 41, 0, 0, 10, 242, 0, - 16, 0, 3, 0, 0, 0, - 70, 14, 16, 0, 2, 0, + 16, 0, 4, 0, 0, 0, + 6, 5, 16, 0, 1, 0, 0, 0, 2, 64, 0, 0, 8, 0, 0, 0, 8, 0, 0, 0, 8, 0, 0, 0, 8, 0, 0, 0, 1, 0, 0, 10, 242, 0, 16, 0, + 4, 0, 0, 0, 70, 14, + 16, 0, 4, 0, 0, 0, + 2, 64, 0, 0, 0, 0, + 255, 0, 0, 0, 255, 0, + 0, 0, 255, 0, 0, 0, + 255, 0, 30, 0, 0, 7, + 242, 0, 16, 0, 4, 0, + 0, 0, 6, 5, 16, 0, 3, 0, 0, 0, 70, 14, - 16, 0, 3, 0, 0, 0, - 2, 64, 0, 0, 0, 255, - 0, 255, 0, 255, 0, 255, - 0, 255, 0, 255, 0, 255, - 0, 255, 85, 0, 0, 10, + 16, 0, 4, 0, 0, 0, + 30, 0, 0, 10, 242, 0, + 16, 0, 4, 0, 0, 0, + 70, 14, 16, 0, 4, 0, + 0, 0, 2, 64, 0, 0, + 0, 0, 0, 255, 0, 0, + 0, 255, 0, 0, 0, 255, + 0, 0, 0, 255, 140, 0, + 0, 20, 82, 0, 16, 0, + 5, 0, 0, 0, 2, 64, + 0, 0, 8, 0, 0, 0, + 0, 0, 0, 0, 8, 0, + 0, 0, 0, 0, 0, 0, + 2, 64, 0, 0, 8, 0, + 0, 0, 0, 0, 0, 0, + 8, 0, 0, 0, 0, 0, + 0, 0, 6, 1, 16, 0, + 1, 0, 0, 0, 2, 64, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 1, 0, 0, 10, 162, 0, + 16, 0, 5, 0, 0, 0, + 166, 14, 16, 0, 3, 0, + 0, 0, 2, 64, 0, 0, + 0, 0, 0, 0, 0, 255, + 0, 0, 0, 0, 0, 0, + 0, 255, 0, 0, 30, 0, + 0, 7, 242, 0, 16, 0, + 3, 0, 0, 0, 70, 14, + 16, 0, 4, 0, 0, 0, + 70, 14, 16, 0, 5, 0, + 0, 0, 85, 0, 0, 10, + 242, 0, 16, 0, 4, 0, + 0, 0, 230, 14, 16, 0, + 1, 0, 0, 0, 2, 64, + 0, 0, 24, 0, 0, 0, + 24, 0, 0, 0, 8, 0, + 0, 0, 8, 0, 0, 0, + 41, 0, 0, 10, 242, 0, + 16, 0, 5, 0, 0, 0, + 166, 15, 16, 0, 1, 0, + 0, 0, 2, 64, 0, 0, + 8, 0, 0, 0, 8, 0, + 0, 0, 8, 0, 0, 0, + 8, 0, 0, 0, 1, 0, + 0, 10, 242, 0, 16, 0, + 5, 0, 0, 0, 70, 14, + 16, 0, 5, 0, 0, 0, + 2, 64, 0, 0, 0, 0, + 255, 0, 0, 0, 255, 0, + 0, 0, 255, 0, 0, 0, + 255, 0, 30, 0, 0, 7, + 242, 0, 16, 0, 5, 0, + 0, 0, 6, 5, 16, 0, + 4, 0, 0, 0, 70, 14, + 16, 0, 5, 0, 0, 0, + 30, 0, 0, 10, 242, 0, + 16, 0, 5, 0, 0, 0, + 70, 14, 16, 0, 5, 0, + 0, 0, 2, 64, 0, 0, + 0, 0, 0, 255, 0, 0, + 0, 255, 0, 0, 0, 255, + 0, 0, 0, 255, 140, 0, + 0, 20, 82, 0, 16, 0, + 1, 0, 0, 0, 2, 64, + 0, 0, 8, 0, 0, 0, + 0, 0, 0, 0, 8, 0, + 0, 0, 0, 0, 0, 0, + 2, 64, 0, 0, 8, 0, + 0, 0, 0, 0, 0, 0, + 8, 0, 0, 0, 0, 0, + 0, 0, 166, 11, 16, 0, + 1, 0, 0, 0, 2, 64, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 1, 0, 0, 10, 162, 0, + 16, 0, 1, 0, 0, 0, + 166, 14, 16, 0, 4, 0, + 0, 0, 2, 64, 0, 0, + 0, 0, 0, 0, 0, 255, + 0, 0, 0, 0, 0, 0, + 0, 255, 0, 0, 30, 0, + 0, 7, 242, 0, 16, 0, + 1, 0, 0, 0, 70, 14, + 16, 0, 1, 0, 0, 0, + 70, 14, 16, 0, 5, 0, + 0, 0, 164, 0, 0, 8, + 242, 224, 33, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 86, 5, 16, 0, 0, 0, + 0, 0, 70, 14, 16, 0, + 3, 0, 0, 0, 30, 0, + 0, 10, 114, 0, 16, 0, + 3, 0, 0, 0, 86, 5, + 16, 0, 0, 0, 0, 0, + 2, 64, 0, 0, 1, 0, + 0, 0, 2, 0, 0, 0, + 3, 0, 0, 0, 0, 0, + 0, 0, 164, 0, 0, 8, + 242, 224, 33, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 6, 0, 16, 0, 3, 0, + 0, 0, 70, 14, 16, 0, + 1, 0, 0, 0, 31, 0, + 4, 3, 42, 0, 16, 0, + 0, 0, 0, 0, 54, 0, + 0, 5, 66, 0, 16, 0, + 0, 0, 0, 0, 1, 64, + 0, 0, 32, 0, 0, 0, + 18, 0, 0, 1, 54, 0, + 0, 5, 66, 0, 16, 0, + 0, 0, 0, 0, 1, 64, + 0, 0, 16, 0, 0, 0, + 21, 0, 0, 1, 85, 0, + 0, 7, 66, 0, 16, 0, + 0, 0, 0, 0, 42, 0, + 16, 0, 0, 0, 0, 0, + 1, 64, 0, 0, 4, 0, + 0, 0, 30, 0, 0, 7, + 18, 0, 16, 0, 0, 0, + 0, 0, 42, 0, 16, 0, + 0, 0, 0, 0, 10, 0, + 16, 0, 0, 0, 0, 0, + 45, 0, 0, 8, 242, 0, + 16, 0, 1, 0, 0, 0, + 6, 0, 16, 0, 0, 0, + 0, 0, 70, 126, 32, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 31, 0, 4, 3, + 10, 0, 16, 0, 2, 0, + 0, 0, 41, 0, 0, 10, 242, 0, 16, 0, 4, 0, 0, 0, 70, 14, 16, 0, - 2, 0, 0, 0, 2, 64, + 1, 0, 0, 0, 2, 64, 0, 0, 8, 0, 0, 0, 8, 0, 0, 0, 8, 0, 0, 0, 8, 0, 0, 0, @@ -1069,79 +1043,177 @@ const BYTE texture_load_bgrg8_rgbg8_scaled_cs[] = 16, 0, 4, 0, 0, 0, 70, 14, 16, 0, 4, 0, 0, 0, 2, 64, 0, 0, - 255, 0, 255, 0, 255, 0, - 255, 0, 255, 0, 255, 0, - 255, 0, 255, 0, 30, 0, - 0, 7, 242, 0, 16, 0, - 2, 0, 0, 0, 70, 14, - 16, 0, 3, 0, 0, 0, - 70, 14, 16, 0, 4, 0, - 0, 0, 21, 0, 0, 1, - 31, 0, 4, 3, 58, 0, - 16, 0, 0, 0, 0, 0, - 85, 0, 0, 10, 242, 0, - 16, 0, 3, 0, 0, 0, - 70, 14, 16, 0, 2, 0, - 0, 0, 2, 64, 0, 0, - 16, 0, 0, 0, 16, 0, - 0, 0, 16, 0, 0, 0, - 16, 0, 0, 0, 140, 0, - 0, 17, 242, 0, 16, 0, - 2, 0, 0, 0, 2, 64, - 0, 0, 16, 0, 0, 0, - 16, 0, 0, 0, 16, 0, - 0, 0, 16, 0, 0, 0, - 2, 64, 0, 0, 16, 0, - 0, 0, 16, 0, 0, 0, - 16, 0, 0, 0, 16, 0, - 0, 0, 70, 14, 16, 0, - 2, 0, 0, 0, 70, 14, - 16, 0, 3, 0, 0, 0, - 21, 0, 0, 1, 1, 0, + 0, 255, 0, 255, 0, 255, + 0, 255, 0, 255, 0, 255, + 0, 255, 0, 255, 85, 0, 0, 10, 242, 0, 16, 0, - 3, 0, 0, 0, 70, 14, - 16, 0, 2, 0, 0, 0, - 2, 64, 0, 0, 0, 255, - 0, 255, 0, 255, 0, 255, - 0, 255, 0, 255, 0, 255, - 0, 255, 140, 0, 0, 17, - 242, 0, 16, 0, 3, 0, - 0, 0, 2, 64, 0, 0, - 8, 0, 0, 0, 8, 0, + 5, 0, 0, 0, 70, 14, + 16, 0, 1, 0, 0, 0, + 2, 64, 0, 0, 8, 0, 0, 0, 8, 0, 0, 0, - 8, 0, 0, 0, 2, 64, + 8, 0, 0, 0, 8, 0, + 0, 0, 1, 0, 0, 10, + 242, 0, 16, 0, 5, 0, + 0, 0, 70, 14, 16, 0, + 5, 0, 0, 0, 2, 64, + 0, 0, 255, 0, 255, 0, + 255, 0, 255, 0, 255, 0, + 255, 0, 255, 0, 255, 0, + 30, 0, 0, 7, 242, 0, + 16, 0, 1, 0, 0, 0, + 70, 14, 16, 0, 4, 0, + 0, 0, 70, 14, 16, 0, + 5, 0, 0, 0, 21, 0, + 0, 1, 31, 0, 4, 3, + 26, 0, 16, 0, 2, 0, + 0, 0, 85, 0, 0, 10, + 242, 0, 16, 0, 2, 0, + 0, 0, 70, 14, 16, 0, + 1, 0, 0, 0, 2, 64, 0, 0, 16, 0, 0, 0, 16, 0, 0, 0, 16, 0, 0, 0, 16, 0, 0, 0, - 70, 14, 16, 0, 2, 0, - 0, 0, 70, 14, 16, 0, - 3, 0, 0, 0, 138, 0, - 0, 15, 242, 0, 16, 0, - 2, 0, 0, 0, 2, 64, - 0, 0, 8, 0, 0, 0, - 8, 0, 0, 0, 8, 0, - 0, 0, 8, 0, 0, 0, + 140, 0, 0, 17, 242, 0, + 16, 0, 1, 0, 0, 0, 2, 64, 0, 0, 16, 0, 0, 0, 16, 0, 0, 0, 16, 0, 0, 0, 16, 0, + 0, 0, 2, 64, 0, 0, + 16, 0, 0, 0, 16, 0, + 0, 0, 16, 0, 0, 0, + 16, 0, 0, 0, 70, 14, + 16, 0, 1, 0, 0, 0, + 70, 14, 16, 0, 2, 0, + 0, 0, 21, 0, 0, 1, + 85, 0, 0, 10, 242, 0, + 16, 0, 2, 0, 0, 0, + 70, 4, 16, 0, 1, 0, + 0, 0, 2, 64, 0, 0, + 24, 0, 0, 0, 24, 0, + 0, 0, 8, 0, 0, 0, + 8, 0, 0, 0, 41, 0, + 0, 10, 242, 0, 16, 0, + 4, 0, 0, 0, 6, 5, + 16, 0, 1, 0, 0, 0, + 2, 64, 0, 0, 8, 0, + 0, 0, 8, 0, 0, 0, + 8, 0, 0, 0, 8, 0, + 0, 0, 1, 0, 0, 10, + 242, 0, 16, 0, 4, 0, 0, 0, 70, 14, 16, 0, - 2, 0, 0, 0, 30, 0, - 0, 7, 242, 0, 16, 0, - 2, 0, 0, 0, 70, 14, + 4, 0, 0, 0, 2, 64, + 0, 0, 0, 0, 255, 0, + 0, 0, 255, 0, 0, 0, + 255, 0, 0, 0, 255, 0, + 30, 0, 0, 7, 242, 0, + 16, 0, 4, 0, 0, 0, + 6, 5, 16, 0, 2, 0, + 0, 0, 70, 14, 16, 0, + 4, 0, 0, 0, 30, 0, + 0, 10, 242, 0, 16, 0, + 4, 0, 0, 0, 70, 14, + 16, 0, 4, 0, 0, 0, + 2, 64, 0, 0, 0, 0, + 0, 255, 0, 0, 0, 255, + 0, 0, 0, 255, 0, 0, + 0, 255, 140, 0, 0, 20, + 82, 0, 16, 0, 5, 0, + 0, 0, 2, 64, 0, 0, + 8, 0, 0, 0, 0, 0, + 0, 0, 8, 0, 0, 0, + 0, 0, 0, 0, 2, 64, + 0, 0, 8, 0, 0, 0, + 0, 0, 0, 0, 8, 0, + 0, 0, 0, 0, 0, 0, + 6, 1, 16, 0, 1, 0, + 0, 0, 2, 64, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 1, 0, + 0, 10, 162, 0, 16, 0, + 5, 0, 0, 0, 166, 14, + 16, 0, 2, 0, 0, 0, + 2, 64, 0, 0, 0, 0, + 0, 0, 0, 255, 0, 0, + 0, 0, 0, 0, 0, 255, + 0, 0, 30, 0, 0, 7, + 242, 0, 16, 0, 2, 0, + 0, 0, 70, 14, 16, 0, + 4, 0, 0, 0, 70, 14, + 16, 0, 5, 0, 0, 0, + 85, 0, 0, 10, 242, 0, + 16, 0, 4, 0, 0, 0, + 230, 14, 16, 0, 1, 0, + 0, 0, 2, 64, 0, 0, + 24, 0, 0, 0, 24, 0, + 0, 0, 8, 0, 0, 0, + 8, 0, 0, 0, 41, 0, + 0, 10, 242, 0, 16, 0, + 5, 0, 0, 0, 166, 15, + 16, 0, 1, 0, 0, 0, + 2, 64, 0, 0, 8, 0, + 0, 0, 8, 0, 0, 0, + 8, 0, 0, 0, 8, 0, + 0, 0, 1, 0, 0, 10, + 242, 0, 16, 0, 5, 0, + 0, 0, 70, 14, 16, 0, + 5, 0, 0, 0, 2, 64, + 0, 0, 0, 0, 255, 0, + 0, 0, 255, 0, 0, 0, + 255, 0, 0, 0, 255, 0, + 30, 0, 0, 7, 242, 0, + 16, 0, 5, 0, 0, 0, + 6, 5, 16, 0, 4, 0, + 0, 0, 70, 14, 16, 0, + 5, 0, 0, 0, 30, 0, + 0, 10, 242, 0, 16, 0, + 5, 0, 0, 0, 70, 14, + 16, 0, 5, 0, 0, 0, + 2, 64, 0, 0, 0, 0, + 0, 255, 0, 0, 0, 255, + 0, 0, 0, 255, 0, 0, + 0, 255, 140, 0, 0, 20, + 82, 0, 16, 0, 1, 0, + 0, 0, 2, 64, 0, 0, + 8, 0, 0, 0, 0, 0, + 0, 0, 8, 0, 0, 0, + 0, 0, 0, 0, 2, 64, + 0, 0, 8, 0, 0, 0, + 0, 0, 0, 0, 8, 0, + 0, 0, 0, 0, 0, 0, + 166, 11, 16, 0, 1, 0, + 0, 0, 2, 64, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 1, 0, + 0, 10, 162, 0, 16, 0, + 1, 0, 0, 0, 166, 14, + 16, 0, 4, 0, 0, 0, + 2, 64, 0, 0, 0, 0, + 0, 0, 0, 255, 0, 0, + 0, 0, 0, 0, 0, 255, + 0, 0, 30, 0, 0, 7, + 242, 0, 16, 0, 1, 0, + 0, 0, 70, 14, 16, 0, + 1, 0, 0, 0, 70, 14, + 16, 0, 5, 0, 0, 0, + 164, 0, 0, 8, 242, 224, + 33, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 86, 5, 16, 0, 3, 0, 0, 0, 70, 14, 16, 0, 2, 0, 0, 0, 164, 0, 0, 8, 242, 224, 33, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 166, 10, 16, 0, 1, 0, + 166, 10, 16, 0, 3, 0, 0, 0, 70, 14, 16, 0, - 2, 0, 0, 0, 62, 0, + 1, 0, 0, 0, 62, 0, 0, 1, 83, 84, 65, 84, - 148, 0, 0, 0, 133, 0, + 148, 0, 0, 0, 141, 0, 0, 0, 6, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, - 48, 0, 0, 0, 27, 0, + 51, 0, 0, 0, 34, 0, 0, 0, 5, 0, 0, 0, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, @@ -1150,7 +1222,7 @@ const BYTE texture_load_bgrg8_rgbg8_scaled_cs[] = 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 4, 0, 0, 0, + 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, @@ -1161,6 +1233,6 @@ const BYTE texture_load_bgrg8_rgbg8_scaled_cs[] = 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 2, 0, + 0, 0, 0, 0, 4, 0, 0, 0 }; diff --git a/src/xenia/gpu/shaders/bytecode/vulkan_spirv/texture_load_bgrg8_rgba8_cs.h b/src/xenia/gpu/shaders/bytecode/vulkan_spirv/texture_load_bgrg8_rgba8_cs.h new file mode 100644 index 000000000..25edfae9c --- /dev/null +++ b/src/xenia/gpu/shaders/bytecode/vulkan_spirv/texture_load_bgrg8_rgba8_cs.h @@ -0,0 +1,754 @@ +// Generated with `xb buildshaders`. +#if 0 +; SPIR-V +; Version: 1.0 +; Generator: Khronos Glslang Reference Front End; 10 +; Bound: 25179 +; Schema: 0 + OpCapability Shader + %1 = OpExtInstImport "GLSL.std.450" + OpMemoryModel Logical GLSL450 + OpEntryPoint GLCompute %5663 "main" %gl_GlobalInvocationID + OpExecutionMode %5663 LocalSize 4 32 1 + OpMemberDecorate %_struct_1161 0 Offset 0 + OpMemberDecorate %_struct_1161 1 Offset 4 + OpMemberDecorate %_struct_1161 2 Offset 8 + OpMemberDecorate %_struct_1161 3 Offset 12 + OpMemberDecorate %_struct_1161 4 Offset 16 + OpMemberDecorate %_struct_1161 5 Offset 28 + OpMemberDecorate %_struct_1161 6 Offset 32 + OpMemberDecorate %_struct_1161 7 Offset 36 + OpDecorate %_struct_1161 Block + OpDecorate %5245 DescriptorSet 2 + OpDecorate %5245 Binding 0 + OpDecorate %gl_GlobalInvocationID BuiltIn GlobalInvocationId + OpDecorate %_runtimearr_v4uint ArrayStride 16 + OpMemberDecorate %_struct_1972 0 NonWritable + OpMemberDecorate %_struct_1972 0 Offset 0 + OpDecorate %_struct_1972 BufferBlock + OpDecorate %4218 DescriptorSet 1 + OpDecorate %4218 Binding 0 + OpDecorate %_runtimearr_v4uint_0 ArrayStride 16 + OpMemberDecorate %_struct_1973 0 NonReadable + OpMemberDecorate %_struct_1973 0 Offset 0 + OpDecorate %_struct_1973 BufferBlock + OpDecorate %5134 DescriptorSet 0 + OpDecorate %5134 Binding 0 + OpDecorate %gl_WorkGroupSize BuiltIn WorkgroupSize + %void = OpTypeVoid + %1282 = OpTypeFunction %void + %uint = OpTypeInt 32 0 + %v2uint = OpTypeVector %uint 2 + %v4uint = OpTypeVector %uint 4 + %int = OpTypeInt 32 1 + %v2int = OpTypeVector %int 2 + %v3int = OpTypeVector %int 3 + %bool = OpTypeBool + %v3uint = OpTypeVector %uint 3 +%uint_16711680 = OpConstant %uint 16711680 + %uint_16 = OpConstant %uint 16 + %uint_255 = OpConstant %uint 255 +%uint_4278190080 = OpConstant %uint 4278190080 + %uint_65280 = OpConstant %uint 65280 + %uint_1 = OpConstant %uint 1 + %uint_2 = OpConstant %uint 2 +%uint_16711935 = OpConstant %uint 16711935 + %uint_8 = OpConstant %uint 8 +%uint_4278255360 = OpConstant %uint 4278255360 + %uint_3 = OpConstant %uint 3 + %uint_0 = OpConstant %uint 0 + %int_5 = OpConstant %int 5 + %uint_5 = OpConstant %uint 5 + %int_7 = OpConstant %int 7 + %int_14 = OpConstant %int 14 + %int_2 = OpConstant %int 2 + %int_n16 = OpConstant %int -16 + %int_1 = OpConstant %int 1 + %int_15 = OpConstant %int 15 + %int_4 = OpConstant %int 4 + %int_n512 = OpConstant %int -512 + %int_3 = OpConstant %int 3 + %int_16 = OpConstant %int 16 + %int_448 = OpConstant %int 448 + %int_8 = OpConstant %int 8 + %int_6 = OpConstant %int 6 + %int_63 = OpConstant %int 63 + %uint_4 = OpConstant %uint 4 +%int_268435455 = OpConstant %int 268435455 + %int_n2 = OpConstant %int -2 + %uint_32 = OpConstant %uint 32 +%_struct_1161 = OpTypeStruct %uint %uint %uint %uint %v3uint %uint %uint %uint +%_ptr_Uniform__struct_1161 = OpTypePointer Uniform %_struct_1161 + %5245 = OpVariable %_ptr_Uniform__struct_1161 Uniform + %int_0 = OpConstant %int 0 +%_ptr_Uniform_uint = OpTypePointer Uniform %uint +%_ptr_Uniform_v3uint = OpTypePointer Uniform %v3uint +%_ptr_Input_v3uint = OpTypePointer Input %v3uint +%gl_GlobalInvocationID = OpVariable %_ptr_Input_v3uint Input + %2603 = OpConstantComposite %v3uint %uint_3 %uint_0 %uint_0 + %v2bool = OpTypeVector %bool 2 +%_runtimearr_v4uint = OpTypeRuntimeArray %v4uint +%_struct_1972 = OpTypeStruct %_runtimearr_v4uint +%_ptr_Uniform__struct_1972 = OpTypePointer Uniform %_struct_1972 + %4218 = OpVariable %_ptr_Uniform__struct_1972 Uniform +%_ptr_Uniform_v4uint = OpTypePointer Uniform %v4uint +%_runtimearr_v4uint_0 = OpTypeRuntimeArray %v4uint +%_struct_1973 = OpTypeStruct %_runtimearr_v4uint_0 +%_ptr_Uniform__struct_1973 = OpTypePointer Uniform %_struct_1973 + %5134 = OpVariable %_ptr_Uniform__struct_1973 Uniform +%gl_WorkGroupSize = OpConstantComposite %v3uint %uint_4 %uint_32 %uint_1 + %uint_9 = OpConstant %uint 9 + %2510 = OpConstantComposite %v4uint %uint_16711935 %uint_16711935 %uint_16711935 %uint_16711935 + %317 = OpConstantComposite %v4uint %uint_8 %uint_8 %uint_8 %uint_8 + %1838 = OpConstantComposite %v4uint %uint_4278255360 %uint_4278255360 %uint_4278255360 %uint_4278255360 + %749 = OpConstantComposite %v4uint %uint_16 %uint_16 %uint_16 %uint_16 + %2993 = OpConstantComposite %v2uint %uint_16711680 %uint_16711680 + %2143 = OpConstantComposite %v2uint %uint_16 %uint_16 + %1140 = OpConstantComposite %v2uint %uint_255 %uint_255 + %2014 = OpConstantComposite %v2uint %uint_4278190080 %uint_4278190080 + %2682 = OpConstantComposite %v2uint %uint_65280 %uint_65280 + %5663 = OpFunction %void None %1282 + %15110 = OpLabel + OpSelectionMerge %19578 None + OpSwitch %uint_0 %15137 + %15137 = OpLabel + %12591 = OpLoad %v3uint %gl_GlobalInvocationID + %10229 = OpShiftLeftLogical %v3uint %12591 %2603 + %25178 = OpAccessChain %_ptr_Uniform_v3uint %5245 %int_4 + %22965 = OpLoad %v3uint %25178 + %18835 = OpVectorShuffle %v2uint %10229 %10229 0 1 + %6626 = OpVectorShuffle %v2uint %22965 %22965 0 1 + %17032 = OpUGreaterThanEqual %v2bool %18835 %6626 + %24679 = OpAny %bool %17032 + OpSelectionMerge %6282 DontFlatten + OpBranchConditional %24679 %21992 %6282 + %21992 = OpLabel + OpBranch %19578 + %6282 = OpLabel + %6795 = OpBitcast %v3int %10229 + %18792 = OpAccessChain %_ptr_Uniform_uint %5245 %int_6 + %9788 = OpLoad %uint %18792 + %20376 = OpCompositeExtract %uint %22965 1 + %14692 = OpCompositeExtract %int %6795 0 + %22810 = OpIMul %int %14692 %int_8 + %6362 = OpCompositeExtract %int %6795 2 + %14505 = OpBitcast %int %20376 + %11279 = OpIMul %int %6362 %14505 + %17598 = OpCompositeExtract %int %6795 1 + %22228 = OpIAdd %int %11279 %17598 + %22405 = OpBitcast %int %9788 + %24535 = OpIMul %int %22228 %22405 + %7061 = OpIAdd %int %22810 %24535 + %19270 = OpBitcast %uint %7061 + %19460 = OpAccessChain %_ptr_Uniform_uint %5245 %int_5 + %22875 = OpLoad %uint %19460 + %8517 = OpIAdd %uint %19270 %22875 + %21670 = OpShiftRightLogical %uint %8517 %uint_4 + %20950 = OpAccessChain %_ptr_Uniform_uint %5245 %int_0 + %21411 = OpLoad %uint %20950 + %6381 = OpBitwiseAnd %uint %21411 %uint_1 + %10467 = OpINotEqual %bool %6381 %uint_0 + OpSelectionMerge %23266 DontFlatten + OpBranchConditional %10467 %10108 %10765 + %10108 = OpLabel + %23508 = OpBitwiseAnd %uint %21411 %uint_2 + %16300 = OpINotEqual %bool %23508 %uint_0 + OpSelectionMerge %7691 DontFlatten + OpBranchConditional %16300 %12129 %25128 + %12129 = OpLabel + %18210 = OpAccessChain %_ptr_Uniform_uint %5245 %int_2 + %15627 = OpLoad %uint %18210 + %22624 = OpAccessChain %_ptr_Uniform_uint %5245 %int_3 + %21535 = OpLoad %uint %22624 + %14923 = OpShiftRightArithmetic %int %17598 %int_4 + %18773 = OpShiftRightArithmetic %int %6362 %int_2 + %18759 = OpShiftRightLogical %uint %21535 %uint_4 + %6314 = OpBitcast %int %18759 + %21281 = OpIMul %int %18773 %6314 + %15143 = OpIAdd %int %14923 %21281 + %9032 = OpShiftRightLogical %uint %15627 %uint_5 + %14593 = OpBitcast %int %9032 + %8436 = OpIMul %int %15143 %14593 + %12986 = OpShiftRightArithmetic %int %14692 %int_5 + %24558 = OpIAdd %int %12986 %8436 + %8797 = OpShiftLeftLogical %int %24558 %uint_8 + %11510 = OpBitwiseAnd %int %8797 %int_268435455 + %18938 = OpShiftLeftLogical %int %11510 %int_1 + %19768 = OpBitwiseAnd %int %14692 %int_7 + %12600 = OpBitwiseAnd %int %17598 %int_6 + %17741 = OpShiftLeftLogical %int %12600 %int_2 + %17227 = OpIAdd %int %19768 %17741 + %7048 = OpShiftLeftLogical %int %17227 %uint_8 + %24035 = OpShiftRightArithmetic %int %7048 %int_6 + %8725 = OpShiftRightArithmetic %int %17598 %int_3 + %13731 = OpIAdd %int %8725 %18773 + %23052 = OpBitwiseAnd %int %13731 %int_1 + %16658 = OpShiftRightArithmetic %int %14692 %int_3 + %18794 = OpShiftLeftLogical %int %23052 %int_1 + %13501 = OpIAdd %int %16658 %18794 + %19165 = OpBitwiseAnd %int %13501 %int_3 + %21578 = OpShiftLeftLogical %int %19165 %int_1 + %15435 = OpIAdd %int %23052 %21578 + %13150 = OpBitwiseAnd %int %24035 %int_n16 + %20336 = OpIAdd %int %18938 %13150 + %23345 = OpShiftLeftLogical %int %20336 %int_1 + %23274 = OpBitwiseAnd %int %24035 %int_15 + %10332 = OpIAdd %int %23345 %23274 + %18356 = OpBitwiseAnd %int %6362 %int_3 + %21579 = OpShiftLeftLogical %int %18356 %uint_8 + %16727 = OpIAdd %int %10332 %21579 + %19166 = OpBitwiseAnd %int %17598 %int_1 + %21580 = OpShiftLeftLogical %int %19166 %int_4 + %16728 = OpIAdd %int %16727 %21580 + %20438 = OpBitwiseAnd %int %15435 %int_1 + %9987 = OpShiftLeftLogical %int %20438 %int_3 + %13106 = OpShiftRightArithmetic %int %16728 %int_6 + %14038 = OpBitwiseAnd %int %13106 %int_7 + %13330 = OpIAdd %int %9987 %14038 + %23346 = OpShiftLeftLogical %int %13330 %int_3 + %23217 = OpBitwiseAnd %int %15435 %int_n2 + %10908 = OpIAdd %int %23346 %23217 + %23347 = OpShiftLeftLogical %int %10908 %int_2 + %23218 = OpBitwiseAnd %int %16728 %int_n512 + %10909 = OpIAdd %int %23347 %23218 + %23348 = OpShiftLeftLogical %int %10909 %int_3 + %24224 = OpBitwiseAnd %int %16728 %int_63 + %21741 = OpIAdd %int %23348 %24224 + OpBranch %7691 + %25128 = OpLabel + %6796 = OpBitcast %v2int %18835 + %18793 = OpAccessChain %_ptr_Uniform_uint %5245 %int_2 + %11954 = OpLoad %uint %18793 + %18756 = OpCompositeExtract %int %6796 0 + %19701 = OpShiftRightArithmetic %int %18756 %int_5 + %10055 = OpCompositeExtract %int %6796 1 + %16476 = OpShiftRightArithmetic %int %10055 %int_5 + %23373 = OpShiftRightLogical %uint %11954 %uint_5 + %6315 = OpBitcast %int %23373 + %21319 = OpIMul %int %16476 %6315 + %16222 = OpIAdd %int %19701 %21319 + %19086 = OpShiftLeftLogical %int %16222 %uint_9 + %10934 = OpBitwiseAnd %int %18756 %int_7 + %12601 = OpBitwiseAnd %int %10055 %int_14 + %17742 = OpShiftLeftLogical %int %12601 %int_2 + %17303 = OpIAdd %int %10934 %17742 + %6375 = OpShiftLeftLogical %int %17303 %uint_2 + %10161 = OpBitwiseAnd %int %6375 %int_n16 + %12150 = OpShiftLeftLogical %int %10161 %int_1 + %15436 = OpIAdd %int %19086 %12150 + %13207 = OpBitwiseAnd %int %6375 %int_15 + %19760 = OpIAdd %int %15436 %13207 + %18357 = OpBitwiseAnd %int %10055 %int_1 + %21581 = OpShiftLeftLogical %int %18357 %int_4 + %16729 = OpIAdd %int %19760 %21581 + %20514 = OpBitwiseAnd %int %16729 %int_n512 + %9238 = OpShiftLeftLogical %int %20514 %int_3 + %18995 = OpBitwiseAnd %int %10055 %int_16 + %12151 = OpShiftLeftLogical %int %18995 %int_7 + %16730 = OpIAdd %int %9238 %12151 + %19167 = OpBitwiseAnd %int %16729 %int_448 + %21582 = OpShiftLeftLogical %int %19167 %int_2 + %16708 = OpIAdd %int %16730 %21582 + %20611 = OpBitwiseAnd %int %10055 %int_8 + %16831 = OpShiftRightArithmetic %int %20611 %int_2 + %7916 = OpShiftRightArithmetic %int %18756 %int_3 + %13750 = OpIAdd %int %16831 %7916 + %21587 = OpBitwiseAnd %int %13750 %int_3 + %21583 = OpShiftLeftLogical %int %21587 %int_6 + %15437 = OpIAdd %int %16708 %21583 + %14157 = OpBitwiseAnd %int %16729 %int_63 + %12098 = OpIAdd %int %15437 %14157 + OpBranch %7691 + %7691 = OpLabel + %10540 = OpPhi %int %21741 %12129 %12098 %25128 + OpBranch %23266 + %10765 = OpLabel + %20632 = OpAccessChain %_ptr_Uniform_uint %5245 %int_2 + %15628 = OpLoad %uint %20632 + %21427 = OpAccessChain %_ptr_Uniform_uint %5245 %int_3 + %12014 = OpLoad %uint %21427 + %8199 = OpIMul %int %14692 %int_4 + %11736 = OpBitcast %int %12014 + %8690 = OpIMul %int %6362 %11736 + %8334 = OpIAdd %int %8690 %17598 + %8952 = OpBitcast %int %15628 + %7839 = OpIMul %int %8334 %8952 + %7984 = OpIAdd %int %8199 %7839 + OpBranch %23266 + %23266 = OpLabel + %19748 = OpPhi %int %10540 %7691 %7984 %10765 + %24922 = OpAccessChain %_ptr_Uniform_uint %5245 %int_1 + %7502 = OpLoad %uint %24922 + %15686 = OpBitcast %int %7502 + %15579 = OpIAdd %int %15686 %19748 + %18556 = OpBitcast %uint %15579 + %21493 = OpShiftRightLogical %uint %18556 %uint_4 + %14997 = OpShiftRightLogical %uint %21411 %uint_2 + %8394 = OpBitwiseAnd %uint %14997 %uint_3 + %20727 = OpAccessChain %_ptr_Uniform_v4uint %4218 %int_0 %21493 + %8142 = OpLoad %v4uint %20727 + %13760 = OpIEqual %bool %8394 %uint_1 + %21366 = OpIEqual %bool %8394 %uint_2 + %22150 = OpLogicalOr %bool %13760 %21366 + OpSelectionMerge %13411 None + OpBranchConditional %22150 %10583 %13411 + %10583 = OpLabel + %18271 = OpBitwiseAnd %v4uint %8142 %2510 + %9425 = OpShiftLeftLogical %v4uint %18271 %317 + %20652 = OpBitwiseAnd %v4uint %8142 %1838 + %17549 = OpShiftRightLogical %v4uint %20652 %317 + %16376 = OpBitwiseOr %v4uint %9425 %17549 + OpBranch %13411 + %13411 = OpLabel + %22649 = OpPhi %v4uint %8142 %23266 %16376 %10583 + %19638 = OpIEqual %bool %8394 %uint_3 + %15139 = OpLogicalOr %bool %21366 %19638 + OpSelectionMerge %11682 None + OpBranchConditional %15139 %11064 %11682 + %11064 = OpLabel + %24087 = OpShiftLeftLogical %v4uint %22649 %749 + %15335 = OpShiftRightLogical %v4uint %22649 %749 + %10728 = OpBitwiseOr %v4uint %24087 %15335 + OpBranch %11682 + %11682 = OpLabel + %19948 = OpPhi %v4uint %22649 %13411 %10728 %11064 + %21173 = OpVectorShuffle %v2uint %19948 %19948 0 1 + %12738 = OpBitwiseAnd %v2uint %21173 %2993 + %21619 = OpShiftRightLogical %v2uint %12738 %2143 + %8190 = OpBitwiseAnd %v2uint %21173 %1140 + %24090 = OpShiftLeftLogical %v2uint %8190 %2143 + %17486 = OpBitwiseOr %v2uint %21619 %24090 + %17700 = OpBitwiseOr %v2uint %17486 %2014 + %17868 = OpBitwiseAnd %v2uint %21173 %2682 + %16088 = OpBitwiseAnd %v2uint %21173 %2014 + %21002 = OpShiftRightLogical %v2uint %16088 %2143 + %7420 = OpCompositeExtract %uint %17868 0 + %24539 = OpCompositeExtract %uint %17868 1 + %7641 = OpCompositeExtract %uint %21002 0 + %7795 = OpCompositeExtract %uint %21002 1 + %16161 = OpCompositeConstruct %v4uint %7420 %24539 %7641 %7795 + %7774 = OpVectorShuffle %v4uint %16161 %16161 0 2 1 3 + %6860 = OpVectorShuffle %v4uint %17700 %17700 0 0 1 1 + %24909 = OpBitwiseOr %v4uint %6860 %7774 + %17181 = OpVectorShuffle %v2uint %19948 %19948 2 3 + %6311 = OpBitwiseAnd %v2uint %17181 %2993 + %21620 = OpShiftRightLogical %v2uint %6311 %2143 + %8191 = OpBitwiseAnd %v2uint %17181 %1140 + %24091 = OpShiftLeftLogical %v2uint %8191 %2143 + %17487 = OpBitwiseOr %v2uint %21620 %24091 + %17701 = OpBitwiseOr %v2uint %17487 %2014 + %17869 = OpBitwiseAnd %v2uint %17181 %2682 + %16089 = OpBitwiseAnd %v2uint %17181 %2014 + %21003 = OpShiftRightLogical %v2uint %16089 %2143 + %7421 = OpCompositeExtract %uint %17869 0 + %24540 = OpCompositeExtract %uint %17869 1 + %7642 = OpCompositeExtract %uint %21003 0 + %7796 = OpCompositeExtract %uint %21003 1 + %16162 = OpCompositeConstruct %v4uint %7421 %24540 %7642 %7796 + %7775 = OpVectorShuffle %v4uint %16162 %16162 0 2 1 3 + %6594 = OpVectorShuffle %v4uint %17701 %17701 0 0 1 1 + %24728 = OpBitwiseOr %v4uint %6594 %7775 + %8219 = OpAccessChain %_ptr_Uniform_v4uint %5134 %int_0 %21670 + OpStore %8219 %24909 + %11457 = OpIAdd %uint %21670 %uint_1 + %23654 = OpAccessChain %_ptr_Uniform_v4uint %5134 %int_0 %11457 + OpStore %23654 %24728 + %16830 = OpSelect %uint %10467 %uint_32 %uint_16 + %22844 = OpShiftRightLogical %uint %16830 %uint_4 + %13947 = OpIAdd %uint %21493 %22844 + %22298 = OpAccessChain %_ptr_Uniform_v4uint %4218 %int_0 %13947 + %6578 = OpLoad %v4uint %22298 + OpSelectionMerge %14874 None + OpBranchConditional %22150 %10584 %14874 + %10584 = OpLabel + %18272 = OpBitwiseAnd %v4uint %6578 %2510 + %9426 = OpShiftLeftLogical %v4uint %18272 %317 + %20653 = OpBitwiseAnd %v4uint %6578 %1838 + %17550 = OpShiftRightLogical %v4uint %20653 %317 + %16377 = OpBitwiseOr %v4uint %9426 %17550 + OpBranch %14874 + %14874 = OpLabel + %10924 = OpPhi %v4uint %6578 %11682 %16377 %10584 + OpSelectionMerge %11683 None + OpBranchConditional %15139 %11065 %11683 + %11065 = OpLabel + %24088 = OpShiftLeftLogical %v4uint %10924 %749 + %15336 = OpShiftRightLogical %v4uint %10924 %749 + %10729 = OpBitwiseOr %v4uint %24088 %15336 + OpBranch %11683 + %11683 = OpLabel + %19949 = OpPhi %v4uint %10924 %14874 %10729 %11065 + %21174 = OpVectorShuffle %v2uint %19949 %19949 0 1 + %12739 = OpBitwiseAnd %v2uint %21174 %2993 + %21621 = OpShiftRightLogical %v2uint %12739 %2143 + %8192 = OpBitwiseAnd %v2uint %21174 %1140 + %24092 = OpShiftLeftLogical %v2uint %8192 %2143 + %17488 = OpBitwiseOr %v2uint %21621 %24092 + %17702 = OpBitwiseOr %v2uint %17488 %2014 + %17870 = OpBitwiseAnd %v2uint %21174 %2682 + %16090 = OpBitwiseAnd %v2uint %21174 %2014 + %21004 = OpShiftRightLogical %v2uint %16090 %2143 + %7422 = OpCompositeExtract %uint %17870 0 + %24541 = OpCompositeExtract %uint %17870 1 + %7643 = OpCompositeExtract %uint %21004 0 + %7797 = OpCompositeExtract %uint %21004 1 + %16163 = OpCompositeConstruct %v4uint %7422 %24541 %7643 %7797 + %7776 = OpVectorShuffle %v4uint %16163 %16163 0 2 1 3 + %6861 = OpVectorShuffle %v4uint %17702 %17702 0 0 1 1 + %24910 = OpBitwiseOr %v4uint %6861 %7776 + %17182 = OpVectorShuffle %v2uint %19949 %19949 2 3 + %6312 = OpBitwiseAnd %v2uint %17182 %2993 + %21622 = OpShiftRightLogical %v2uint %6312 %2143 + %8193 = OpBitwiseAnd %v2uint %17182 %1140 + %24093 = OpShiftLeftLogical %v2uint %8193 %2143 + %17489 = OpBitwiseOr %v2uint %21622 %24093 + %17703 = OpBitwiseOr %v2uint %17489 %2014 + %17871 = OpBitwiseAnd %v2uint %17182 %2682 + %16091 = OpBitwiseAnd %v2uint %17182 %2014 + %21005 = OpShiftRightLogical %v2uint %16091 %2143 + %7423 = OpCompositeExtract %uint %17871 0 + %24542 = OpCompositeExtract %uint %17871 1 + %7644 = OpCompositeExtract %uint %21005 0 + %7798 = OpCompositeExtract %uint %21005 1 + %16164 = OpCompositeConstruct %v4uint %7423 %24542 %7644 %7798 + %7777 = OpVectorShuffle %v4uint %16164 %16164 0 2 1 3 + %7791 = OpVectorShuffle %v4uint %17703 %17703 0 0 1 1 + %13886 = OpBitwiseOr %v4uint %7791 %7777 + %17818 = OpIAdd %uint %21670 %uint_2 + %6441 = OpAccessChain %_ptr_Uniform_v4uint %5134 %int_0 %17818 + OpStore %6441 %24910 + %11458 = OpIAdd %uint %21670 %uint_3 + %25174 = OpAccessChain %_ptr_Uniform_v4uint %5134 %int_0 %11458 + OpStore %25174 %13886 + OpBranch %19578 + %19578 = OpLabel + OpReturn + OpFunctionEnd +#endif + +const uint32_t texture_load_bgrg8_rgba8_cs[] = { + 0x07230203, 0x00010000, 0x0008000A, 0x0000625B, 0x00000000, 0x00020011, + 0x00000001, 0x0006000B, 0x00000001, 0x4C534C47, 0x6474732E, 0x3035342E, + 0x00000000, 0x0003000E, 0x00000000, 0x00000001, 0x0006000F, 0x00000005, + 0x0000161F, 0x6E69616D, 0x00000000, 0x00000F48, 0x00060010, 0x0000161F, + 0x00000011, 0x00000004, 0x00000020, 0x00000001, 0x00050048, 0x00000489, + 0x00000000, 0x00000023, 0x00000000, 0x00050048, 0x00000489, 0x00000001, + 0x00000023, 0x00000004, 0x00050048, 0x00000489, 0x00000002, 0x00000023, + 0x00000008, 0x00050048, 0x00000489, 0x00000003, 0x00000023, 0x0000000C, + 0x00050048, 0x00000489, 0x00000004, 0x00000023, 0x00000010, 0x00050048, + 0x00000489, 0x00000005, 0x00000023, 0x0000001C, 0x00050048, 0x00000489, + 0x00000006, 0x00000023, 0x00000020, 0x00050048, 0x00000489, 0x00000007, + 0x00000023, 0x00000024, 0x00030047, 0x00000489, 0x00000002, 0x00040047, + 0x0000147D, 0x00000022, 0x00000002, 0x00040047, 0x0000147D, 0x00000021, + 0x00000000, 0x00040047, 0x00000F48, 0x0000000B, 0x0000001C, 0x00040047, + 0x000007DC, 0x00000006, 0x00000010, 0x00040048, 0x000007B4, 0x00000000, + 0x00000018, 0x00050048, 0x000007B4, 0x00000000, 0x00000023, 0x00000000, + 0x00030047, 0x000007B4, 0x00000003, 0x00040047, 0x0000107A, 0x00000022, + 0x00000001, 0x00040047, 0x0000107A, 0x00000021, 0x00000000, 0x00040047, + 0x000007DD, 0x00000006, 0x00000010, 0x00040048, 0x000007B5, 0x00000000, + 0x00000019, 0x00050048, 0x000007B5, 0x00000000, 0x00000023, 0x00000000, + 0x00030047, 0x000007B5, 0x00000003, 0x00040047, 0x0000140E, 0x00000022, + 0x00000000, 0x00040047, 0x0000140E, 0x00000021, 0x00000000, 0x00040047, + 0x00000BC3, 0x0000000B, 0x00000019, 0x00020013, 0x00000008, 0x00030021, + 0x00000502, 0x00000008, 0x00040015, 0x0000000B, 0x00000020, 0x00000000, + 0x00040017, 0x00000011, 0x0000000B, 0x00000002, 0x00040017, 0x00000017, + 0x0000000B, 0x00000004, 0x00040015, 0x0000000C, 0x00000020, 0x00000001, + 0x00040017, 0x00000012, 0x0000000C, 0x00000002, 0x00040017, 0x00000016, + 0x0000000C, 0x00000003, 0x00020014, 0x00000009, 0x00040017, 0x00000014, + 0x0000000B, 0x00000003, 0x0004002B, 0x0000000B, 0x000005A9, 0x00FF0000, + 0x0004002B, 0x0000000B, 0x00000A3A, 0x00000010, 0x0004002B, 0x0000000B, + 0x00000144, 0x000000FF, 0x0004002B, 0x0000000B, 0x00000580, 0xFF000000, + 0x0004002B, 0x0000000B, 0x00000A87, 0x0000FF00, 0x0004002B, 0x0000000B, + 0x00000A0D, 0x00000001, 0x0004002B, 0x0000000B, 0x00000A10, 0x00000002, + 0x0004002B, 0x0000000B, 0x000008A6, 0x00FF00FF, 0x0004002B, 0x0000000B, + 0x00000A22, 0x00000008, 0x0004002B, 0x0000000B, 0x000005FD, 0xFF00FF00, + 0x0004002B, 0x0000000B, 0x00000A13, 0x00000003, 0x0004002B, 0x0000000B, + 0x00000A0A, 0x00000000, 0x0004002B, 0x0000000C, 0x00000A1A, 0x00000005, + 0x0004002B, 0x0000000B, 0x00000A19, 0x00000005, 0x0004002B, 0x0000000C, + 0x00000A20, 0x00000007, 0x0004002B, 0x0000000C, 0x00000A35, 0x0000000E, + 0x0004002B, 0x0000000C, 0x00000A11, 0x00000002, 0x0004002B, 0x0000000C, + 0x000009DB, 0xFFFFFFF0, 0x0004002B, 0x0000000C, 0x00000A0E, 0x00000001, + 0x0004002B, 0x0000000C, 0x00000A38, 0x0000000F, 0x0004002B, 0x0000000C, + 0x00000A17, 0x00000004, 0x0004002B, 0x0000000C, 0x0000040B, 0xFFFFFE00, + 0x0004002B, 0x0000000C, 0x00000A14, 0x00000003, 0x0004002B, 0x0000000C, + 0x00000A3B, 0x00000010, 0x0004002B, 0x0000000C, 0x00000388, 0x000001C0, + 0x0004002B, 0x0000000C, 0x00000A23, 0x00000008, 0x0004002B, 0x0000000C, + 0x00000A1D, 0x00000006, 0x0004002B, 0x0000000C, 0x00000AC8, 0x0000003F, + 0x0004002B, 0x0000000B, 0x00000A16, 0x00000004, 0x0004002B, 0x0000000C, + 0x0000078B, 0x0FFFFFFF, 0x0004002B, 0x0000000C, 0x00000A05, 0xFFFFFFFE, + 0x0004002B, 0x0000000B, 0x00000A6A, 0x00000020, 0x000A001E, 0x00000489, + 0x0000000B, 0x0000000B, 0x0000000B, 0x0000000B, 0x00000014, 0x0000000B, + 0x0000000B, 0x0000000B, 0x00040020, 0x00000706, 0x00000002, 0x00000489, + 0x0004003B, 0x00000706, 0x0000147D, 0x00000002, 0x0004002B, 0x0000000C, + 0x00000A0B, 0x00000000, 0x00040020, 0x00000288, 0x00000002, 0x0000000B, + 0x00040020, 0x00000291, 0x00000002, 0x00000014, 0x00040020, 0x00000292, + 0x00000001, 0x00000014, 0x0004003B, 0x00000292, 0x00000F48, 0x00000001, + 0x0006002C, 0x00000014, 0x00000A2B, 0x00000A13, 0x00000A0A, 0x00000A0A, + 0x00040017, 0x0000000F, 0x00000009, 0x00000002, 0x0003001D, 0x000007DC, + 0x00000017, 0x0003001E, 0x000007B4, 0x000007DC, 0x00040020, 0x00000A31, + 0x00000002, 0x000007B4, 0x0004003B, 0x00000A31, 0x0000107A, 0x00000002, + 0x00040020, 0x00000294, 0x00000002, 0x00000017, 0x0003001D, 0x000007DD, + 0x00000017, 0x0003001E, 0x000007B5, 0x000007DD, 0x00040020, 0x00000A32, + 0x00000002, 0x000007B5, 0x0004003B, 0x00000A32, 0x0000140E, 0x00000002, + 0x0006002C, 0x00000014, 0x00000BC3, 0x00000A16, 0x00000A6A, 0x00000A0D, + 0x0004002B, 0x0000000B, 0x00000A25, 0x00000009, 0x0007002C, 0x00000017, + 0x000009CE, 0x000008A6, 0x000008A6, 0x000008A6, 0x000008A6, 0x0007002C, + 0x00000017, 0x0000013D, 0x00000A22, 0x00000A22, 0x00000A22, 0x00000A22, + 0x0007002C, 0x00000017, 0x0000072E, 0x000005FD, 0x000005FD, 0x000005FD, + 0x000005FD, 0x0007002C, 0x00000017, 0x000002ED, 0x00000A3A, 0x00000A3A, + 0x00000A3A, 0x00000A3A, 0x0005002C, 0x00000011, 0x00000BB1, 0x000005A9, + 0x000005A9, 0x0005002C, 0x00000011, 0x0000085F, 0x00000A3A, 0x00000A3A, + 0x0005002C, 0x00000011, 0x00000474, 0x00000144, 0x00000144, 0x0005002C, + 0x00000011, 0x000007DE, 0x00000580, 0x00000580, 0x0005002C, 0x00000011, + 0x00000A7A, 0x00000A87, 0x00000A87, 0x00050036, 0x00000008, 0x0000161F, + 0x00000000, 0x00000502, 0x000200F8, 0x00003B06, 0x000300F7, 0x00004C7A, + 0x00000000, 0x000300FB, 0x00000A0A, 0x00003B21, 0x000200F8, 0x00003B21, + 0x0004003D, 0x00000014, 0x0000312F, 0x00000F48, 0x000500C4, 0x00000014, + 0x000027F5, 0x0000312F, 0x00000A2B, 0x00050041, 0x00000291, 0x0000625A, + 0x0000147D, 0x00000A17, 0x0004003D, 0x00000014, 0x000059B5, 0x0000625A, + 0x0007004F, 0x00000011, 0x00004993, 0x000027F5, 0x000027F5, 0x00000000, + 0x00000001, 0x0007004F, 0x00000011, 0x000019E2, 0x000059B5, 0x000059B5, + 0x00000000, 0x00000001, 0x000500AE, 0x0000000F, 0x00004288, 0x00004993, + 0x000019E2, 0x0004009A, 0x00000009, 0x00006067, 0x00004288, 0x000300F7, + 0x0000188A, 0x00000002, 0x000400FA, 0x00006067, 0x000055E8, 0x0000188A, + 0x000200F8, 0x000055E8, 0x000200F9, 0x00004C7A, 0x000200F8, 0x0000188A, + 0x0004007C, 0x00000016, 0x00001A8B, 0x000027F5, 0x00050041, 0x00000288, + 0x00004968, 0x0000147D, 0x00000A1D, 0x0004003D, 0x0000000B, 0x0000263C, + 0x00004968, 0x00050051, 0x0000000B, 0x00004F98, 0x000059B5, 0x00000001, + 0x00050051, 0x0000000C, 0x00003964, 0x00001A8B, 0x00000000, 0x00050084, + 0x0000000C, 0x0000591A, 0x00003964, 0x00000A23, 0x00050051, 0x0000000C, + 0x000018DA, 0x00001A8B, 0x00000002, 0x0004007C, 0x0000000C, 0x000038A9, + 0x00004F98, 0x00050084, 0x0000000C, 0x00002C0F, 0x000018DA, 0x000038A9, + 0x00050051, 0x0000000C, 0x000044BE, 0x00001A8B, 0x00000001, 0x00050080, + 0x0000000C, 0x000056D4, 0x00002C0F, 0x000044BE, 0x0004007C, 0x0000000C, + 0x00005785, 0x0000263C, 0x00050084, 0x0000000C, 0x00005FD7, 0x000056D4, + 0x00005785, 0x00050080, 0x0000000C, 0x00001B95, 0x0000591A, 0x00005FD7, + 0x0004007C, 0x0000000B, 0x00004B46, 0x00001B95, 0x00050041, 0x00000288, + 0x00004C04, 0x0000147D, 0x00000A1A, 0x0004003D, 0x0000000B, 0x0000595B, + 0x00004C04, 0x00050080, 0x0000000B, 0x00002145, 0x00004B46, 0x0000595B, + 0x000500C2, 0x0000000B, 0x000054A6, 0x00002145, 0x00000A16, 0x00050041, + 0x00000288, 0x000051D6, 0x0000147D, 0x00000A0B, 0x0004003D, 0x0000000B, + 0x000053A3, 0x000051D6, 0x000500C7, 0x0000000B, 0x000018ED, 0x000053A3, + 0x00000A0D, 0x000500AB, 0x00000009, 0x000028E3, 0x000018ED, 0x00000A0A, + 0x000300F7, 0x00005AE2, 0x00000002, 0x000400FA, 0x000028E3, 0x0000277C, + 0x00002A0D, 0x000200F8, 0x0000277C, 0x000500C7, 0x0000000B, 0x00005BD4, + 0x000053A3, 0x00000A10, 0x000500AB, 0x00000009, 0x00003FAC, 0x00005BD4, + 0x00000A0A, 0x000300F7, 0x00001E0B, 0x00000002, 0x000400FA, 0x00003FAC, + 0x00002F61, 0x00006228, 0x000200F8, 0x00002F61, 0x00050041, 0x00000288, + 0x00004722, 0x0000147D, 0x00000A11, 0x0004003D, 0x0000000B, 0x00003D0B, + 0x00004722, 0x00050041, 0x00000288, 0x00005860, 0x0000147D, 0x00000A14, + 0x0004003D, 0x0000000B, 0x0000541F, 0x00005860, 0x000500C3, 0x0000000C, + 0x00003A4B, 0x000044BE, 0x00000A17, 0x000500C3, 0x0000000C, 0x00004955, + 0x000018DA, 0x00000A11, 0x000500C2, 0x0000000B, 0x00004947, 0x0000541F, + 0x00000A16, 0x0004007C, 0x0000000C, 0x000018AA, 0x00004947, 0x00050084, + 0x0000000C, 0x00005321, 0x00004955, 0x000018AA, 0x00050080, 0x0000000C, + 0x00003B27, 0x00003A4B, 0x00005321, 0x000500C2, 0x0000000B, 0x00002348, + 0x00003D0B, 0x00000A19, 0x0004007C, 0x0000000C, 0x00003901, 0x00002348, + 0x00050084, 0x0000000C, 0x000020F4, 0x00003B27, 0x00003901, 0x000500C3, + 0x0000000C, 0x000032BA, 0x00003964, 0x00000A1A, 0x00050080, 0x0000000C, + 0x00005FEE, 0x000032BA, 0x000020F4, 0x000500C4, 0x0000000C, 0x0000225D, + 0x00005FEE, 0x00000A22, 0x000500C7, 0x0000000C, 0x00002CF6, 0x0000225D, + 0x0000078B, 0x000500C4, 0x0000000C, 0x000049FA, 0x00002CF6, 0x00000A0E, + 0x000500C7, 0x0000000C, 0x00004D38, 0x00003964, 0x00000A20, 0x000500C7, + 0x0000000C, 0x00003138, 0x000044BE, 0x00000A1D, 0x000500C4, 0x0000000C, + 0x0000454D, 0x00003138, 0x00000A11, 0x00050080, 0x0000000C, 0x0000434B, + 0x00004D38, 0x0000454D, 0x000500C4, 0x0000000C, 0x00001B88, 0x0000434B, + 0x00000A22, 0x000500C3, 0x0000000C, 0x00005DE3, 0x00001B88, 0x00000A1D, + 0x000500C3, 0x0000000C, 0x00002215, 0x000044BE, 0x00000A14, 0x00050080, + 0x0000000C, 0x000035A3, 0x00002215, 0x00004955, 0x000500C7, 0x0000000C, + 0x00005A0C, 0x000035A3, 0x00000A0E, 0x000500C3, 0x0000000C, 0x00004112, + 0x00003964, 0x00000A14, 0x000500C4, 0x0000000C, 0x0000496A, 0x00005A0C, + 0x00000A0E, 0x00050080, 0x0000000C, 0x000034BD, 0x00004112, 0x0000496A, + 0x000500C7, 0x0000000C, 0x00004ADD, 0x000034BD, 0x00000A14, 0x000500C4, + 0x0000000C, 0x0000544A, 0x00004ADD, 0x00000A0E, 0x00050080, 0x0000000C, + 0x00003C4B, 0x00005A0C, 0x0000544A, 0x000500C7, 0x0000000C, 0x0000335E, + 0x00005DE3, 0x000009DB, 0x00050080, 0x0000000C, 0x00004F70, 0x000049FA, + 0x0000335E, 0x000500C4, 0x0000000C, 0x00005B31, 0x00004F70, 0x00000A0E, + 0x000500C7, 0x0000000C, 0x00005AEA, 0x00005DE3, 0x00000A38, 0x00050080, + 0x0000000C, 0x0000285C, 0x00005B31, 0x00005AEA, 0x000500C7, 0x0000000C, + 0x000047B4, 0x000018DA, 0x00000A14, 0x000500C4, 0x0000000C, 0x0000544B, + 0x000047B4, 0x00000A22, 0x00050080, 0x0000000C, 0x00004157, 0x0000285C, + 0x0000544B, 0x000500C7, 0x0000000C, 0x00004ADE, 0x000044BE, 0x00000A0E, + 0x000500C4, 0x0000000C, 0x0000544C, 0x00004ADE, 0x00000A17, 0x00050080, + 0x0000000C, 0x00004158, 0x00004157, 0x0000544C, 0x000500C7, 0x0000000C, + 0x00004FD6, 0x00003C4B, 0x00000A0E, 0x000500C4, 0x0000000C, 0x00002703, + 0x00004FD6, 0x00000A14, 0x000500C3, 0x0000000C, 0x00003332, 0x00004158, + 0x00000A1D, 0x000500C7, 0x0000000C, 0x000036D6, 0x00003332, 0x00000A20, + 0x00050080, 0x0000000C, 0x00003412, 0x00002703, 0x000036D6, 0x000500C4, + 0x0000000C, 0x00005B32, 0x00003412, 0x00000A14, 0x000500C7, 0x0000000C, + 0x00005AB1, 0x00003C4B, 0x00000A05, 0x00050080, 0x0000000C, 0x00002A9C, + 0x00005B32, 0x00005AB1, 0x000500C4, 0x0000000C, 0x00005B33, 0x00002A9C, + 0x00000A11, 0x000500C7, 0x0000000C, 0x00005AB2, 0x00004158, 0x0000040B, + 0x00050080, 0x0000000C, 0x00002A9D, 0x00005B33, 0x00005AB2, 0x000500C4, + 0x0000000C, 0x00005B34, 0x00002A9D, 0x00000A14, 0x000500C7, 0x0000000C, + 0x00005EA0, 0x00004158, 0x00000AC8, 0x00050080, 0x0000000C, 0x000054ED, + 0x00005B34, 0x00005EA0, 0x000200F9, 0x00001E0B, 0x000200F8, 0x00006228, + 0x0004007C, 0x00000012, 0x00001A8C, 0x00004993, 0x00050041, 0x00000288, + 0x00004969, 0x0000147D, 0x00000A11, 0x0004003D, 0x0000000B, 0x00002EB2, + 0x00004969, 0x00050051, 0x0000000C, 0x00004944, 0x00001A8C, 0x00000000, + 0x000500C3, 0x0000000C, 0x00004CF5, 0x00004944, 0x00000A1A, 0x00050051, + 0x0000000C, 0x00002747, 0x00001A8C, 0x00000001, 0x000500C3, 0x0000000C, + 0x0000405C, 0x00002747, 0x00000A1A, 0x000500C2, 0x0000000B, 0x00005B4D, + 0x00002EB2, 0x00000A19, 0x0004007C, 0x0000000C, 0x000018AB, 0x00005B4D, + 0x00050084, 0x0000000C, 0x00005347, 0x0000405C, 0x000018AB, 0x00050080, + 0x0000000C, 0x00003F5E, 0x00004CF5, 0x00005347, 0x000500C4, 0x0000000C, + 0x00004A8E, 0x00003F5E, 0x00000A25, 0x000500C7, 0x0000000C, 0x00002AB6, + 0x00004944, 0x00000A20, 0x000500C7, 0x0000000C, 0x00003139, 0x00002747, + 0x00000A35, 0x000500C4, 0x0000000C, 0x0000454E, 0x00003139, 0x00000A11, + 0x00050080, 0x0000000C, 0x00004397, 0x00002AB6, 0x0000454E, 0x000500C4, + 0x0000000C, 0x000018E7, 0x00004397, 0x00000A10, 0x000500C7, 0x0000000C, + 0x000027B1, 0x000018E7, 0x000009DB, 0x000500C4, 0x0000000C, 0x00002F76, + 0x000027B1, 0x00000A0E, 0x00050080, 0x0000000C, 0x00003C4C, 0x00004A8E, + 0x00002F76, 0x000500C7, 0x0000000C, 0x00003397, 0x000018E7, 0x00000A38, + 0x00050080, 0x0000000C, 0x00004D30, 0x00003C4C, 0x00003397, 0x000500C7, + 0x0000000C, 0x000047B5, 0x00002747, 0x00000A0E, 0x000500C4, 0x0000000C, + 0x0000544D, 0x000047B5, 0x00000A17, 0x00050080, 0x0000000C, 0x00004159, + 0x00004D30, 0x0000544D, 0x000500C7, 0x0000000C, 0x00005022, 0x00004159, + 0x0000040B, 0x000500C4, 0x0000000C, 0x00002416, 0x00005022, 0x00000A14, + 0x000500C7, 0x0000000C, 0x00004A33, 0x00002747, 0x00000A3B, 0x000500C4, + 0x0000000C, 0x00002F77, 0x00004A33, 0x00000A20, 0x00050080, 0x0000000C, + 0x0000415A, 0x00002416, 0x00002F77, 0x000500C7, 0x0000000C, 0x00004ADF, + 0x00004159, 0x00000388, 0x000500C4, 0x0000000C, 0x0000544E, 0x00004ADF, + 0x00000A11, 0x00050080, 0x0000000C, 0x00004144, 0x0000415A, 0x0000544E, + 0x000500C7, 0x0000000C, 0x00005083, 0x00002747, 0x00000A23, 0x000500C3, + 0x0000000C, 0x000041BF, 0x00005083, 0x00000A11, 0x000500C3, 0x0000000C, + 0x00001EEC, 0x00004944, 0x00000A14, 0x00050080, 0x0000000C, 0x000035B6, + 0x000041BF, 0x00001EEC, 0x000500C7, 0x0000000C, 0x00005453, 0x000035B6, + 0x00000A14, 0x000500C4, 0x0000000C, 0x0000544F, 0x00005453, 0x00000A1D, + 0x00050080, 0x0000000C, 0x00003C4D, 0x00004144, 0x0000544F, 0x000500C7, + 0x0000000C, 0x0000374D, 0x00004159, 0x00000AC8, 0x00050080, 0x0000000C, + 0x00002F42, 0x00003C4D, 0x0000374D, 0x000200F9, 0x00001E0B, 0x000200F8, + 0x00001E0B, 0x000700F5, 0x0000000C, 0x0000292C, 0x000054ED, 0x00002F61, + 0x00002F42, 0x00006228, 0x000200F9, 0x00005AE2, 0x000200F8, 0x00002A0D, + 0x00050041, 0x00000288, 0x00005098, 0x0000147D, 0x00000A11, 0x0004003D, + 0x0000000B, 0x00003D0C, 0x00005098, 0x00050041, 0x00000288, 0x000053B3, + 0x0000147D, 0x00000A14, 0x0004003D, 0x0000000B, 0x00002EEE, 0x000053B3, + 0x00050084, 0x0000000C, 0x00002007, 0x00003964, 0x00000A17, 0x0004007C, + 0x0000000C, 0x00002DD8, 0x00002EEE, 0x00050084, 0x0000000C, 0x000021F2, + 0x000018DA, 0x00002DD8, 0x00050080, 0x0000000C, 0x0000208E, 0x000021F2, + 0x000044BE, 0x0004007C, 0x0000000C, 0x000022F8, 0x00003D0C, 0x00050084, + 0x0000000C, 0x00001E9F, 0x0000208E, 0x000022F8, 0x00050080, 0x0000000C, + 0x00001F30, 0x00002007, 0x00001E9F, 0x000200F9, 0x00005AE2, 0x000200F8, + 0x00005AE2, 0x000700F5, 0x0000000C, 0x00004D24, 0x0000292C, 0x00001E0B, + 0x00001F30, 0x00002A0D, 0x00050041, 0x00000288, 0x0000615A, 0x0000147D, + 0x00000A0E, 0x0004003D, 0x0000000B, 0x00001D4E, 0x0000615A, 0x0004007C, + 0x0000000C, 0x00003D46, 0x00001D4E, 0x00050080, 0x0000000C, 0x00003CDB, + 0x00003D46, 0x00004D24, 0x0004007C, 0x0000000B, 0x0000487C, 0x00003CDB, + 0x000500C2, 0x0000000B, 0x000053F5, 0x0000487C, 0x00000A16, 0x000500C2, + 0x0000000B, 0x00003A95, 0x000053A3, 0x00000A10, 0x000500C7, 0x0000000B, + 0x000020CA, 0x00003A95, 0x00000A13, 0x00060041, 0x00000294, 0x000050F7, + 0x0000107A, 0x00000A0B, 0x000053F5, 0x0004003D, 0x00000017, 0x00001FCE, + 0x000050F7, 0x000500AA, 0x00000009, 0x000035C0, 0x000020CA, 0x00000A0D, + 0x000500AA, 0x00000009, 0x00005376, 0x000020CA, 0x00000A10, 0x000500A6, + 0x00000009, 0x00005686, 0x000035C0, 0x00005376, 0x000300F7, 0x00003463, + 0x00000000, 0x000400FA, 0x00005686, 0x00002957, 0x00003463, 0x000200F8, + 0x00002957, 0x000500C7, 0x00000017, 0x0000475F, 0x00001FCE, 0x000009CE, + 0x000500C4, 0x00000017, 0x000024D1, 0x0000475F, 0x0000013D, 0x000500C7, + 0x00000017, 0x000050AC, 0x00001FCE, 0x0000072E, 0x000500C2, 0x00000017, + 0x0000448D, 0x000050AC, 0x0000013D, 0x000500C5, 0x00000017, 0x00003FF8, + 0x000024D1, 0x0000448D, 0x000200F9, 0x00003463, 0x000200F8, 0x00003463, + 0x000700F5, 0x00000017, 0x00005879, 0x00001FCE, 0x00005AE2, 0x00003FF8, + 0x00002957, 0x000500AA, 0x00000009, 0x00004CB6, 0x000020CA, 0x00000A13, + 0x000500A6, 0x00000009, 0x00003B23, 0x00005376, 0x00004CB6, 0x000300F7, + 0x00002DA2, 0x00000000, 0x000400FA, 0x00003B23, 0x00002B38, 0x00002DA2, + 0x000200F8, 0x00002B38, 0x000500C4, 0x00000017, 0x00005E17, 0x00005879, + 0x000002ED, 0x000500C2, 0x00000017, 0x00003BE7, 0x00005879, 0x000002ED, + 0x000500C5, 0x00000017, 0x000029E8, 0x00005E17, 0x00003BE7, 0x000200F9, + 0x00002DA2, 0x000200F8, 0x00002DA2, 0x000700F5, 0x00000017, 0x00004DEC, + 0x00005879, 0x00003463, 0x000029E8, 0x00002B38, 0x0007004F, 0x00000011, + 0x000052B5, 0x00004DEC, 0x00004DEC, 0x00000000, 0x00000001, 0x000500C7, + 0x00000011, 0x000031C2, 0x000052B5, 0x00000BB1, 0x000500C2, 0x00000011, + 0x00005473, 0x000031C2, 0x0000085F, 0x000500C7, 0x00000011, 0x00001FFE, + 0x000052B5, 0x00000474, 0x000500C4, 0x00000011, 0x00005E1A, 0x00001FFE, + 0x0000085F, 0x000500C5, 0x00000011, 0x0000444E, 0x00005473, 0x00005E1A, + 0x000500C5, 0x00000011, 0x00004524, 0x0000444E, 0x000007DE, 0x000500C7, + 0x00000011, 0x000045CC, 0x000052B5, 0x00000A7A, 0x000500C7, 0x00000011, + 0x00003ED8, 0x000052B5, 0x000007DE, 0x000500C2, 0x00000011, 0x0000520A, + 0x00003ED8, 0x0000085F, 0x00050051, 0x0000000B, 0x00001CFC, 0x000045CC, + 0x00000000, 0x00050051, 0x0000000B, 0x00005FDB, 0x000045CC, 0x00000001, + 0x00050051, 0x0000000B, 0x00001DD9, 0x0000520A, 0x00000000, 0x00050051, + 0x0000000B, 0x00001E73, 0x0000520A, 0x00000001, 0x00070050, 0x00000017, + 0x00003F21, 0x00001CFC, 0x00005FDB, 0x00001DD9, 0x00001E73, 0x0009004F, + 0x00000017, 0x00001E5E, 0x00003F21, 0x00003F21, 0x00000000, 0x00000002, + 0x00000001, 0x00000003, 0x0009004F, 0x00000017, 0x00001ACC, 0x00004524, + 0x00004524, 0x00000000, 0x00000000, 0x00000001, 0x00000001, 0x000500C5, + 0x00000017, 0x0000614D, 0x00001ACC, 0x00001E5E, 0x0007004F, 0x00000011, + 0x0000431D, 0x00004DEC, 0x00004DEC, 0x00000002, 0x00000003, 0x000500C7, + 0x00000011, 0x000018A7, 0x0000431D, 0x00000BB1, 0x000500C2, 0x00000011, + 0x00005474, 0x000018A7, 0x0000085F, 0x000500C7, 0x00000011, 0x00001FFF, + 0x0000431D, 0x00000474, 0x000500C4, 0x00000011, 0x00005E1B, 0x00001FFF, + 0x0000085F, 0x000500C5, 0x00000011, 0x0000444F, 0x00005474, 0x00005E1B, + 0x000500C5, 0x00000011, 0x00004525, 0x0000444F, 0x000007DE, 0x000500C7, + 0x00000011, 0x000045CD, 0x0000431D, 0x00000A7A, 0x000500C7, 0x00000011, + 0x00003ED9, 0x0000431D, 0x000007DE, 0x000500C2, 0x00000011, 0x0000520B, + 0x00003ED9, 0x0000085F, 0x00050051, 0x0000000B, 0x00001CFD, 0x000045CD, + 0x00000000, 0x00050051, 0x0000000B, 0x00005FDC, 0x000045CD, 0x00000001, + 0x00050051, 0x0000000B, 0x00001DDA, 0x0000520B, 0x00000000, 0x00050051, + 0x0000000B, 0x00001E74, 0x0000520B, 0x00000001, 0x00070050, 0x00000017, + 0x00003F22, 0x00001CFD, 0x00005FDC, 0x00001DDA, 0x00001E74, 0x0009004F, + 0x00000017, 0x00001E5F, 0x00003F22, 0x00003F22, 0x00000000, 0x00000002, + 0x00000001, 0x00000003, 0x0009004F, 0x00000017, 0x000019C2, 0x00004525, + 0x00004525, 0x00000000, 0x00000000, 0x00000001, 0x00000001, 0x000500C5, + 0x00000017, 0x00006098, 0x000019C2, 0x00001E5F, 0x00060041, 0x00000294, + 0x0000201B, 0x0000140E, 0x00000A0B, 0x000054A6, 0x0003003E, 0x0000201B, + 0x0000614D, 0x00050080, 0x0000000B, 0x00002CC1, 0x000054A6, 0x00000A0D, + 0x00060041, 0x00000294, 0x00005C66, 0x0000140E, 0x00000A0B, 0x00002CC1, + 0x0003003E, 0x00005C66, 0x00006098, 0x000600A9, 0x0000000B, 0x000041BE, + 0x000028E3, 0x00000A6A, 0x00000A3A, 0x000500C2, 0x0000000B, 0x0000593C, + 0x000041BE, 0x00000A16, 0x00050080, 0x0000000B, 0x0000367B, 0x000053F5, + 0x0000593C, 0x00060041, 0x00000294, 0x0000571A, 0x0000107A, 0x00000A0B, + 0x0000367B, 0x0004003D, 0x00000017, 0x000019B2, 0x0000571A, 0x000300F7, + 0x00003A1A, 0x00000000, 0x000400FA, 0x00005686, 0x00002958, 0x00003A1A, + 0x000200F8, 0x00002958, 0x000500C7, 0x00000017, 0x00004760, 0x000019B2, + 0x000009CE, 0x000500C4, 0x00000017, 0x000024D2, 0x00004760, 0x0000013D, + 0x000500C7, 0x00000017, 0x000050AD, 0x000019B2, 0x0000072E, 0x000500C2, + 0x00000017, 0x0000448E, 0x000050AD, 0x0000013D, 0x000500C5, 0x00000017, + 0x00003FF9, 0x000024D2, 0x0000448E, 0x000200F9, 0x00003A1A, 0x000200F8, + 0x00003A1A, 0x000700F5, 0x00000017, 0x00002AAC, 0x000019B2, 0x00002DA2, + 0x00003FF9, 0x00002958, 0x000300F7, 0x00002DA3, 0x00000000, 0x000400FA, + 0x00003B23, 0x00002B39, 0x00002DA3, 0x000200F8, 0x00002B39, 0x000500C4, + 0x00000017, 0x00005E18, 0x00002AAC, 0x000002ED, 0x000500C2, 0x00000017, + 0x00003BE8, 0x00002AAC, 0x000002ED, 0x000500C5, 0x00000017, 0x000029E9, + 0x00005E18, 0x00003BE8, 0x000200F9, 0x00002DA3, 0x000200F8, 0x00002DA3, + 0x000700F5, 0x00000017, 0x00004DED, 0x00002AAC, 0x00003A1A, 0x000029E9, + 0x00002B39, 0x0007004F, 0x00000011, 0x000052B6, 0x00004DED, 0x00004DED, + 0x00000000, 0x00000001, 0x000500C7, 0x00000011, 0x000031C3, 0x000052B6, + 0x00000BB1, 0x000500C2, 0x00000011, 0x00005475, 0x000031C3, 0x0000085F, + 0x000500C7, 0x00000011, 0x00002000, 0x000052B6, 0x00000474, 0x000500C4, + 0x00000011, 0x00005E1C, 0x00002000, 0x0000085F, 0x000500C5, 0x00000011, + 0x00004450, 0x00005475, 0x00005E1C, 0x000500C5, 0x00000011, 0x00004526, + 0x00004450, 0x000007DE, 0x000500C7, 0x00000011, 0x000045CE, 0x000052B6, + 0x00000A7A, 0x000500C7, 0x00000011, 0x00003EDA, 0x000052B6, 0x000007DE, + 0x000500C2, 0x00000011, 0x0000520C, 0x00003EDA, 0x0000085F, 0x00050051, + 0x0000000B, 0x00001CFE, 0x000045CE, 0x00000000, 0x00050051, 0x0000000B, + 0x00005FDD, 0x000045CE, 0x00000001, 0x00050051, 0x0000000B, 0x00001DDB, + 0x0000520C, 0x00000000, 0x00050051, 0x0000000B, 0x00001E75, 0x0000520C, + 0x00000001, 0x00070050, 0x00000017, 0x00003F23, 0x00001CFE, 0x00005FDD, + 0x00001DDB, 0x00001E75, 0x0009004F, 0x00000017, 0x00001E60, 0x00003F23, + 0x00003F23, 0x00000000, 0x00000002, 0x00000001, 0x00000003, 0x0009004F, + 0x00000017, 0x00001ACD, 0x00004526, 0x00004526, 0x00000000, 0x00000000, + 0x00000001, 0x00000001, 0x000500C5, 0x00000017, 0x0000614E, 0x00001ACD, + 0x00001E60, 0x0007004F, 0x00000011, 0x0000431E, 0x00004DED, 0x00004DED, + 0x00000002, 0x00000003, 0x000500C7, 0x00000011, 0x000018A8, 0x0000431E, + 0x00000BB1, 0x000500C2, 0x00000011, 0x00005476, 0x000018A8, 0x0000085F, + 0x000500C7, 0x00000011, 0x00002001, 0x0000431E, 0x00000474, 0x000500C4, + 0x00000011, 0x00005E1D, 0x00002001, 0x0000085F, 0x000500C5, 0x00000011, + 0x00004451, 0x00005476, 0x00005E1D, 0x000500C5, 0x00000011, 0x00004527, + 0x00004451, 0x000007DE, 0x000500C7, 0x00000011, 0x000045CF, 0x0000431E, + 0x00000A7A, 0x000500C7, 0x00000011, 0x00003EDB, 0x0000431E, 0x000007DE, + 0x000500C2, 0x00000011, 0x0000520D, 0x00003EDB, 0x0000085F, 0x00050051, + 0x0000000B, 0x00001CFF, 0x000045CF, 0x00000000, 0x00050051, 0x0000000B, + 0x00005FDE, 0x000045CF, 0x00000001, 0x00050051, 0x0000000B, 0x00001DDC, + 0x0000520D, 0x00000000, 0x00050051, 0x0000000B, 0x00001E76, 0x0000520D, + 0x00000001, 0x00070050, 0x00000017, 0x00003F24, 0x00001CFF, 0x00005FDE, + 0x00001DDC, 0x00001E76, 0x0009004F, 0x00000017, 0x00001E61, 0x00003F24, + 0x00003F24, 0x00000000, 0x00000002, 0x00000001, 0x00000003, 0x0009004F, + 0x00000017, 0x00001E6F, 0x00004527, 0x00004527, 0x00000000, 0x00000000, + 0x00000001, 0x00000001, 0x000500C5, 0x00000017, 0x0000363E, 0x00001E6F, + 0x00001E61, 0x00050080, 0x0000000B, 0x0000459A, 0x000054A6, 0x00000A10, + 0x00060041, 0x00000294, 0x00001929, 0x0000140E, 0x00000A0B, 0x0000459A, + 0x0003003E, 0x00001929, 0x0000614E, 0x00050080, 0x0000000B, 0x00002CC2, + 0x000054A6, 0x00000A13, 0x00060041, 0x00000294, 0x00006256, 0x0000140E, + 0x00000A0B, 0x00002CC2, 0x0003003E, 0x00006256, 0x0000363E, 0x000200F9, + 0x00004C7A, 0x000200F8, 0x00004C7A, 0x000100FD, 0x00010038, +}; diff --git a/src/xenia/gpu/shaders/bytecode/vulkan_spirv/texture_load_bgrg8_rgbg8_scaled_cs.h b/src/xenia/gpu/shaders/bytecode/vulkan_spirv/texture_load_bgrg8_rgbg8_scaled_cs.h deleted file mode 100644 index 4a7d6e237..000000000 --- a/src/xenia/gpu/shaders/bytecode/vulkan_spirv/texture_load_bgrg8_rgbg8_scaled_cs.h +++ /dev/null @@ -1,689 +0,0 @@ -// Generated with `xb buildshaders`. -#if 0 -; SPIR-V -; Version: 1.0 -; Generator: Khronos Glslang Reference Front End; 10 -; Bound: 25179 -; Schema: 0 - OpCapability Shader - %1 = OpExtInstImport "GLSL.std.450" - OpMemoryModel Logical GLSL450 - OpEntryPoint GLCompute %5663 "main" %gl_GlobalInvocationID - OpExecutionMode %5663 LocalSize 4 32 1 - OpMemberDecorate %_struct_1161 0 Offset 0 - OpMemberDecorate %_struct_1161 1 Offset 4 - OpMemberDecorate %_struct_1161 2 Offset 8 - OpMemberDecorate %_struct_1161 3 Offset 12 - OpMemberDecorate %_struct_1161 4 Offset 16 - OpMemberDecorate %_struct_1161 5 Offset 28 - OpMemberDecorate %_struct_1161 6 Offset 32 - OpMemberDecorate %_struct_1161 7 Offset 36 - OpDecorate %_struct_1161 Block - OpDecorate %5245 DescriptorSet 2 - OpDecorate %5245 Binding 0 - OpDecorate %gl_GlobalInvocationID BuiltIn GlobalInvocationId - OpDecorate %_runtimearr_v4uint ArrayStride 16 - OpMemberDecorate %_struct_1972 0 NonWritable - OpMemberDecorate %_struct_1972 0 Offset 0 - OpDecorate %_struct_1972 BufferBlock - OpDecorate %4218 DescriptorSet 1 - OpDecorate %4218 Binding 0 - OpDecorate %_runtimearr_v4uint_0 ArrayStride 16 - OpMemberDecorate %_struct_1973 0 NonReadable - OpMemberDecorate %_struct_1973 0 Offset 0 - OpDecorate %_struct_1973 BufferBlock - OpDecorate %5134 DescriptorSet 0 - OpDecorate %5134 Binding 0 - OpDecorate %gl_WorkGroupSize BuiltIn WorkgroupSize - %void = OpTypeVoid - %1282 = OpTypeFunction %void - %uint = OpTypeInt 32 0 - %v4uint = OpTypeVector %uint 4 - %int = OpTypeInt 32 1 - %v2int = OpTypeVector %int 2 - %v3int = OpTypeVector %int 3 - %bool = OpTypeBool - %v3uint = OpTypeVector %uint 3 - %v2uint = OpTypeVector %uint 2 -%uint_4278255360 = OpConstant %uint 4278255360 - %uint_255 = OpConstant %uint 255 - %uint_16 = OpConstant %uint 16 -%uint_16711680 = OpConstant %uint 16711680 - %uint_1 = OpConstant %uint 1 - %uint_2 = OpConstant %uint 2 -%uint_16711935 = OpConstant %uint 16711935 - %uint_8 = OpConstant %uint 8 - %uint_3 = OpConstant %uint 3 - %uint_0 = OpConstant %uint 0 - %int_5 = OpConstant %int 5 - %uint_5 = OpConstant %uint 5 - %int_7 = OpConstant %int 7 - %int_14 = OpConstant %int 14 - %int_2 = OpConstant %int 2 - %int_n16 = OpConstant %int -16 - %int_1 = OpConstant %int 1 - %int_15 = OpConstant %int 15 - %int_4 = OpConstant %int 4 - %int_n512 = OpConstant %int -512 - %int_3 = OpConstant %int 3 - %int_16 = OpConstant %int 16 - %int_448 = OpConstant %int 448 - %int_8 = OpConstant %int 8 - %int_6 = OpConstant %int 6 - %int_63 = OpConstant %int 63 - %uint_4 = OpConstant %uint 4 - %uint_6 = OpConstant %uint 6 -%int_268435455 = OpConstant %int 268435455 - %int_n2 = OpConstant %int -2 - %uint_32 = OpConstant %uint 32 -%_struct_1161 = OpTypeStruct %uint %uint %uint %uint %v3uint %uint %uint %uint -%_ptr_Uniform__struct_1161 = OpTypePointer Uniform %_struct_1161 - %5245 = OpVariable %_ptr_Uniform__struct_1161 Uniform - %int_0 = OpConstant %int 0 -%_ptr_Uniform_uint = OpTypePointer Uniform %uint - %1915 = OpConstantComposite %v2uint %uint_4 %uint_6 -%_ptr_Uniform_v3uint = OpTypePointer Uniform %v3uint -%_ptr_Input_v3uint = OpTypePointer Input %v3uint -%gl_GlobalInvocationID = OpVariable %_ptr_Input_v3uint Input - %2603 = OpConstantComposite %v3uint %uint_3 %uint_0 %uint_0 - %v2bool = OpTypeVector %bool 2 -%_runtimearr_v4uint = OpTypeRuntimeArray %v4uint -%_struct_1972 = OpTypeStruct %_runtimearr_v4uint -%_ptr_Uniform__struct_1972 = OpTypePointer Uniform %_struct_1972 - %4218 = OpVariable %_ptr_Uniform__struct_1972 Uniform -%_ptr_Uniform_v4uint = OpTypePointer Uniform %v4uint -%_runtimearr_v4uint_0 = OpTypeRuntimeArray %v4uint -%_struct_1973 = OpTypeStruct %_runtimearr_v4uint_0 -%_ptr_Uniform__struct_1973 = OpTypePointer Uniform %_struct_1973 - %5134 = OpVariable %_ptr_Uniform__struct_1973 Uniform -%gl_WorkGroupSize = OpConstantComposite %v3uint %uint_4 %uint_32 %uint_1 - %1870 = OpConstantComposite %v2uint %uint_3 %uint_3 - %uint_9 = OpConstant %uint 9 - %2510 = OpConstantComposite %v4uint %uint_16711935 %uint_16711935 %uint_16711935 %uint_16711935 - %317 = OpConstantComposite %v4uint %uint_8 %uint_8 %uint_8 %uint_8 - %1838 = OpConstantComposite %v4uint %uint_4278255360 %uint_4278255360 %uint_4278255360 %uint_4278255360 - %749 = OpConstantComposite %v4uint %uint_16 %uint_16 %uint_16 %uint_16 - %1611 = OpConstantComposite %v4uint %uint_255 %uint_255 %uint_255 %uint_255 - %784 = OpConstantComposite %v4uint %uint_16711680 %uint_16711680 %uint_16711680 %uint_16711680 - %5663 = OpFunction %void None %1282 - %15110 = OpLabel - OpSelectionMerge %19578 None - OpSwitch %uint_0 %15137 - %15137 = OpLabel - %12591 = OpLoad %v3uint %gl_GlobalInvocationID - %10229 = OpShiftLeftLogical %v3uint %12591 %2603 - %25178 = OpAccessChain %_ptr_Uniform_v3uint %5245 %int_4 - %22965 = OpLoad %v3uint %25178 - %18835 = OpVectorShuffle %v2uint %10229 %10229 0 1 - %6626 = OpVectorShuffle %v2uint %22965 %22965 0 1 - %17032 = OpUGreaterThanEqual %v2bool %18835 %6626 - %24679 = OpAny %bool %17032 - OpSelectionMerge %6282 DontFlatten - OpBranchConditional %24679 %21992 %6282 - %21992 = OpLabel - OpBranch %19578 - %6282 = OpLabel - %6795 = OpBitcast %v3int %10229 - %18792 = OpAccessChain %_ptr_Uniform_uint %5245 %int_6 - %9788 = OpLoad %uint %18792 - %20376 = OpCompositeExtract %uint %22965 1 - %14692 = OpCompositeExtract %int %6795 0 - %22810 = OpIMul %int %14692 %int_4 - %6362 = OpCompositeExtract %int %6795 2 - %14505 = OpBitcast %int %20376 - %11279 = OpIMul %int %6362 %14505 - %17598 = OpCompositeExtract %int %6795 1 - %22228 = OpIAdd %int %11279 %17598 - %22405 = OpBitcast %int %9788 - %24535 = OpIMul %int %22228 %22405 - %7061 = OpIAdd %int %22810 %24535 - %19270 = OpBitcast %uint %7061 - %19460 = OpAccessChain %_ptr_Uniform_uint %5245 %int_5 - %22875 = OpLoad %uint %19460 - %8517 = OpIAdd %uint %19270 %22875 - %21670 = OpShiftRightLogical %uint %8517 %uint_4 - %18404 = OpAccessChain %_ptr_Uniform_uint %5245 %int_1 - %23432 = OpLoad %uint %18404 - %22700 = OpAccessChain %_ptr_Uniform_uint %5245 %int_0 - %20387 = OpLoad %uint %22700 - %22279 = OpBitwiseAnd %uint %20387 %uint_2 - %19223 = OpINotEqual %bool %22279 %uint_0 - %17247 = OpCompositeConstruct %v2uint %20387 %20387 - %22947 = OpShiftRightLogical %v2uint %17247 %1915 - %6551 = OpBitwiseAnd %v2uint %22947 %1870 - %18732 = OpAccessChain %_ptr_Uniform_uint %5245 %int_2 - %24236 = OpLoad %uint %18732 - %20458 = OpAccessChain %_ptr_Uniform_uint %5245 %int_3 - %22167 = OpLoad %uint %20458 - %18929 = OpCompositeExtract %uint %10229 0 - %6638 = OpShiftRightLogical %uint %18929 %uint_2 - %9988 = OpCompositeExtract %uint %10229 1 - %23563 = OpCompositeConstruct %v2uint %6638 %9988 - %8041 = OpUDiv %v2uint %23563 %6551 - %13932 = OpCompositeExtract %uint %8041 0 - %19789 = OpShiftLeftLogical %uint %13932 %uint_2 - %20905 = OpCompositeExtract %uint %8041 1 - %23022 = OpCompositeExtract %uint %10229 2 - %9417 = OpCompositeConstruct %v3uint %19789 %20905 %23022 - OpSelectionMerge %21313 DontFlatten - OpBranchConditional %19223 %21373 %11737 - %21373 = OpLabel - %10608 = OpBitcast %v3int %9417 - %17090 = OpCompositeExtract %int %10608 1 - %9469 = OpShiftRightArithmetic %int %17090 %int_4 - %10055 = OpCompositeExtract %int %10608 2 - %16476 = OpShiftRightArithmetic %int %10055 %int_2 - %23373 = OpShiftRightLogical %uint %22167 %uint_4 - %6314 = OpBitcast %int %23373 - %21281 = OpIMul %int %16476 %6314 - %15143 = OpIAdd %int %9469 %21281 - %9032 = OpShiftRightLogical %uint %24236 %uint_5 - %12427 = OpBitcast %int %9032 - %10360 = OpIMul %int %15143 %12427 - %25154 = OpCompositeExtract %int %10608 0 - %20423 = OpShiftRightArithmetic %int %25154 %int_5 - %18940 = OpIAdd %int %20423 %10360 - %8797 = OpShiftLeftLogical %int %18940 %uint_8 - %11510 = OpBitwiseAnd %int %8797 %int_268435455 - %18938 = OpShiftLeftLogical %int %11510 %int_1 - %19768 = OpBitwiseAnd %int %25154 %int_7 - %12600 = OpBitwiseAnd %int %17090 %int_6 - %17741 = OpShiftLeftLogical %int %12600 %int_2 - %17227 = OpIAdd %int %19768 %17741 - %7048 = OpShiftLeftLogical %int %17227 %uint_8 - %24035 = OpShiftRightArithmetic %int %7048 %int_6 - %8725 = OpShiftRightArithmetic %int %17090 %int_3 - %13731 = OpIAdd %int %8725 %16476 - %23052 = OpBitwiseAnd %int %13731 %int_1 - %16658 = OpShiftRightArithmetic %int %25154 %int_3 - %18794 = OpShiftLeftLogical %int %23052 %int_1 - %13501 = OpIAdd %int %16658 %18794 - %19165 = OpBitwiseAnd %int %13501 %int_3 - %21578 = OpShiftLeftLogical %int %19165 %int_1 - %15435 = OpIAdd %int %23052 %21578 - %13150 = OpBitwiseAnd %int %24035 %int_n16 - %20336 = OpIAdd %int %18938 %13150 - %23345 = OpShiftLeftLogical %int %20336 %int_1 - %23274 = OpBitwiseAnd %int %24035 %int_15 - %10332 = OpIAdd %int %23345 %23274 - %18356 = OpBitwiseAnd %int %10055 %int_3 - %21579 = OpShiftLeftLogical %int %18356 %uint_8 - %16727 = OpIAdd %int %10332 %21579 - %19166 = OpBitwiseAnd %int %17090 %int_1 - %21580 = OpShiftLeftLogical %int %19166 %int_4 - %16728 = OpIAdd %int %16727 %21580 - %20438 = OpBitwiseAnd %int %15435 %int_1 - %9987 = OpShiftLeftLogical %int %20438 %int_3 - %13106 = OpShiftRightArithmetic %int %16728 %int_6 - %14038 = OpBitwiseAnd %int %13106 %int_7 - %13330 = OpIAdd %int %9987 %14038 - %23346 = OpShiftLeftLogical %int %13330 %int_3 - %23217 = OpBitwiseAnd %int %15435 %int_n2 - %10908 = OpIAdd %int %23346 %23217 - %23347 = OpShiftLeftLogical %int %10908 %int_2 - %23218 = OpBitwiseAnd %int %16728 %int_n512 - %10909 = OpIAdd %int %23347 %23218 - %23348 = OpShiftLeftLogical %int %10909 %int_3 - %21849 = OpBitwiseAnd %int %16728 %int_63 - %24314 = OpIAdd %int %23348 %21849 - %22127 = OpBitcast %uint %24314 - OpBranch %21313 - %11737 = OpLabel - %9761 = OpVectorShuffle %v2uint %9417 %9417 0 1 - %22991 = OpBitcast %v2int %9761 - %6403 = OpCompositeExtract %int %22991 0 - %9470 = OpShiftRightArithmetic %int %6403 %int_5 - %10056 = OpCompositeExtract %int %22991 1 - %16477 = OpShiftRightArithmetic %int %10056 %int_5 - %23374 = OpShiftRightLogical %uint %24236 %uint_5 - %6315 = OpBitcast %int %23374 - %21319 = OpIMul %int %16477 %6315 - %16222 = OpIAdd %int %9470 %21319 - %19086 = OpShiftLeftLogical %int %16222 %uint_9 - %10934 = OpBitwiseAnd %int %6403 %int_7 - %12601 = OpBitwiseAnd %int %10056 %int_14 - %17742 = OpShiftLeftLogical %int %12601 %int_2 - %17303 = OpIAdd %int %10934 %17742 - %6375 = OpShiftLeftLogical %int %17303 %uint_2 - %10161 = OpBitwiseAnd %int %6375 %int_n16 - %12150 = OpShiftLeftLogical %int %10161 %int_1 - %15436 = OpIAdd %int %19086 %12150 - %13207 = OpBitwiseAnd %int %6375 %int_15 - %19760 = OpIAdd %int %15436 %13207 - %18357 = OpBitwiseAnd %int %10056 %int_1 - %21581 = OpShiftLeftLogical %int %18357 %int_4 - %16729 = OpIAdd %int %19760 %21581 - %20514 = OpBitwiseAnd %int %16729 %int_n512 - %9238 = OpShiftLeftLogical %int %20514 %int_3 - %18995 = OpBitwiseAnd %int %10056 %int_16 - %12151 = OpShiftLeftLogical %int %18995 %int_7 - %16730 = OpIAdd %int %9238 %12151 - %19167 = OpBitwiseAnd %int %16729 %int_448 - %21582 = OpShiftLeftLogical %int %19167 %int_2 - %16708 = OpIAdd %int %16730 %21582 - %20611 = OpBitwiseAnd %int %10056 %int_8 - %16831 = OpShiftRightArithmetic %int %20611 %int_2 - %7916 = OpShiftRightArithmetic %int %6403 %int_3 - %13750 = OpIAdd %int %16831 %7916 - %21587 = OpBitwiseAnd %int %13750 %int_3 - %21583 = OpShiftLeftLogical %int %21587 %int_6 - %15437 = OpIAdd %int %16708 %21583 - %11782 = OpBitwiseAnd %int %16729 %int_63 - %14671 = OpIAdd %int %15437 %11782 - %22128 = OpBitcast %uint %14671 - OpBranch %21313 - %21313 = OpLabel - %9468 = OpPhi %uint %22127 %21373 %22128 %11737 - %16296 = OpIMul %v2uint %8041 %6551 - %15292 = OpISub %v2uint %23563 %16296 - %7303 = OpCompositeExtract %uint %6551 0 - %22882 = OpCompositeExtract %uint %6551 1 - %13170 = OpIMul %uint %7303 %22882 - %15520 = OpIMul %uint %9468 %13170 - %16084 = OpCompositeExtract %uint %15292 0 - %15890 = OpIMul %uint %16084 %22882 - %6886 = OpCompositeExtract %uint %15292 1 - %11045 = OpIAdd %uint %15890 %6886 - %24733 = OpShiftLeftLogical %uint %11045 %uint_2 - %23219 = OpBitwiseAnd %uint %18929 %uint_3 - %9559 = OpIAdd %uint %24733 %23219 - %16557 = OpShiftLeftLogical %uint %9559 %uint_2 - %20138 = OpIAdd %uint %15520 %16557 - %17724 = OpIAdd %uint %23432 %20138 - %14040 = OpShiftRightLogical %uint %17724 %uint_4 - %11766 = OpShiftRightLogical %uint %20387 %uint_2 - %8394 = OpBitwiseAnd %uint %11766 %uint_3 - %20727 = OpAccessChain %_ptr_Uniform_v4uint %4218 %int_0 %14040 - %8142 = OpLoad %v4uint %20727 - %13760 = OpIEqual %bool %8394 %uint_1 - %21366 = OpIEqual %bool %8394 %uint_2 - %22150 = OpLogicalOr %bool %13760 %21366 - OpSelectionMerge %13411 None - OpBranchConditional %22150 %10583 %13411 - %10583 = OpLabel - %18271 = OpBitwiseAnd %v4uint %8142 %2510 - %9425 = OpShiftLeftLogical %v4uint %18271 %317 - %20652 = OpBitwiseAnd %v4uint %8142 %1838 - %17549 = OpShiftRightLogical %v4uint %20652 %317 - %16376 = OpBitwiseOr %v4uint %9425 %17549 - OpBranch %13411 - %13411 = OpLabel - %22649 = OpPhi %v4uint %8142 %21313 %16376 %10583 - %19638 = OpIEqual %bool %8394 %uint_3 - %15139 = OpLogicalOr %bool %21366 %19638 - OpSelectionMerge %13962 None - OpBranchConditional %15139 %11064 %13962 - %11064 = OpLabel - %24087 = OpShiftLeftLogical %v4uint %22649 %749 - %15335 = OpShiftRightLogical %v4uint %22649 %749 - %10728 = OpBitwiseOr %v4uint %24087 %15335 - OpBranch %13962 - %13962 = OpLabel - %18259 = OpPhi %v4uint %22649 %13411 %10728 %11064 - %23286 = OpBitwiseAnd %v4uint %18259 %1838 - %24373 = OpBitwiseAnd %v4uint %18259 %1611 - %24932 = OpShiftLeftLogical %v4uint %24373 %749 - %17045 = OpBitwiseOr %v4uint %23286 %24932 - %21212 = OpBitwiseAnd %v4uint %18259 %784 - %18088 = OpShiftRightLogical %v4uint %21212 %749 - %6532 = OpBitwiseOr %v4uint %17045 %18088 - %20254 = OpAccessChain %_ptr_Uniform_v4uint %5134 %int_0 %21670 - OpStore %20254 %6532 - %15532 = OpIAdd %uint %21670 %int_1 - %6417 = OpUGreaterThan %bool %7303 %uint_1 - OpSelectionMerge %24764 DontFlatten - OpBranchConditional %6417 %20612 %20628 - %20612 = OpLabel - %13975 = OpUDiv %uint %6638 %7303 - %9086 = OpIMul %uint %13975 %7303 - %12657 = OpISub %uint %6638 %9086 - %9511 = OpIAdd %uint %12657 %uint_1 - %13375 = OpIEqual %bool %9511 %7303 - OpSelectionMerge %7917 None - OpBranchConditional %13375 %22174 %8593 - %22174 = OpLabel - %19289 = OpIMul %uint %uint_32 %7303 - %21519 = OpShiftLeftLogical %uint %12657 %uint_4 - %18756 = OpISub %uint %19289 %21519 - OpBranch %7917 - %8593 = OpLabel - OpBranch %7917 - %7917 = OpLabel - %10540 = OpPhi %uint %18756 %22174 %uint_16 %8593 - OpBranch %24764 - %20628 = OpLabel - OpBranch %24764 - %24764 = OpLabel - %10684 = OpPhi %uint %10540 %7917 %uint_32 %20628 - %18731 = OpIMul %uint %10684 %22882 - %16493 = OpShiftRightLogical %uint %18731 %uint_4 - %13163 = OpIAdd %uint %14040 %16493 - %22298 = OpAccessChain %_ptr_Uniform_v4uint %4218 %int_0 %13163 - %6578 = OpLoad %v4uint %22298 - OpSelectionMerge %14874 None - OpBranchConditional %22150 %10584 %14874 - %10584 = OpLabel - %18272 = OpBitwiseAnd %v4uint %6578 %2510 - %9426 = OpShiftLeftLogical %v4uint %18272 %317 - %20653 = OpBitwiseAnd %v4uint %6578 %1838 - %17550 = OpShiftRightLogical %v4uint %20653 %317 - %16377 = OpBitwiseOr %v4uint %9426 %17550 - OpBranch %14874 - %14874 = OpLabel - %10924 = OpPhi %v4uint %6578 %24764 %16377 %10584 - OpSelectionMerge %13963 None - OpBranchConditional %15139 %11065 %13963 - %11065 = OpLabel - %24088 = OpShiftLeftLogical %v4uint %10924 %749 - %15336 = OpShiftRightLogical %v4uint %10924 %749 - %10729 = OpBitwiseOr %v4uint %24088 %15336 - OpBranch %13963 - %13963 = OpLabel - %18260 = OpPhi %v4uint %10924 %14874 %10729 %11065 - %23287 = OpBitwiseAnd %v4uint %18260 %1838 - %24374 = OpBitwiseAnd %v4uint %18260 %1611 - %24933 = OpShiftLeftLogical %v4uint %24374 %749 - %17046 = OpBitwiseOr %v4uint %23287 %24933 - %21213 = OpBitwiseAnd %v4uint %18260 %784 - %18089 = OpShiftRightLogical %v4uint %21213 %749 - %6533 = OpBitwiseOr %v4uint %17046 %18089 - %22553 = OpAccessChain %_ptr_Uniform_v4uint %5134 %int_0 %15532 - OpStore %22553 %6533 - OpBranch %19578 - %19578 = OpLabel - OpReturn - OpFunctionEnd -#endif - -const uint32_t texture_load_bgrg8_rgbg8_scaled_cs[] = { - 0x07230203, 0x00010000, 0x0008000A, 0x0000625B, 0x00000000, 0x00020011, - 0x00000001, 0x0006000B, 0x00000001, 0x4C534C47, 0x6474732E, 0x3035342E, - 0x00000000, 0x0003000E, 0x00000000, 0x00000001, 0x0006000F, 0x00000005, - 0x0000161F, 0x6E69616D, 0x00000000, 0x00000F48, 0x00060010, 0x0000161F, - 0x00000011, 0x00000004, 0x00000020, 0x00000001, 0x00050048, 0x00000489, - 0x00000000, 0x00000023, 0x00000000, 0x00050048, 0x00000489, 0x00000001, - 0x00000023, 0x00000004, 0x00050048, 0x00000489, 0x00000002, 0x00000023, - 0x00000008, 0x00050048, 0x00000489, 0x00000003, 0x00000023, 0x0000000C, - 0x00050048, 0x00000489, 0x00000004, 0x00000023, 0x00000010, 0x00050048, - 0x00000489, 0x00000005, 0x00000023, 0x0000001C, 0x00050048, 0x00000489, - 0x00000006, 0x00000023, 0x00000020, 0x00050048, 0x00000489, 0x00000007, - 0x00000023, 0x00000024, 0x00030047, 0x00000489, 0x00000002, 0x00040047, - 0x0000147D, 0x00000022, 0x00000002, 0x00040047, 0x0000147D, 0x00000021, - 0x00000000, 0x00040047, 0x00000F48, 0x0000000B, 0x0000001C, 0x00040047, - 0x000007DC, 0x00000006, 0x00000010, 0x00040048, 0x000007B4, 0x00000000, - 0x00000018, 0x00050048, 0x000007B4, 0x00000000, 0x00000023, 0x00000000, - 0x00030047, 0x000007B4, 0x00000003, 0x00040047, 0x0000107A, 0x00000022, - 0x00000001, 0x00040047, 0x0000107A, 0x00000021, 0x00000000, 0x00040047, - 0x000007DD, 0x00000006, 0x00000010, 0x00040048, 0x000007B5, 0x00000000, - 0x00000019, 0x00050048, 0x000007B5, 0x00000000, 0x00000023, 0x00000000, - 0x00030047, 0x000007B5, 0x00000003, 0x00040047, 0x0000140E, 0x00000022, - 0x00000000, 0x00040047, 0x0000140E, 0x00000021, 0x00000000, 0x00040047, - 0x00000BC3, 0x0000000B, 0x00000019, 0x00020013, 0x00000008, 0x00030021, - 0x00000502, 0x00000008, 0x00040015, 0x0000000B, 0x00000020, 0x00000000, - 0x00040017, 0x00000017, 0x0000000B, 0x00000004, 0x00040015, 0x0000000C, - 0x00000020, 0x00000001, 0x00040017, 0x00000012, 0x0000000C, 0x00000002, - 0x00040017, 0x00000016, 0x0000000C, 0x00000003, 0x00020014, 0x00000009, - 0x00040017, 0x00000014, 0x0000000B, 0x00000003, 0x00040017, 0x00000011, - 0x0000000B, 0x00000002, 0x0004002B, 0x0000000B, 0x000005FD, 0xFF00FF00, - 0x0004002B, 0x0000000B, 0x00000144, 0x000000FF, 0x0004002B, 0x0000000B, - 0x00000A3A, 0x00000010, 0x0004002B, 0x0000000B, 0x000005A9, 0x00FF0000, - 0x0004002B, 0x0000000B, 0x00000A0D, 0x00000001, 0x0004002B, 0x0000000B, - 0x00000A10, 0x00000002, 0x0004002B, 0x0000000B, 0x000008A6, 0x00FF00FF, - 0x0004002B, 0x0000000B, 0x00000A22, 0x00000008, 0x0004002B, 0x0000000B, - 0x00000A13, 0x00000003, 0x0004002B, 0x0000000B, 0x00000A0A, 0x00000000, - 0x0004002B, 0x0000000C, 0x00000A1A, 0x00000005, 0x0004002B, 0x0000000B, - 0x00000A19, 0x00000005, 0x0004002B, 0x0000000C, 0x00000A20, 0x00000007, - 0x0004002B, 0x0000000C, 0x00000A35, 0x0000000E, 0x0004002B, 0x0000000C, - 0x00000A11, 0x00000002, 0x0004002B, 0x0000000C, 0x000009DB, 0xFFFFFFF0, - 0x0004002B, 0x0000000C, 0x00000A0E, 0x00000001, 0x0004002B, 0x0000000C, - 0x00000A38, 0x0000000F, 0x0004002B, 0x0000000C, 0x00000A17, 0x00000004, - 0x0004002B, 0x0000000C, 0x0000040B, 0xFFFFFE00, 0x0004002B, 0x0000000C, - 0x00000A14, 0x00000003, 0x0004002B, 0x0000000C, 0x00000A3B, 0x00000010, - 0x0004002B, 0x0000000C, 0x00000388, 0x000001C0, 0x0004002B, 0x0000000C, - 0x00000A23, 0x00000008, 0x0004002B, 0x0000000C, 0x00000A1D, 0x00000006, - 0x0004002B, 0x0000000C, 0x00000AC8, 0x0000003F, 0x0004002B, 0x0000000B, - 0x00000A16, 0x00000004, 0x0004002B, 0x0000000B, 0x00000A1C, 0x00000006, - 0x0004002B, 0x0000000C, 0x0000078B, 0x0FFFFFFF, 0x0004002B, 0x0000000C, - 0x00000A05, 0xFFFFFFFE, 0x0004002B, 0x0000000B, 0x00000A6A, 0x00000020, - 0x000A001E, 0x00000489, 0x0000000B, 0x0000000B, 0x0000000B, 0x0000000B, - 0x00000014, 0x0000000B, 0x0000000B, 0x0000000B, 0x00040020, 0x00000706, - 0x00000002, 0x00000489, 0x0004003B, 0x00000706, 0x0000147D, 0x00000002, - 0x0004002B, 0x0000000C, 0x00000A0B, 0x00000000, 0x00040020, 0x00000288, - 0x00000002, 0x0000000B, 0x0005002C, 0x00000011, 0x0000077B, 0x00000A16, - 0x00000A1C, 0x00040020, 0x00000291, 0x00000002, 0x00000014, 0x00040020, - 0x00000292, 0x00000001, 0x00000014, 0x0004003B, 0x00000292, 0x00000F48, - 0x00000001, 0x0006002C, 0x00000014, 0x00000A2B, 0x00000A13, 0x00000A0A, - 0x00000A0A, 0x00040017, 0x0000000F, 0x00000009, 0x00000002, 0x0003001D, - 0x000007DC, 0x00000017, 0x0003001E, 0x000007B4, 0x000007DC, 0x00040020, - 0x00000A31, 0x00000002, 0x000007B4, 0x0004003B, 0x00000A31, 0x0000107A, - 0x00000002, 0x00040020, 0x00000294, 0x00000002, 0x00000017, 0x0003001D, - 0x000007DD, 0x00000017, 0x0003001E, 0x000007B5, 0x000007DD, 0x00040020, - 0x00000A32, 0x00000002, 0x000007B5, 0x0004003B, 0x00000A32, 0x0000140E, - 0x00000002, 0x0006002C, 0x00000014, 0x00000BC3, 0x00000A16, 0x00000A6A, - 0x00000A0D, 0x0005002C, 0x00000011, 0x0000074E, 0x00000A13, 0x00000A13, - 0x0004002B, 0x0000000B, 0x00000A25, 0x00000009, 0x0007002C, 0x00000017, - 0x000009CE, 0x000008A6, 0x000008A6, 0x000008A6, 0x000008A6, 0x0007002C, - 0x00000017, 0x0000013D, 0x00000A22, 0x00000A22, 0x00000A22, 0x00000A22, - 0x0007002C, 0x00000017, 0x0000072E, 0x000005FD, 0x000005FD, 0x000005FD, - 0x000005FD, 0x0007002C, 0x00000017, 0x000002ED, 0x00000A3A, 0x00000A3A, - 0x00000A3A, 0x00000A3A, 0x0007002C, 0x00000017, 0x0000064B, 0x00000144, - 0x00000144, 0x00000144, 0x00000144, 0x0007002C, 0x00000017, 0x00000310, - 0x000005A9, 0x000005A9, 0x000005A9, 0x000005A9, 0x00050036, 0x00000008, - 0x0000161F, 0x00000000, 0x00000502, 0x000200F8, 0x00003B06, 0x000300F7, - 0x00004C7A, 0x00000000, 0x000300FB, 0x00000A0A, 0x00003B21, 0x000200F8, - 0x00003B21, 0x0004003D, 0x00000014, 0x0000312F, 0x00000F48, 0x000500C4, - 0x00000014, 0x000027F5, 0x0000312F, 0x00000A2B, 0x00050041, 0x00000291, - 0x0000625A, 0x0000147D, 0x00000A17, 0x0004003D, 0x00000014, 0x000059B5, - 0x0000625A, 0x0007004F, 0x00000011, 0x00004993, 0x000027F5, 0x000027F5, - 0x00000000, 0x00000001, 0x0007004F, 0x00000011, 0x000019E2, 0x000059B5, - 0x000059B5, 0x00000000, 0x00000001, 0x000500AE, 0x0000000F, 0x00004288, - 0x00004993, 0x000019E2, 0x0004009A, 0x00000009, 0x00006067, 0x00004288, - 0x000300F7, 0x0000188A, 0x00000002, 0x000400FA, 0x00006067, 0x000055E8, - 0x0000188A, 0x000200F8, 0x000055E8, 0x000200F9, 0x00004C7A, 0x000200F8, - 0x0000188A, 0x0004007C, 0x00000016, 0x00001A8B, 0x000027F5, 0x00050041, - 0x00000288, 0x00004968, 0x0000147D, 0x00000A1D, 0x0004003D, 0x0000000B, - 0x0000263C, 0x00004968, 0x00050051, 0x0000000B, 0x00004F98, 0x000059B5, - 0x00000001, 0x00050051, 0x0000000C, 0x00003964, 0x00001A8B, 0x00000000, - 0x00050084, 0x0000000C, 0x0000591A, 0x00003964, 0x00000A17, 0x00050051, - 0x0000000C, 0x000018DA, 0x00001A8B, 0x00000002, 0x0004007C, 0x0000000C, - 0x000038A9, 0x00004F98, 0x00050084, 0x0000000C, 0x00002C0F, 0x000018DA, - 0x000038A9, 0x00050051, 0x0000000C, 0x000044BE, 0x00001A8B, 0x00000001, - 0x00050080, 0x0000000C, 0x000056D4, 0x00002C0F, 0x000044BE, 0x0004007C, - 0x0000000C, 0x00005785, 0x0000263C, 0x00050084, 0x0000000C, 0x00005FD7, - 0x000056D4, 0x00005785, 0x00050080, 0x0000000C, 0x00001B95, 0x0000591A, - 0x00005FD7, 0x0004007C, 0x0000000B, 0x00004B46, 0x00001B95, 0x00050041, - 0x00000288, 0x00004C04, 0x0000147D, 0x00000A1A, 0x0004003D, 0x0000000B, - 0x0000595B, 0x00004C04, 0x00050080, 0x0000000B, 0x00002145, 0x00004B46, - 0x0000595B, 0x000500C2, 0x0000000B, 0x000054A6, 0x00002145, 0x00000A16, - 0x00050041, 0x00000288, 0x000047E4, 0x0000147D, 0x00000A0E, 0x0004003D, - 0x0000000B, 0x00005B88, 0x000047E4, 0x00050041, 0x00000288, 0x000058AC, - 0x0000147D, 0x00000A0B, 0x0004003D, 0x0000000B, 0x00004FA3, 0x000058AC, - 0x000500C7, 0x0000000B, 0x00005707, 0x00004FA3, 0x00000A10, 0x000500AB, - 0x00000009, 0x00004B17, 0x00005707, 0x00000A0A, 0x00050050, 0x00000011, - 0x0000435F, 0x00004FA3, 0x00004FA3, 0x000500C2, 0x00000011, 0x000059A3, - 0x0000435F, 0x0000077B, 0x000500C7, 0x00000011, 0x00001997, 0x000059A3, - 0x0000074E, 0x00050041, 0x00000288, 0x0000492C, 0x0000147D, 0x00000A11, - 0x0004003D, 0x0000000B, 0x00005EAC, 0x0000492C, 0x00050041, 0x00000288, - 0x00004FEA, 0x0000147D, 0x00000A14, 0x0004003D, 0x0000000B, 0x00005697, - 0x00004FEA, 0x00050051, 0x0000000B, 0x000049F1, 0x000027F5, 0x00000000, - 0x000500C2, 0x0000000B, 0x000019EE, 0x000049F1, 0x00000A10, 0x00050051, - 0x0000000B, 0x00002704, 0x000027F5, 0x00000001, 0x00050050, 0x00000011, - 0x00005C0B, 0x000019EE, 0x00002704, 0x00050086, 0x00000011, 0x00001F69, - 0x00005C0B, 0x00001997, 0x00050051, 0x0000000B, 0x0000366C, 0x00001F69, - 0x00000000, 0x000500C4, 0x0000000B, 0x00004D4D, 0x0000366C, 0x00000A10, - 0x00050051, 0x0000000B, 0x000051A9, 0x00001F69, 0x00000001, 0x00050051, - 0x0000000B, 0x000059EE, 0x000027F5, 0x00000002, 0x00060050, 0x00000014, - 0x000024C9, 0x00004D4D, 0x000051A9, 0x000059EE, 0x000300F7, 0x00005341, - 0x00000002, 0x000400FA, 0x00004B17, 0x0000537D, 0x00002DD9, 0x000200F8, - 0x0000537D, 0x0004007C, 0x00000016, 0x00002970, 0x000024C9, 0x00050051, - 0x0000000C, 0x000042C2, 0x00002970, 0x00000001, 0x000500C3, 0x0000000C, - 0x000024FD, 0x000042C2, 0x00000A17, 0x00050051, 0x0000000C, 0x00002747, - 0x00002970, 0x00000002, 0x000500C3, 0x0000000C, 0x0000405C, 0x00002747, - 0x00000A11, 0x000500C2, 0x0000000B, 0x00005B4D, 0x00005697, 0x00000A16, - 0x0004007C, 0x0000000C, 0x000018AA, 0x00005B4D, 0x00050084, 0x0000000C, - 0x00005321, 0x0000405C, 0x000018AA, 0x00050080, 0x0000000C, 0x00003B27, - 0x000024FD, 0x00005321, 0x000500C2, 0x0000000B, 0x00002348, 0x00005EAC, - 0x00000A19, 0x0004007C, 0x0000000C, 0x0000308B, 0x00002348, 0x00050084, - 0x0000000C, 0x00002878, 0x00003B27, 0x0000308B, 0x00050051, 0x0000000C, - 0x00006242, 0x00002970, 0x00000000, 0x000500C3, 0x0000000C, 0x00004FC7, - 0x00006242, 0x00000A1A, 0x00050080, 0x0000000C, 0x000049FC, 0x00004FC7, - 0x00002878, 0x000500C4, 0x0000000C, 0x0000225D, 0x000049FC, 0x00000A22, - 0x000500C7, 0x0000000C, 0x00002CF6, 0x0000225D, 0x0000078B, 0x000500C4, - 0x0000000C, 0x000049FA, 0x00002CF6, 0x00000A0E, 0x000500C7, 0x0000000C, - 0x00004D38, 0x00006242, 0x00000A20, 0x000500C7, 0x0000000C, 0x00003138, - 0x000042C2, 0x00000A1D, 0x000500C4, 0x0000000C, 0x0000454D, 0x00003138, - 0x00000A11, 0x00050080, 0x0000000C, 0x0000434B, 0x00004D38, 0x0000454D, - 0x000500C4, 0x0000000C, 0x00001B88, 0x0000434B, 0x00000A22, 0x000500C3, - 0x0000000C, 0x00005DE3, 0x00001B88, 0x00000A1D, 0x000500C3, 0x0000000C, - 0x00002215, 0x000042C2, 0x00000A14, 0x00050080, 0x0000000C, 0x000035A3, - 0x00002215, 0x0000405C, 0x000500C7, 0x0000000C, 0x00005A0C, 0x000035A3, - 0x00000A0E, 0x000500C3, 0x0000000C, 0x00004112, 0x00006242, 0x00000A14, - 0x000500C4, 0x0000000C, 0x0000496A, 0x00005A0C, 0x00000A0E, 0x00050080, - 0x0000000C, 0x000034BD, 0x00004112, 0x0000496A, 0x000500C7, 0x0000000C, - 0x00004ADD, 0x000034BD, 0x00000A14, 0x000500C4, 0x0000000C, 0x0000544A, - 0x00004ADD, 0x00000A0E, 0x00050080, 0x0000000C, 0x00003C4B, 0x00005A0C, - 0x0000544A, 0x000500C7, 0x0000000C, 0x0000335E, 0x00005DE3, 0x000009DB, - 0x00050080, 0x0000000C, 0x00004F70, 0x000049FA, 0x0000335E, 0x000500C4, - 0x0000000C, 0x00005B31, 0x00004F70, 0x00000A0E, 0x000500C7, 0x0000000C, - 0x00005AEA, 0x00005DE3, 0x00000A38, 0x00050080, 0x0000000C, 0x0000285C, - 0x00005B31, 0x00005AEA, 0x000500C7, 0x0000000C, 0x000047B4, 0x00002747, - 0x00000A14, 0x000500C4, 0x0000000C, 0x0000544B, 0x000047B4, 0x00000A22, - 0x00050080, 0x0000000C, 0x00004157, 0x0000285C, 0x0000544B, 0x000500C7, - 0x0000000C, 0x00004ADE, 0x000042C2, 0x00000A0E, 0x000500C4, 0x0000000C, - 0x0000544C, 0x00004ADE, 0x00000A17, 0x00050080, 0x0000000C, 0x00004158, - 0x00004157, 0x0000544C, 0x000500C7, 0x0000000C, 0x00004FD6, 0x00003C4B, - 0x00000A0E, 0x000500C4, 0x0000000C, 0x00002703, 0x00004FD6, 0x00000A14, - 0x000500C3, 0x0000000C, 0x00003332, 0x00004158, 0x00000A1D, 0x000500C7, - 0x0000000C, 0x000036D6, 0x00003332, 0x00000A20, 0x00050080, 0x0000000C, - 0x00003412, 0x00002703, 0x000036D6, 0x000500C4, 0x0000000C, 0x00005B32, - 0x00003412, 0x00000A14, 0x000500C7, 0x0000000C, 0x00005AB1, 0x00003C4B, - 0x00000A05, 0x00050080, 0x0000000C, 0x00002A9C, 0x00005B32, 0x00005AB1, - 0x000500C4, 0x0000000C, 0x00005B33, 0x00002A9C, 0x00000A11, 0x000500C7, - 0x0000000C, 0x00005AB2, 0x00004158, 0x0000040B, 0x00050080, 0x0000000C, - 0x00002A9D, 0x00005B33, 0x00005AB2, 0x000500C4, 0x0000000C, 0x00005B34, - 0x00002A9D, 0x00000A14, 0x000500C7, 0x0000000C, 0x00005559, 0x00004158, - 0x00000AC8, 0x00050080, 0x0000000C, 0x00005EFA, 0x00005B34, 0x00005559, - 0x0004007C, 0x0000000B, 0x0000566F, 0x00005EFA, 0x000200F9, 0x00005341, - 0x000200F8, 0x00002DD9, 0x0007004F, 0x00000011, 0x00002621, 0x000024C9, - 0x000024C9, 0x00000000, 0x00000001, 0x0004007C, 0x00000012, 0x000059CF, - 0x00002621, 0x00050051, 0x0000000C, 0x00001903, 0x000059CF, 0x00000000, - 0x000500C3, 0x0000000C, 0x000024FE, 0x00001903, 0x00000A1A, 0x00050051, - 0x0000000C, 0x00002748, 0x000059CF, 0x00000001, 0x000500C3, 0x0000000C, - 0x0000405D, 0x00002748, 0x00000A1A, 0x000500C2, 0x0000000B, 0x00005B4E, - 0x00005EAC, 0x00000A19, 0x0004007C, 0x0000000C, 0x000018AB, 0x00005B4E, - 0x00050084, 0x0000000C, 0x00005347, 0x0000405D, 0x000018AB, 0x00050080, - 0x0000000C, 0x00003F5E, 0x000024FE, 0x00005347, 0x000500C4, 0x0000000C, - 0x00004A8E, 0x00003F5E, 0x00000A25, 0x000500C7, 0x0000000C, 0x00002AB6, - 0x00001903, 0x00000A20, 0x000500C7, 0x0000000C, 0x00003139, 0x00002748, - 0x00000A35, 0x000500C4, 0x0000000C, 0x0000454E, 0x00003139, 0x00000A11, - 0x00050080, 0x0000000C, 0x00004397, 0x00002AB6, 0x0000454E, 0x000500C4, - 0x0000000C, 0x000018E7, 0x00004397, 0x00000A10, 0x000500C7, 0x0000000C, - 0x000027B1, 0x000018E7, 0x000009DB, 0x000500C4, 0x0000000C, 0x00002F76, - 0x000027B1, 0x00000A0E, 0x00050080, 0x0000000C, 0x00003C4C, 0x00004A8E, - 0x00002F76, 0x000500C7, 0x0000000C, 0x00003397, 0x000018E7, 0x00000A38, - 0x00050080, 0x0000000C, 0x00004D30, 0x00003C4C, 0x00003397, 0x000500C7, - 0x0000000C, 0x000047B5, 0x00002748, 0x00000A0E, 0x000500C4, 0x0000000C, - 0x0000544D, 0x000047B5, 0x00000A17, 0x00050080, 0x0000000C, 0x00004159, - 0x00004D30, 0x0000544D, 0x000500C7, 0x0000000C, 0x00005022, 0x00004159, - 0x0000040B, 0x000500C4, 0x0000000C, 0x00002416, 0x00005022, 0x00000A14, - 0x000500C7, 0x0000000C, 0x00004A33, 0x00002748, 0x00000A3B, 0x000500C4, - 0x0000000C, 0x00002F77, 0x00004A33, 0x00000A20, 0x00050080, 0x0000000C, - 0x0000415A, 0x00002416, 0x00002F77, 0x000500C7, 0x0000000C, 0x00004ADF, - 0x00004159, 0x00000388, 0x000500C4, 0x0000000C, 0x0000544E, 0x00004ADF, - 0x00000A11, 0x00050080, 0x0000000C, 0x00004144, 0x0000415A, 0x0000544E, - 0x000500C7, 0x0000000C, 0x00005083, 0x00002748, 0x00000A23, 0x000500C3, - 0x0000000C, 0x000041BF, 0x00005083, 0x00000A11, 0x000500C3, 0x0000000C, - 0x00001EEC, 0x00001903, 0x00000A14, 0x00050080, 0x0000000C, 0x000035B6, - 0x000041BF, 0x00001EEC, 0x000500C7, 0x0000000C, 0x00005453, 0x000035B6, - 0x00000A14, 0x000500C4, 0x0000000C, 0x0000544F, 0x00005453, 0x00000A1D, - 0x00050080, 0x0000000C, 0x00003C4D, 0x00004144, 0x0000544F, 0x000500C7, - 0x0000000C, 0x00002E06, 0x00004159, 0x00000AC8, 0x00050080, 0x0000000C, - 0x0000394F, 0x00003C4D, 0x00002E06, 0x0004007C, 0x0000000B, 0x00005670, - 0x0000394F, 0x000200F9, 0x00005341, 0x000200F8, 0x00005341, 0x000700F5, - 0x0000000B, 0x000024FC, 0x0000566F, 0x0000537D, 0x00005670, 0x00002DD9, - 0x00050084, 0x00000011, 0x00003FA8, 0x00001F69, 0x00001997, 0x00050082, - 0x00000011, 0x00003BBC, 0x00005C0B, 0x00003FA8, 0x00050051, 0x0000000B, - 0x00001C87, 0x00001997, 0x00000000, 0x00050051, 0x0000000B, 0x00005962, - 0x00001997, 0x00000001, 0x00050084, 0x0000000B, 0x00003372, 0x00001C87, - 0x00005962, 0x00050084, 0x0000000B, 0x00003CA0, 0x000024FC, 0x00003372, - 0x00050051, 0x0000000B, 0x00003ED4, 0x00003BBC, 0x00000000, 0x00050084, - 0x0000000B, 0x00003E12, 0x00003ED4, 0x00005962, 0x00050051, 0x0000000B, - 0x00001AE6, 0x00003BBC, 0x00000001, 0x00050080, 0x0000000B, 0x00002B25, - 0x00003E12, 0x00001AE6, 0x000500C4, 0x0000000B, 0x0000609D, 0x00002B25, - 0x00000A10, 0x000500C7, 0x0000000B, 0x00005AB3, 0x000049F1, 0x00000A13, - 0x00050080, 0x0000000B, 0x00002557, 0x0000609D, 0x00005AB3, 0x000500C4, - 0x0000000B, 0x000040AD, 0x00002557, 0x00000A10, 0x00050080, 0x0000000B, - 0x00004EAA, 0x00003CA0, 0x000040AD, 0x00050080, 0x0000000B, 0x0000453C, - 0x00005B88, 0x00004EAA, 0x000500C2, 0x0000000B, 0x000036D8, 0x0000453C, - 0x00000A16, 0x000500C2, 0x0000000B, 0x00002DF6, 0x00004FA3, 0x00000A10, - 0x000500C7, 0x0000000B, 0x000020CA, 0x00002DF6, 0x00000A13, 0x00060041, - 0x00000294, 0x000050F7, 0x0000107A, 0x00000A0B, 0x000036D8, 0x0004003D, - 0x00000017, 0x00001FCE, 0x000050F7, 0x000500AA, 0x00000009, 0x000035C0, - 0x000020CA, 0x00000A0D, 0x000500AA, 0x00000009, 0x00005376, 0x000020CA, - 0x00000A10, 0x000500A6, 0x00000009, 0x00005686, 0x000035C0, 0x00005376, - 0x000300F7, 0x00003463, 0x00000000, 0x000400FA, 0x00005686, 0x00002957, - 0x00003463, 0x000200F8, 0x00002957, 0x000500C7, 0x00000017, 0x0000475F, - 0x00001FCE, 0x000009CE, 0x000500C4, 0x00000017, 0x000024D1, 0x0000475F, - 0x0000013D, 0x000500C7, 0x00000017, 0x000050AC, 0x00001FCE, 0x0000072E, - 0x000500C2, 0x00000017, 0x0000448D, 0x000050AC, 0x0000013D, 0x000500C5, - 0x00000017, 0x00003FF8, 0x000024D1, 0x0000448D, 0x000200F9, 0x00003463, - 0x000200F8, 0x00003463, 0x000700F5, 0x00000017, 0x00005879, 0x00001FCE, - 0x00005341, 0x00003FF8, 0x00002957, 0x000500AA, 0x00000009, 0x00004CB6, - 0x000020CA, 0x00000A13, 0x000500A6, 0x00000009, 0x00003B23, 0x00005376, - 0x00004CB6, 0x000300F7, 0x0000368A, 0x00000000, 0x000400FA, 0x00003B23, - 0x00002B38, 0x0000368A, 0x000200F8, 0x00002B38, 0x000500C4, 0x00000017, - 0x00005E17, 0x00005879, 0x000002ED, 0x000500C2, 0x00000017, 0x00003BE7, - 0x00005879, 0x000002ED, 0x000500C5, 0x00000017, 0x000029E8, 0x00005E17, - 0x00003BE7, 0x000200F9, 0x0000368A, 0x000200F8, 0x0000368A, 0x000700F5, - 0x00000017, 0x00004753, 0x00005879, 0x00003463, 0x000029E8, 0x00002B38, - 0x000500C7, 0x00000017, 0x00005AF6, 0x00004753, 0x0000072E, 0x000500C7, - 0x00000017, 0x00005F35, 0x00004753, 0x0000064B, 0x000500C4, 0x00000017, - 0x00006164, 0x00005F35, 0x000002ED, 0x000500C5, 0x00000017, 0x00004295, - 0x00005AF6, 0x00006164, 0x000500C7, 0x00000017, 0x000052DC, 0x00004753, - 0x00000310, 0x000500C2, 0x00000017, 0x000046A8, 0x000052DC, 0x000002ED, - 0x000500C5, 0x00000017, 0x00001984, 0x00004295, 0x000046A8, 0x00060041, - 0x00000294, 0x00004F1E, 0x0000140E, 0x00000A0B, 0x000054A6, 0x0003003E, - 0x00004F1E, 0x00001984, 0x00050080, 0x0000000B, 0x00003CAC, 0x000054A6, - 0x00000A0E, 0x000500AC, 0x00000009, 0x00001911, 0x00001C87, 0x00000A0D, - 0x000300F7, 0x000060BC, 0x00000002, 0x000400FA, 0x00001911, 0x00005084, - 0x00005094, 0x000200F8, 0x00005084, 0x00050086, 0x0000000B, 0x00003697, - 0x000019EE, 0x00001C87, 0x00050084, 0x0000000B, 0x0000237E, 0x00003697, - 0x00001C87, 0x00050082, 0x0000000B, 0x00003171, 0x000019EE, 0x0000237E, - 0x00050080, 0x0000000B, 0x00002527, 0x00003171, 0x00000A0D, 0x000500AA, - 0x00000009, 0x0000343F, 0x00002527, 0x00001C87, 0x000300F7, 0x00001EED, - 0x00000000, 0x000400FA, 0x0000343F, 0x0000569E, 0x00002191, 0x000200F8, - 0x0000569E, 0x00050084, 0x0000000B, 0x00004B59, 0x00000A6A, 0x00001C87, - 0x000500C4, 0x0000000B, 0x0000540F, 0x00003171, 0x00000A16, 0x00050082, - 0x0000000B, 0x00004944, 0x00004B59, 0x0000540F, 0x000200F9, 0x00001EED, - 0x000200F8, 0x00002191, 0x000200F9, 0x00001EED, 0x000200F8, 0x00001EED, - 0x000700F5, 0x0000000B, 0x0000292C, 0x00004944, 0x0000569E, 0x00000A3A, - 0x00002191, 0x000200F9, 0x000060BC, 0x000200F8, 0x00005094, 0x000200F9, - 0x000060BC, 0x000200F8, 0x000060BC, 0x000700F5, 0x0000000B, 0x000029BC, - 0x0000292C, 0x00001EED, 0x00000A6A, 0x00005094, 0x00050084, 0x0000000B, - 0x0000492B, 0x000029BC, 0x00005962, 0x000500C2, 0x0000000B, 0x0000406D, - 0x0000492B, 0x00000A16, 0x00050080, 0x0000000B, 0x0000336B, 0x000036D8, - 0x0000406D, 0x00060041, 0x00000294, 0x0000571A, 0x0000107A, 0x00000A0B, - 0x0000336B, 0x0004003D, 0x00000017, 0x000019B2, 0x0000571A, 0x000300F7, - 0x00003A1A, 0x00000000, 0x000400FA, 0x00005686, 0x00002958, 0x00003A1A, - 0x000200F8, 0x00002958, 0x000500C7, 0x00000017, 0x00004760, 0x000019B2, - 0x000009CE, 0x000500C4, 0x00000017, 0x000024D2, 0x00004760, 0x0000013D, - 0x000500C7, 0x00000017, 0x000050AD, 0x000019B2, 0x0000072E, 0x000500C2, - 0x00000017, 0x0000448E, 0x000050AD, 0x0000013D, 0x000500C5, 0x00000017, - 0x00003FF9, 0x000024D2, 0x0000448E, 0x000200F9, 0x00003A1A, 0x000200F8, - 0x00003A1A, 0x000700F5, 0x00000017, 0x00002AAC, 0x000019B2, 0x000060BC, - 0x00003FF9, 0x00002958, 0x000300F7, 0x0000368B, 0x00000000, 0x000400FA, - 0x00003B23, 0x00002B39, 0x0000368B, 0x000200F8, 0x00002B39, 0x000500C4, - 0x00000017, 0x00005E18, 0x00002AAC, 0x000002ED, 0x000500C2, 0x00000017, - 0x00003BE8, 0x00002AAC, 0x000002ED, 0x000500C5, 0x00000017, 0x000029E9, - 0x00005E18, 0x00003BE8, 0x000200F9, 0x0000368B, 0x000200F8, 0x0000368B, - 0x000700F5, 0x00000017, 0x00004754, 0x00002AAC, 0x00003A1A, 0x000029E9, - 0x00002B39, 0x000500C7, 0x00000017, 0x00005AF7, 0x00004754, 0x0000072E, - 0x000500C7, 0x00000017, 0x00005F36, 0x00004754, 0x0000064B, 0x000500C4, - 0x00000017, 0x00006165, 0x00005F36, 0x000002ED, 0x000500C5, 0x00000017, - 0x00004296, 0x00005AF7, 0x00006165, 0x000500C7, 0x00000017, 0x000052DD, - 0x00004754, 0x00000310, 0x000500C2, 0x00000017, 0x000046A9, 0x000052DD, - 0x000002ED, 0x000500C5, 0x00000017, 0x00001985, 0x00004296, 0x000046A9, - 0x00060041, 0x00000294, 0x00005819, 0x0000140E, 0x00000A0B, 0x00003CAC, - 0x0003003E, 0x00005819, 0x00001985, 0x000200F9, 0x00004C7A, 0x000200F8, - 0x00004C7A, 0x000100FD, 0x00010038, -}; diff --git a/src/xenia/gpu/shaders/bytecode/vulkan_spirv/texture_load_gbgr8_grgb8_scaled_cs.h b/src/xenia/gpu/shaders/bytecode/vulkan_spirv/texture_load_gbgr8_grgb8_scaled_cs.h deleted file mode 100644 index 57f33a7ae..000000000 --- a/src/xenia/gpu/shaders/bytecode/vulkan_spirv/texture_load_gbgr8_grgb8_scaled_cs.h +++ /dev/null @@ -1,689 +0,0 @@ -// Generated with `xb buildshaders`. -#if 0 -; SPIR-V -; Version: 1.0 -; Generator: Khronos Glslang Reference Front End; 10 -; Bound: 25179 -; Schema: 0 - OpCapability Shader - %1 = OpExtInstImport "GLSL.std.450" - OpMemoryModel Logical GLSL450 - OpEntryPoint GLCompute %5663 "main" %gl_GlobalInvocationID - OpExecutionMode %5663 LocalSize 4 32 1 - OpMemberDecorate %_struct_1161 0 Offset 0 - OpMemberDecorate %_struct_1161 1 Offset 4 - OpMemberDecorate %_struct_1161 2 Offset 8 - OpMemberDecorate %_struct_1161 3 Offset 12 - OpMemberDecorate %_struct_1161 4 Offset 16 - OpMemberDecorate %_struct_1161 5 Offset 28 - OpMemberDecorate %_struct_1161 6 Offset 32 - OpMemberDecorate %_struct_1161 7 Offset 36 - OpDecorate %_struct_1161 Block - OpDecorate %5245 DescriptorSet 2 - OpDecorate %5245 Binding 0 - OpDecorate %gl_GlobalInvocationID BuiltIn GlobalInvocationId - OpDecorate %_runtimearr_v4uint ArrayStride 16 - OpMemberDecorate %_struct_1972 0 NonWritable - OpMemberDecorate %_struct_1972 0 Offset 0 - OpDecorate %_struct_1972 BufferBlock - OpDecorate %4218 DescriptorSet 1 - OpDecorate %4218 Binding 0 - OpDecorate %_runtimearr_v4uint_0 ArrayStride 16 - OpMemberDecorate %_struct_1973 0 NonReadable - OpMemberDecorate %_struct_1973 0 Offset 0 - OpDecorate %_struct_1973 BufferBlock - OpDecorate %5134 DescriptorSet 0 - OpDecorate %5134 Binding 0 - OpDecorate %gl_WorkGroupSize BuiltIn WorkgroupSize - %void = OpTypeVoid - %1282 = OpTypeFunction %void - %uint = OpTypeInt 32 0 - %v4uint = OpTypeVector %uint 4 - %int = OpTypeInt 32 1 - %v2int = OpTypeVector %int 2 - %v3int = OpTypeVector %int 3 - %bool = OpTypeBool - %v3uint = OpTypeVector %uint 3 - %v2uint = OpTypeVector %uint 2 -%uint_16711935 = OpConstant %uint 16711935 - %uint_65280 = OpConstant %uint 65280 - %uint_16 = OpConstant %uint 16 -%uint_4278190080 = OpConstant %uint 4278190080 - %uint_1 = OpConstant %uint 1 - %uint_2 = OpConstant %uint 2 - %uint_8 = OpConstant %uint 8 -%uint_4278255360 = OpConstant %uint 4278255360 - %uint_3 = OpConstant %uint 3 - %uint_0 = OpConstant %uint 0 - %int_5 = OpConstant %int 5 - %uint_5 = OpConstant %uint 5 - %int_7 = OpConstant %int 7 - %int_14 = OpConstant %int 14 - %int_2 = OpConstant %int 2 - %int_n16 = OpConstant %int -16 - %int_1 = OpConstant %int 1 - %int_15 = OpConstant %int 15 - %int_4 = OpConstant %int 4 - %int_n512 = OpConstant %int -512 - %int_3 = OpConstant %int 3 - %int_16 = OpConstant %int 16 - %int_448 = OpConstant %int 448 - %int_8 = OpConstant %int 8 - %int_6 = OpConstant %int 6 - %int_63 = OpConstant %int 63 - %uint_4 = OpConstant %uint 4 - %uint_6 = OpConstant %uint 6 -%int_268435455 = OpConstant %int 268435455 - %int_n2 = OpConstant %int -2 - %uint_32 = OpConstant %uint 32 -%_struct_1161 = OpTypeStruct %uint %uint %uint %uint %v3uint %uint %uint %uint -%_ptr_Uniform__struct_1161 = OpTypePointer Uniform %_struct_1161 - %5245 = OpVariable %_ptr_Uniform__struct_1161 Uniform - %int_0 = OpConstant %int 0 -%_ptr_Uniform_uint = OpTypePointer Uniform %uint - %1915 = OpConstantComposite %v2uint %uint_4 %uint_6 -%_ptr_Uniform_v3uint = OpTypePointer Uniform %v3uint -%_ptr_Input_v3uint = OpTypePointer Input %v3uint -%gl_GlobalInvocationID = OpVariable %_ptr_Input_v3uint Input - %2603 = OpConstantComposite %v3uint %uint_3 %uint_0 %uint_0 - %v2bool = OpTypeVector %bool 2 -%_runtimearr_v4uint = OpTypeRuntimeArray %v4uint -%_struct_1972 = OpTypeStruct %_runtimearr_v4uint -%_ptr_Uniform__struct_1972 = OpTypePointer Uniform %_struct_1972 - %4218 = OpVariable %_ptr_Uniform__struct_1972 Uniform -%_ptr_Uniform_v4uint = OpTypePointer Uniform %v4uint -%_runtimearr_v4uint_0 = OpTypeRuntimeArray %v4uint -%_struct_1973 = OpTypeStruct %_runtimearr_v4uint_0 -%_ptr_Uniform__struct_1973 = OpTypePointer Uniform %_struct_1973 - %5134 = OpVariable %_ptr_Uniform__struct_1973 Uniform -%gl_WorkGroupSize = OpConstantComposite %v3uint %uint_4 %uint_32 %uint_1 - %1870 = OpConstantComposite %v2uint %uint_3 %uint_3 - %uint_9 = OpConstant %uint 9 - %2510 = OpConstantComposite %v4uint %uint_16711935 %uint_16711935 %uint_16711935 %uint_16711935 - %317 = OpConstantComposite %v4uint %uint_8 %uint_8 %uint_8 %uint_8 - %1838 = OpConstantComposite %v4uint %uint_4278255360 %uint_4278255360 %uint_4278255360 %uint_4278255360 - %749 = OpConstantComposite %v4uint %uint_16 %uint_16 %uint_16 %uint_16 - %2135 = OpConstantComposite %v4uint %uint_65280 %uint_65280 %uint_65280 %uint_65280 - %2599 = OpConstantComposite %v4uint %uint_4278190080 %uint_4278190080 %uint_4278190080 %uint_4278190080 - %5663 = OpFunction %void None %1282 - %15110 = OpLabel - OpSelectionMerge %19578 None - OpSwitch %uint_0 %15137 - %15137 = OpLabel - %12591 = OpLoad %v3uint %gl_GlobalInvocationID - %10229 = OpShiftLeftLogical %v3uint %12591 %2603 - %25178 = OpAccessChain %_ptr_Uniform_v3uint %5245 %int_4 - %22965 = OpLoad %v3uint %25178 - %18835 = OpVectorShuffle %v2uint %10229 %10229 0 1 - %6626 = OpVectorShuffle %v2uint %22965 %22965 0 1 - %17032 = OpUGreaterThanEqual %v2bool %18835 %6626 - %24679 = OpAny %bool %17032 - OpSelectionMerge %6282 DontFlatten - OpBranchConditional %24679 %21992 %6282 - %21992 = OpLabel - OpBranch %19578 - %6282 = OpLabel - %6795 = OpBitcast %v3int %10229 - %18792 = OpAccessChain %_ptr_Uniform_uint %5245 %int_6 - %9788 = OpLoad %uint %18792 - %20376 = OpCompositeExtract %uint %22965 1 - %14692 = OpCompositeExtract %int %6795 0 - %22810 = OpIMul %int %14692 %int_4 - %6362 = OpCompositeExtract %int %6795 2 - %14505 = OpBitcast %int %20376 - %11279 = OpIMul %int %6362 %14505 - %17598 = OpCompositeExtract %int %6795 1 - %22228 = OpIAdd %int %11279 %17598 - %22405 = OpBitcast %int %9788 - %24535 = OpIMul %int %22228 %22405 - %7061 = OpIAdd %int %22810 %24535 - %19270 = OpBitcast %uint %7061 - %19460 = OpAccessChain %_ptr_Uniform_uint %5245 %int_5 - %22875 = OpLoad %uint %19460 - %8517 = OpIAdd %uint %19270 %22875 - %21670 = OpShiftRightLogical %uint %8517 %uint_4 - %18404 = OpAccessChain %_ptr_Uniform_uint %5245 %int_1 - %23432 = OpLoad %uint %18404 - %22700 = OpAccessChain %_ptr_Uniform_uint %5245 %int_0 - %20387 = OpLoad %uint %22700 - %22279 = OpBitwiseAnd %uint %20387 %uint_2 - %19223 = OpINotEqual %bool %22279 %uint_0 - %17247 = OpCompositeConstruct %v2uint %20387 %20387 - %22947 = OpShiftRightLogical %v2uint %17247 %1915 - %6551 = OpBitwiseAnd %v2uint %22947 %1870 - %18732 = OpAccessChain %_ptr_Uniform_uint %5245 %int_2 - %24236 = OpLoad %uint %18732 - %20458 = OpAccessChain %_ptr_Uniform_uint %5245 %int_3 - %22167 = OpLoad %uint %20458 - %18929 = OpCompositeExtract %uint %10229 0 - %6638 = OpShiftRightLogical %uint %18929 %uint_2 - %9988 = OpCompositeExtract %uint %10229 1 - %23563 = OpCompositeConstruct %v2uint %6638 %9988 - %8041 = OpUDiv %v2uint %23563 %6551 - %13932 = OpCompositeExtract %uint %8041 0 - %19789 = OpShiftLeftLogical %uint %13932 %uint_2 - %20905 = OpCompositeExtract %uint %8041 1 - %23022 = OpCompositeExtract %uint %10229 2 - %9417 = OpCompositeConstruct %v3uint %19789 %20905 %23022 - OpSelectionMerge %21313 DontFlatten - OpBranchConditional %19223 %21373 %11737 - %21373 = OpLabel - %10608 = OpBitcast %v3int %9417 - %17090 = OpCompositeExtract %int %10608 1 - %9469 = OpShiftRightArithmetic %int %17090 %int_4 - %10055 = OpCompositeExtract %int %10608 2 - %16476 = OpShiftRightArithmetic %int %10055 %int_2 - %23373 = OpShiftRightLogical %uint %22167 %uint_4 - %6314 = OpBitcast %int %23373 - %21281 = OpIMul %int %16476 %6314 - %15143 = OpIAdd %int %9469 %21281 - %9032 = OpShiftRightLogical %uint %24236 %uint_5 - %12427 = OpBitcast %int %9032 - %10360 = OpIMul %int %15143 %12427 - %25154 = OpCompositeExtract %int %10608 0 - %20423 = OpShiftRightArithmetic %int %25154 %int_5 - %18940 = OpIAdd %int %20423 %10360 - %8797 = OpShiftLeftLogical %int %18940 %uint_8 - %11510 = OpBitwiseAnd %int %8797 %int_268435455 - %18938 = OpShiftLeftLogical %int %11510 %int_1 - %19768 = OpBitwiseAnd %int %25154 %int_7 - %12600 = OpBitwiseAnd %int %17090 %int_6 - %17741 = OpShiftLeftLogical %int %12600 %int_2 - %17227 = OpIAdd %int %19768 %17741 - %7048 = OpShiftLeftLogical %int %17227 %uint_8 - %24035 = OpShiftRightArithmetic %int %7048 %int_6 - %8725 = OpShiftRightArithmetic %int %17090 %int_3 - %13731 = OpIAdd %int %8725 %16476 - %23052 = OpBitwiseAnd %int %13731 %int_1 - %16658 = OpShiftRightArithmetic %int %25154 %int_3 - %18794 = OpShiftLeftLogical %int %23052 %int_1 - %13501 = OpIAdd %int %16658 %18794 - %19165 = OpBitwiseAnd %int %13501 %int_3 - %21578 = OpShiftLeftLogical %int %19165 %int_1 - %15435 = OpIAdd %int %23052 %21578 - %13150 = OpBitwiseAnd %int %24035 %int_n16 - %20336 = OpIAdd %int %18938 %13150 - %23345 = OpShiftLeftLogical %int %20336 %int_1 - %23274 = OpBitwiseAnd %int %24035 %int_15 - %10332 = OpIAdd %int %23345 %23274 - %18356 = OpBitwiseAnd %int %10055 %int_3 - %21579 = OpShiftLeftLogical %int %18356 %uint_8 - %16727 = OpIAdd %int %10332 %21579 - %19166 = OpBitwiseAnd %int %17090 %int_1 - %21580 = OpShiftLeftLogical %int %19166 %int_4 - %16728 = OpIAdd %int %16727 %21580 - %20438 = OpBitwiseAnd %int %15435 %int_1 - %9987 = OpShiftLeftLogical %int %20438 %int_3 - %13106 = OpShiftRightArithmetic %int %16728 %int_6 - %14038 = OpBitwiseAnd %int %13106 %int_7 - %13330 = OpIAdd %int %9987 %14038 - %23346 = OpShiftLeftLogical %int %13330 %int_3 - %23217 = OpBitwiseAnd %int %15435 %int_n2 - %10908 = OpIAdd %int %23346 %23217 - %23347 = OpShiftLeftLogical %int %10908 %int_2 - %23218 = OpBitwiseAnd %int %16728 %int_n512 - %10909 = OpIAdd %int %23347 %23218 - %23348 = OpShiftLeftLogical %int %10909 %int_3 - %21849 = OpBitwiseAnd %int %16728 %int_63 - %24314 = OpIAdd %int %23348 %21849 - %22127 = OpBitcast %uint %24314 - OpBranch %21313 - %11737 = OpLabel - %9761 = OpVectorShuffle %v2uint %9417 %9417 0 1 - %22991 = OpBitcast %v2int %9761 - %6403 = OpCompositeExtract %int %22991 0 - %9470 = OpShiftRightArithmetic %int %6403 %int_5 - %10056 = OpCompositeExtract %int %22991 1 - %16477 = OpShiftRightArithmetic %int %10056 %int_5 - %23374 = OpShiftRightLogical %uint %24236 %uint_5 - %6315 = OpBitcast %int %23374 - %21319 = OpIMul %int %16477 %6315 - %16222 = OpIAdd %int %9470 %21319 - %19086 = OpShiftLeftLogical %int %16222 %uint_9 - %10934 = OpBitwiseAnd %int %6403 %int_7 - %12601 = OpBitwiseAnd %int %10056 %int_14 - %17742 = OpShiftLeftLogical %int %12601 %int_2 - %17303 = OpIAdd %int %10934 %17742 - %6375 = OpShiftLeftLogical %int %17303 %uint_2 - %10161 = OpBitwiseAnd %int %6375 %int_n16 - %12150 = OpShiftLeftLogical %int %10161 %int_1 - %15436 = OpIAdd %int %19086 %12150 - %13207 = OpBitwiseAnd %int %6375 %int_15 - %19760 = OpIAdd %int %15436 %13207 - %18357 = OpBitwiseAnd %int %10056 %int_1 - %21581 = OpShiftLeftLogical %int %18357 %int_4 - %16729 = OpIAdd %int %19760 %21581 - %20514 = OpBitwiseAnd %int %16729 %int_n512 - %9238 = OpShiftLeftLogical %int %20514 %int_3 - %18995 = OpBitwiseAnd %int %10056 %int_16 - %12151 = OpShiftLeftLogical %int %18995 %int_7 - %16730 = OpIAdd %int %9238 %12151 - %19167 = OpBitwiseAnd %int %16729 %int_448 - %21582 = OpShiftLeftLogical %int %19167 %int_2 - %16708 = OpIAdd %int %16730 %21582 - %20611 = OpBitwiseAnd %int %10056 %int_8 - %16831 = OpShiftRightArithmetic %int %20611 %int_2 - %7916 = OpShiftRightArithmetic %int %6403 %int_3 - %13750 = OpIAdd %int %16831 %7916 - %21587 = OpBitwiseAnd %int %13750 %int_3 - %21583 = OpShiftLeftLogical %int %21587 %int_6 - %15437 = OpIAdd %int %16708 %21583 - %11782 = OpBitwiseAnd %int %16729 %int_63 - %14671 = OpIAdd %int %15437 %11782 - %22128 = OpBitcast %uint %14671 - OpBranch %21313 - %21313 = OpLabel - %9468 = OpPhi %uint %22127 %21373 %22128 %11737 - %16296 = OpIMul %v2uint %8041 %6551 - %15292 = OpISub %v2uint %23563 %16296 - %7303 = OpCompositeExtract %uint %6551 0 - %22882 = OpCompositeExtract %uint %6551 1 - %13170 = OpIMul %uint %7303 %22882 - %15520 = OpIMul %uint %9468 %13170 - %16084 = OpCompositeExtract %uint %15292 0 - %15890 = OpIMul %uint %16084 %22882 - %6886 = OpCompositeExtract %uint %15292 1 - %11045 = OpIAdd %uint %15890 %6886 - %24733 = OpShiftLeftLogical %uint %11045 %uint_2 - %23219 = OpBitwiseAnd %uint %18929 %uint_3 - %9559 = OpIAdd %uint %24733 %23219 - %16557 = OpShiftLeftLogical %uint %9559 %uint_2 - %20138 = OpIAdd %uint %15520 %16557 - %17724 = OpIAdd %uint %23432 %20138 - %14040 = OpShiftRightLogical %uint %17724 %uint_4 - %11766 = OpShiftRightLogical %uint %20387 %uint_2 - %8394 = OpBitwiseAnd %uint %11766 %uint_3 - %20727 = OpAccessChain %_ptr_Uniform_v4uint %4218 %int_0 %14040 - %8142 = OpLoad %v4uint %20727 - %13760 = OpIEqual %bool %8394 %uint_1 - %21366 = OpIEqual %bool %8394 %uint_2 - %22150 = OpLogicalOr %bool %13760 %21366 - OpSelectionMerge %13411 None - OpBranchConditional %22150 %10583 %13411 - %10583 = OpLabel - %18271 = OpBitwiseAnd %v4uint %8142 %2510 - %9425 = OpShiftLeftLogical %v4uint %18271 %317 - %20652 = OpBitwiseAnd %v4uint %8142 %1838 - %17549 = OpShiftRightLogical %v4uint %20652 %317 - %16376 = OpBitwiseOr %v4uint %9425 %17549 - OpBranch %13411 - %13411 = OpLabel - %22649 = OpPhi %v4uint %8142 %21313 %16376 %10583 - %19638 = OpIEqual %bool %8394 %uint_3 - %15139 = OpLogicalOr %bool %21366 %19638 - OpSelectionMerge %13962 None - OpBranchConditional %15139 %11064 %13962 - %11064 = OpLabel - %24087 = OpShiftLeftLogical %v4uint %22649 %749 - %15335 = OpShiftRightLogical %v4uint %22649 %749 - %10728 = OpBitwiseOr %v4uint %24087 %15335 - OpBranch %13962 - %13962 = OpLabel - %18259 = OpPhi %v4uint %22649 %13411 %10728 %11064 - %23286 = OpBitwiseAnd %v4uint %18259 %2510 - %24373 = OpBitwiseAnd %v4uint %18259 %2135 - %24932 = OpShiftLeftLogical %v4uint %24373 %749 - %17045 = OpBitwiseOr %v4uint %23286 %24932 - %21212 = OpBitwiseAnd %v4uint %18259 %2599 - %18088 = OpShiftRightLogical %v4uint %21212 %749 - %6532 = OpBitwiseOr %v4uint %17045 %18088 - %20254 = OpAccessChain %_ptr_Uniform_v4uint %5134 %int_0 %21670 - OpStore %20254 %6532 - %15532 = OpIAdd %uint %21670 %int_1 - %6417 = OpUGreaterThan %bool %7303 %uint_1 - OpSelectionMerge %24764 DontFlatten - OpBranchConditional %6417 %20612 %20628 - %20612 = OpLabel - %13975 = OpUDiv %uint %6638 %7303 - %9086 = OpIMul %uint %13975 %7303 - %12657 = OpISub %uint %6638 %9086 - %9511 = OpIAdd %uint %12657 %uint_1 - %13375 = OpIEqual %bool %9511 %7303 - OpSelectionMerge %7917 None - OpBranchConditional %13375 %22174 %8593 - %22174 = OpLabel - %19289 = OpIMul %uint %uint_32 %7303 - %21519 = OpShiftLeftLogical %uint %12657 %uint_4 - %18756 = OpISub %uint %19289 %21519 - OpBranch %7917 - %8593 = OpLabel - OpBranch %7917 - %7917 = OpLabel - %10540 = OpPhi %uint %18756 %22174 %uint_16 %8593 - OpBranch %24764 - %20628 = OpLabel - OpBranch %24764 - %24764 = OpLabel - %10684 = OpPhi %uint %10540 %7917 %uint_32 %20628 - %18731 = OpIMul %uint %10684 %22882 - %16493 = OpShiftRightLogical %uint %18731 %uint_4 - %13163 = OpIAdd %uint %14040 %16493 - %22298 = OpAccessChain %_ptr_Uniform_v4uint %4218 %int_0 %13163 - %6578 = OpLoad %v4uint %22298 - OpSelectionMerge %14874 None - OpBranchConditional %22150 %10584 %14874 - %10584 = OpLabel - %18272 = OpBitwiseAnd %v4uint %6578 %2510 - %9426 = OpShiftLeftLogical %v4uint %18272 %317 - %20653 = OpBitwiseAnd %v4uint %6578 %1838 - %17550 = OpShiftRightLogical %v4uint %20653 %317 - %16377 = OpBitwiseOr %v4uint %9426 %17550 - OpBranch %14874 - %14874 = OpLabel - %10924 = OpPhi %v4uint %6578 %24764 %16377 %10584 - OpSelectionMerge %13963 None - OpBranchConditional %15139 %11065 %13963 - %11065 = OpLabel - %24088 = OpShiftLeftLogical %v4uint %10924 %749 - %15336 = OpShiftRightLogical %v4uint %10924 %749 - %10729 = OpBitwiseOr %v4uint %24088 %15336 - OpBranch %13963 - %13963 = OpLabel - %18260 = OpPhi %v4uint %10924 %14874 %10729 %11065 - %23287 = OpBitwiseAnd %v4uint %18260 %2510 - %24374 = OpBitwiseAnd %v4uint %18260 %2135 - %24933 = OpShiftLeftLogical %v4uint %24374 %749 - %17046 = OpBitwiseOr %v4uint %23287 %24933 - %21213 = OpBitwiseAnd %v4uint %18260 %2599 - %18089 = OpShiftRightLogical %v4uint %21213 %749 - %6533 = OpBitwiseOr %v4uint %17046 %18089 - %22553 = OpAccessChain %_ptr_Uniform_v4uint %5134 %int_0 %15532 - OpStore %22553 %6533 - OpBranch %19578 - %19578 = OpLabel - OpReturn - OpFunctionEnd -#endif - -const uint32_t texture_load_gbgr8_grgb8_scaled_cs[] = { - 0x07230203, 0x00010000, 0x0008000A, 0x0000625B, 0x00000000, 0x00020011, - 0x00000001, 0x0006000B, 0x00000001, 0x4C534C47, 0x6474732E, 0x3035342E, - 0x00000000, 0x0003000E, 0x00000000, 0x00000001, 0x0006000F, 0x00000005, - 0x0000161F, 0x6E69616D, 0x00000000, 0x00000F48, 0x00060010, 0x0000161F, - 0x00000011, 0x00000004, 0x00000020, 0x00000001, 0x00050048, 0x00000489, - 0x00000000, 0x00000023, 0x00000000, 0x00050048, 0x00000489, 0x00000001, - 0x00000023, 0x00000004, 0x00050048, 0x00000489, 0x00000002, 0x00000023, - 0x00000008, 0x00050048, 0x00000489, 0x00000003, 0x00000023, 0x0000000C, - 0x00050048, 0x00000489, 0x00000004, 0x00000023, 0x00000010, 0x00050048, - 0x00000489, 0x00000005, 0x00000023, 0x0000001C, 0x00050048, 0x00000489, - 0x00000006, 0x00000023, 0x00000020, 0x00050048, 0x00000489, 0x00000007, - 0x00000023, 0x00000024, 0x00030047, 0x00000489, 0x00000002, 0x00040047, - 0x0000147D, 0x00000022, 0x00000002, 0x00040047, 0x0000147D, 0x00000021, - 0x00000000, 0x00040047, 0x00000F48, 0x0000000B, 0x0000001C, 0x00040047, - 0x000007DC, 0x00000006, 0x00000010, 0x00040048, 0x000007B4, 0x00000000, - 0x00000018, 0x00050048, 0x000007B4, 0x00000000, 0x00000023, 0x00000000, - 0x00030047, 0x000007B4, 0x00000003, 0x00040047, 0x0000107A, 0x00000022, - 0x00000001, 0x00040047, 0x0000107A, 0x00000021, 0x00000000, 0x00040047, - 0x000007DD, 0x00000006, 0x00000010, 0x00040048, 0x000007B5, 0x00000000, - 0x00000019, 0x00050048, 0x000007B5, 0x00000000, 0x00000023, 0x00000000, - 0x00030047, 0x000007B5, 0x00000003, 0x00040047, 0x0000140E, 0x00000022, - 0x00000000, 0x00040047, 0x0000140E, 0x00000021, 0x00000000, 0x00040047, - 0x00000BC3, 0x0000000B, 0x00000019, 0x00020013, 0x00000008, 0x00030021, - 0x00000502, 0x00000008, 0x00040015, 0x0000000B, 0x00000020, 0x00000000, - 0x00040017, 0x00000017, 0x0000000B, 0x00000004, 0x00040015, 0x0000000C, - 0x00000020, 0x00000001, 0x00040017, 0x00000012, 0x0000000C, 0x00000002, - 0x00040017, 0x00000016, 0x0000000C, 0x00000003, 0x00020014, 0x00000009, - 0x00040017, 0x00000014, 0x0000000B, 0x00000003, 0x00040017, 0x00000011, - 0x0000000B, 0x00000002, 0x0004002B, 0x0000000B, 0x000008A6, 0x00FF00FF, - 0x0004002B, 0x0000000B, 0x00000A87, 0x0000FF00, 0x0004002B, 0x0000000B, - 0x00000A3A, 0x00000010, 0x0004002B, 0x0000000B, 0x00000580, 0xFF000000, - 0x0004002B, 0x0000000B, 0x00000A0D, 0x00000001, 0x0004002B, 0x0000000B, - 0x00000A10, 0x00000002, 0x0004002B, 0x0000000B, 0x00000A22, 0x00000008, - 0x0004002B, 0x0000000B, 0x000005FD, 0xFF00FF00, 0x0004002B, 0x0000000B, - 0x00000A13, 0x00000003, 0x0004002B, 0x0000000B, 0x00000A0A, 0x00000000, - 0x0004002B, 0x0000000C, 0x00000A1A, 0x00000005, 0x0004002B, 0x0000000B, - 0x00000A19, 0x00000005, 0x0004002B, 0x0000000C, 0x00000A20, 0x00000007, - 0x0004002B, 0x0000000C, 0x00000A35, 0x0000000E, 0x0004002B, 0x0000000C, - 0x00000A11, 0x00000002, 0x0004002B, 0x0000000C, 0x000009DB, 0xFFFFFFF0, - 0x0004002B, 0x0000000C, 0x00000A0E, 0x00000001, 0x0004002B, 0x0000000C, - 0x00000A38, 0x0000000F, 0x0004002B, 0x0000000C, 0x00000A17, 0x00000004, - 0x0004002B, 0x0000000C, 0x0000040B, 0xFFFFFE00, 0x0004002B, 0x0000000C, - 0x00000A14, 0x00000003, 0x0004002B, 0x0000000C, 0x00000A3B, 0x00000010, - 0x0004002B, 0x0000000C, 0x00000388, 0x000001C0, 0x0004002B, 0x0000000C, - 0x00000A23, 0x00000008, 0x0004002B, 0x0000000C, 0x00000A1D, 0x00000006, - 0x0004002B, 0x0000000C, 0x00000AC8, 0x0000003F, 0x0004002B, 0x0000000B, - 0x00000A16, 0x00000004, 0x0004002B, 0x0000000B, 0x00000A1C, 0x00000006, - 0x0004002B, 0x0000000C, 0x0000078B, 0x0FFFFFFF, 0x0004002B, 0x0000000C, - 0x00000A05, 0xFFFFFFFE, 0x0004002B, 0x0000000B, 0x00000A6A, 0x00000020, - 0x000A001E, 0x00000489, 0x0000000B, 0x0000000B, 0x0000000B, 0x0000000B, - 0x00000014, 0x0000000B, 0x0000000B, 0x0000000B, 0x00040020, 0x00000706, - 0x00000002, 0x00000489, 0x0004003B, 0x00000706, 0x0000147D, 0x00000002, - 0x0004002B, 0x0000000C, 0x00000A0B, 0x00000000, 0x00040020, 0x00000288, - 0x00000002, 0x0000000B, 0x0005002C, 0x00000011, 0x0000077B, 0x00000A16, - 0x00000A1C, 0x00040020, 0x00000291, 0x00000002, 0x00000014, 0x00040020, - 0x00000292, 0x00000001, 0x00000014, 0x0004003B, 0x00000292, 0x00000F48, - 0x00000001, 0x0006002C, 0x00000014, 0x00000A2B, 0x00000A13, 0x00000A0A, - 0x00000A0A, 0x00040017, 0x0000000F, 0x00000009, 0x00000002, 0x0003001D, - 0x000007DC, 0x00000017, 0x0003001E, 0x000007B4, 0x000007DC, 0x00040020, - 0x00000A31, 0x00000002, 0x000007B4, 0x0004003B, 0x00000A31, 0x0000107A, - 0x00000002, 0x00040020, 0x00000294, 0x00000002, 0x00000017, 0x0003001D, - 0x000007DD, 0x00000017, 0x0003001E, 0x000007B5, 0x000007DD, 0x00040020, - 0x00000A32, 0x00000002, 0x000007B5, 0x0004003B, 0x00000A32, 0x0000140E, - 0x00000002, 0x0006002C, 0x00000014, 0x00000BC3, 0x00000A16, 0x00000A6A, - 0x00000A0D, 0x0005002C, 0x00000011, 0x0000074E, 0x00000A13, 0x00000A13, - 0x0004002B, 0x0000000B, 0x00000A25, 0x00000009, 0x0007002C, 0x00000017, - 0x000009CE, 0x000008A6, 0x000008A6, 0x000008A6, 0x000008A6, 0x0007002C, - 0x00000017, 0x0000013D, 0x00000A22, 0x00000A22, 0x00000A22, 0x00000A22, - 0x0007002C, 0x00000017, 0x0000072E, 0x000005FD, 0x000005FD, 0x000005FD, - 0x000005FD, 0x0007002C, 0x00000017, 0x000002ED, 0x00000A3A, 0x00000A3A, - 0x00000A3A, 0x00000A3A, 0x0007002C, 0x00000017, 0x00000857, 0x00000A87, - 0x00000A87, 0x00000A87, 0x00000A87, 0x0007002C, 0x00000017, 0x00000A27, - 0x00000580, 0x00000580, 0x00000580, 0x00000580, 0x00050036, 0x00000008, - 0x0000161F, 0x00000000, 0x00000502, 0x000200F8, 0x00003B06, 0x000300F7, - 0x00004C7A, 0x00000000, 0x000300FB, 0x00000A0A, 0x00003B21, 0x000200F8, - 0x00003B21, 0x0004003D, 0x00000014, 0x0000312F, 0x00000F48, 0x000500C4, - 0x00000014, 0x000027F5, 0x0000312F, 0x00000A2B, 0x00050041, 0x00000291, - 0x0000625A, 0x0000147D, 0x00000A17, 0x0004003D, 0x00000014, 0x000059B5, - 0x0000625A, 0x0007004F, 0x00000011, 0x00004993, 0x000027F5, 0x000027F5, - 0x00000000, 0x00000001, 0x0007004F, 0x00000011, 0x000019E2, 0x000059B5, - 0x000059B5, 0x00000000, 0x00000001, 0x000500AE, 0x0000000F, 0x00004288, - 0x00004993, 0x000019E2, 0x0004009A, 0x00000009, 0x00006067, 0x00004288, - 0x000300F7, 0x0000188A, 0x00000002, 0x000400FA, 0x00006067, 0x000055E8, - 0x0000188A, 0x000200F8, 0x000055E8, 0x000200F9, 0x00004C7A, 0x000200F8, - 0x0000188A, 0x0004007C, 0x00000016, 0x00001A8B, 0x000027F5, 0x00050041, - 0x00000288, 0x00004968, 0x0000147D, 0x00000A1D, 0x0004003D, 0x0000000B, - 0x0000263C, 0x00004968, 0x00050051, 0x0000000B, 0x00004F98, 0x000059B5, - 0x00000001, 0x00050051, 0x0000000C, 0x00003964, 0x00001A8B, 0x00000000, - 0x00050084, 0x0000000C, 0x0000591A, 0x00003964, 0x00000A17, 0x00050051, - 0x0000000C, 0x000018DA, 0x00001A8B, 0x00000002, 0x0004007C, 0x0000000C, - 0x000038A9, 0x00004F98, 0x00050084, 0x0000000C, 0x00002C0F, 0x000018DA, - 0x000038A9, 0x00050051, 0x0000000C, 0x000044BE, 0x00001A8B, 0x00000001, - 0x00050080, 0x0000000C, 0x000056D4, 0x00002C0F, 0x000044BE, 0x0004007C, - 0x0000000C, 0x00005785, 0x0000263C, 0x00050084, 0x0000000C, 0x00005FD7, - 0x000056D4, 0x00005785, 0x00050080, 0x0000000C, 0x00001B95, 0x0000591A, - 0x00005FD7, 0x0004007C, 0x0000000B, 0x00004B46, 0x00001B95, 0x00050041, - 0x00000288, 0x00004C04, 0x0000147D, 0x00000A1A, 0x0004003D, 0x0000000B, - 0x0000595B, 0x00004C04, 0x00050080, 0x0000000B, 0x00002145, 0x00004B46, - 0x0000595B, 0x000500C2, 0x0000000B, 0x000054A6, 0x00002145, 0x00000A16, - 0x00050041, 0x00000288, 0x000047E4, 0x0000147D, 0x00000A0E, 0x0004003D, - 0x0000000B, 0x00005B88, 0x000047E4, 0x00050041, 0x00000288, 0x000058AC, - 0x0000147D, 0x00000A0B, 0x0004003D, 0x0000000B, 0x00004FA3, 0x000058AC, - 0x000500C7, 0x0000000B, 0x00005707, 0x00004FA3, 0x00000A10, 0x000500AB, - 0x00000009, 0x00004B17, 0x00005707, 0x00000A0A, 0x00050050, 0x00000011, - 0x0000435F, 0x00004FA3, 0x00004FA3, 0x000500C2, 0x00000011, 0x000059A3, - 0x0000435F, 0x0000077B, 0x000500C7, 0x00000011, 0x00001997, 0x000059A3, - 0x0000074E, 0x00050041, 0x00000288, 0x0000492C, 0x0000147D, 0x00000A11, - 0x0004003D, 0x0000000B, 0x00005EAC, 0x0000492C, 0x00050041, 0x00000288, - 0x00004FEA, 0x0000147D, 0x00000A14, 0x0004003D, 0x0000000B, 0x00005697, - 0x00004FEA, 0x00050051, 0x0000000B, 0x000049F1, 0x000027F5, 0x00000000, - 0x000500C2, 0x0000000B, 0x000019EE, 0x000049F1, 0x00000A10, 0x00050051, - 0x0000000B, 0x00002704, 0x000027F5, 0x00000001, 0x00050050, 0x00000011, - 0x00005C0B, 0x000019EE, 0x00002704, 0x00050086, 0x00000011, 0x00001F69, - 0x00005C0B, 0x00001997, 0x00050051, 0x0000000B, 0x0000366C, 0x00001F69, - 0x00000000, 0x000500C4, 0x0000000B, 0x00004D4D, 0x0000366C, 0x00000A10, - 0x00050051, 0x0000000B, 0x000051A9, 0x00001F69, 0x00000001, 0x00050051, - 0x0000000B, 0x000059EE, 0x000027F5, 0x00000002, 0x00060050, 0x00000014, - 0x000024C9, 0x00004D4D, 0x000051A9, 0x000059EE, 0x000300F7, 0x00005341, - 0x00000002, 0x000400FA, 0x00004B17, 0x0000537D, 0x00002DD9, 0x000200F8, - 0x0000537D, 0x0004007C, 0x00000016, 0x00002970, 0x000024C9, 0x00050051, - 0x0000000C, 0x000042C2, 0x00002970, 0x00000001, 0x000500C3, 0x0000000C, - 0x000024FD, 0x000042C2, 0x00000A17, 0x00050051, 0x0000000C, 0x00002747, - 0x00002970, 0x00000002, 0x000500C3, 0x0000000C, 0x0000405C, 0x00002747, - 0x00000A11, 0x000500C2, 0x0000000B, 0x00005B4D, 0x00005697, 0x00000A16, - 0x0004007C, 0x0000000C, 0x000018AA, 0x00005B4D, 0x00050084, 0x0000000C, - 0x00005321, 0x0000405C, 0x000018AA, 0x00050080, 0x0000000C, 0x00003B27, - 0x000024FD, 0x00005321, 0x000500C2, 0x0000000B, 0x00002348, 0x00005EAC, - 0x00000A19, 0x0004007C, 0x0000000C, 0x0000308B, 0x00002348, 0x00050084, - 0x0000000C, 0x00002878, 0x00003B27, 0x0000308B, 0x00050051, 0x0000000C, - 0x00006242, 0x00002970, 0x00000000, 0x000500C3, 0x0000000C, 0x00004FC7, - 0x00006242, 0x00000A1A, 0x00050080, 0x0000000C, 0x000049FC, 0x00004FC7, - 0x00002878, 0x000500C4, 0x0000000C, 0x0000225D, 0x000049FC, 0x00000A22, - 0x000500C7, 0x0000000C, 0x00002CF6, 0x0000225D, 0x0000078B, 0x000500C4, - 0x0000000C, 0x000049FA, 0x00002CF6, 0x00000A0E, 0x000500C7, 0x0000000C, - 0x00004D38, 0x00006242, 0x00000A20, 0x000500C7, 0x0000000C, 0x00003138, - 0x000042C2, 0x00000A1D, 0x000500C4, 0x0000000C, 0x0000454D, 0x00003138, - 0x00000A11, 0x00050080, 0x0000000C, 0x0000434B, 0x00004D38, 0x0000454D, - 0x000500C4, 0x0000000C, 0x00001B88, 0x0000434B, 0x00000A22, 0x000500C3, - 0x0000000C, 0x00005DE3, 0x00001B88, 0x00000A1D, 0x000500C3, 0x0000000C, - 0x00002215, 0x000042C2, 0x00000A14, 0x00050080, 0x0000000C, 0x000035A3, - 0x00002215, 0x0000405C, 0x000500C7, 0x0000000C, 0x00005A0C, 0x000035A3, - 0x00000A0E, 0x000500C3, 0x0000000C, 0x00004112, 0x00006242, 0x00000A14, - 0x000500C4, 0x0000000C, 0x0000496A, 0x00005A0C, 0x00000A0E, 0x00050080, - 0x0000000C, 0x000034BD, 0x00004112, 0x0000496A, 0x000500C7, 0x0000000C, - 0x00004ADD, 0x000034BD, 0x00000A14, 0x000500C4, 0x0000000C, 0x0000544A, - 0x00004ADD, 0x00000A0E, 0x00050080, 0x0000000C, 0x00003C4B, 0x00005A0C, - 0x0000544A, 0x000500C7, 0x0000000C, 0x0000335E, 0x00005DE3, 0x000009DB, - 0x00050080, 0x0000000C, 0x00004F70, 0x000049FA, 0x0000335E, 0x000500C4, - 0x0000000C, 0x00005B31, 0x00004F70, 0x00000A0E, 0x000500C7, 0x0000000C, - 0x00005AEA, 0x00005DE3, 0x00000A38, 0x00050080, 0x0000000C, 0x0000285C, - 0x00005B31, 0x00005AEA, 0x000500C7, 0x0000000C, 0x000047B4, 0x00002747, - 0x00000A14, 0x000500C4, 0x0000000C, 0x0000544B, 0x000047B4, 0x00000A22, - 0x00050080, 0x0000000C, 0x00004157, 0x0000285C, 0x0000544B, 0x000500C7, - 0x0000000C, 0x00004ADE, 0x000042C2, 0x00000A0E, 0x000500C4, 0x0000000C, - 0x0000544C, 0x00004ADE, 0x00000A17, 0x00050080, 0x0000000C, 0x00004158, - 0x00004157, 0x0000544C, 0x000500C7, 0x0000000C, 0x00004FD6, 0x00003C4B, - 0x00000A0E, 0x000500C4, 0x0000000C, 0x00002703, 0x00004FD6, 0x00000A14, - 0x000500C3, 0x0000000C, 0x00003332, 0x00004158, 0x00000A1D, 0x000500C7, - 0x0000000C, 0x000036D6, 0x00003332, 0x00000A20, 0x00050080, 0x0000000C, - 0x00003412, 0x00002703, 0x000036D6, 0x000500C4, 0x0000000C, 0x00005B32, - 0x00003412, 0x00000A14, 0x000500C7, 0x0000000C, 0x00005AB1, 0x00003C4B, - 0x00000A05, 0x00050080, 0x0000000C, 0x00002A9C, 0x00005B32, 0x00005AB1, - 0x000500C4, 0x0000000C, 0x00005B33, 0x00002A9C, 0x00000A11, 0x000500C7, - 0x0000000C, 0x00005AB2, 0x00004158, 0x0000040B, 0x00050080, 0x0000000C, - 0x00002A9D, 0x00005B33, 0x00005AB2, 0x000500C4, 0x0000000C, 0x00005B34, - 0x00002A9D, 0x00000A14, 0x000500C7, 0x0000000C, 0x00005559, 0x00004158, - 0x00000AC8, 0x00050080, 0x0000000C, 0x00005EFA, 0x00005B34, 0x00005559, - 0x0004007C, 0x0000000B, 0x0000566F, 0x00005EFA, 0x000200F9, 0x00005341, - 0x000200F8, 0x00002DD9, 0x0007004F, 0x00000011, 0x00002621, 0x000024C9, - 0x000024C9, 0x00000000, 0x00000001, 0x0004007C, 0x00000012, 0x000059CF, - 0x00002621, 0x00050051, 0x0000000C, 0x00001903, 0x000059CF, 0x00000000, - 0x000500C3, 0x0000000C, 0x000024FE, 0x00001903, 0x00000A1A, 0x00050051, - 0x0000000C, 0x00002748, 0x000059CF, 0x00000001, 0x000500C3, 0x0000000C, - 0x0000405D, 0x00002748, 0x00000A1A, 0x000500C2, 0x0000000B, 0x00005B4E, - 0x00005EAC, 0x00000A19, 0x0004007C, 0x0000000C, 0x000018AB, 0x00005B4E, - 0x00050084, 0x0000000C, 0x00005347, 0x0000405D, 0x000018AB, 0x00050080, - 0x0000000C, 0x00003F5E, 0x000024FE, 0x00005347, 0x000500C4, 0x0000000C, - 0x00004A8E, 0x00003F5E, 0x00000A25, 0x000500C7, 0x0000000C, 0x00002AB6, - 0x00001903, 0x00000A20, 0x000500C7, 0x0000000C, 0x00003139, 0x00002748, - 0x00000A35, 0x000500C4, 0x0000000C, 0x0000454E, 0x00003139, 0x00000A11, - 0x00050080, 0x0000000C, 0x00004397, 0x00002AB6, 0x0000454E, 0x000500C4, - 0x0000000C, 0x000018E7, 0x00004397, 0x00000A10, 0x000500C7, 0x0000000C, - 0x000027B1, 0x000018E7, 0x000009DB, 0x000500C4, 0x0000000C, 0x00002F76, - 0x000027B1, 0x00000A0E, 0x00050080, 0x0000000C, 0x00003C4C, 0x00004A8E, - 0x00002F76, 0x000500C7, 0x0000000C, 0x00003397, 0x000018E7, 0x00000A38, - 0x00050080, 0x0000000C, 0x00004D30, 0x00003C4C, 0x00003397, 0x000500C7, - 0x0000000C, 0x000047B5, 0x00002748, 0x00000A0E, 0x000500C4, 0x0000000C, - 0x0000544D, 0x000047B5, 0x00000A17, 0x00050080, 0x0000000C, 0x00004159, - 0x00004D30, 0x0000544D, 0x000500C7, 0x0000000C, 0x00005022, 0x00004159, - 0x0000040B, 0x000500C4, 0x0000000C, 0x00002416, 0x00005022, 0x00000A14, - 0x000500C7, 0x0000000C, 0x00004A33, 0x00002748, 0x00000A3B, 0x000500C4, - 0x0000000C, 0x00002F77, 0x00004A33, 0x00000A20, 0x00050080, 0x0000000C, - 0x0000415A, 0x00002416, 0x00002F77, 0x000500C7, 0x0000000C, 0x00004ADF, - 0x00004159, 0x00000388, 0x000500C4, 0x0000000C, 0x0000544E, 0x00004ADF, - 0x00000A11, 0x00050080, 0x0000000C, 0x00004144, 0x0000415A, 0x0000544E, - 0x000500C7, 0x0000000C, 0x00005083, 0x00002748, 0x00000A23, 0x000500C3, - 0x0000000C, 0x000041BF, 0x00005083, 0x00000A11, 0x000500C3, 0x0000000C, - 0x00001EEC, 0x00001903, 0x00000A14, 0x00050080, 0x0000000C, 0x000035B6, - 0x000041BF, 0x00001EEC, 0x000500C7, 0x0000000C, 0x00005453, 0x000035B6, - 0x00000A14, 0x000500C4, 0x0000000C, 0x0000544F, 0x00005453, 0x00000A1D, - 0x00050080, 0x0000000C, 0x00003C4D, 0x00004144, 0x0000544F, 0x000500C7, - 0x0000000C, 0x00002E06, 0x00004159, 0x00000AC8, 0x00050080, 0x0000000C, - 0x0000394F, 0x00003C4D, 0x00002E06, 0x0004007C, 0x0000000B, 0x00005670, - 0x0000394F, 0x000200F9, 0x00005341, 0x000200F8, 0x00005341, 0x000700F5, - 0x0000000B, 0x000024FC, 0x0000566F, 0x0000537D, 0x00005670, 0x00002DD9, - 0x00050084, 0x00000011, 0x00003FA8, 0x00001F69, 0x00001997, 0x00050082, - 0x00000011, 0x00003BBC, 0x00005C0B, 0x00003FA8, 0x00050051, 0x0000000B, - 0x00001C87, 0x00001997, 0x00000000, 0x00050051, 0x0000000B, 0x00005962, - 0x00001997, 0x00000001, 0x00050084, 0x0000000B, 0x00003372, 0x00001C87, - 0x00005962, 0x00050084, 0x0000000B, 0x00003CA0, 0x000024FC, 0x00003372, - 0x00050051, 0x0000000B, 0x00003ED4, 0x00003BBC, 0x00000000, 0x00050084, - 0x0000000B, 0x00003E12, 0x00003ED4, 0x00005962, 0x00050051, 0x0000000B, - 0x00001AE6, 0x00003BBC, 0x00000001, 0x00050080, 0x0000000B, 0x00002B25, - 0x00003E12, 0x00001AE6, 0x000500C4, 0x0000000B, 0x0000609D, 0x00002B25, - 0x00000A10, 0x000500C7, 0x0000000B, 0x00005AB3, 0x000049F1, 0x00000A13, - 0x00050080, 0x0000000B, 0x00002557, 0x0000609D, 0x00005AB3, 0x000500C4, - 0x0000000B, 0x000040AD, 0x00002557, 0x00000A10, 0x00050080, 0x0000000B, - 0x00004EAA, 0x00003CA0, 0x000040AD, 0x00050080, 0x0000000B, 0x0000453C, - 0x00005B88, 0x00004EAA, 0x000500C2, 0x0000000B, 0x000036D8, 0x0000453C, - 0x00000A16, 0x000500C2, 0x0000000B, 0x00002DF6, 0x00004FA3, 0x00000A10, - 0x000500C7, 0x0000000B, 0x000020CA, 0x00002DF6, 0x00000A13, 0x00060041, - 0x00000294, 0x000050F7, 0x0000107A, 0x00000A0B, 0x000036D8, 0x0004003D, - 0x00000017, 0x00001FCE, 0x000050F7, 0x000500AA, 0x00000009, 0x000035C0, - 0x000020CA, 0x00000A0D, 0x000500AA, 0x00000009, 0x00005376, 0x000020CA, - 0x00000A10, 0x000500A6, 0x00000009, 0x00005686, 0x000035C0, 0x00005376, - 0x000300F7, 0x00003463, 0x00000000, 0x000400FA, 0x00005686, 0x00002957, - 0x00003463, 0x000200F8, 0x00002957, 0x000500C7, 0x00000017, 0x0000475F, - 0x00001FCE, 0x000009CE, 0x000500C4, 0x00000017, 0x000024D1, 0x0000475F, - 0x0000013D, 0x000500C7, 0x00000017, 0x000050AC, 0x00001FCE, 0x0000072E, - 0x000500C2, 0x00000017, 0x0000448D, 0x000050AC, 0x0000013D, 0x000500C5, - 0x00000017, 0x00003FF8, 0x000024D1, 0x0000448D, 0x000200F9, 0x00003463, - 0x000200F8, 0x00003463, 0x000700F5, 0x00000017, 0x00005879, 0x00001FCE, - 0x00005341, 0x00003FF8, 0x00002957, 0x000500AA, 0x00000009, 0x00004CB6, - 0x000020CA, 0x00000A13, 0x000500A6, 0x00000009, 0x00003B23, 0x00005376, - 0x00004CB6, 0x000300F7, 0x0000368A, 0x00000000, 0x000400FA, 0x00003B23, - 0x00002B38, 0x0000368A, 0x000200F8, 0x00002B38, 0x000500C4, 0x00000017, - 0x00005E17, 0x00005879, 0x000002ED, 0x000500C2, 0x00000017, 0x00003BE7, - 0x00005879, 0x000002ED, 0x000500C5, 0x00000017, 0x000029E8, 0x00005E17, - 0x00003BE7, 0x000200F9, 0x0000368A, 0x000200F8, 0x0000368A, 0x000700F5, - 0x00000017, 0x00004753, 0x00005879, 0x00003463, 0x000029E8, 0x00002B38, - 0x000500C7, 0x00000017, 0x00005AF6, 0x00004753, 0x000009CE, 0x000500C7, - 0x00000017, 0x00005F35, 0x00004753, 0x00000857, 0x000500C4, 0x00000017, - 0x00006164, 0x00005F35, 0x000002ED, 0x000500C5, 0x00000017, 0x00004295, - 0x00005AF6, 0x00006164, 0x000500C7, 0x00000017, 0x000052DC, 0x00004753, - 0x00000A27, 0x000500C2, 0x00000017, 0x000046A8, 0x000052DC, 0x000002ED, - 0x000500C5, 0x00000017, 0x00001984, 0x00004295, 0x000046A8, 0x00060041, - 0x00000294, 0x00004F1E, 0x0000140E, 0x00000A0B, 0x000054A6, 0x0003003E, - 0x00004F1E, 0x00001984, 0x00050080, 0x0000000B, 0x00003CAC, 0x000054A6, - 0x00000A0E, 0x000500AC, 0x00000009, 0x00001911, 0x00001C87, 0x00000A0D, - 0x000300F7, 0x000060BC, 0x00000002, 0x000400FA, 0x00001911, 0x00005084, - 0x00005094, 0x000200F8, 0x00005084, 0x00050086, 0x0000000B, 0x00003697, - 0x000019EE, 0x00001C87, 0x00050084, 0x0000000B, 0x0000237E, 0x00003697, - 0x00001C87, 0x00050082, 0x0000000B, 0x00003171, 0x000019EE, 0x0000237E, - 0x00050080, 0x0000000B, 0x00002527, 0x00003171, 0x00000A0D, 0x000500AA, - 0x00000009, 0x0000343F, 0x00002527, 0x00001C87, 0x000300F7, 0x00001EED, - 0x00000000, 0x000400FA, 0x0000343F, 0x0000569E, 0x00002191, 0x000200F8, - 0x0000569E, 0x00050084, 0x0000000B, 0x00004B59, 0x00000A6A, 0x00001C87, - 0x000500C4, 0x0000000B, 0x0000540F, 0x00003171, 0x00000A16, 0x00050082, - 0x0000000B, 0x00004944, 0x00004B59, 0x0000540F, 0x000200F9, 0x00001EED, - 0x000200F8, 0x00002191, 0x000200F9, 0x00001EED, 0x000200F8, 0x00001EED, - 0x000700F5, 0x0000000B, 0x0000292C, 0x00004944, 0x0000569E, 0x00000A3A, - 0x00002191, 0x000200F9, 0x000060BC, 0x000200F8, 0x00005094, 0x000200F9, - 0x000060BC, 0x000200F8, 0x000060BC, 0x000700F5, 0x0000000B, 0x000029BC, - 0x0000292C, 0x00001EED, 0x00000A6A, 0x00005094, 0x00050084, 0x0000000B, - 0x0000492B, 0x000029BC, 0x00005962, 0x000500C2, 0x0000000B, 0x0000406D, - 0x0000492B, 0x00000A16, 0x00050080, 0x0000000B, 0x0000336B, 0x000036D8, - 0x0000406D, 0x00060041, 0x00000294, 0x0000571A, 0x0000107A, 0x00000A0B, - 0x0000336B, 0x0004003D, 0x00000017, 0x000019B2, 0x0000571A, 0x000300F7, - 0x00003A1A, 0x00000000, 0x000400FA, 0x00005686, 0x00002958, 0x00003A1A, - 0x000200F8, 0x00002958, 0x000500C7, 0x00000017, 0x00004760, 0x000019B2, - 0x000009CE, 0x000500C4, 0x00000017, 0x000024D2, 0x00004760, 0x0000013D, - 0x000500C7, 0x00000017, 0x000050AD, 0x000019B2, 0x0000072E, 0x000500C2, - 0x00000017, 0x0000448E, 0x000050AD, 0x0000013D, 0x000500C5, 0x00000017, - 0x00003FF9, 0x000024D2, 0x0000448E, 0x000200F9, 0x00003A1A, 0x000200F8, - 0x00003A1A, 0x000700F5, 0x00000017, 0x00002AAC, 0x000019B2, 0x000060BC, - 0x00003FF9, 0x00002958, 0x000300F7, 0x0000368B, 0x00000000, 0x000400FA, - 0x00003B23, 0x00002B39, 0x0000368B, 0x000200F8, 0x00002B39, 0x000500C4, - 0x00000017, 0x00005E18, 0x00002AAC, 0x000002ED, 0x000500C2, 0x00000017, - 0x00003BE8, 0x00002AAC, 0x000002ED, 0x000500C5, 0x00000017, 0x000029E9, - 0x00005E18, 0x00003BE8, 0x000200F9, 0x0000368B, 0x000200F8, 0x0000368B, - 0x000700F5, 0x00000017, 0x00004754, 0x00002AAC, 0x00003A1A, 0x000029E9, - 0x00002B39, 0x000500C7, 0x00000017, 0x00005AF7, 0x00004754, 0x000009CE, - 0x000500C7, 0x00000017, 0x00005F36, 0x00004754, 0x00000857, 0x000500C4, - 0x00000017, 0x00006165, 0x00005F36, 0x000002ED, 0x000500C5, 0x00000017, - 0x00004296, 0x00005AF7, 0x00006165, 0x000500C7, 0x00000017, 0x000052DD, - 0x00004754, 0x00000A27, 0x000500C2, 0x00000017, 0x000046A9, 0x000052DD, - 0x000002ED, 0x000500C5, 0x00000017, 0x00001985, 0x00004296, 0x000046A9, - 0x00060041, 0x00000294, 0x00005819, 0x0000140E, 0x00000A0B, 0x00003CAC, - 0x0003003E, 0x00005819, 0x00001985, 0x000200F9, 0x00004C7A, 0x000200F8, - 0x00004C7A, 0x000100FD, 0x00010038, -}; diff --git a/src/xenia/gpu/shaders/bytecode/vulkan_spirv/texture_load_gbgr8_rgba8_cs.h b/src/xenia/gpu/shaders/bytecode/vulkan_spirv/texture_load_gbgr8_rgba8_cs.h new file mode 100644 index 000000000..ae9e0c34e --- /dev/null +++ b/src/xenia/gpu/shaders/bytecode/vulkan_spirv/texture_load_gbgr8_rgba8_cs.h @@ -0,0 +1,758 @@ +// Generated with `xb buildshaders`. +#if 0 +; SPIR-V +; Version: 1.0 +; Generator: Khronos Glslang Reference Front End; 10 +; Bound: 25179 +; Schema: 0 + OpCapability Shader + %1 = OpExtInstImport "GLSL.std.450" + OpMemoryModel Logical GLSL450 + OpEntryPoint GLCompute %5663 "main" %gl_GlobalInvocationID + OpExecutionMode %5663 LocalSize 4 32 1 + OpMemberDecorate %_struct_1161 0 Offset 0 + OpMemberDecorate %_struct_1161 1 Offset 4 + OpMemberDecorate %_struct_1161 2 Offset 8 + OpMemberDecorate %_struct_1161 3 Offset 12 + OpMemberDecorate %_struct_1161 4 Offset 16 + OpMemberDecorate %_struct_1161 5 Offset 28 + OpMemberDecorate %_struct_1161 6 Offset 32 + OpMemberDecorate %_struct_1161 7 Offset 36 + OpDecorate %_struct_1161 Block + OpDecorate %5245 DescriptorSet 2 + OpDecorate %5245 Binding 0 + OpDecorate %gl_GlobalInvocationID BuiltIn GlobalInvocationId + OpDecorate %_runtimearr_v4uint ArrayStride 16 + OpMemberDecorate %_struct_1972 0 NonWritable + OpMemberDecorate %_struct_1972 0 Offset 0 + OpDecorate %_struct_1972 BufferBlock + OpDecorate %4218 DescriptorSet 1 + OpDecorate %4218 Binding 0 + OpDecorate %_runtimearr_v4uint_0 ArrayStride 16 + OpMemberDecorate %_struct_1973 0 NonReadable + OpMemberDecorate %_struct_1973 0 Offset 0 + OpDecorate %_struct_1973 BufferBlock + OpDecorate %5134 DescriptorSet 0 + OpDecorate %5134 Binding 0 + OpDecorate %gl_WorkGroupSize BuiltIn WorkgroupSize + %void = OpTypeVoid + %1282 = OpTypeFunction %void + %uint = OpTypeInt 32 0 + %v2uint = OpTypeVector %uint 2 + %v4uint = OpTypeVector %uint 4 + %int = OpTypeInt 32 1 + %v2int = OpTypeVector %int 2 + %v3int = OpTypeVector %int 3 + %bool = OpTypeBool + %v3uint = OpTypeVector %uint 3 + %uint_24 = OpConstant %uint 24 + %uint_65280 = OpConstant %uint 65280 + %uint_8 = OpConstant %uint 8 +%uint_4278190080 = OpConstant %uint 4278190080 + %uint_255 = OpConstant %uint 255 +%uint_16711680 = OpConstant %uint 16711680 + %uint_1 = OpConstant %uint 1 + %uint_2 = OpConstant %uint 2 +%uint_16711935 = OpConstant %uint 16711935 +%uint_4278255360 = OpConstant %uint 4278255360 + %uint_3 = OpConstant %uint 3 + %uint_16 = OpConstant %uint 16 + %uint_0 = OpConstant %uint 0 + %int_5 = OpConstant %int 5 + %uint_5 = OpConstant %uint 5 + %int_7 = OpConstant %int 7 + %int_14 = OpConstant %int 14 + %int_2 = OpConstant %int 2 + %int_n16 = OpConstant %int -16 + %int_1 = OpConstant %int 1 + %int_15 = OpConstant %int 15 + %int_4 = OpConstant %int 4 + %int_n512 = OpConstant %int -512 + %int_3 = OpConstant %int 3 + %int_16 = OpConstant %int 16 + %int_448 = OpConstant %int 448 + %int_8 = OpConstant %int 8 + %int_6 = OpConstant %int 6 + %int_63 = OpConstant %int 63 + %uint_4 = OpConstant %uint 4 +%int_268435455 = OpConstant %int 268435455 + %int_n2 = OpConstant %int -2 + %uint_32 = OpConstant %uint 32 +%_struct_1161 = OpTypeStruct %uint %uint %uint %uint %v3uint %uint %uint %uint +%_ptr_Uniform__struct_1161 = OpTypePointer Uniform %_struct_1161 + %5245 = OpVariable %_ptr_Uniform__struct_1161 Uniform + %int_0 = OpConstant %int 0 +%_ptr_Uniform_uint = OpTypePointer Uniform %uint +%_ptr_Uniform_v3uint = OpTypePointer Uniform %v3uint +%_ptr_Input_v3uint = OpTypePointer Input %v3uint +%gl_GlobalInvocationID = OpVariable %_ptr_Input_v3uint Input + %2603 = OpConstantComposite %v3uint %uint_3 %uint_0 %uint_0 + %v2bool = OpTypeVector %bool 2 +%_runtimearr_v4uint = OpTypeRuntimeArray %v4uint +%_struct_1972 = OpTypeStruct %_runtimearr_v4uint +%_ptr_Uniform__struct_1972 = OpTypePointer Uniform %_struct_1972 + %4218 = OpVariable %_ptr_Uniform__struct_1972 Uniform +%_ptr_Uniform_v4uint = OpTypePointer Uniform %v4uint +%_runtimearr_v4uint_0 = OpTypeRuntimeArray %v4uint +%_struct_1973 = OpTypeStruct %_runtimearr_v4uint_0 +%_ptr_Uniform__struct_1973 = OpTypePointer Uniform %_struct_1973 + %5134 = OpVariable %_ptr_Uniform__struct_1973 Uniform +%gl_WorkGroupSize = OpConstantComposite %v3uint %uint_4 %uint_32 %uint_1 + %uint_9 = OpConstant %uint 9 + %2510 = OpConstantComposite %v4uint %uint_16711935 %uint_16711935 %uint_16711935 %uint_16711935 + %317 = OpConstantComposite %v4uint %uint_8 %uint_8 %uint_8 %uint_8 + %1838 = OpConstantComposite %v4uint %uint_4278255360 %uint_4278255360 %uint_4278255360 %uint_4278255360 + %749 = OpConstantComposite %v4uint %uint_16 %uint_16 %uint_16 %uint_16 + %2311 = OpConstantComposite %v2uint %uint_24 %uint_24 + %2682 = OpConstantComposite %v2uint %uint_65280 %uint_65280 + %1975 = OpConstantComposite %v2uint %uint_8 %uint_8 + %2014 = OpConstantComposite %v2uint %uint_4278190080 %uint_4278190080 + %1140 = OpConstantComposite %v2uint %uint_255 %uint_255 + %2993 = OpConstantComposite %v2uint %uint_16711680 %uint_16711680 + %5663 = OpFunction %void None %1282 + %15110 = OpLabel + OpSelectionMerge %19578 None + OpSwitch %uint_0 %15137 + %15137 = OpLabel + %12591 = OpLoad %v3uint %gl_GlobalInvocationID + %10229 = OpShiftLeftLogical %v3uint %12591 %2603 + %25178 = OpAccessChain %_ptr_Uniform_v3uint %5245 %int_4 + %22965 = OpLoad %v3uint %25178 + %18835 = OpVectorShuffle %v2uint %10229 %10229 0 1 + %6626 = OpVectorShuffle %v2uint %22965 %22965 0 1 + %17032 = OpUGreaterThanEqual %v2bool %18835 %6626 + %24679 = OpAny %bool %17032 + OpSelectionMerge %6282 DontFlatten + OpBranchConditional %24679 %21992 %6282 + %21992 = OpLabel + OpBranch %19578 + %6282 = OpLabel + %6795 = OpBitcast %v3int %10229 + %18792 = OpAccessChain %_ptr_Uniform_uint %5245 %int_6 + %9788 = OpLoad %uint %18792 + %20376 = OpCompositeExtract %uint %22965 1 + %14692 = OpCompositeExtract %int %6795 0 + %22810 = OpIMul %int %14692 %int_8 + %6362 = OpCompositeExtract %int %6795 2 + %14505 = OpBitcast %int %20376 + %11279 = OpIMul %int %6362 %14505 + %17598 = OpCompositeExtract %int %6795 1 + %22228 = OpIAdd %int %11279 %17598 + %22405 = OpBitcast %int %9788 + %24535 = OpIMul %int %22228 %22405 + %7061 = OpIAdd %int %22810 %24535 + %19270 = OpBitcast %uint %7061 + %19460 = OpAccessChain %_ptr_Uniform_uint %5245 %int_5 + %22875 = OpLoad %uint %19460 + %8517 = OpIAdd %uint %19270 %22875 + %21670 = OpShiftRightLogical %uint %8517 %uint_4 + %20950 = OpAccessChain %_ptr_Uniform_uint %5245 %int_0 + %21411 = OpLoad %uint %20950 + %6381 = OpBitwiseAnd %uint %21411 %uint_1 + %10467 = OpINotEqual %bool %6381 %uint_0 + OpSelectionMerge %23266 DontFlatten + OpBranchConditional %10467 %10108 %10765 + %10108 = OpLabel + %23508 = OpBitwiseAnd %uint %21411 %uint_2 + %16300 = OpINotEqual %bool %23508 %uint_0 + OpSelectionMerge %7691 DontFlatten + OpBranchConditional %16300 %12129 %25128 + %12129 = OpLabel + %18210 = OpAccessChain %_ptr_Uniform_uint %5245 %int_2 + %15627 = OpLoad %uint %18210 + %22624 = OpAccessChain %_ptr_Uniform_uint %5245 %int_3 + %21535 = OpLoad %uint %22624 + %14923 = OpShiftRightArithmetic %int %17598 %int_4 + %18773 = OpShiftRightArithmetic %int %6362 %int_2 + %18759 = OpShiftRightLogical %uint %21535 %uint_4 + %6314 = OpBitcast %int %18759 + %21281 = OpIMul %int %18773 %6314 + %15143 = OpIAdd %int %14923 %21281 + %9032 = OpShiftRightLogical %uint %15627 %uint_5 + %14593 = OpBitcast %int %9032 + %8436 = OpIMul %int %15143 %14593 + %12986 = OpShiftRightArithmetic %int %14692 %int_5 + %24558 = OpIAdd %int %12986 %8436 + %8797 = OpShiftLeftLogical %int %24558 %uint_8 + %11510 = OpBitwiseAnd %int %8797 %int_268435455 + %18938 = OpShiftLeftLogical %int %11510 %int_1 + %19768 = OpBitwiseAnd %int %14692 %int_7 + %12600 = OpBitwiseAnd %int %17598 %int_6 + %17741 = OpShiftLeftLogical %int %12600 %int_2 + %17227 = OpIAdd %int %19768 %17741 + %7048 = OpShiftLeftLogical %int %17227 %uint_8 + %24035 = OpShiftRightArithmetic %int %7048 %int_6 + %8725 = OpShiftRightArithmetic %int %17598 %int_3 + %13731 = OpIAdd %int %8725 %18773 + %23052 = OpBitwiseAnd %int %13731 %int_1 + %16658 = OpShiftRightArithmetic %int %14692 %int_3 + %18794 = OpShiftLeftLogical %int %23052 %int_1 + %13501 = OpIAdd %int %16658 %18794 + %19165 = OpBitwiseAnd %int %13501 %int_3 + %21578 = OpShiftLeftLogical %int %19165 %int_1 + %15435 = OpIAdd %int %23052 %21578 + %13150 = OpBitwiseAnd %int %24035 %int_n16 + %20336 = OpIAdd %int %18938 %13150 + %23345 = OpShiftLeftLogical %int %20336 %int_1 + %23274 = OpBitwiseAnd %int %24035 %int_15 + %10332 = OpIAdd %int %23345 %23274 + %18356 = OpBitwiseAnd %int %6362 %int_3 + %21579 = OpShiftLeftLogical %int %18356 %uint_8 + %16727 = OpIAdd %int %10332 %21579 + %19166 = OpBitwiseAnd %int %17598 %int_1 + %21580 = OpShiftLeftLogical %int %19166 %int_4 + %16728 = OpIAdd %int %16727 %21580 + %20438 = OpBitwiseAnd %int %15435 %int_1 + %9987 = OpShiftLeftLogical %int %20438 %int_3 + %13106 = OpShiftRightArithmetic %int %16728 %int_6 + %14038 = OpBitwiseAnd %int %13106 %int_7 + %13330 = OpIAdd %int %9987 %14038 + %23346 = OpShiftLeftLogical %int %13330 %int_3 + %23217 = OpBitwiseAnd %int %15435 %int_n2 + %10908 = OpIAdd %int %23346 %23217 + %23347 = OpShiftLeftLogical %int %10908 %int_2 + %23218 = OpBitwiseAnd %int %16728 %int_n512 + %10909 = OpIAdd %int %23347 %23218 + %23348 = OpShiftLeftLogical %int %10909 %int_3 + %24224 = OpBitwiseAnd %int %16728 %int_63 + %21741 = OpIAdd %int %23348 %24224 + OpBranch %7691 + %25128 = OpLabel + %6796 = OpBitcast %v2int %18835 + %18793 = OpAccessChain %_ptr_Uniform_uint %5245 %int_2 + %11954 = OpLoad %uint %18793 + %18756 = OpCompositeExtract %int %6796 0 + %19701 = OpShiftRightArithmetic %int %18756 %int_5 + %10055 = OpCompositeExtract %int %6796 1 + %16476 = OpShiftRightArithmetic %int %10055 %int_5 + %23373 = OpShiftRightLogical %uint %11954 %uint_5 + %6315 = OpBitcast %int %23373 + %21319 = OpIMul %int %16476 %6315 + %16222 = OpIAdd %int %19701 %21319 + %19086 = OpShiftLeftLogical %int %16222 %uint_9 + %10934 = OpBitwiseAnd %int %18756 %int_7 + %12601 = OpBitwiseAnd %int %10055 %int_14 + %17742 = OpShiftLeftLogical %int %12601 %int_2 + %17303 = OpIAdd %int %10934 %17742 + %6375 = OpShiftLeftLogical %int %17303 %uint_2 + %10161 = OpBitwiseAnd %int %6375 %int_n16 + %12150 = OpShiftLeftLogical %int %10161 %int_1 + %15436 = OpIAdd %int %19086 %12150 + %13207 = OpBitwiseAnd %int %6375 %int_15 + %19760 = OpIAdd %int %15436 %13207 + %18357 = OpBitwiseAnd %int %10055 %int_1 + %21581 = OpShiftLeftLogical %int %18357 %int_4 + %16729 = OpIAdd %int %19760 %21581 + %20514 = OpBitwiseAnd %int %16729 %int_n512 + %9238 = OpShiftLeftLogical %int %20514 %int_3 + %18995 = OpBitwiseAnd %int %10055 %int_16 + %12151 = OpShiftLeftLogical %int %18995 %int_7 + %16730 = OpIAdd %int %9238 %12151 + %19167 = OpBitwiseAnd %int %16729 %int_448 + %21582 = OpShiftLeftLogical %int %19167 %int_2 + %16708 = OpIAdd %int %16730 %21582 + %20611 = OpBitwiseAnd %int %10055 %int_8 + %16831 = OpShiftRightArithmetic %int %20611 %int_2 + %7916 = OpShiftRightArithmetic %int %18756 %int_3 + %13750 = OpIAdd %int %16831 %7916 + %21587 = OpBitwiseAnd %int %13750 %int_3 + %21583 = OpShiftLeftLogical %int %21587 %int_6 + %15437 = OpIAdd %int %16708 %21583 + %14157 = OpBitwiseAnd %int %16729 %int_63 + %12098 = OpIAdd %int %15437 %14157 + OpBranch %7691 + %7691 = OpLabel + %10540 = OpPhi %int %21741 %12129 %12098 %25128 + OpBranch %23266 + %10765 = OpLabel + %20632 = OpAccessChain %_ptr_Uniform_uint %5245 %int_2 + %15628 = OpLoad %uint %20632 + %21427 = OpAccessChain %_ptr_Uniform_uint %5245 %int_3 + %12014 = OpLoad %uint %21427 + %8199 = OpIMul %int %14692 %int_4 + %11736 = OpBitcast %int %12014 + %8690 = OpIMul %int %6362 %11736 + %8334 = OpIAdd %int %8690 %17598 + %8952 = OpBitcast %int %15628 + %7839 = OpIMul %int %8334 %8952 + %7984 = OpIAdd %int %8199 %7839 + OpBranch %23266 + %23266 = OpLabel + %19748 = OpPhi %int %10540 %7691 %7984 %10765 + %24922 = OpAccessChain %_ptr_Uniform_uint %5245 %int_1 + %7502 = OpLoad %uint %24922 + %15686 = OpBitcast %int %7502 + %15579 = OpIAdd %int %15686 %19748 + %18556 = OpBitcast %uint %15579 + %21493 = OpShiftRightLogical %uint %18556 %uint_4 + %14997 = OpShiftRightLogical %uint %21411 %uint_2 + %8394 = OpBitwiseAnd %uint %14997 %uint_3 + %20727 = OpAccessChain %_ptr_Uniform_v4uint %4218 %int_0 %21493 + %8142 = OpLoad %v4uint %20727 + %13760 = OpIEqual %bool %8394 %uint_1 + %21366 = OpIEqual %bool %8394 %uint_2 + %22150 = OpLogicalOr %bool %13760 %21366 + OpSelectionMerge %13411 None + OpBranchConditional %22150 %10583 %13411 + %10583 = OpLabel + %18271 = OpBitwiseAnd %v4uint %8142 %2510 + %9425 = OpShiftLeftLogical %v4uint %18271 %317 + %20652 = OpBitwiseAnd %v4uint %8142 %1838 + %17549 = OpShiftRightLogical %v4uint %20652 %317 + %16376 = OpBitwiseOr %v4uint %9425 %17549 + OpBranch %13411 + %13411 = OpLabel + %22649 = OpPhi %v4uint %8142 %23266 %16376 %10583 + %19638 = OpIEqual %bool %8394 %uint_3 + %15139 = OpLogicalOr %bool %21366 %19638 + OpSelectionMerge %11682 None + OpBranchConditional %15139 %11064 %11682 + %11064 = OpLabel + %24087 = OpShiftLeftLogical %v4uint %22649 %749 + %15335 = OpShiftRightLogical %v4uint %22649 %749 + %10728 = OpBitwiseOr %v4uint %24087 %15335 + OpBranch %11682 + %11682 = OpLabel + %19853 = OpPhi %v4uint %22649 %13411 %10728 %11064 + %22133 = OpVectorShuffle %v2uint %19853 %19853 0 1 + %14639 = OpShiftRightLogical %v2uint %22133 %2311 + %7965 = OpBitwiseAnd %v2uint %22133 %2682 + %24090 = OpShiftLeftLogical %v2uint %7965 %1975 + %17486 = OpBitwiseOr %v2uint %14639 %24090 + %17643 = OpBitwiseOr %v2uint %17486 %2014 + %18482 = OpBitwiseAnd %v2uint %22133 %1140 + %22878 = OpShiftLeftLogical %v2uint %18482 %1975 + %18448 = OpBitwiseAnd %v2uint %22133 %2993 + %15354 = OpShiftRightLogical %v2uint %18448 %1975 + %7420 = OpCompositeExtract %uint %22878 0 + %24539 = OpCompositeExtract %uint %22878 1 + %7641 = OpCompositeExtract %uint %15354 0 + %7795 = OpCompositeExtract %uint %15354 1 + %16161 = OpCompositeConstruct %v4uint %7420 %24539 %7641 %7795 + %7774 = OpVectorShuffle %v4uint %16161 %16161 0 2 1 3 + %6860 = OpVectorShuffle %v4uint %17643 %17643 0 0 1 1 + %24814 = OpBitwiseOr %v4uint %6860 %7774 + %18141 = OpVectorShuffle %v2uint %19853 %19853 2 3 + %8212 = OpShiftRightLogical %v2uint %18141 %2311 + %7966 = OpBitwiseAnd %v2uint %18141 %2682 + %24091 = OpShiftLeftLogical %v2uint %7966 %1975 + %17487 = OpBitwiseOr %v2uint %8212 %24091 + %17644 = OpBitwiseOr %v2uint %17487 %2014 + %18483 = OpBitwiseAnd %v2uint %18141 %1140 + %22879 = OpShiftLeftLogical %v2uint %18483 %1975 + %18449 = OpBitwiseAnd %v2uint %18141 %2993 + %15355 = OpShiftRightLogical %v2uint %18449 %1975 + %7421 = OpCompositeExtract %uint %22879 0 + %24540 = OpCompositeExtract %uint %22879 1 + %7642 = OpCompositeExtract %uint %15355 0 + %7796 = OpCompositeExtract %uint %15355 1 + %16162 = OpCompositeConstruct %v4uint %7421 %24540 %7642 %7796 + %7775 = OpVectorShuffle %v4uint %16162 %16162 0 2 1 3 + %6594 = OpVectorShuffle %v4uint %17644 %17644 0 0 1 1 + %24728 = OpBitwiseOr %v4uint %6594 %7775 + %8219 = OpAccessChain %_ptr_Uniform_v4uint %5134 %int_0 %21670 + OpStore %8219 %24814 + %11457 = OpIAdd %uint %21670 %uint_1 + %23654 = OpAccessChain %_ptr_Uniform_v4uint %5134 %int_0 %11457 + OpStore %23654 %24728 + %16830 = OpSelect %uint %10467 %uint_32 %uint_16 + %22844 = OpShiftRightLogical %uint %16830 %uint_4 + %13947 = OpIAdd %uint %21493 %22844 + %22298 = OpAccessChain %_ptr_Uniform_v4uint %4218 %int_0 %13947 + %6578 = OpLoad %v4uint %22298 + OpSelectionMerge %14874 None + OpBranchConditional %22150 %10584 %14874 + %10584 = OpLabel + %18272 = OpBitwiseAnd %v4uint %6578 %2510 + %9426 = OpShiftLeftLogical %v4uint %18272 %317 + %20653 = OpBitwiseAnd %v4uint %6578 %1838 + %17550 = OpShiftRightLogical %v4uint %20653 %317 + %16377 = OpBitwiseOr %v4uint %9426 %17550 + OpBranch %14874 + %14874 = OpLabel + %10924 = OpPhi %v4uint %6578 %11682 %16377 %10584 + OpSelectionMerge %11683 None + OpBranchConditional %15139 %11065 %11683 + %11065 = OpLabel + %24088 = OpShiftLeftLogical %v4uint %10924 %749 + %15336 = OpShiftRightLogical %v4uint %10924 %749 + %10729 = OpBitwiseOr %v4uint %24088 %15336 + OpBranch %11683 + %11683 = OpLabel + %19854 = OpPhi %v4uint %10924 %14874 %10729 %11065 + %22134 = OpVectorShuffle %v2uint %19854 %19854 0 1 + %14640 = OpShiftRightLogical %v2uint %22134 %2311 + %7967 = OpBitwiseAnd %v2uint %22134 %2682 + %24092 = OpShiftLeftLogical %v2uint %7967 %1975 + %17488 = OpBitwiseOr %v2uint %14640 %24092 + %17645 = OpBitwiseOr %v2uint %17488 %2014 + %18484 = OpBitwiseAnd %v2uint %22134 %1140 + %22880 = OpShiftLeftLogical %v2uint %18484 %1975 + %18450 = OpBitwiseAnd %v2uint %22134 %2993 + %15356 = OpShiftRightLogical %v2uint %18450 %1975 + %7422 = OpCompositeExtract %uint %22880 0 + %24541 = OpCompositeExtract %uint %22880 1 + %7643 = OpCompositeExtract %uint %15356 0 + %7797 = OpCompositeExtract %uint %15356 1 + %16163 = OpCompositeConstruct %v4uint %7422 %24541 %7643 %7797 + %7776 = OpVectorShuffle %v4uint %16163 %16163 0 2 1 3 + %6861 = OpVectorShuffle %v4uint %17645 %17645 0 0 1 1 + %24815 = OpBitwiseOr %v4uint %6861 %7776 + %18142 = OpVectorShuffle %v2uint %19854 %19854 2 3 + %8213 = OpShiftRightLogical %v2uint %18142 %2311 + %7968 = OpBitwiseAnd %v2uint %18142 %2682 + %24093 = OpShiftLeftLogical %v2uint %7968 %1975 + %17489 = OpBitwiseOr %v2uint %8213 %24093 + %17646 = OpBitwiseOr %v2uint %17489 %2014 + %18485 = OpBitwiseAnd %v2uint %18142 %1140 + %22881 = OpShiftLeftLogical %v2uint %18485 %1975 + %18451 = OpBitwiseAnd %v2uint %18142 %2993 + %15357 = OpShiftRightLogical %v2uint %18451 %1975 + %7423 = OpCompositeExtract %uint %22881 0 + %24542 = OpCompositeExtract %uint %22881 1 + %7644 = OpCompositeExtract %uint %15357 0 + %7798 = OpCompositeExtract %uint %15357 1 + %16164 = OpCompositeConstruct %v4uint %7423 %24542 %7644 %7798 + %7777 = OpVectorShuffle %v4uint %16164 %16164 0 2 1 3 + %7791 = OpVectorShuffle %v4uint %17646 %17646 0 0 1 1 + %13886 = OpBitwiseOr %v4uint %7791 %7777 + %17818 = OpIAdd %uint %21670 %uint_2 + %6441 = OpAccessChain %_ptr_Uniform_v4uint %5134 %int_0 %17818 + OpStore %6441 %24815 + %11458 = OpIAdd %uint %21670 %uint_3 + %25174 = OpAccessChain %_ptr_Uniform_v4uint %5134 %int_0 %11458 + OpStore %25174 %13886 + OpBranch %19578 + %19578 = OpLabel + OpReturn + OpFunctionEnd +#endif + +const uint32_t texture_load_gbgr8_rgba8_cs[] = { + 0x07230203, 0x00010000, 0x0008000A, 0x0000625B, 0x00000000, 0x00020011, + 0x00000001, 0x0006000B, 0x00000001, 0x4C534C47, 0x6474732E, 0x3035342E, + 0x00000000, 0x0003000E, 0x00000000, 0x00000001, 0x0006000F, 0x00000005, + 0x0000161F, 0x6E69616D, 0x00000000, 0x00000F48, 0x00060010, 0x0000161F, + 0x00000011, 0x00000004, 0x00000020, 0x00000001, 0x00050048, 0x00000489, + 0x00000000, 0x00000023, 0x00000000, 0x00050048, 0x00000489, 0x00000001, + 0x00000023, 0x00000004, 0x00050048, 0x00000489, 0x00000002, 0x00000023, + 0x00000008, 0x00050048, 0x00000489, 0x00000003, 0x00000023, 0x0000000C, + 0x00050048, 0x00000489, 0x00000004, 0x00000023, 0x00000010, 0x00050048, + 0x00000489, 0x00000005, 0x00000023, 0x0000001C, 0x00050048, 0x00000489, + 0x00000006, 0x00000023, 0x00000020, 0x00050048, 0x00000489, 0x00000007, + 0x00000023, 0x00000024, 0x00030047, 0x00000489, 0x00000002, 0x00040047, + 0x0000147D, 0x00000022, 0x00000002, 0x00040047, 0x0000147D, 0x00000021, + 0x00000000, 0x00040047, 0x00000F48, 0x0000000B, 0x0000001C, 0x00040047, + 0x000007DC, 0x00000006, 0x00000010, 0x00040048, 0x000007B4, 0x00000000, + 0x00000018, 0x00050048, 0x000007B4, 0x00000000, 0x00000023, 0x00000000, + 0x00030047, 0x000007B4, 0x00000003, 0x00040047, 0x0000107A, 0x00000022, + 0x00000001, 0x00040047, 0x0000107A, 0x00000021, 0x00000000, 0x00040047, + 0x000007DD, 0x00000006, 0x00000010, 0x00040048, 0x000007B5, 0x00000000, + 0x00000019, 0x00050048, 0x000007B5, 0x00000000, 0x00000023, 0x00000000, + 0x00030047, 0x000007B5, 0x00000003, 0x00040047, 0x0000140E, 0x00000022, + 0x00000000, 0x00040047, 0x0000140E, 0x00000021, 0x00000000, 0x00040047, + 0x00000BC3, 0x0000000B, 0x00000019, 0x00020013, 0x00000008, 0x00030021, + 0x00000502, 0x00000008, 0x00040015, 0x0000000B, 0x00000020, 0x00000000, + 0x00040017, 0x00000011, 0x0000000B, 0x00000002, 0x00040017, 0x00000017, + 0x0000000B, 0x00000004, 0x00040015, 0x0000000C, 0x00000020, 0x00000001, + 0x00040017, 0x00000012, 0x0000000C, 0x00000002, 0x00040017, 0x00000016, + 0x0000000C, 0x00000003, 0x00020014, 0x00000009, 0x00040017, 0x00000014, + 0x0000000B, 0x00000003, 0x0004002B, 0x0000000B, 0x00000A52, 0x00000018, + 0x0004002B, 0x0000000B, 0x00000A87, 0x0000FF00, 0x0004002B, 0x0000000B, + 0x00000A22, 0x00000008, 0x0004002B, 0x0000000B, 0x00000580, 0xFF000000, + 0x0004002B, 0x0000000B, 0x00000144, 0x000000FF, 0x0004002B, 0x0000000B, + 0x000005A9, 0x00FF0000, 0x0004002B, 0x0000000B, 0x00000A0D, 0x00000001, + 0x0004002B, 0x0000000B, 0x00000A10, 0x00000002, 0x0004002B, 0x0000000B, + 0x000008A6, 0x00FF00FF, 0x0004002B, 0x0000000B, 0x000005FD, 0xFF00FF00, + 0x0004002B, 0x0000000B, 0x00000A13, 0x00000003, 0x0004002B, 0x0000000B, + 0x00000A3A, 0x00000010, 0x0004002B, 0x0000000B, 0x00000A0A, 0x00000000, + 0x0004002B, 0x0000000C, 0x00000A1A, 0x00000005, 0x0004002B, 0x0000000B, + 0x00000A19, 0x00000005, 0x0004002B, 0x0000000C, 0x00000A20, 0x00000007, + 0x0004002B, 0x0000000C, 0x00000A35, 0x0000000E, 0x0004002B, 0x0000000C, + 0x00000A11, 0x00000002, 0x0004002B, 0x0000000C, 0x000009DB, 0xFFFFFFF0, + 0x0004002B, 0x0000000C, 0x00000A0E, 0x00000001, 0x0004002B, 0x0000000C, + 0x00000A38, 0x0000000F, 0x0004002B, 0x0000000C, 0x00000A17, 0x00000004, + 0x0004002B, 0x0000000C, 0x0000040B, 0xFFFFFE00, 0x0004002B, 0x0000000C, + 0x00000A14, 0x00000003, 0x0004002B, 0x0000000C, 0x00000A3B, 0x00000010, + 0x0004002B, 0x0000000C, 0x00000388, 0x000001C0, 0x0004002B, 0x0000000C, + 0x00000A23, 0x00000008, 0x0004002B, 0x0000000C, 0x00000A1D, 0x00000006, + 0x0004002B, 0x0000000C, 0x00000AC8, 0x0000003F, 0x0004002B, 0x0000000B, + 0x00000A16, 0x00000004, 0x0004002B, 0x0000000C, 0x0000078B, 0x0FFFFFFF, + 0x0004002B, 0x0000000C, 0x00000A05, 0xFFFFFFFE, 0x0004002B, 0x0000000B, + 0x00000A6A, 0x00000020, 0x000A001E, 0x00000489, 0x0000000B, 0x0000000B, + 0x0000000B, 0x0000000B, 0x00000014, 0x0000000B, 0x0000000B, 0x0000000B, + 0x00040020, 0x00000706, 0x00000002, 0x00000489, 0x0004003B, 0x00000706, + 0x0000147D, 0x00000002, 0x0004002B, 0x0000000C, 0x00000A0B, 0x00000000, + 0x00040020, 0x00000288, 0x00000002, 0x0000000B, 0x00040020, 0x00000291, + 0x00000002, 0x00000014, 0x00040020, 0x00000292, 0x00000001, 0x00000014, + 0x0004003B, 0x00000292, 0x00000F48, 0x00000001, 0x0006002C, 0x00000014, + 0x00000A2B, 0x00000A13, 0x00000A0A, 0x00000A0A, 0x00040017, 0x0000000F, + 0x00000009, 0x00000002, 0x0003001D, 0x000007DC, 0x00000017, 0x0003001E, + 0x000007B4, 0x000007DC, 0x00040020, 0x00000A31, 0x00000002, 0x000007B4, + 0x0004003B, 0x00000A31, 0x0000107A, 0x00000002, 0x00040020, 0x00000294, + 0x00000002, 0x00000017, 0x0003001D, 0x000007DD, 0x00000017, 0x0003001E, + 0x000007B5, 0x000007DD, 0x00040020, 0x00000A32, 0x00000002, 0x000007B5, + 0x0004003B, 0x00000A32, 0x0000140E, 0x00000002, 0x0006002C, 0x00000014, + 0x00000BC3, 0x00000A16, 0x00000A6A, 0x00000A0D, 0x0004002B, 0x0000000B, + 0x00000A25, 0x00000009, 0x0007002C, 0x00000017, 0x000009CE, 0x000008A6, + 0x000008A6, 0x000008A6, 0x000008A6, 0x0007002C, 0x00000017, 0x0000013D, + 0x00000A22, 0x00000A22, 0x00000A22, 0x00000A22, 0x0007002C, 0x00000017, + 0x0000072E, 0x000005FD, 0x000005FD, 0x000005FD, 0x000005FD, 0x0007002C, + 0x00000017, 0x000002ED, 0x00000A3A, 0x00000A3A, 0x00000A3A, 0x00000A3A, + 0x0005002C, 0x00000011, 0x00000907, 0x00000A52, 0x00000A52, 0x0005002C, + 0x00000011, 0x00000A7A, 0x00000A87, 0x00000A87, 0x0005002C, 0x00000011, + 0x000007B7, 0x00000A22, 0x00000A22, 0x0005002C, 0x00000011, 0x000007DE, + 0x00000580, 0x00000580, 0x0005002C, 0x00000011, 0x00000474, 0x00000144, + 0x00000144, 0x0005002C, 0x00000011, 0x00000BB1, 0x000005A9, 0x000005A9, + 0x00050036, 0x00000008, 0x0000161F, 0x00000000, 0x00000502, 0x000200F8, + 0x00003B06, 0x000300F7, 0x00004C7A, 0x00000000, 0x000300FB, 0x00000A0A, + 0x00003B21, 0x000200F8, 0x00003B21, 0x0004003D, 0x00000014, 0x0000312F, + 0x00000F48, 0x000500C4, 0x00000014, 0x000027F5, 0x0000312F, 0x00000A2B, + 0x00050041, 0x00000291, 0x0000625A, 0x0000147D, 0x00000A17, 0x0004003D, + 0x00000014, 0x000059B5, 0x0000625A, 0x0007004F, 0x00000011, 0x00004993, + 0x000027F5, 0x000027F5, 0x00000000, 0x00000001, 0x0007004F, 0x00000011, + 0x000019E2, 0x000059B5, 0x000059B5, 0x00000000, 0x00000001, 0x000500AE, + 0x0000000F, 0x00004288, 0x00004993, 0x000019E2, 0x0004009A, 0x00000009, + 0x00006067, 0x00004288, 0x000300F7, 0x0000188A, 0x00000002, 0x000400FA, + 0x00006067, 0x000055E8, 0x0000188A, 0x000200F8, 0x000055E8, 0x000200F9, + 0x00004C7A, 0x000200F8, 0x0000188A, 0x0004007C, 0x00000016, 0x00001A8B, + 0x000027F5, 0x00050041, 0x00000288, 0x00004968, 0x0000147D, 0x00000A1D, + 0x0004003D, 0x0000000B, 0x0000263C, 0x00004968, 0x00050051, 0x0000000B, + 0x00004F98, 0x000059B5, 0x00000001, 0x00050051, 0x0000000C, 0x00003964, + 0x00001A8B, 0x00000000, 0x00050084, 0x0000000C, 0x0000591A, 0x00003964, + 0x00000A23, 0x00050051, 0x0000000C, 0x000018DA, 0x00001A8B, 0x00000002, + 0x0004007C, 0x0000000C, 0x000038A9, 0x00004F98, 0x00050084, 0x0000000C, + 0x00002C0F, 0x000018DA, 0x000038A9, 0x00050051, 0x0000000C, 0x000044BE, + 0x00001A8B, 0x00000001, 0x00050080, 0x0000000C, 0x000056D4, 0x00002C0F, + 0x000044BE, 0x0004007C, 0x0000000C, 0x00005785, 0x0000263C, 0x00050084, + 0x0000000C, 0x00005FD7, 0x000056D4, 0x00005785, 0x00050080, 0x0000000C, + 0x00001B95, 0x0000591A, 0x00005FD7, 0x0004007C, 0x0000000B, 0x00004B46, + 0x00001B95, 0x00050041, 0x00000288, 0x00004C04, 0x0000147D, 0x00000A1A, + 0x0004003D, 0x0000000B, 0x0000595B, 0x00004C04, 0x00050080, 0x0000000B, + 0x00002145, 0x00004B46, 0x0000595B, 0x000500C2, 0x0000000B, 0x000054A6, + 0x00002145, 0x00000A16, 0x00050041, 0x00000288, 0x000051D6, 0x0000147D, + 0x00000A0B, 0x0004003D, 0x0000000B, 0x000053A3, 0x000051D6, 0x000500C7, + 0x0000000B, 0x000018ED, 0x000053A3, 0x00000A0D, 0x000500AB, 0x00000009, + 0x000028E3, 0x000018ED, 0x00000A0A, 0x000300F7, 0x00005AE2, 0x00000002, + 0x000400FA, 0x000028E3, 0x0000277C, 0x00002A0D, 0x000200F8, 0x0000277C, + 0x000500C7, 0x0000000B, 0x00005BD4, 0x000053A3, 0x00000A10, 0x000500AB, + 0x00000009, 0x00003FAC, 0x00005BD4, 0x00000A0A, 0x000300F7, 0x00001E0B, + 0x00000002, 0x000400FA, 0x00003FAC, 0x00002F61, 0x00006228, 0x000200F8, + 0x00002F61, 0x00050041, 0x00000288, 0x00004722, 0x0000147D, 0x00000A11, + 0x0004003D, 0x0000000B, 0x00003D0B, 0x00004722, 0x00050041, 0x00000288, + 0x00005860, 0x0000147D, 0x00000A14, 0x0004003D, 0x0000000B, 0x0000541F, + 0x00005860, 0x000500C3, 0x0000000C, 0x00003A4B, 0x000044BE, 0x00000A17, + 0x000500C3, 0x0000000C, 0x00004955, 0x000018DA, 0x00000A11, 0x000500C2, + 0x0000000B, 0x00004947, 0x0000541F, 0x00000A16, 0x0004007C, 0x0000000C, + 0x000018AA, 0x00004947, 0x00050084, 0x0000000C, 0x00005321, 0x00004955, + 0x000018AA, 0x00050080, 0x0000000C, 0x00003B27, 0x00003A4B, 0x00005321, + 0x000500C2, 0x0000000B, 0x00002348, 0x00003D0B, 0x00000A19, 0x0004007C, + 0x0000000C, 0x00003901, 0x00002348, 0x00050084, 0x0000000C, 0x000020F4, + 0x00003B27, 0x00003901, 0x000500C3, 0x0000000C, 0x000032BA, 0x00003964, + 0x00000A1A, 0x00050080, 0x0000000C, 0x00005FEE, 0x000032BA, 0x000020F4, + 0x000500C4, 0x0000000C, 0x0000225D, 0x00005FEE, 0x00000A22, 0x000500C7, + 0x0000000C, 0x00002CF6, 0x0000225D, 0x0000078B, 0x000500C4, 0x0000000C, + 0x000049FA, 0x00002CF6, 0x00000A0E, 0x000500C7, 0x0000000C, 0x00004D38, + 0x00003964, 0x00000A20, 0x000500C7, 0x0000000C, 0x00003138, 0x000044BE, + 0x00000A1D, 0x000500C4, 0x0000000C, 0x0000454D, 0x00003138, 0x00000A11, + 0x00050080, 0x0000000C, 0x0000434B, 0x00004D38, 0x0000454D, 0x000500C4, + 0x0000000C, 0x00001B88, 0x0000434B, 0x00000A22, 0x000500C3, 0x0000000C, + 0x00005DE3, 0x00001B88, 0x00000A1D, 0x000500C3, 0x0000000C, 0x00002215, + 0x000044BE, 0x00000A14, 0x00050080, 0x0000000C, 0x000035A3, 0x00002215, + 0x00004955, 0x000500C7, 0x0000000C, 0x00005A0C, 0x000035A3, 0x00000A0E, + 0x000500C3, 0x0000000C, 0x00004112, 0x00003964, 0x00000A14, 0x000500C4, + 0x0000000C, 0x0000496A, 0x00005A0C, 0x00000A0E, 0x00050080, 0x0000000C, + 0x000034BD, 0x00004112, 0x0000496A, 0x000500C7, 0x0000000C, 0x00004ADD, + 0x000034BD, 0x00000A14, 0x000500C4, 0x0000000C, 0x0000544A, 0x00004ADD, + 0x00000A0E, 0x00050080, 0x0000000C, 0x00003C4B, 0x00005A0C, 0x0000544A, + 0x000500C7, 0x0000000C, 0x0000335E, 0x00005DE3, 0x000009DB, 0x00050080, + 0x0000000C, 0x00004F70, 0x000049FA, 0x0000335E, 0x000500C4, 0x0000000C, + 0x00005B31, 0x00004F70, 0x00000A0E, 0x000500C7, 0x0000000C, 0x00005AEA, + 0x00005DE3, 0x00000A38, 0x00050080, 0x0000000C, 0x0000285C, 0x00005B31, + 0x00005AEA, 0x000500C7, 0x0000000C, 0x000047B4, 0x000018DA, 0x00000A14, + 0x000500C4, 0x0000000C, 0x0000544B, 0x000047B4, 0x00000A22, 0x00050080, + 0x0000000C, 0x00004157, 0x0000285C, 0x0000544B, 0x000500C7, 0x0000000C, + 0x00004ADE, 0x000044BE, 0x00000A0E, 0x000500C4, 0x0000000C, 0x0000544C, + 0x00004ADE, 0x00000A17, 0x00050080, 0x0000000C, 0x00004158, 0x00004157, + 0x0000544C, 0x000500C7, 0x0000000C, 0x00004FD6, 0x00003C4B, 0x00000A0E, + 0x000500C4, 0x0000000C, 0x00002703, 0x00004FD6, 0x00000A14, 0x000500C3, + 0x0000000C, 0x00003332, 0x00004158, 0x00000A1D, 0x000500C7, 0x0000000C, + 0x000036D6, 0x00003332, 0x00000A20, 0x00050080, 0x0000000C, 0x00003412, + 0x00002703, 0x000036D6, 0x000500C4, 0x0000000C, 0x00005B32, 0x00003412, + 0x00000A14, 0x000500C7, 0x0000000C, 0x00005AB1, 0x00003C4B, 0x00000A05, + 0x00050080, 0x0000000C, 0x00002A9C, 0x00005B32, 0x00005AB1, 0x000500C4, + 0x0000000C, 0x00005B33, 0x00002A9C, 0x00000A11, 0x000500C7, 0x0000000C, + 0x00005AB2, 0x00004158, 0x0000040B, 0x00050080, 0x0000000C, 0x00002A9D, + 0x00005B33, 0x00005AB2, 0x000500C4, 0x0000000C, 0x00005B34, 0x00002A9D, + 0x00000A14, 0x000500C7, 0x0000000C, 0x00005EA0, 0x00004158, 0x00000AC8, + 0x00050080, 0x0000000C, 0x000054ED, 0x00005B34, 0x00005EA0, 0x000200F9, + 0x00001E0B, 0x000200F8, 0x00006228, 0x0004007C, 0x00000012, 0x00001A8C, + 0x00004993, 0x00050041, 0x00000288, 0x00004969, 0x0000147D, 0x00000A11, + 0x0004003D, 0x0000000B, 0x00002EB2, 0x00004969, 0x00050051, 0x0000000C, + 0x00004944, 0x00001A8C, 0x00000000, 0x000500C3, 0x0000000C, 0x00004CF5, + 0x00004944, 0x00000A1A, 0x00050051, 0x0000000C, 0x00002747, 0x00001A8C, + 0x00000001, 0x000500C3, 0x0000000C, 0x0000405C, 0x00002747, 0x00000A1A, + 0x000500C2, 0x0000000B, 0x00005B4D, 0x00002EB2, 0x00000A19, 0x0004007C, + 0x0000000C, 0x000018AB, 0x00005B4D, 0x00050084, 0x0000000C, 0x00005347, + 0x0000405C, 0x000018AB, 0x00050080, 0x0000000C, 0x00003F5E, 0x00004CF5, + 0x00005347, 0x000500C4, 0x0000000C, 0x00004A8E, 0x00003F5E, 0x00000A25, + 0x000500C7, 0x0000000C, 0x00002AB6, 0x00004944, 0x00000A20, 0x000500C7, + 0x0000000C, 0x00003139, 0x00002747, 0x00000A35, 0x000500C4, 0x0000000C, + 0x0000454E, 0x00003139, 0x00000A11, 0x00050080, 0x0000000C, 0x00004397, + 0x00002AB6, 0x0000454E, 0x000500C4, 0x0000000C, 0x000018E7, 0x00004397, + 0x00000A10, 0x000500C7, 0x0000000C, 0x000027B1, 0x000018E7, 0x000009DB, + 0x000500C4, 0x0000000C, 0x00002F76, 0x000027B1, 0x00000A0E, 0x00050080, + 0x0000000C, 0x00003C4C, 0x00004A8E, 0x00002F76, 0x000500C7, 0x0000000C, + 0x00003397, 0x000018E7, 0x00000A38, 0x00050080, 0x0000000C, 0x00004D30, + 0x00003C4C, 0x00003397, 0x000500C7, 0x0000000C, 0x000047B5, 0x00002747, + 0x00000A0E, 0x000500C4, 0x0000000C, 0x0000544D, 0x000047B5, 0x00000A17, + 0x00050080, 0x0000000C, 0x00004159, 0x00004D30, 0x0000544D, 0x000500C7, + 0x0000000C, 0x00005022, 0x00004159, 0x0000040B, 0x000500C4, 0x0000000C, + 0x00002416, 0x00005022, 0x00000A14, 0x000500C7, 0x0000000C, 0x00004A33, + 0x00002747, 0x00000A3B, 0x000500C4, 0x0000000C, 0x00002F77, 0x00004A33, + 0x00000A20, 0x00050080, 0x0000000C, 0x0000415A, 0x00002416, 0x00002F77, + 0x000500C7, 0x0000000C, 0x00004ADF, 0x00004159, 0x00000388, 0x000500C4, + 0x0000000C, 0x0000544E, 0x00004ADF, 0x00000A11, 0x00050080, 0x0000000C, + 0x00004144, 0x0000415A, 0x0000544E, 0x000500C7, 0x0000000C, 0x00005083, + 0x00002747, 0x00000A23, 0x000500C3, 0x0000000C, 0x000041BF, 0x00005083, + 0x00000A11, 0x000500C3, 0x0000000C, 0x00001EEC, 0x00004944, 0x00000A14, + 0x00050080, 0x0000000C, 0x000035B6, 0x000041BF, 0x00001EEC, 0x000500C7, + 0x0000000C, 0x00005453, 0x000035B6, 0x00000A14, 0x000500C4, 0x0000000C, + 0x0000544F, 0x00005453, 0x00000A1D, 0x00050080, 0x0000000C, 0x00003C4D, + 0x00004144, 0x0000544F, 0x000500C7, 0x0000000C, 0x0000374D, 0x00004159, + 0x00000AC8, 0x00050080, 0x0000000C, 0x00002F42, 0x00003C4D, 0x0000374D, + 0x000200F9, 0x00001E0B, 0x000200F8, 0x00001E0B, 0x000700F5, 0x0000000C, + 0x0000292C, 0x000054ED, 0x00002F61, 0x00002F42, 0x00006228, 0x000200F9, + 0x00005AE2, 0x000200F8, 0x00002A0D, 0x00050041, 0x00000288, 0x00005098, + 0x0000147D, 0x00000A11, 0x0004003D, 0x0000000B, 0x00003D0C, 0x00005098, + 0x00050041, 0x00000288, 0x000053B3, 0x0000147D, 0x00000A14, 0x0004003D, + 0x0000000B, 0x00002EEE, 0x000053B3, 0x00050084, 0x0000000C, 0x00002007, + 0x00003964, 0x00000A17, 0x0004007C, 0x0000000C, 0x00002DD8, 0x00002EEE, + 0x00050084, 0x0000000C, 0x000021F2, 0x000018DA, 0x00002DD8, 0x00050080, + 0x0000000C, 0x0000208E, 0x000021F2, 0x000044BE, 0x0004007C, 0x0000000C, + 0x000022F8, 0x00003D0C, 0x00050084, 0x0000000C, 0x00001E9F, 0x0000208E, + 0x000022F8, 0x00050080, 0x0000000C, 0x00001F30, 0x00002007, 0x00001E9F, + 0x000200F9, 0x00005AE2, 0x000200F8, 0x00005AE2, 0x000700F5, 0x0000000C, + 0x00004D24, 0x0000292C, 0x00001E0B, 0x00001F30, 0x00002A0D, 0x00050041, + 0x00000288, 0x0000615A, 0x0000147D, 0x00000A0E, 0x0004003D, 0x0000000B, + 0x00001D4E, 0x0000615A, 0x0004007C, 0x0000000C, 0x00003D46, 0x00001D4E, + 0x00050080, 0x0000000C, 0x00003CDB, 0x00003D46, 0x00004D24, 0x0004007C, + 0x0000000B, 0x0000487C, 0x00003CDB, 0x000500C2, 0x0000000B, 0x000053F5, + 0x0000487C, 0x00000A16, 0x000500C2, 0x0000000B, 0x00003A95, 0x000053A3, + 0x00000A10, 0x000500C7, 0x0000000B, 0x000020CA, 0x00003A95, 0x00000A13, + 0x00060041, 0x00000294, 0x000050F7, 0x0000107A, 0x00000A0B, 0x000053F5, + 0x0004003D, 0x00000017, 0x00001FCE, 0x000050F7, 0x000500AA, 0x00000009, + 0x000035C0, 0x000020CA, 0x00000A0D, 0x000500AA, 0x00000009, 0x00005376, + 0x000020CA, 0x00000A10, 0x000500A6, 0x00000009, 0x00005686, 0x000035C0, + 0x00005376, 0x000300F7, 0x00003463, 0x00000000, 0x000400FA, 0x00005686, + 0x00002957, 0x00003463, 0x000200F8, 0x00002957, 0x000500C7, 0x00000017, + 0x0000475F, 0x00001FCE, 0x000009CE, 0x000500C4, 0x00000017, 0x000024D1, + 0x0000475F, 0x0000013D, 0x000500C7, 0x00000017, 0x000050AC, 0x00001FCE, + 0x0000072E, 0x000500C2, 0x00000017, 0x0000448D, 0x000050AC, 0x0000013D, + 0x000500C5, 0x00000017, 0x00003FF8, 0x000024D1, 0x0000448D, 0x000200F9, + 0x00003463, 0x000200F8, 0x00003463, 0x000700F5, 0x00000017, 0x00005879, + 0x00001FCE, 0x00005AE2, 0x00003FF8, 0x00002957, 0x000500AA, 0x00000009, + 0x00004CB6, 0x000020CA, 0x00000A13, 0x000500A6, 0x00000009, 0x00003B23, + 0x00005376, 0x00004CB6, 0x000300F7, 0x00002DA2, 0x00000000, 0x000400FA, + 0x00003B23, 0x00002B38, 0x00002DA2, 0x000200F8, 0x00002B38, 0x000500C4, + 0x00000017, 0x00005E17, 0x00005879, 0x000002ED, 0x000500C2, 0x00000017, + 0x00003BE7, 0x00005879, 0x000002ED, 0x000500C5, 0x00000017, 0x000029E8, + 0x00005E17, 0x00003BE7, 0x000200F9, 0x00002DA2, 0x000200F8, 0x00002DA2, + 0x000700F5, 0x00000017, 0x00004D8D, 0x00005879, 0x00003463, 0x000029E8, + 0x00002B38, 0x0007004F, 0x00000011, 0x00005675, 0x00004D8D, 0x00004D8D, + 0x00000000, 0x00000001, 0x000500C2, 0x00000011, 0x0000392F, 0x00005675, + 0x00000907, 0x000500C7, 0x00000011, 0x00001F1D, 0x00005675, 0x00000A7A, + 0x000500C4, 0x00000011, 0x00005E1A, 0x00001F1D, 0x000007B7, 0x000500C5, + 0x00000011, 0x0000444E, 0x0000392F, 0x00005E1A, 0x000500C5, 0x00000011, + 0x000044EB, 0x0000444E, 0x000007DE, 0x000500C7, 0x00000011, 0x00004832, + 0x00005675, 0x00000474, 0x000500C4, 0x00000011, 0x0000595E, 0x00004832, + 0x000007B7, 0x000500C7, 0x00000011, 0x00004810, 0x00005675, 0x00000BB1, + 0x000500C2, 0x00000011, 0x00003BFA, 0x00004810, 0x000007B7, 0x00050051, + 0x0000000B, 0x00001CFC, 0x0000595E, 0x00000000, 0x00050051, 0x0000000B, + 0x00005FDB, 0x0000595E, 0x00000001, 0x00050051, 0x0000000B, 0x00001DD9, + 0x00003BFA, 0x00000000, 0x00050051, 0x0000000B, 0x00001E73, 0x00003BFA, + 0x00000001, 0x00070050, 0x00000017, 0x00003F21, 0x00001CFC, 0x00005FDB, + 0x00001DD9, 0x00001E73, 0x0009004F, 0x00000017, 0x00001E5E, 0x00003F21, + 0x00003F21, 0x00000000, 0x00000002, 0x00000001, 0x00000003, 0x0009004F, + 0x00000017, 0x00001ACC, 0x000044EB, 0x000044EB, 0x00000000, 0x00000000, + 0x00000001, 0x00000001, 0x000500C5, 0x00000017, 0x000060EE, 0x00001ACC, + 0x00001E5E, 0x0007004F, 0x00000011, 0x000046DD, 0x00004D8D, 0x00004D8D, + 0x00000002, 0x00000003, 0x000500C2, 0x00000011, 0x00002014, 0x000046DD, + 0x00000907, 0x000500C7, 0x00000011, 0x00001F1E, 0x000046DD, 0x00000A7A, + 0x000500C4, 0x00000011, 0x00005E1B, 0x00001F1E, 0x000007B7, 0x000500C5, + 0x00000011, 0x0000444F, 0x00002014, 0x00005E1B, 0x000500C5, 0x00000011, + 0x000044EC, 0x0000444F, 0x000007DE, 0x000500C7, 0x00000011, 0x00004833, + 0x000046DD, 0x00000474, 0x000500C4, 0x00000011, 0x0000595F, 0x00004833, + 0x000007B7, 0x000500C7, 0x00000011, 0x00004811, 0x000046DD, 0x00000BB1, + 0x000500C2, 0x00000011, 0x00003BFB, 0x00004811, 0x000007B7, 0x00050051, + 0x0000000B, 0x00001CFD, 0x0000595F, 0x00000000, 0x00050051, 0x0000000B, + 0x00005FDC, 0x0000595F, 0x00000001, 0x00050051, 0x0000000B, 0x00001DDA, + 0x00003BFB, 0x00000000, 0x00050051, 0x0000000B, 0x00001E74, 0x00003BFB, + 0x00000001, 0x00070050, 0x00000017, 0x00003F22, 0x00001CFD, 0x00005FDC, + 0x00001DDA, 0x00001E74, 0x0009004F, 0x00000017, 0x00001E5F, 0x00003F22, + 0x00003F22, 0x00000000, 0x00000002, 0x00000001, 0x00000003, 0x0009004F, + 0x00000017, 0x000019C2, 0x000044EC, 0x000044EC, 0x00000000, 0x00000000, + 0x00000001, 0x00000001, 0x000500C5, 0x00000017, 0x00006098, 0x000019C2, + 0x00001E5F, 0x00060041, 0x00000294, 0x0000201B, 0x0000140E, 0x00000A0B, + 0x000054A6, 0x0003003E, 0x0000201B, 0x000060EE, 0x00050080, 0x0000000B, + 0x00002CC1, 0x000054A6, 0x00000A0D, 0x00060041, 0x00000294, 0x00005C66, + 0x0000140E, 0x00000A0B, 0x00002CC1, 0x0003003E, 0x00005C66, 0x00006098, + 0x000600A9, 0x0000000B, 0x000041BE, 0x000028E3, 0x00000A6A, 0x00000A3A, + 0x000500C2, 0x0000000B, 0x0000593C, 0x000041BE, 0x00000A16, 0x00050080, + 0x0000000B, 0x0000367B, 0x000053F5, 0x0000593C, 0x00060041, 0x00000294, + 0x0000571A, 0x0000107A, 0x00000A0B, 0x0000367B, 0x0004003D, 0x00000017, + 0x000019B2, 0x0000571A, 0x000300F7, 0x00003A1A, 0x00000000, 0x000400FA, + 0x00005686, 0x00002958, 0x00003A1A, 0x000200F8, 0x00002958, 0x000500C7, + 0x00000017, 0x00004760, 0x000019B2, 0x000009CE, 0x000500C4, 0x00000017, + 0x000024D2, 0x00004760, 0x0000013D, 0x000500C7, 0x00000017, 0x000050AD, + 0x000019B2, 0x0000072E, 0x000500C2, 0x00000017, 0x0000448E, 0x000050AD, + 0x0000013D, 0x000500C5, 0x00000017, 0x00003FF9, 0x000024D2, 0x0000448E, + 0x000200F9, 0x00003A1A, 0x000200F8, 0x00003A1A, 0x000700F5, 0x00000017, + 0x00002AAC, 0x000019B2, 0x00002DA2, 0x00003FF9, 0x00002958, 0x000300F7, + 0x00002DA3, 0x00000000, 0x000400FA, 0x00003B23, 0x00002B39, 0x00002DA3, + 0x000200F8, 0x00002B39, 0x000500C4, 0x00000017, 0x00005E18, 0x00002AAC, + 0x000002ED, 0x000500C2, 0x00000017, 0x00003BE8, 0x00002AAC, 0x000002ED, + 0x000500C5, 0x00000017, 0x000029E9, 0x00005E18, 0x00003BE8, 0x000200F9, + 0x00002DA3, 0x000200F8, 0x00002DA3, 0x000700F5, 0x00000017, 0x00004D8E, + 0x00002AAC, 0x00003A1A, 0x000029E9, 0x00002B39, 0x0007004F, 0x00000011, + 0x00005676, 0x00004D8E, 0x00004D8E, 0x00000000, 0x00000001, 0x000500C2, + 0x00000011, 0x00003930, 0x00005676, 0x00000907, 0x000500C7, 0x00000011, + 0x00001F1F, 0x00005676, 0x00000A7A, 0x000500C4, 0x00000011, 0x00005E1C, + 0x00001F1F, 0x000007B7, 0x000500C5, 0x00000011, 0x00004450, 0x00003930, + 0x00005E1C, 0x000500C5, 0x00000011, 0x000044ED, 0x00004450, 0x000007DE, + 0x000500C7, 0x00000011, 0x00004834, 0x00005676, 0x00000474, 0x000500C4, + 0x00000011, 0x00005960, 0x00004834, 0x000007B7, 0x000500C7, 0x00000011, + 0x00004812, 0x00005676, 0x00000BB1, 0x000500C2, 0x00000011, 0x00003BFC, + 0x00004812, 0x000007B7, 0x00050051, 0x0000000B, 0x00001CFE, 0x00005960, + 0x00000000, 0x00050051, 0x0000000B, 0x00005FDD, 0x00005960, 0x00000001, + 0x00050051, 0x0000000B, 0x00001DDB, 0x00003BFC, 0x00000000, 0x00050051, + 0x0000000B, 0x00001E75, 0x00003BFC, 0x00000001, 0x00070050, 0x00000017, + 0x00003F23, 0x00001CFE, 0x00005FDD, 0x00001DDB, 0x00001E75, 0x0009004F, + 0x00000017, 0x00001E60, 0x00003F23, 0x00003F23, 0x00000000, 0x00000002, + 0x00000001, 0x00000003, 0x0009004F, 0x00000017, 0x00001ACD, 0x000044ED, + 0x000044ED, 0x00000000, 0x00000000, 0x00000001, 0x00000001, 0x000500C5, + 0x00000017, 0x000060EF, 0x00001ACD, 0x00001E60, 0x0007004F, 0x00000011, + 0x000046DE, 0x00004D8E, 0x00004D8E, 0x00000002, 0x00000003, 0x000500C2, + 0x00000011, 0x00002015, 0x000046DE, 0x00000907, 0x000500C7, 0x00000011, + 0x00001F20, 0x000046DE, 0x00000A7A, 0x000500C4, 0x00000011, 0x00005E1D, + 0x00001F20, 0x000007B7, 0x000500C5, 0x00000011, 0x00004451, 0x00002015, + 0x00005E1D, 0x000500C5, 0x00000011, 0x000044EE, 0x00004451, 0x000007DE, + 0x000500C7, 0x00000011, 0x00004835, 0x000046DE, 0x00000474, 0x000500C4, + 0x00000011, 0x00005961, 0x00004835, 0x000007B7, 0x000500C7, 0x00000011, + 0x00004813, 0x000046DE, 0x00000BB1, 0x000500C2, 0x00000011, 0x00003BFD, + 0x00004813, 0x000007B7, 0x00050051, 0x0000000B, 0x00001CFF, 0x00005961, + 0x00000000, 0x00050051, 0x0000000B, 0x00005FDE, 0x00005961, 0x00000001, + 0x00050051, 0x0000000B, 0x00001DDC, 0x00003BFD, 0x00000000, 0x00050051, + 0x0000000B, 0x00001E76, 0x00003BFD, 0x00000001, 0x00070050, 0x00000017, + 0x00003F24, 0x00001CFF, 0x00005FDE, 0x00001DDC, 0x00001E76, 0x0009004F, + 0x00000017, 0x00001E61, 0x00003F24, 0x00003F24, 0x00000000, 0x00000002, + 0x00000001, 0x00000003, 0x0009004F, 0x00000017, 0x00001E6F, 0x000044EE, + 0x000044EE, 0x00000000, 0x00000000, 0x00000001, 0x00000001, 0x000500C5, + 0x00000017, 0x0000363E, 0x00001E6F, 0x00001E61, 0x00050080, 0x0000000B, + 0x0000459A, 0x000054A6, 0x00000A10, 0x00060041, 0x00000294, 0x00001929, + 0x0000140E, 0x00000A0B, 0x0000459A, 0x0003003E, 0x00001929, 0x000060EF, + 0x00050080, 0x0000000B, 0x00002CC2, 0x000054A6, 0x00000A13, 0x00060041, + 0x00000294, 0x00006256, 0x0000140E, 0x00000A0B, 0x00002CC2, 0x0003003E, + 0x00006256, 0x0000363E, 0x000200F9, 0x00004C7A, 0x000200F8, 0x00004C7A, + 0x000100FD, 0x00010038, +}; diff --git a/src/xenia/gpu/shaders/pixel_formats.xesli b/src/xenia/gpu/shaders/pixel_formats.xesli index 15a9f9edb..ec69de6c8 100644 --- a/src/xenia/gpu/shaders/pixel_formats.xesli +++ b/src/xenia/gpu/shaders/pixel_formats.xesli @@ -417,6 +417,32 @@ xesl_uint4 XeBGRG8ToRGBG8(xesl_uint4 packed_texels) { ((packed_texels & 0x00FF0000u) >> 16u); } +xesl_uint4 XeGBGR8ToRGBA8(xesl_uint2 packed_texels) { + xesl_uint2 rba = (packed_texels >> 24u) | + ((packed_texels & 0x0000FF00u) << 8u) | 0xFF000000u; + xesl_uint4 g = xesl_uint4((packed_texels & 0x000000FFu) << 8u, + (packed_texels & 0x00FF0000u) >> 8u).xzyw; + return rba.xxyy | g; +} +void XeGBGR8ToRGBA8(xesl_uint4 packed_texels, out xesl_uint4 out_01, + out xesl_uint4 out_23) { + out_01 = XeGBGR8ToRGBA8(packed_texels.xy); + out_23 = XeGBGR8ToRGBA8(packed_texels.zw); +} + +xesl_uint4 XeBGRG8ToRGBA8(xesl_uint2 packed_texels) { + xesl_uint2 rba = ((packed_texels & 0x00FF0000u) >> 16u) | + ((packed_texels & 0x000000FFu) << 16u) | 0xFF000000u; + xesl_uint4 g = xesl_uint4(packed_texels & 0x0000FF00u, + (packed_texels & 0xFF000000u) >> 16u).xzyw; + return rba.xxyy | g; +} +void XeBGRG8ToRGBA8(xesl_uint4 packed_texels, out xesl_uint4 out_01, + out xesl_uint4 out_23) { + out_01 = XeBGRG8ToRGBA8(packed_texels.xy); + out_23 = XeBGRG8ToRGBA8(packed_texels.zw); +} + xesl_uint4 XeR10G11B11UNormToRGBA16(xesl_uint2 packed_texels) { // Red and blue. xesl_uint4 result = diff --git a/src/xenia/gpu/shaders/texture_load_bgrg8_rgbg8_scaled.cs.xesl b/src/xenia/gpu/shaders/texture_load_bgrg8_rgba8.cs.xesl similarity index 79% rename from src/xenia/gpu/shaders/texture_load_bgrg8_rgbg8_scaled.cs.xesl rename to src/xenia/gpu/shaders/texture_load_bgrg8_rgba8.cs.xesl index d0cd61ac1..348144a37 100644 --- a/src/xenia/gpu/shaders/texture_load_bgrg8_rgbg8_scaled.cs.xesl +++ b/src/xenia/gpu/shaders/texture_load_bgrg8_rgba8.cs.xesl @@ -7,7 +7,6 @@ ****************************************************************************** */ -#define XE_TEXTURE_LOAD_RESOLUTION_SCALED #include "pixel_formats.xesli" -#define XE_TEXTURE_LOAD_32BPB_TRANSFORM XeBGRG8ToRGBG8 -#include "texture_load_32bpb.xesli" +#define XE_TEXTURE_LOAD_32BPB_TO_64BPB XeBGRG8ToRGBA8 +#include "texture_load_32bpb_64bpb.xesli" diff --git a/src/xenia/gpu/shaders/texture_load_gbgr8_grgb8_scaled.cs.xesl b/src/xenia/gpu/shaders/texture_load_gbgr8_rgba8.cs.xesl similarity index 79% rename from src/xenia/gpu/shaders/texture_load_gbgr8_grgb8_scaled.cs.xesl rename to src/xenia/gpu/shaders/texture_load_gbgr8_rgba8.cs.xesl index 1c8a1ae5a..acb4cbb9e 100644 --- a/src/xenia/gpu/shaders/texture_load_gbgr8_grgb8_scaled.cs.xesl +++ b/src/xenia/gpu/shaders/texture_load_gbgr8_rgba8.cs.xesl @@ -7,7 +7,6 @@ ****************************************************************************** */ -#define XE_TEXTURE_LOAD_RESOLUTION_SCALED #include "pixel_formats.xesli" -#define XE_TEXTURE_LOAD_32BPB_TRANSFORM XeGBGR8ToGRGB8 -#include "texture_load_32bpb.xesli" +#define XE_TEXTURE_LOAD_32BPB_TO_64BPB XeGBGR8ToRGBA8 +#include "texture_load_32bpb_64bpb.xesli"