1. 18 Oct, 2018 2 commits
  2. 12 Oct, 2018 1 commit
  3. 09 Oct, 2018 2 commits
  4. 04 Oct, 2018 3 commits
    • Erik Faye-Lund's avatar
      shader: correct swizzles from TGSI_SEMANTIC_SAMPLEPOS · 1905b382
      Erik Faye-Lund authored
      TGSI defines TGSI_SEMANTIC_SAMPLEPOS as a 4-component vector with
      Z and W set to 0. However, if we ever try to reach thez and w
      compoents, we run into trouble because this is implemented as a
      swizzle on gl_SamplePosition instead. And gl_SamplePosition only
      has x and y.
      It seems that recent versions of mesa does just this, causing
      shader-compilation errors during dEQP tests.
      This fixes regressions in the following tests:
      Signed-off-by: Erik Faye-Lund's avatarErik Faye-Lund <erik.faye-lund@collabora.com>
      Reviewed-by: Jakob Bornecrantz's avatarJakob Bornecrantz <jakob@collabora.com>
      Reviewed-by: Gurchetan Singh's avatarGurchetan Singh <gurchetansingh@chromium.org>
      Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
    • Gert Wollny's avatar
      shader: add TXP special handling on GLES host for 1D textures · efba8403
      Gert Wollny authored
      TXP implements perspective correction, and uses a 4D vector as input.
      Apply the according perspective correction in the 1D case and use only
      the relevant components.
      Closes: #34
      Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
    • Gert Wollny's avatar
      blitter: Replace 1D by 2D on GLES host and correct texture function call · 7f5e49d5
      Gert Wollny authored
      When running a GL 2.1 program in that guest on a GLES host that uses 1D
      textures then the emitted shaders must not declare 1D sampler, since they
      are not supported. Instead, use 2D samplers since 1D textures are emulated
      by 2D textures, and also fix the texture shader call.
      Closes: #33
      Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
  5. 03 Oct, 2018 1 commit
  6. 19 Sep, 2018 2 commits
  7. 17 Sep, 2018 4 commits
  8. 13 Sep, 2018 7 commits
  9. 10 Sep, 2018 1 commit
  10. 06 Sep, 2018 2 commits
    • Gurchetan Singh's avatar
      configure: fix issues with GLX build · 71c75f20
      Gurchetan Singh authored
      1) We use the preprocessor flag HAVE_EPOXY_GLX_H, but never
         set it.
      2) WITH_GLX diverges with HAVE_EPOXY_EGL_H.
      3) virgl_test_server needs to link with X11 when using a GLX
      To fix this, query epoxy for GLX support and allow the user to
      disable it as well.
      TEST=./autogen.sh --disable-egl
    • Gurchetan Singh's avatar
      configure: delete duplicated line · 80b6b372
      Gurchetan Singh authored
      Line 127 and Line 137 are the same.
  11. 04 Sep, 2018 6 commits
  12. 29 Aug, 2018 3 commits
    • Erik Faye-Lund's avatar
      shader: rework precise-emitting for built-ins · 36c919e1
      Erik Faye-Lund authored
      In 47324895
       (shader: do not redeclare built-ins as precise), I confused a
      mesa shader-compiler bug with a spec problem. Turns out, redeclaring
      built-ins as precise is allowed by the spec, just the same as invariant
      variables. And even mesa allows this.
      What mesa doesn't currently allow, is to redeclare a variable as *both*
      invariant *and* precise. This problem does not extend to new
      declarations, where this is already handled correctly.
      So, let's avoid emitting both; it's not really needed to emit both, as
      they essentially have the same effect (disable reordering), just with
      some different usage-semantics. And for the cases we support, these are
      effectively the same.
      This fixes dEQP-GLES31.functional.tessellation.common_edge.*_precise
      without breaking dEQP-GLES2.functional.shaders.algorithm.hsl_to_rgb_vertex
      this time.
      Signed-off-by: Erik Faye-Lund's avatarErik Faye-Lund <erik.faye-lund@collabora.com>
      Reviewed-by: Gurchetan Singh's avatarGurchetan Singh <gurchetansingh@chromium.org>
      Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
    • Gert Wollny's avatar
      vrend: Don't cache blend enable state and set it directly · 10ae7e39
      Gert Wollny authored
      When enabling/disabling GL_BLEND via vrend_blend_enable the context
      cached the last state and doesn't call glEnable/glDisable if the state
      didn't change. However, when gl(Enable|Disable)IndexedEXT is used with
      index 0, then this vrenderer internal state is not updated even though
      the corresponding GL state may be changed, and calling vrend_blend_enable
      later may not update the actual OpenGL state correctly.
      In order to avoid this and to simplify the setting the blend enabled state
      remove the caching and always call glEnable/glDisable directly.
      v2: remove caching for blend enabled/disabled (Dave)
      Closes: #23
      Fixes state leak with:
      Signed-off-by: Gert Wollny's avatarGert Wollny <gert.wollny@collabora.com>
      Reviewed-by: Gurchetan Singh's avatarGurchetan Singh <gurchetansingh@chromium.org>
      Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
    • Pohsien Wang's avatar
      vrend_renderer: Check the shader terminator · a5bfadaa
      Pohsien Wang authored
      Before calling tgsi_text_translate, check the last 4 bytes of
      shader contains the terminating character.
      [airlied: unfortunately some mesa userspace sends a packet
      with 0 shader in it, this should be illegal but we can't
      go trapping it now. just include the check for termination]
      Reviewed-by: default avatarDave Airlie <airlied@redhat.com>
  13. 28 Aug, 2018 1 commit
  14. 22 Aug, 2018 3 commits
  15. 21 Aug, 2018 2 commits
    • Dave Airlie's avatar
      vrend: Enhanced layout support. · 2d6713c6
      Dave Airlie authored and Jakob Bornecrantz's avatar Jakob Bornecrantz committed
      The enhanced layout extension allows for gaps in the streamout bindings
      so we have to be able to handle no-handles in the middle of the target array.
      TGSI also has to deal with components outputs where multiple outputs
      can be mentioned in the TGSI. It's safe for use to just skip the
      extra outputs at least for the tests I've been able to run.
      Once we have those changes in place, the renderer can expose the
      new CAP bit to the host without any further host extension checks.
      Reviewed-by: Jakob Bornecrantz's avatarJakob Bornecrantz <jakob@collabora.com>
      Signed-off-by: Jakob Bornecrantz's avatarJakob Bornecrantz <jakob@collabora.com>
    • Erik Faye-Lund's avatar
      vrend: alpha-textures are supported on GLES · 4553faf2
      Erik Faye-Lund authored and Jakob Bornecrantz's avatar Jakob Bornecrantz committed
      Alpha-textures are supported on GLES, unlike on OpenGL core profiles. So
      we need to check for the difference here, otherwise we get textures
      uploaded as alpha-textures, and then attempted swizzled as if they were
      emulated as red-textures.
      This fixes the following dEQP test-cases:
      Reviewed-by: Gurchetan Singh's avatarGurchetan Singh <gurchetansingh@chromium.org>
      Signed-off-by: Erik Faye-Lund's avatarErik Faye-Lund <erik.faye-lund@collabora.com>
      Signed-off-by: Jakob Bornecrantz's avatarJakob Bornecrantz <jakob@collabora.com>