• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1// GENERATED FILE - DO NOT EDIT.
2// Generated by gen_vk_internal_shaders.py.
3//
4// Copyright 2018 The ANGLE Project Authors. All rights reserved.
5// Use of this source code is governed by a BSD-style license that can be
6// found in the LICENSE file.
7//
8// shaders/gen/ImageCopy.frag.00000007.inc:
9//   Pre-generated shader for the ANGLE Vulkan back-end.
10
11#pragma once
12constexpr uint8_t kImageCopy_frag_00000007[] = {
13    0x1f,0x8b,0x08,0x00,0x00,0x00,0x00,0x00,0x02,0xff,0x7d,0x97,0xfd,0x6b,0x96,0x55,
14    0x18,0xc7,0xef,0xf3,0x3c,0x7b,0xd5,0x7c,0xdd,0x4c,0xdd,0xa4,0x36,0x5f,0x57,0xb3,
15    0xf9,0xfe,0x3a,0xa7,0x0d,0x75,0x5b,0x65,0x9a,0x1b,0x92,0x66,0x16,0x86,0x99,0x96,
16    0xce,0x72,0xd1,0x2f,0x42,0x65,0x69,0x2a,0x58,0x49,0x5a,0x39,0xb2,0x1c,0x91,0x92,
17    0x24,0xa1,0x95,0x12,0x69,0xe5,0x08,0xb1,0x28,0x07,0xe5,0xa2,0x1c,0xfa,0x17,0x48,
18    0x92,0x94,0x69,0x85,0xd8,0xb9,0xce,0xf9,0x5c,0x7b,0xae,0x1e,0xb2,0xc1,0xe1,0xbe,
19    0xcf,0xf7,0x5c,0x2f,0xdf,0xeb,0x7b,0xae,0x73,0x9e,0x7b,0xe9,0xd4,0xb0,0xfc,0x24,
20    0x71,0x49,0x8f,0xa4,0x20,0xb9,0xdb,0x25,0xe1,0xaf,0x5f,0x92,0x4a,0x1c,0xcf,0xf1,
21    0xfe,0xd9,0x33,0xc9,0x0b,0xf3,0xfa,0x79,0x4d,0xf3,0xaa,0x5a,0x9e,0x5e,0x51,0x35,
22    0x71,0xd2,0x58,0xb1,0xeb,0x9d,0xa4,0x83,0xbd,0xac,0xf5,0x49,0xf2,0x93,0x1c,0xff,
23    0x94,0xb1,0x76,0xf9,0xea,0x66,0xc1,0x47,0xfa,0x71,0xde,0x8f,0xbe,0xde,0x4e,0xf0,
24    0x7c,0x89,0xe1,0xdf,0x46,0x86,0x98,0xe2,0x93,0x24,0x0d,0x49,0x6e,0x32,0x3a,0xa6,
25    0x4d,0x86,0xf1,0x54,0xcc,0x81,0x15,0x18,0x2c,0x05,0xd6,0xd7,0x60,0x69,0xb0,0x62,
26    0x83,0xe5,0x80,0x0d,0x32,0x58,0x2e,0xd8,0x10,0x83,0xe5,0x81,0x95,0x19,0x2c,0x1f,
27    0x6c,0xb8,0xc1,0x0a,0xc0,0x2a,0x0c,0x56,0x08,0x36,0xda,0x60,0x3d,0xc0,0xc6,0x1a,
28    0xac,0x27,0xd8,0x44,0x83,0xdd,0x04,0x36,0xd5,0x60,0xbd,0xc0,0x66,0x04,0x9d,0xd2,
29    0xdd,0xf5,0x8a,0x66,0x4b,0xfd,0x73,0x28,0xfa,0xe8,0xbc,0xdc,0xcc,0x45,0xe7,0x5b,
30    0x98,0x17,0x79,0xaf,0x54,0x58,0x4f,0x07,0x6d,0xe4,0xfd,0x66,0xff,0x96,0x47,0x9d,
31    0x95,0xde,0x3e,0x8f,0x7c,0x43,0xaa,0xee,0xad,0x2e,0xf6,0x16,0xbd,0x0d,0x5e,0xe4,
32    0x47,0xe3,0xa7,0xf3,0x6b,0x75,0x2e,0x1a,0x2e,0x5a,0xf4,0xe3,0x4c,0x9d,0x97,0xf8,
33    0x51,0xd3,0x63,0xcb,0x2c,0x9d,0x8b,0x9e,0x1f,0xd6,0x2f,0xaf,0x19,0xe0,0xe7,0x65,
34    0xe4,0x90,0xbd,0x1b,0xe8,0xe7,0xe5,0xcc,0x53,0xcc,0x87,0xa3,0x79,0x4e,0xc0,0x73,
35    0x92,0x11,0xd8,0x0a,0x5e,0xcd,0x7c,0xa4,0xf1,0x1f,0x85,0xbd,0xf8,0x4b,0xfc,0x4a,
36    0xe2,0x25,0xa1,0xde,0xbe,0x41,0xa3,0x72,0x46,0x59,0x77,0x7d,0xff,0x3f,0xca,0xba,
37    0x9f,0x39,0xc9,0x1d,0xec,0xe3,0x68,0xf2,0xcb,0xbc,0x0a,0xac,0x92,0x7a,0xc6,0xc0,
38    0x47,0xec,0xc7,0xb2,0x56,0x6e,0xd6,0x27,0x9b,0x7a,0xa6,0x74,0xfb,0xc6,0x75,0x79,
39    0x4e,0x87,0xaf,0xda,0xcf,0xa6,0x17,0x75,0x3e,0x9f,0xbd,0x18,0xec,0x3d,0x17,0x53,
40    0x2f,0x47,0xb1,0xfb,0x4f,0xe7,0xa5,0x7e,0x1f,0x97,0xf8,0xe7,0x62,0xf2,0x3d,0x00,
41    0xbe,0x04,0xfe,0x32,0x5f,0x9a,0x95,0x6f,0x59,0xd6,0x7c,0x15,0x7a,0x8a,0xff,0x6a,
42    0xf8,0x96,0x99,0xf5,0x66,0xfa,0x58,0xe7,0x9b,0xe0,0x24,0xfb,0xf1,0x32,0xef,0x69,
43    0xb3,0xbe,0x8b,0x33,0xa3,0xfd,0xb0,0xc7,0xe4,0x93,0xf9,0x81,0x30,0x7b,0x6e,0xb6,
44    0xf8,0x1f,0x24,0x57,0x8e,0xf1,0x3f,0xcc,0xf9,0xd2,0xf9,0xf1,0x2c,0xfd,0x4f,0x71,
45    0x5e,0x84,0xef,0x39,0x72,0x1f,0xa4,0xde,0x73,0xdc,0x31,0xe9,0xb0,0x0f,0xb9,0xa1,
46    0xae,0x1c,0xf2,0x0b,0x76,0xd5,0x23,0xa2,0x75,0x0d,0xbd,0x57,0x41,0x7f,0x2d,0xf0,
47    0x8c,0xa5,0xb7,0x6e,0x03,0xab,0x30,0x3a,0x37,0xd3,0xb7,0xb7,0xb3,0x5e,0xeb,0x23,
48    0xc8,0xbe,0x8f,0xa3,0x37,0xc6,0x10,0x4f,0x6c,0xc6,0x83,0xbf,0xe0,0x6d,0x64,0x3e,
49    0x01,0xbf,0xf1,0xf8,0x4d,0xe1,0x8c,0x57,0xd1,0x27,0x35,0xf4,0xc4,0x34,0xf0,0x0f,
50    0xbc,0x4d,0xef,0x50,0x4b,0xc4,0xa4,0x57,0xae,0x78,0xe6,0x35,0xf0,0xf9,0xcb,0xdb,
51    0x57,0x73,0x27,0xd4,0x50,0x8f,0xbc,0x2f,0xf4,0x7e,0xa2,0xcd,0x9d,0xe4,0x94,0xbf,
52    0x67,0xd1,0xab,0x16,0xbc,0xd1,0xab,0x2f,0x9c,0x6e,0x75,0x11,0x53,0xbb,0x3f,0x7d,
53    0x0c,0x8d,0x25,0xcf,0xcb,0x5e,0x0b,0xb1,0x9b,0xea,0xa2,0x4d,0x2e,0x3e,0x33,0x4c,
54    0x0d,0x73,0xa8,0x61,0xb6,0xa9,0x61,0x2e,0xb8,0xd6,0x50,0x07,0xa6,0x35,0x34,0x98,
55    0x1a,0xea,0xc2,0x3d,0x95,0x04,0x4c,0xf2,0xd6,0x9b,0x1a,0xee,0x21,0xb7,0x33,0x35,
56    0xcc,0x03,0xd7,0x1a,0x86,0xba,0x88,0xa9,0x9d,0xd4,0xa0,0xb1,0x1a,0x4c,0x0d,0xd3,
57    0x5c,0xb4,0xa9,0xc1,0xa7,0xde,0xd4,0xb0,0x80,0x1a,0xe6,0x9b,0x1a,0xee,0x03,0xd7,
58    0x1a,0x16,0x82,0x69,0x0d,0x4d,0xa6,0x86,0x85,0x81,0x4f,0x12,0x30,0xc9,0xdb,0x48,
59    0x1f,0x49,0xde,0x45,0xe4,0x9e,0xe6,0x32,0x67,0x55,0x38,0xaa,0x6d,0x93,0xe1,0x38,
60    0x1d,0xbb,0x06,0xfc,0x1a,0xe1,0x23,0x67,0xf8,0x41,0xce,0xaf,0xf6,0xdc,0x43,0x70,
61    0x5e,0x66,0x7a,0xee,0x61,0xf0,0xe7,0xe9,0xb9,0xe5,0x60,0x12,0x77,0x1d,0x77,0xe6,
62    0x23,0xe0,0x2b,0xfc,0x7c,0x71,0x78,0xc6,0xd8,0x8f,0xe1,0xf3,0x28,0x98,0xc4,0x55,
63    0x9f,0x95,0xe0,0x5b,0xbd,0xcd,0xa8,0x60,0x1b,0xe3,0xac,0x84,0x8f,0xdc,0x15,0x8f,
64    0xc3,0x67,0x15,0x7c,0x64,0xaf,0x9e,0x00,0x5f,0xc7,0x79,0x5f,0x03,0x76,0xbf,0xaf,
65    0x57,0xce,0xdc,0xda,0xee,0xdc,0x51,0x9b,0x35,0x66,0x4f,0xd6,0x11,0xaf,0xd9,0xec,
66    0xc9,0x93,0xe0,0xba,0x27,0x4f,0x81,0xe9,0x9e,0xb4,0x98,0x3d,0x91,0xb5,0xf5,0x7e,
67    0xb4,0xa0,0xf3,0x7a,0xfa,0x4a,0x78,0x3c,0x43,0xee,0x04,0xbf,0x2b,0xbc,0xff,0xed,
68    0xdf,0x25,0xd6,0x05,0x7c,0x2e,0x84,0x3b,0x27,0xe6,0xfa,0x05,0xbf,0x5e,0xf8,0xfc,
69    0x61,0x72,0xc9,0xda,0x45,0x3f,0x2e,0xe1,0x77,0x29,0xdc,0x4b,0xf9,0x21,0xd7,0x6f,
70    0xd4,0x56,0x82,0xbf,0xfc,0x66,0x6e,0x86,0xc7,0xef,0xac,0xcb,0xda,0x8b,0x60,0x97,
71    0xc1,0x87,0xd0,0x27,0x57,0x88,0x79,0xd1,0xf8,0xfd,0x4a,0xac,0xa2,0x2c,0x1b,0xe1,
72    0x74,0xdd,0x67,0xbb,0x0a,0x76,0x19,0x0e,0xd5,0x2e,0xc6,0xbd,0x84,0xef,0x45,0xce,
73    0x8f,0xec,0xc1,0x08,0x17,0xd7,0x55,0x0f,0xd5,0x68,0x03,0x1a,0x39,0xea,0x2d,0x74,
74    0xff,0xd6,0xe8,0x1a,0x39,0xaf,0x19,0x8d,0xae,0xe3,0xa7,0x1a,0x15,0xb8,0x8c,0x46,
75    0xd7,0xb9,0x44,0xd3,0x2e,0xfa,0xc9,0x53,0x35,0xca,0x75,0x19,0x8d,0x36,0x64,0x69,
76    0x94,0xe7,0xe2,0xba,0xd5,0x28,0xdf,0x45,0x5c,0x35,0x2a,0x24,0xa6,0x04,0x51,0xbf,
77    0x94,0x8b,0xb1,0x8a,0xb2,0x6c,0x84,0x93,0x6a,0x54,0xe8,0x32,0x1a,0xd5,0xb8,0x18,
78    0x57,0x78,0x89,0xaf,0xc4,0x52,0x8d,0x2a,0x5c,0x5c,0x1f,0x01,0x4f,0xd5,0x68,0x23,
79    0x1a,0xa5,0xa8,0xb7,0x34,0x4b,0xa3,0x3e,0xe4,0x94,0xa7,0x6a,0xd4,0xcf,0x45,0x3f,
80    0xd5,0xa8,0xc4,0x68,0x24,0x6b,0xfd,0xfd,0x18,0x80,0xdf,0x00,0xa3,0xd1,0x40,0xa3,
81    0xd1,0xc6,0x2c,0x8d,0x06,0xb9,0xb8,0x6e,0x35,0x1a,0xec,0x22,0xae,0x1a,0x95,0x12,
82    0xb3,0xbf,0xd1,0xa8,0x18,0x2e,0x45,0x59,0x36,0x25,0x46,0xa3,0x52,0xa3,0xd1,0x2c,
83    0x17,0xe3,0x0a,0xaf,0x62,0xb8,0xaa,0x46,0x95,0x2e,0xae,0x8b,0x56,0x29,0xe2,0xe9,
84    0xd9,0x6b,0xa1,0x17,0xc5,0xae,0x96,0x5e,0x6b,0xc2,0xa7,0xd4,0x65,0xce,0xfc,0x66,
85    0xce,0xfc,0x26,0x73,0xe6,0x5f,0x02,0xd7,0x33,0xbf,0x05,0x4c,0xcf,0xfc,0x36,0x73,
86    0x0e,0xb7,0x84,0x3b,0x2a,0x49,0x76,0x92,0x77,0xa7,0xb9,0x4f,0x5e,0x27,0xf6,0x2e,
87    0x13,0xfb,0x0d,0x70,0x8d,0xfd,0x26,0x98,0xc6,0x6e,0x35,0xb1,0x65,0x6d,0xb7,0x1f,
88    0xad,0xc4,0xde,0x6d,0xfa,0xe0,0x2d,0xea,0x92,0xef,0x8a,0xcf,0x88,0xf5,0x36,0xf8,
89    0x1e,0xb4,0x50,0xbf,0x56,0xb4,0x10,0x9b,0x77,0xc8,0xb9,0x13,0xfb,0xdd,0xe4,0x6d,
90    0x33,0x79,0xc5,0x66,0xaf,0x1f,0x6d,0xf8,0xef,0x35,0x79,0xdf,0x35,0x79,0x17,0xf8,
91    0x2f,0x25,0xf9,0x06,0x7b,0x0f,0xac,0xd6,0x65,0xbe,0x5b,0x52,0xe1,0xb7,0x2b,0x2f,
92    0xac,0xef,0xc3,0x4f,0x87,0xdc,0xe9,0x82,0xef,0xc7,0x77,0x5f,0x88,0x55,0x18,0xf6,
93    0xea,0x7d,0x62,0xed,0xe7,0xdb,0x29,0xd7,0x7c,0xe3,0x49,0x4d,0xca,0xa9,0xcd,0xec,
94    0xef,0x1c,0x72,0xb7,0xe2,0xbf,0x17,0xdb,0x6d,0xd8,0x6e,0x35,0xfc,0xb7,0xff,0x07,
95    0xff,0x57,0x6f,0xc0,0xff,0x15,0x78,0xee,0xc0,0x66,0xbb,0xe1,0xf9,0x1a,0x3e,0x3b,
96    0x6e,0xc0,0x53,0x73,0x6f,0x33,0x3c,0x67,0xbb,0xc8,0xb5,0x0d,0xff,0xad,0xe4,0x18,
97    0x1e,0xfa,0x21,0xae,0x1f,0xe0,0x9b,0x4f,0xbe,0x29,0x0f,0x81,0x6b,0x3f,0x7d,0x44,
98    0x3f,0x1d,0x36,0xfd,0xf4,0x31,0xb8,0xf6,0xd3,0x27,0x60,0xda,0x4f,0x47,0xcd,0xbe,
99    0xca,0xda,0x11,0x3f,0x8e,0xc1,0xed,0x98,0x89,0xfd,0x39,0xb1,0x8f,0x9b,0xd8,0x5f,
100    0x80,0x6b,0xec,0x2f,0xc1,0x34,0x76,0xbb,0x89,0x2d,0x6b,0x27,0xfc,0x38,0x49,0xec,
101    0x93,0xe6,0x77,0xfa,0x6b,0x62,0x9f,0x32,0xbf,0xd3,0xdf,0x80,0x9f,0xe2,0xbb,0xeb,
102    0x5b,0xb0,0x55,0x26,0xdf,0x77,0xe0,0xcb,0xc8,0xd7,0x61,0xf2,0xc9,0xda,0x69,0x3f,
103    0x3a,0xc8,0x77,0x9a,0xdf,0x17,0xd1,0x6d,0x82,0x8b,0x3e,0x87,0x92,0xcc,0xf7,0x99,
104    0xda,0x75,0xb0,0x1f,0x62,0x37,0xd7,0x45,0x9b,0x93,0xf8,0x9c,0x36,0x7c,0xbe,0x87,
105    0xcf,0x64,0xc3,0xe7,0x07,0x70,0xe5,0xd3,0x69,0xf8,0xc8,0xda,0x19,0x3f,0x3a,0xc9,
106    0x73,0xc6,0xf0,0x99,0x04,0x9f,0xb9,0xe6,0x9e,0x52,0xbb,0x4e,0xc3,0xa7,0xce,0x45,
107    0x9b,0x0e,0x7c,0xce,0x18,0x3e,0x3f,0xc1,0xe7,0xb0,0xe1,0xf3,0x33,0xb8,0xf2,0xe9,
108    0x32,0x7c,0x64,0xed,0xac,0x1f,0x5d,0xe4,0x39,0x6b,0xf8,0x4c,0x71,0xf1,0xff,0x86,
109    0x3a,0x97,0xe9,0x57,0xb5,0xeb,0x32,0x7c,0xee,0x72,0xd1,0xa6,0x13,0x9f,0xb3,0xd8,
110    0xb6,0x63,0x7b,0xc2,0x7c,0x37,0x7f,0x85,0xde,0x69,0x93,0x67,0x9c,0xcb,0xe0,0x49,
111    0x96,0x6f,0xbb,0xc9,0xd3,0xe0,0x62,0xae,0x2e,0x7c,0x4e,0x60,0x7b,0x14,0xdb,0x23,
112    0x9c,0xbb,0x83,0xe1,0xae,0x8b,0xf1,0x0e,0x71,0xee,0xf2,0x39,0xab,0xe9,0x2c,0x9f,
113    0xa3,0x26,0x7e,0xbd,0x8b,0x39,0xda,0xf1,0x97,0x78,0x33,0xbd,0xc7,0x79,0xd6,0xae,
114    0xf9,0x2e,0x99,0xea,0xc7,0x3f,0xe2,0xeb,0xea,0x0b,0x80,0x12,0x00,0x00
115};
116
117// Generated from:
118//
119// #version 450 core
120//
121// #extension GL_EXT_samplerless_texture_functions : require
122//
123// layout(set = 0, binding = 0)uniform sampler2D src;
124// layout(location = 0)out ivec4 dst;
125//
126// layout(push_constant)uniform PushConstants {
127//
128//     ivec2 srcOffset;
129//     ivec2 dstOffset;
130//     int srcMip;
131//     int srcLayer;
132//
133//     bool flipX;
134//     bool flipY;
135//
136//     bool premultiplyAlpha;
137//     bool unmultiplyAlpha;
138//
139//     bool dstHasLuminance;
140//     bool dstIsAlpha;
141//
142//     bool srcIsSRGB;
143//     bool dstIsSRGB;
144//
145//     int dstDefaultChannelsMask;
146//     bool rotateXY;
147// } params;
148//
149// float linearToSRGB(float linear)
150// {
151//
152//     if(linear <= 0.0031308)
153//     {
154//         return linear * 12.92;
155//     }
156//     else
157//     {
158//         return pow(linear,(1.0f / 2.4f))* 1.055f - 0.055f;
159//     }
160// }
161//
162// void main()
163// {
164//     ivec2 dstSubImageCoords = ivec2(gl_FragCoord . xy)- params . dstOffset;
165//
166//     ivec2 srcSubImageCoords = dstSubImageCoords;
167//
168//     if(params . flipX)
169//     {
170//         srcSubImageCoords . x = - srcSubImageCoords . x;
171//     }
172//     if(params . flipY)
173//     {
174//         srcSubImageCoords . y = - srcSubImageCoords . y;
175//     }
176//     if(params . rotateXY)
177//     {
178//         srcSubImageCoords . xy = srcSubImageCoords . yx;
179//     }
180//
181//           vec4 srcValue = texture(
182//         src, vec2(params . srcOffset + srcSubImageCoords)/ textureSize(src, 0), params . srcMip);
183//
184//     if(params . srcIsSRGB)
185//     {
186//
187//         srcValue . r = linearToSRGB(srcValue . r);
188//         srcValue . g = linearToSRGB(srcValue . g);
189//         srcValue . b = linearToSRGB(srcValue . b);
190//     }
191//
192//     if(params . premultiplyAlpha)
193//     {
194//         srcValue . rgb *= srcValue . a;
195//     }
196//     else if(params . unmultiplyAlpha && srcValue . a > 0)
197//     {
198//         srcValue . rgb /= srcValue . a;
199//     }
200//
201//     srcValue *= 255.0;
202//
203//            ivec4 dstValue = ivec4(srcValue);
204//
205//     if(params . dstHasLuminance)
206//     {
207//         dstValue . rg = dstValue . ra;
208//     }
209//     else if(params . dstIsAlpha)
210//     {
211//         dstValue . r = dstValue . a;
212//     }
213//     else
214//     {
215//         int defaultChannelsMask = params . dstDefaultChannelsMask;
216//         if((defaultChannelsMask & 2)!= 0)
217//         {
218//             dstValue . g = 0;
219//         }
220//         if((defaultChannelsMask & 4)!= 0)
221//         {
222//             dstValue . b = 0;
223//         }
224//         if((defaultChannelsMask & 8)!= 0)
225//         {
226//             dstValue . a = 1;
227//         }
228//     }
229//
230//     dst = dstValue;
231// }
232