On Sun, Aug 30, 2015 at 1:27 AM, Jonathan Gray <j...@jsg.id.au> wrote: > On Fri, Aug 28, 2015 at 10:47:44AM +1000, Dave Airlie wrote: >> From: Dave Airlie <airl...@redhat.com> >> >> This code we broken by the tess merge, and I totally missed it >> until now. I'm not sure this fixes anything but it stops the assert. >> >> Cc: "11.0" <mesa-sta...@lists.freedesktop.org> >> Signed-off-by: Dave Airlie <airl...@redhat.com> >> --- >> src/gallium/drivers/r600/r600_pipe.h | 31 ++++++++++++++++--------------- >> 1 file changed, 16 insertions(+), 15 deletions(-) >> >> diff --git a/src/gallium/drivers/r600/r600_pipe.h >> b/src/gallium/drivers/r600/r600_pipe.h >> index 384ba80..3247aba 100644 >> --- a/src/gallium/drivers/r600/r600_pipe.h >> +++ b/src/gallium/drivers/r600/r600_pipe.h >> @@ -939,21 +939,22 @@ static inline bool r600_can_read_depth(struct >> r600_texture *rtex) >> static inline unsigned r600_conv_prim_to_gs_out(unsigned mode) >> { >> static const int prim_conv[] = { >> - V_028A6C_OUTPRIM_TYPE_POINTLIST, >> - V_028A6C_OUTPRIM_TYPE_LINESTRIP, >> - V_028A6C_OUTPRIM_TYPE_LINESTRIP, >> - V_028A6C_OUTPRIM_TYPE_LINESTRIP, >> - V_028A6C_OUTPRIM_TYPE_TRISTRIP, >> - V_028A6C_OUTPRIM_TYPE_TRISTRIP, >> - V_028A6C_OUTPRIM_TYPE_TRISTRIP, >> - V_028A6C_OUTPRIM_TYPE_TRISTRIP, >> - V_028A6C_OUTPRIM_TYPE_TRISTRIP, >> - V_028A6C_OUTPRIM_TYPE_TRISTRIP, >> - V_028A6C_OUTPRIM_TYPE_LINESTRIP, >> - V_028A6C_OUTPRIM_TYPE_LINESTRIP, >> - V_028A6C_OUTPRIM_TYPE_TRISTRIP, >> - V_028A6C_OUTPRIM_TYPE_TRISTRIP, >> - V_028A6C_OUTPRIM_TYPE_TRISTRIP >> + [PIPE_PRIM_POINTS] = >> V_028A6C_OUTPRIM_TYPE_POINTLIST, >> + [PIPE_PRIM_LINES] = >> V_028A6C_OUTPRIM_TYPE_LINESTRIP, >> + [PIPE_PRIM_LINE_LOOP] = >> V_028A6C_OUTPRIM_TYPE_LINESTRIP, >> + [PIPE_PRIM_LINE_STRIP] = >> V_028A6C_OUTPRIM_TYPE_LINESTRIP, >> + [PIPE_PRIM_TRIANGLES] = >> V_028A6C_OUTPRIM_TYPE_TRISTRIP, >> + [PIPE_PRIM_TRIANGLE_STRIP] = >> V_028A6C_OUTPRIM_TYPE_TRISTRIP, >> + [PIPE_PRIM_TRIANGLE_FAN] = >> V_028A6C_OUTPRIM_TYPE_TRISTRIP, >> + [PIPE_PRIM_QUADS] = >> V_028A6C_OUTPRIM_TYPE_TRISTRIP, >> + [PIPE_PRIM_QUAD_STRIP] = >> V_028A6C_OUTPRIM_TYPE_TRISTRIP, >> + [PIPE_PRIM_POLYGON] = >> V_028A6C_OUTPRIM_TYPE_TRISTRIP, >> + [PIPE_PRIM_LINES_ADJACENCY] = >> V_028A6C_OUTPRIM_TYPE_LINESTRIP, >> + [PIPE_PRIM_LINE_STRIP_ADJACENCY] = >> V_028A6C_OUTPRIM_TYPE_LINESTRIP, >> + [PIPE_PRIM_TRIANGLES_ADJACENCY] = >> V_028A6C_OUTPRIM_TYPE_TRISTRIP, >> + [PIPE_PRIM_TRIANGLE_STRIP_ADJACENCY] = >> V_028A6C_OUTPRIM_TYPE_TRISTRIP, >> + [PIPE_PRIM_PATCHES] = >> V_028A6C_OUTPRIM_TYPE_POINTLIST, >> + [R600_PRIM_RECTANGLE_LIST] = >> V_028A6C_OUTPRIM_TYPE_TRISTRIP >> }; >> assert(mode < Elements(prim_conv)); > > This seems to have broken the build on OpenBSD with gcc 4.2.1: > > In file included from sb/sb_bc_parser.cpp:35: > ./r600_pipe.h: In function 'unsigned int r600_conv_prim_to_gs_out(unsigned > int)': > ./r600_pipe.h:942: error: expected primary-expression before '[' token > ./r600_pipe.h:943: error: expected primary-expression before '[' token > ./r600_pipe.h:944: error: expected primary-expression before '[' token > ./r600_pipe.h:945: error: expected primary-expression before '[' token > ./r600_pipe.h:946: error: expected primary-expression before '[' token > ./r600_pipe.h:947: error: expected primary-expression before '[' token > ./r600_pipe.h:948: error: expected primary-expression before '[' token > ./r600_pipe.h:949: error: expected primary-expression before '[' token > ./r600_pipe.h:950: error: expected primary-expression before '[' token > ./r600_pipe.h:951: error: expected primary-expression before '[' token > ./r600_pipe.h:952: error: expected primary-expression before '[' token > ./r600_pipe.h:953: error: expected primary-expression before '[' token > ./r600_pipe.h:954: error: expected primary-expression before '[' token > ./r600_pipe.h:955: error: expected primary-expression before '[' token > ./r600_pipe.h:956: error: expected primary-expression before '[' token > ./r600_pipe.h:957: error: expected primary-expression before '[' token > Makefile:801: recipe for target 'sb/sb_bc_parser.lo' failed
We definitely do this sort of thing elsewhere... does it work if you do static const int prim_conv[PIPE_PRIM_MAX+1] = { ... } _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev