On Mon, May 28, 2018 at 2:48 PM, Marek Olšák <mar...@gmail.com> wrote: > On Mon, May 28, 2018 at 5:29 AM, Nicolai Hähnle <nhaeh...@gmail.com> wrote: >> >> On 25.05.2018 23:03, Marek Olšák wrote: >>> >>> From: Marek Olšák <marek.ol...@amd.com> >>> >>> Bindless texture handles can be passed via vertex attribs using this >>> type. >>> This fixes a bunch of bindless piglit tests on radeonsi. >>> >>> Cc: 18.0 18.1 <mesa-sta...@lists.freedesktop.org> >>> --- >>> src/mesa/state_tracker/st_atom_array.c | 3 +++ >>> 1 file changed, 3 insertions(+) >>> >>> diff --git a/src/mesa/state_tracker/st_atom_array.c >>> b/src/mesa/state_tracker/st_atom_array.c >>> index 9a0935e21a5..76dc81975c8 100644 >>> --- a/src/mesa/state_tracker/st_atom_array.c >>> +++ b/src/mesa/state_tracker/st_atom_array.c >>> @@ -292,20 +292,23 @@ st_pipe_vertex_format(const struct >>> gl_array_attributes *attrib) >>> assert(size == 3 && !integer && format == GL_RGBA); >>> return PIPE_FORMAT_R11G11B10_FLOAT; >>> case GL_UNSIGNED_BYTE: >>> if (format == GL_BGRA) { >>> /* this is an odd-ball case */ >>> assert(normalized); >>> return PIPE_FORMAT_B8G8R8A8_UNORM; >>> } >>> break; >>> + >>> + case GL_UNSIGNED_INT64_ARB: >>> + return PIPE_FORMAT_R32G32_UINT; >> >> >> Is it not possible to have vectors of uint64 as attributes? > > > I don't think we support uint64 in shaders. We only support bindless > samplers, which can't be vectors.
While we do support them in theory [i64vecN attributes], in practice they get lowered in init_velement_lowered (ideally attrib->Doubles is set there). Given that the 64-bit bindless attributes have the same counting issues, I think they should go through the same lowering logic, even though in practice it won't matter (since it always fits into a single attribute). I did do a bit of tracing, and it seemed like that should already work with the current code, but clearly it doesn't for some reason. This patch seems like a workaround, although in practice, it will work too. -ilia _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev