77 resources.add_buffer(buffer);
85 EXPECT_EQ(
"fill_buffer(dst_buffer=0x1, dst_offset=0, size=1024, data=0)",
log[0]);
87 "pipeline_barrier(src_stage_mask=VK_PIPELINE_STAGE_TRANSFER_BIT, "
88 "dst_stage_mask=VK_PIPELINE_STAGE_TRANSFER_BIT" +
90 " - buffer_barrier(src_access_mask=VK_ACCESS_TRANSFER_WRITE_BIT, "
91 "dst_access_mask=VK_ACCESS_TRANSFER_WRITE_BIT, buffer=0x1, offset=0, "
92 "size=18446744073709551615)" +
95 EXPECT_EQ(
"fill_buffer(dst_buffer=0x1, dst_offset=0, size=1024, data=42)",
log[2]);
107 resources.add_image(src_image,
false);
108 resources.add_image(dst_image,
false);
109 resources.add_buffer(staging_buffer);
110 VkClearColorValue color_white = {};
111 color_white.float32[0] = 1.0f;
112 color_white.float32[1] = 1.0f;
113 color_white.float32[2] = 1.0f;
114 color_white.float32[3] = 1.0f;
115 VkClearColorValue color_black = {};
116 color_black.float32[0] = 0.0f;
117 color_black.float32[1] = 0.0f;
118 color_black.float32[2] = 0.0f;
119 color_black.float32[3] = 1.0f;
122 clear_color_image_src.
vk_image = src_image;
125 clear_color_image_dst.
vk_image = dst_image;
131 copy_image.
node_data.
region.srcSubresource.aspectMask = VK_IMAGE_ASPECT_COLOR_BIT;
132 copy_image.
node_data.
region.dstSubresource.aspectMask = VK_IMAGE_ASPECT_COLOR_BIT;
137 copy_dst_image_to_buffer.
node_data.
region.imageSubresource.aspectMask =
138 VK_IMAGE_ASPECT_COLOR_BIT;
149 "pipeline_barrier(src_stage_mask=VK_PIPELINE_STAGE_TOP_OF_PIPE_BIT, "
150 "dst_stage_mask=VK_PIPELINE_STAGE_TRANSFER_BIT" +
152 " - image_barrier(src_access_mask=, dst_access_mask=VK_ACCESS_TRANSFER_WRITE_BIT, "
153 "old_layout=VK_IMAGE_LAYOUT_UNDEFINED, new_layout=VK_IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL, "
154 "image=0x1, subresource_range=" +
156 " aspect_mask=VK_IMAGE_ASPECT_COLOR_BIT, base_mip_level=0, level_count=4294967295, "
157 "base_array_layer=0, layer_count=4294967295 )" +
160 EXPECT_EQ(
"clear_color_image(image=0x1, image_layout=VK_IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL)",
164 "pipeline_barrier(src_stage_mask=VK_PIPELINE_STAGE_TOP_OF_PIPE_BIT, "
165 "dst_stage_mask=VK_PIPELINE_STAGE_TRANSFER_BIT" +
167 " - image_barrier(src_access_mask=, dst_access_mask=VK_ACCESS_TRANSFER_WRITE_BIT, "
168 "old_layout=VK_IMAGE_LAYOUT_UNDEFINED, new_layout=VK_IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL, "
169 "image=0x2, subresource_range=" +
171 " aspect_mask=VK_IMAGE_ASPECT_COLOR_BIT, base_mip_level=0, level_count=4294967295, "
172 "base_array_layer=0, layer_count=4294967295 )" +
175 EXPECT_EQ(
"clear_color_image(image=0x2, image_layout=VK_IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL)",
179 "pipeline_barrier(src_stage_mask=VK_PIPELINE_STAGE_TRANSFER_BIT, "
180 "dst_stage_mask=VK_PIPELINE_STAGE_TRANSFER_BIT" +
182 " - image_barrier(src_access_mask=VK_ACCESS_TRANSFER_WRITE_BIT, "
183 "dst_access_mask=VK_ACCESS_TRANSFER_READ_BIT, "
184 "old_layout=VK_IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL, "
185 "new_layout=VK_IMAGE_LAYOUT_TRANSFER_SRC_OPTIMAL, image=0x1, subresource_range=" +
187 " aspect_mask=VK_IMAGE_ASPECT_COLOR_BIT, base_mip_level=0, level_count=4294967295, "
188 "base_array_layer=0, layer_count=4294967295 )" +
190 " - image_barrier(src_access_mask=VK_ACCESS_TRANSFER_WRITE_BIT, "
191 "dst_access_mask=VK_ACCESS_TRANSFER_WRITE_BIT, "
192 "old_layout=VK_IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL, "
193 "new_layout=VK_IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL, image=0x2, subresource_range=" +
195 " aspect_mask=VK_IMAGE_ASPECT_COLOR_BIT, base_mip_level=0, level_count=4294967295, "
196 "base_array_layer=0, layer_count=4294967295 )" +
200 "copy_image(src_image=0x1, src_image_layout=VK_IMAGE_LAYOUT_TRANSFER_SRC_OPTIMAL, "
201 "dst_image=0x2, dst_image_layout=VK_IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL" +
202 endl() +
" - region(src_subresource=" +
endl() +
203 " aspect_mask=VK_IMAGE_ASPECT_COLOR_BIT, mip_level=0, base_array_layer=0, "
204 "layer_count=0 , src_offset=" +
205 endl() +
" x=0, y=0, z=0 , dst_subresource=" +
endl() +
206 " aspect_mask=VK_IMAGE_ASPECT_COLOR_BIT, mip_level=0, base_array_layer=0, "
207 "layer_count=0 , dst_offset=" +
208 endl() +
" x=0, y=0, z=0 , extent=" +
endl() +
" width=0, height=0, depth=0 )" +
213 "pipeline_barrier(src_stage_mask=VK_PIPELINE_STAGE_TRANSFER_BIT, "
214 "dst_stage_mask=VK_PIPELINE_STAGE_TRANSFER_BIT" +
216 " - image_barrier(src_access_mask=VK_ACCESS_TRANSFER_WRITE_BIT, "
217 "dst_access_mask=VK_ACCESS_TRANSFER_READ_BIT, "
218 "old_layout=VK_IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL, "
219 "new_layout=VK_IMAGE_LAYOUT_TRANSFER_SRC_OPTIMAL, image=0x2, subresource_range=" +
221 " aspect_mask=VK_IMAGE_ASPECT_COLOR_BIT, base_mip_level=0, level_count=4294967295, "
222 "base_array_layer=0, layer_count=4294967295 )" +
226 "copy_image_to_buffer(src_image=0x2, src_image_layout=VK_IMAGE_LAYOUT_TRANSFER_SRC_OPTIMAL, "
229 " - region(buffer_offset=0, buffer_row_length=0, buffer_image_height=0, "
230 "image_subresource=" +
232 " aspect_mask=VK_IMAGE_ASPECT_COLOR_BIT, mip_level=0, base_array_layer=0, "
233 "layer_count=0 , image_offset=" +
234 endl() +
" x=0, y=0, z=0 , image_extent=\n width=0, height=0, depth=0 )" +
248 resources.add_image(src_image,
false);
249 resources.add_image(dst_image,
false);
250 resources.add_buffer(staging_buffer);
251 VkClearColorValue color_black = {};
252 color_black.float32[0] = 0.0f;
253 color_black.float32[1] = 0.0f;
254 color_black.float32[2] = 0.0f;
255 color_black.float32[3] = 1.0f;
256 VkImageBlit vk_image_blit = {};
258 clear_color_image_src.
vk_image = src_image;
263 copy_dst_image_to_buffer.
node_data.
region.imageSubresource.aspectMask =
264 VK_IMAGE_ASPECT_COLOR_BIT;
275 "pipeline_barrier(src_stage_mask=VK_PIPELINE_STAGE_TOP_OF_PIPE_BIT, "
276 "dst_stage_mask=VK_PIPELINE_STAGE_TRANSFER_BIT" +
278 " - image_barrier(src_access_mask=, dst_access_mask=VK_ACCESS_TRANSFER_WRITE_BIT, "
279 "old_layout=VK_IMAGE_LAYOUT_UNDEFINED, "
280 "new_layout=VK_IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL, image=0x1, subresource_range=" +
282 " aspect_mask=VK_IMAGE_ASPECT_COLOR_BIT, base_mip_level=0, level_count=4294967295, "
283 "base_array_layer=0, layer_count=4294967295 )" +
286 EXPECT_EQ(
"clear_color_image(image=0x1, image_layout=VK_IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL)",
289 "pipeline_barrier(src_stage_mask=VK_PIPELINE_STAGE_TRANSFER_BIT, "
290 "dst_stage_mask=VK_PIPELINE_STAGE_TRANSFER_BIT" +
292 " - image_barrier(src_access_mask=VK_ACCESS_TRANSFER_WRITE_BIT, "
293 "dst_access_mask=VK_ACCESS_TRANSFER_READ_BIT, "
294 "old_layout=VK_IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL, "
295 "new_layout=VK_IMAGE_LAYOUT_TRANSFER_SRC_OPTIMAL, image=0x1, subresource_range=" +
297 " aspect_mask=VK_IMAGE_ASPECT_COLOR_BIT, base_mip_level=0, level_count=4294967295, "
298 "base_array_layer=0, layer_count=4294967295 )" +
300 " - image_barrier(src_access_mask=, dst_access_mask=VK_ACCESS_TRANSFER_WRITE_BIT, "
301 "old_layout=VK_IMAGE_LAYOUT_UNDEFINED, new_layout=VK_IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL, "
302 "image=0x2, subresource_range=" +
304 " aspect_mask=VK_IMAGE_ASPECT_COLOR_BIT, base_mip_level=0, level_count=4294967295, "
305 "base_array_layer=0, layer_count=4294967295 )" +
309 "blit_image(src_image=0x1, src_image_layout=VK_IMAGE_LAYOUT_TRANSFER_SRC_OPTIMAL, "
310 "dst_image=0x2, dst_image_layout=VK_IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL, "
311 "filter=VK_FILTER_LINEAR" +
312 endl() +
" - region(src_subresource=" +
endl() +
313 " aspect_mask=, mip_level=0, base_array_layer=0, layer_count=0 , dst_subresource=" +
314 endl() +
" aspect_mask=, mip_level=0, base_array_layer=0, layer_count=0 )" +
endl() +
318 "pipeline_barrier(src_stage_mask=VK_PIPELINE_STAGE_TRANSFER_BIT, "
319 "dst_stage_mask=VK_PIPELINE_STAGE_TRANSFER_BIT" +
321 " - image_barrier(src_access_mask=VK_ACCESS_TRANSFER_WRITE_BIT, "
322 "dst_access_mask=VK_ACCESS_TRANSFER_READ_BIT, "
323 "old_layout=VK_IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL, "
324 "new_layout=VK_IMAGE_LAYOUT_TRANSFER_SRC_OPTIMAL, image=0x2, subresource_range=" +
326 " aspect_mask=VK_IMAGE_ASPECT_COLOR_BIT, base_mip_level=0, level_count=4294967295, "
327 "base_array_layer=0, layer_count=4294967295 )" +
331 "copy_image_to_buffer(src_image=0x2, src_image_layout=VK_IMAGE_LAYOUT_TRANSFER_SRC_OPTIMAL, "
334 " - region(buffer_offset=0, buffer_row_length=0, buffer_image_height=0, "
335 "image_subresource=" +
337 " aspect_mask=VK_IMAGE_ASPECT_COLOR_BIT, mip_level=0, base_array_layer=0, "
338 "layer_count=0 , image_offset=" +
339 endl() +
" x=0, y=0, z=0 , image_extent=" +
endl() +
340 " width=0, height=0, depth=0 )" +
endl() +
")",
352 resources.add_buffer(buffer_src);
353 resources.add_buffer(buffer_dst);
357 copy_buffer_data.
region.size = 64;
362 "pipeline_barrier(src_stage_mask=VK_PIPELINE_STAGE_TOP_OF_PIPE_BIT, "
363 "dst_stage_mask=VK_PIPELINE_STAGE_TRANSFER_BIT" +
365 " - buffer_barrier(src_access_mask=, dst_access_mask=VK_ACCESS_TRANSFER_READ_BIT, "
366 "buffer=0x1, offset=0, size=18446744073709551615)" +
369 EXPECT_EQ(
"copy_buffer(src_buffer=0x1, dst_buffer=0x2" +
endl() +
370 " - region(src_offset=0, dst_offset=0, size=64)" +
endl() +
")",
EXPECT_EQ(BLI_expr_pylike_eval(expr, nullptr, 0, &result), EXPR_PYLIKE_INVALID)