1. 17 Jul, 2020 1 commit
  2. 08 Jul, 2020 1 commit
  3. 23 Jun, 2020 1 commit
  4. 22 Jun, 2020 1 commit
  5. 02 Jun, 2020 2 commits
  6. 05 May, 2020 3 commits
  7. 30 Apr, 2020 1 commit
    • Marek Olšák's avatar
      mesa,st/mesa: add a fast path for non-static VAOs · 42842306
      Marek Olšák authored
      Skip most of _mesa_update_vao_derived_arrays if the VAO is not static.
      Drivers need a separate codepath for this.
      
      This increases performance by 7% with glthread and the game "torcs".
      
      The reason is that glthread uploads vertices and sets vertex buffers
      every draw call, so the overhead is very noticable. glthread doesn't
      hide the overhead, because the driver thread is the busiest thread.
      
      Part-of: <!4314>
      42842306
  8. 29 Apr, 2020 1 commit
  9. 27 Apr, 2020 1 commit
  10. 23 Apr, 2020 1 commit
  11. 21 Apr, 2020 2 commits
  12. 16 Apr, 2020 1 commit
  13. 12 Apr, 2020 1 commit
  14. 27 Mar, 2020 1 commit
  15. 26 Mar, 2020 1 commit
  16. 24 Mar, 2020 1 commit
    • Neil Roberts's avatar
      glsl: Add an IR lowering pass to convert mediump operations to 16-bit · b83f4b9f
      Neil Roberts authored
      This works by finding the first rvalue that it can lower using an
      ir_rvalue_visitor. In that case it adds a conversion to float16
      after each rvalue and a conversion back to float before storing
      the assignment.
      
      Also it uses a set to keep track of rvalues that have been
      lowred already. The handle_rvalue method of the rvalue visitor doesn’t
      provide any way to stop iteration. If we handle a value in
      find_precision_visitor we want to be able to stop it from descending into
      the lowered rvalue again.
      
      Additionally this pass disallows converting nodes containing non-float.
      The can_lower_rvalue function explicitly excludes any branches
      that have non-float types except bools. This avoids the need to have
      special handling for functions that convert to int or double.
      Co-authored-by: Hyunjun Ko's avatarHyunjun Ko <zzoon@igalia.com>
      
      v2. Adds lowering for texture samples
      
      v3. Instead of checking whether each node can be lowered while walking the
      tree, a separate tree walk is now done to check all of the nodes in a
      single pass. The lowerable nodes are added to a set which is checked
      during find_precision_visitor instead of calling can_lower_rvalue.
      
      v4. Move the special case for temporaries to find_lowerable_rvalues. This
      needs to be handled while checking for lowerable rvalues so that any
      later dereferences of the variable will see the right precision.
      
      v5. Add an override to visit ir_call instructions and apply the same
      technique to override the precision of the temporary variable in the
      same way as done for builtin temporaries and ir_assignment calls.
      
      v6. Changes the pass so that it doesn’t need to lower an entire subtree in
      order do perform a lowering. Instead, certain instructions can be
      marked as being indepedent of their child instructions. For example,
      this is the case with array dereferences. The precision of the array
      index doesn’t have any bearing on whether things using the result of
      the array deref can be lowered.
      
      Now, only toplevel lowerable nodes are added to the lowerable_rvalues
      instead instead of additionally adding all of the subnodes.
      
      It now also only needs one hash table instead of two.
      
      v7. Don’t try to lower sampler types. Instead, the sample instruction is
      now treated as an independent point where the result of the sample can
      be used in a lowered section. The precision of the sampler type
      determines the precision of the sample instruction. This also means
      the coordinates to the sampler can be lowered.
      
      v8. Use f2fmp instead of f2f16.
      
      v9.  Disable lowering derivatives calcualtions, which might not work
      properly on some hw backends.
      Reviewed-by: Kristian H. Kristensen's avatarKristian H. Kristensen <hoegsberg@google.com>
      Part-of: <!3885>
      b83f4b9f
  17. 21 Mar, 2020 1 commit
  18. 11 Mar, 2020 1 commit
  19. 03 Mar, 2020 3 commits
  20. 02 Mar, 2020 1 commit
  21. 26 Feb, 2020 1 commit
  22. 24 Feb, 2020 1 commit
  23. 13 Feb, 2020 1 commit
  24. 11 Feb, 2020 1 commit
  25. 23 Jan, 2020 1 commit
  26. 15 Jan, 2020 1 commit
  27. 02 Dec, 2019 1 commit
    • Kenneth Graunke's avatar
      st/mesa: Add GL_TDFX_texture_compression_FXT1 support · 1bdd342b
      Kenneth Graunke authored
      Eric recently added PIPE_FORMAT_FXT1_RGB[A] as part of his format
      unification work.  This was really most of the work of implementing
      the extension.  We just need to handle it in a couple of places and
      expose the extension.
      
      v2: Reject the new formats in llvmpipe_is_format_supported to prevent
          crashes because it doesn't know how to handle the new formats.
      
      Reviewed-by: Marek Olšák <marek.olsak@amd.com> [v1]
      Reviewed-by: Eric Anholt <eric@anholt.net> [v1]
      1bdd342b
  28. 12 Nov, 2019 1 commit
  29. 21 Oct, 2019 1 commit
  30. 17 Oct, 2019 1 commit
  31. 16 Oct, 2019 1 commit
  32. 08 Oct, 2019 1 commit
  33. 30 Sep, 2019 1 commit
  34. 18 Sep, 2019 1 commit