FWIW the piglit you posted recently (arb_draw_indirect-draw-arrays-prim-restart) works with nvc0 with upstream mesa as-is. (But fails on llvmpipe/softpipe.)
On Sun, Jan 4, 2015 at 4:44 PM, Marek Olšák <mar...@gmail.com> wrote: > From: Marek Olšák <marek.ol...@amd.com> > > From GL 4.4 Core profile: > > If both PRIMITIVE_RESTART and PRIMITIVE_RESTART_FIXED_INDEX are > enabled, the index value determined by PRIMITIVE_RESTART_FIXED_INDEX is > used. If PRIMITIVE_RESTART_FIXED_INDEX is enabled, primitive restart is not > performed for array elements transferred by any drawing command not taking a > type parameter, including all of the *Draw* commands other than *DrawEle- > ments*. > > If only I had a driver where primitive restart works with DrawArraysIndirect. > I can't test this, sorry. > --- > src/mesa/state_tracker/st_draw.c | 12 +++++++++--- > 1 file changed, 9 insertions(+), 3 deletions(-) > > diff --git a/src/mesa/state_tracker/st_draw.c > b/src/mesa/state_tracker/st_draw.c > index b6ccdd7..9e5a5a9 100644 > --- a/src/mesa/state_tracker/st_draw.c > +++ b/src/mesa/state_tracker/st_draw.c > @@ -248,9 +248,15 @@ st_draw_vbo(struct gl_context *ctx, > if (indirect) { > info.indirect = st_buffer_object(indirect)->buffer; > > - /* Primitive restart is not handled by the VBO module in this case. */ > - info.primitive_restart = ctx->Array._PrimitiveRestart; > - info.restart_index = ctx->Array.RestartIndex; > + /* Primitive restart for DrawArrays is not handled by the VBO module > + * in this case. > + * > + * If PrimitiveRestartFixedIndex is enabled, primitive_restart must > + * be disabled for DrawArrays. DrawElements is handled above. */ > + if (!ib && !ctx->Array.PrimitiveRestartFixedIndex) { > + info.primitive_restart = ctx->Array.PrimitiveRestart; > + info.restart_index = ctx->Array.RestartIndex; > + } > } > > /* do actual drawing */ > -- > 2.1.0 > > _______________________________________________ > mesa-dev mailing list > mesa-dev@lists.freedesktop.org > http://lists.freedesktop.org/mailman/listinfo/mesa-dev _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev