On Thu, Aug 17, 2017 at 4:45 PM, Timothy Arceri <tarc...@itsqueeze.com> wrote:
> > > On 18/08/17 00:33, Jason Ekstrand wrote: > >> On Thu, Aug 17, 2017 at 4:03 AM, Timothy Arceri <tarc...@itsqueeze.com >> <mailto:tarc...@itsqueeze.com>> wrote: >> >> --- >> src/mesa/drivers/dri/i965/brw_context.c | 6 ++++++ >> 1 file changed, 6 insertions(+) >> >> diff --git a/src/mesa/drivers/dri/i965/brw_context.c >> b/src/mesa/drivers/dri/i965/brw_context.c >> index d97a24fbf8..8485e8a30c 100644 >> --- a/src/mesa/drivers/dri/i965/brw_context.c >> +++ b/src/mesa/drivers/dri/i965/brw_context.c >> @@ -668,20 +668,26 @@ brw_initialize_context_constants(struct >> brw_context *brw) >> ctx->Const.MaxVertexStreams = MIN2(4, MAX_VERTEX_STREAMS); >> >> /* ARB_framebuffer_no_attachments */ >> ctx->Const.MaxFramebufferWidth = 16384; >> ctx->Const.MaxFramebufferHeight = 16384; >> ctx->Const.MaxFramebufferLayers = ctx->Const.MaxArrayTextureLaye >> rs; >> ctx->Const.MaxFramebufferSamples = max_samples; >> >> /* OES_primitive_bounding_box */ >> ctx->Const.NoPrimitiveBoundingBoxOutput = true; >> + >> + /* TODO: we should be able to use STD430 packing by default on >> all hardware >> + * but some CTS tests currently fail on SNB when this is enabled. >> >> >> There is a very good reason for this. I know because I've come across it >> before. However, grepping through the code, I can't figure out why. :( >> What CTS tests start failing? >> > > Project: piglit-test > Test: piglit.spec.glsl-1_50.uniform_buffer.gs-float-array-variable > -index > Status: fail > Platform/arch: > snb/m64 > Command line: /tmp/build_root/m64/lib/piglit/bin/shader_runner > > /tmp/build_root/m64/lib/piglit/tests/spec/glsl-1.50/uniform_ > buffer/gs-float- > array-variable-index.shader_test -auto -fbo > Project: piglit-test > Test: piglit.spec.glsl-1_40.uniform_buffer.vs-float-array-variable > -index > Status: fail > Platform/arch: > snb/m64 > Command line: /tmp/build_root/m64/lib/piglit/bin/shader_runner > > /tmp/build_root/m64/lib/piglit/tests/spec/glsl-1.40/uniform_ > buffer/vs-float- > array-variable-index.shader_test -auto -fbo > I did a bit of looking and the messages we're using for doing uniform pulls in the vec4 back-end on SNB is the OWORD block load instruction which takes its offset in units of OWORDS (16 bytes). On IVB+, we use the sampler which doesn't have these restrictions. Let's give it a proper comment. --Jason > >> + */ >> + if (brw->gen >= 7) >> + ctx->Const.UseSTD430AsDefaultPacking = true; >> } >> >> static void >> brw_initialize_cs_context_constants(struct brw_context *brw) >> { >> struct gl_context *ctx = &brw->ctx; >> const struct intel_screen *screen = brw->screen; >> struct gen_device_info *devinfo = &brw->screen->devinfo; >> >> /* FINISHME: Do this for all platforms that the kernel supports >> */ >> -- >> 2.13.4 >> >> _______________________________________________ >> mesa-dev mailing list >> mesa-dev@lists.freedesktop.org <mailto:mesa-dev@lists.freedesktop.org >> > >> https://lists.freedesktop.org/mailman/listinfo/mesa-dev >> <https://lists.freedesktop.org/mailman/listinfo/mesa-dev> >> >> >>
_______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev