Browse Source

anv/pipline: Re-order state emission and make it consistent

This commit makes both gen7 and gen8 pipeline setup emit state packets
in exactly the same order.

Reviewed-by: Timothy Arceri <timothy.arceri@collabora.com>
Reviewed-by: Kristian H. Kristensen <hoegsberg@google.com>
tags/17.0-branchpoint
Jason Ekstrand 8 years ago
parent
commit
9359835fcb
2 changed files with 5 additions and 8 deletions
  1. 2
    5
      src/intel/vulkan/gen7_pipeline.c
  2. 3
    3
      src/intel/vulkan/gen8_pipeline.c

+ 2
- 5
src/intel/vulkan/gen7_pipeline.c View File

@@ -68,9 +68,8 @@ genX(graphics_pipeline_create)(
assert(pCreateInfo->pRasterizationState);
emit_rs_state(pipeline, pCreateInfo->pRasterizationState,
pCreateInfo->pMultisampleState, pass, subpass);
emit_ms_state(pipeline, pCreateInfo->pMultisampleState);
emit_ds_state(pipeline, pCreateInfo->pDepthStencilState, pass, subpass);

emit_cb_state(pipeline, pCreateInfo->pColorBlendState,
pCreateInfo->pMultisampleState);

@@ -80,8 +79,6 @@ genX(graphics_pipeline_create)(
pCreateInfo->pRasterizationState);
emit_3dstate_streamout(pipeline, pCreateInfo->pRasterizationState);

emit_ms_state(pipeline, pCreateInfo->pMultisampleState);

#if 0
/* From gen7_vs_state.c */

@@ -104,8 +101,8 @@ genX(graphics_pipeline_create)(
emit_3dstate_vs(pipeline);
emit_3dstate_gs(pipeline);
emit_3dstate_sbe(pipeline);
emit_3dstate_ps(pipeline);
emit_3dstate_wm(pipeline, pCreateInfo->pMultisampleState);
emit_3dstate_ps(pipeline);

*pPipeline = anv_pipeline_to_handle(pipeline);


+ 3
- 3
src/intel/vulkan/gen8_pipeline.c View File

@@ -64,7 +64,6 @@ genX(graphics_pipeline_create)(

assert(pCreateInfo->pVertexInputState);
emit_vertex_input(pipeline, pCreateInfo->pVertexInputState);
emit_3dstate_vf_topology(pipeline);
assert(pCreateInfo->pRasterizationState);
emit_rs_state(pipeline, pCreateInfo->pRasterizationState,
pCreateInfo->pMultisampleState, pass, subpass);
@@ -79,12 +78,13 @@ genX(graphics_pipeline_create)(
pCreateInfo->pRasterizationState);
emit_3dstate_streamout(pipeline, pCreateInfo->pRasterizationState);

emit_3dstate_wm(pipeline, pCreateInfo->pMultisampleState);
emit_3dstate_gs(pipeline);
emit_3dstate_vs(pipeline);
emit_3dstate_gs(pipeline);
emit_3dstate_sbe(pipeline);
emit_3dstate_wm(pipeline, pCreateInfo->pMultisampleState);
emit_3dstate_ps(pipeline);
emit_3dstate_ps_extra(pipeline);
emit_3dstate_vf_topology(pipeline);

*pPipeline = anv_pipeline_to_handle(pipeline);


Loading…
Cancel
Save