Skip to content
Snippets Groups Projects
  1. Jun 05, 2019
  2. Jun 04, 2019
  3. May 31, 2019
  4. May 30, 2019
  5. May 28, 2019
  6. May 21, 2019
  7. May 20, 2019
  8. May 17, 2019
    • Ian Romanick's avatar
      Revert "nir: add late opt to turn inot/b2f combos back to bcsel" · dfe2258c
      Ian Romanick authored and Dylan Baker's avatar Dylan Baker committed
      
      This reverts commit 7acc8652.
      
      With these optimizations in place, the extra constant folding added in
      the next commit extends some live ranges of 0.0 and ±1.0 constants, and
      that causes several hundred shaders to have more spills and fills.
      
      I believe this optimization we made basically irrelevant by 7725d609
      "intel/fs: Emit better code for b2f(inot(a)) and b2i(inot(a))".
      
      All Gen7.5+ platforms had similar results. (Ice Lake shown)
      total instructions in shared programs: 17225303 -> 17224634 (<.01%)
      instructions in affected programs: 879402 -> 878733 (-0.08%)
      helped: 679
      HURT: 1
      helped stats (abs) min: 1 max: 1 x̄: 1.00 x̃: 1
      helped stats (rel) min: 0.03% max: 0.93% x̄: 0.24% x̃: 0.05%
      HURT stats (abs)   min: 10 max: 10 x̄: 10.00 x̃: 10
      HURT stats (rel)   min: 0.45% max: 0.45% x̄: 0.45% x̃: 0.45%
      95% mean confidence interval for instructions value: -1.02 -0.95
      95% mean confidence interval for instructions %-change: -0.26% -0.22%
      Instructions are helped.
      
      total cycles in shared programs: 360842595 -> 360828542 (<.01%)
      cycles in affected programs: 110443594 -> 110429541 (-0.01%)
      helped: 389
      HURT: 265
      helped stats (abs) min: 1 max: 7525 x̄: 162.81 x̃: 28
      helped stats (rel) min: <.01% max: 18.66% x̄: 1.11% x̃: 0.11%
      HURT stats (abs)   min: 1 max: 7614 x̄: 185.96 x̃: 48
      HURT stats (rel)   min: <.01% max: 25.08% x̄: 0.95% x̃: 0.10%
      95% mean confidence interval for cycles value: -75.65 32.67
      95% mean confidence interval for cycles %-change: -0.49% -0.06%
      Inconclusive result (value mean confidence interval includes 0).
      
      total spills in shared programs: 12159 -> 12161 (0.02%)
      spills in affected programs: 13 -> 15 (15.38%)
      helped: 0
      HURT: 1
      
      total fills in shared programs: 25207 -> 25208 (<.01%)
      fills in affected programs: 25 -> 26 (4.00%)
      helped: 0
      HURT: 1
      
      Ivy Bridge
      total instructions in shared programs: 12082019 -> 12082013 (<.01%)
      instructions in affected programs: 1033 -> 1027 (-0.58%)
      helped: 6
      HURT: 0
      helped stats (abs) min: 1 max: 1 x̄: 1.00 x̃: 1
      helped stats (rel) min: 0.41% max: 0.83% x̄: 0.61% x̃: 0.59%
      95% mean confidence interval for instructions value: -1.00 -1.00
      95% mean confidence interval for instructions %-change: -0.78% -0.45%
      Instructions are helped.
      
      total cycles in shared programs: 179849270 -> 179849157 (<.01%)
      cycles in affected programs: 4735 -> 4622 (-2.39%)
      helped: 4
      HURT: 0
      helped stats (abs) min: 2 max: 74 x̄: 28.25 x̃: 18
      helped stats (rel) min: 0.13% max: 6.53% x̄: 2.85% x̃: 2.36%
      95% mean confidence interval for cycles value: -82.73 26.23
      95% mean confidence interval for cycles %-change: -7.98% 2.28%
      Inconclusive result (value mean confidence interval includes 0).
      
      Sandy Bridge
      total instructions in shared programs: 10882750 -> 10882748 (<.01%)
      instructions in affected programs: 266 -> 264 (-0.75%)
      helped: 2
      HURT: 0
      
      Iron Lake
      total cycles in shared programs: 188609440 -> 188609448 (<.01%)
      cycles in affected programs: 4320 -> 4328 (0.19%)
      helped: 0
      HURT: 2
      
      GM45
      total cycles in shared programs: 129016868 -> 129016872 (<.01%)
      cycles in affected programs: 2302 -> 2306 (0.17%)
      helped: 0
      HURT: 1
      
      Reviewed-by: default avatarMatt Turner <mattst88@gmail.com>
      (cherry picked from commit d2a9ba03)
      Conflicts resolved by Dylan
      
      Conflicts:
      	src/compiler/nir/nir_opt_algebraic.py
      dfe2258c
    • Dylan Baker's avatar
      cherry-ignore: Add more 19.1 patches · 0ed91c77
      Dylan Baker authored
      0ed91c77
    • Gert Wollny's avatar
      Revert "softpipe/buffer: load only as many components as the the buffer resource type provides" · cab826d5
      Gert Wollny authored and Dylan Baker's avatar Dylan Baker committed
      
      This reverts commit 865b9dda.
      
      The buffer always reports format PIPE_FORMAT_R8_UNORM so with this patch only
      one component would be supported. The original issue is still relevant, but
      the fix should be different.
      
      Signed-off-by: default avatarGert Wollny <gert.wollny@collabora.com>
      Reviewed-by: default avatarDave Airlie <airlied@redhat.com>
      (cherry picked from commit 0f598ed7)
      cab826d5
    • Faith Ekstrand's avatar
      anv: Only consider minSampleShading when sampleShadingEnable is set · 93d278a7
      Faith Ekstrand authored and Dylan Baker's avatar Dylan Baker committed
      
      From the Vulkan 1.1.107 spec:
      
          Sample shading is enabled for a graphics pipeline:
      
            - If the interface of the fragment shader entry point of the
              graphics pipeline includes an input variable decorated with
              SampleId or SamplePosition. In this case minSampleShadingFactor
              takes the value 1.0.
      
            - Else if the sampleShadingEnable member of the
              VkPipelineMultisampleStateCreateInfo structure specified when
              creating the graphics pipeline is set to VK_TRUE. In this case
              minSampleShadingFactor takes the value of
              VkPipelineMultisampleStateCreateInfo::minSampleShading.
      
          Otherwise, sample shading is considered disabled.
      
      In other words, if sampleShadingEnable is set to VK_FALSE, we should
      ignore minSampleShading.
      
      Cc: mesa-stable@lists.freedesktop.org
      Reviewed-by: default avatarLionel Landwerlin <lionel.g.landwerlin@intel.com>
      (cherry picked from commit 1c92358b)
      93d278a7
    • Samuel Pitoiset's avatar
      radv: add a workaround for Monster Hunter World and LLVM 7&8 · 7be21f65
      Samuel Pitoiset authored and Dylan Baker's avatar Dylan Baker committed
      
      The load/store optimizer pass doesn't handle WaW hazards correctly
      and this is the root cause of the reflection issue with Monster
      Hunter World. AFAIK, it's the only game that are affected by this
      issue.
      
      This is fixed with LLVM r361008, but we need a workaround for older
      LLVM versions unfortunately.
      
      Cc: "19.0" "19.1" <mesa-stable@lists.freedesktop.org>
      Signed-off-by: default avatarSamuel Pitoiset <samuel.pitoiset@gmail.com>
      Reviewed-by: default avatarBas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
      (cherry picked from commit d7501834)
      7be21f65
    • Nanley Chery's avatar
      anv: Fix some depth buffer sampling cases on ICL+ · e8d9b339
      Nanley Chery authored and Dylan Baker's avatar Dylan Baker committed
      
      Don't attempt sampling with HiZ if the sampler lacks support for it. On
      ICL, the HW docs state that sampling with HiZ is not supported and that
      instances of AUX_HIZ in the RENDER_SURFACE_STATE object will be
      interpreted as AUX_NONE.
      
      Cc: <mesa-stable@lists.freedesktop.org>
      Reviewed-by: default avatarLionel Landwerlin <lionel.g.landwerlin@intel.com>
      Reviewed-by: default avatarAnuj Phogat <anuj.phogat@gmail.com>
      (cherry picked from commit 629806b5)
      e8d9b339
Loading