[Mesa-dev] [PATCH 1/3] ac: add stream handling to visit_end_primitive()
Timothy Arceri
tarceri at itsqueeze.com
Mon Jan 22 14:33:36 UTC 2018
On 22/01/18 23:37, Nicolai Hähnle wrote:
> Why hasn't this been noticed before?
I knew it was broken but the state tracker needed to be fixed first
which I hadn't gotten to, fortunately Rob fixed it for me :) [1]
[1]
https://cgit.freedesktop.org/mesa/mesa/commit/?id=4c69961daf45a6a64970e5831bd362307dca0cb2
> Does Vulkan not have multiple streams?
Vulkan does not have transform feedback.
>
> Anyway, series is:
>
> Reviewed-by: Nicolai Hähnle <nicolai.haehnle at amd.com>
>
>
>
> On 18.01.2018 23:26, Timothy Arceri wrote:
>> ---
>> src/amd/common/ac_nir_to_llvm.c | 7 +++----
>> 1 file changed, 3 insertions(+), 4 deletions(-)
>>
>> diff --git a/src/amd/common/ac_nir_to_llvm.c
>> b/src/amd/common/ac_nir_to_llvm.c
>> index 12353943a5..9709514532 100644
>> --- a/src/amd/common/ac_nir_to_llvm.c
>> +++ b/src/amd/common/ac_nir_to_llvm.c
>> @@ -4206,10 +4206,9 @@ visit_emit_vertex(struct ac_shader_abi *abi,
>> unsigned stream, LLVMValueRef *addr
>> }
>> static void
>> -visit_end_primitive(struct nir_to_llvm_context *ctx,
>> - const nir_intrinsic_instr *instr)
>> +visit_end_primitive(struct nir_to_llvm_context *ctx, unsigned stream)
>> {
>> - ac_build_sendmsg(&ctx->ac, AC_SENDMSG_GS_OP_CUT | AC_SENDMSG_GS |
>> (0 << 8), ctx->gs_wave_id);
>> + ac_build_sendmsg(&ctx->ac, AC_SENDMSG_GS_OP_CUT | AC_SENDMSG_GS |
>> (stream << 8), ctx->gs_wave_id);
>> }
>> static LLVMValueRef
>> @@ -4420,7 +4419,7 @@ static void visit_intrinsic(struct
>> ac_nir_context *ctx,
>> ctx->abi->emit_vertex(ctx->abi, 0, ctx->outputs);
>> break;
>> case nir_intrinsic_end_primitive:
>> - visit_end_primitive(ctx->nctx, instr);
>> + visit_end_primitive(ctx->nctx, nir_intrinsic_stream_id(instr));
>> break;
>> case nir_intrinsic_load_tess_coord: {
>> LLVMTypeRef type = ctx->nctx ?
>>
>
>
More information about the mesa-dev
mailing list