tex->texture = nir_deref_var_create(tex, sampler);
tex->sampler = nir_deref_var_create(tex, sampler);
- nir_ssa_dest_init(&tex->instr, &tex->dest, 4, "tex");
+ nir_ssa_dest_init(&tex->instr, &tex->dest, 4, 32, "tex");
nir_builder_instr_insert(&b, &tex->instr);
nir_variable *color_out = nir_variable_create(b.shader, nir_var_shader_out,
meta_prepare_blit(struct anv_cmd_buffer *cmd_buffer,
struct anv_meta_saved_state *saved_state)
{
- anv_meta_save(saved_state, cmd_buffer,
- (1 << VK_DYNAMIC_STATE_VIEWPORT));
+ anv_meta_save(saved_state, cmd_buffer, 0);
}
-void
+static void
meta_emit_blit(struct anv_cmd_buffer *cmd_buffer,
struct anv_image *src_image,
struct anv_image_view *src_iview,
},
};
- anv_state_clflush(vb_state);
+ if (!device->info.has_llc)
+ anv_state_clflush(vb_state);
struct anv_buffer vertex_buffer = {
.device = device,
VK_PIPELINE_BIND_POINT_GRAPHICS, pipeline);
}
- anv_CmdSetViewport(anv_cmd_buffer_to_handle(cmd_buffer), 0, 1,
- &(VkViewport) {
- .x = 0.0f,
- .y = 0.0f,
- .width = dest_iview->extent.width,
- .height = dest_iview->extent.height,
- .minDepth = 0.0f,
- .maxDepth = 1.0f,
- });
-
anv_CmdBindDescriptorSets(anv_cmd_buffer_to_handle(cmd_buffer),
VK_PIPELINE_BIND_POINT_GRAPHICS,
device->meta_state.blit.pipeline_layout, 0, 1,
assert(src_image->samples == 1);
assert(dest_image->samples == 1);
- anv_finishme("respect VkFilter");
-
meta_prepare_blit(cmd_buffer, &saved_state);
for (unsigned r = 0; r < regionCount; r++) {
.layerCount = 1
},
},
- cmd_buffer, 0, VK_IMAGE_USAGE_SAMPLED_BIT);
+ cmd_buffer, VK_IMAGE_USAGE_SAMPLED_BIT);
const VkOffset3D dest_offset = {
.x = pRegions[r].dstOffsets[0].x,
.layerCount = 1
},
},
- cmd_buffer, 0, VK_IMAGE_USAGE_COLOR_ATTACHMENT_BIT);
+ cmd_buffer, VK_IMAGE_USAGE_COLOR_ATTACHMENT_BIT);
meta_emit_blit(cmd_buffer,
src_image, &src_iview,
{
.binding = 0,
.stride = 0,
- .inputRate = VK_VERTEX_INPUT_RATE_VERTEX
+ .inputRate = VK_VERTEX_INPUT_RATE_INSTANCE
},
{
.binding = 1,
const struct anv_graphics_pipeline_create_info anv_pipeline_info = {
.color_attachment_count = -1,
.use_repclear = false,
- .disable_viewport = true,
- .disable_scissor = true,
.disable_vs = true,
.use_rectlist = true
};