[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

[Git][xorg-team/vulkan/spirv-tools][debian-unstable] 33 commits: Start SPIRV-Tools v2022.5



Title: GitLab

Timo Aaltonen pushed to branch debian-unstable at X Strike Force / vulkan / spirv-tools

Commits:

  • b53d3a6b
    by Diego Novillo at 2022-10-12T12:17:13-04:00
    Start SPIRV-Tools v2022.5
    
  • ecd5b9c1
    by Spencer Fricke at 2022-10-17T16:54:39-04:00
    spirv-val: Add remaining Component decoration validation (#4966)
    
    
  • eb113f0f
    by Spencer Fricke at 2022-10-20T10:51:43-04:00
    spirv-val: Improve PR 4831 error message (#4968)
    
    
  • 0ebf8305
    by Spencer Fricke at 2022-10-24T12:45:08-04:00
    spirv-val: Add OpPtrAccessChain Base checks (#4965)
    
    
  • 7326b967
    by alan-baker at 2022-10-24T15:16:33-04:00
    Prevent null pointer from being dereferenced (#4971)
    
    Fixes https://crbug.com/oss-fuzz/48553
    
    * Assign a reflexive dominator if no other dominator can be found using
      forward traversals
      * This prevents a null dereference of a pointer in the sorting of the
        output
  • da215f10
    by Nathan Gauër at 2022-10-26T16:42:29+00:00
    test
    
  • b49a2caa
    by Nathan Gauër at 2022-10-27T14:17:31+02:00
    Revert "test" (#4974)
    
    This reverts commit da215f10c991675b9c1ecb7eef2378e23b2d1276.
  • 9f3a4afa
    by Spencer Fricke at 2022-10-27T10:10:27-04:00
    spirv-val: Label new Vulkan OpPtrAccessChain VUs (#4975)
    
    
  • 4563d909
    by alan-baker at 2022-10-28T11:52:28-04:00
    Only validate full layout in Vulkan environments (#4972)
    
    Fixes #4671
    Fixes https://crbug.com/oss-fuzz/43265
    
    * Only validate full layout in a vulkan environment
      * Universal validation still checks that the right decorations are
        present, but the values are only considered for vulkan
    * One exception is that invalid overlaps are only checked for vulkan
      * This is a pragmatic choice as SPIR-V doesn't define the size of
        types so the amount of universal checking would be quite limited
    * Removed redundant check for GLSLShared and GLSLPacked decorations
      * Should never have been validated as part of universal validation
    
    * make conditionals independent
    
  • a52de681
    by alan-baker at 2022-10-28T14:13:20-04:00
    Prevent eliminating case constructs in block merging (#4976)
    
    Fixes #4918
    
    * Prevent block merging from producing an invalid case construct by
      merging a switch target/default with another construct's merge or
      continue block
    * This is to satisfy the structural dominance requirement between the
      switch header and the case constructs
    
  • c8e1588c
    by Greg Fischer at 2022-11-02T11:23:25-06:00
    Add passes to eliminate dead output stores (#4970)
    
    This adds two passes to accomplish this: one pass to analyze a shader
    to determine the input slots that are live. The second pass is run on
    the preceding shader to eliminate any stores to output slots that are
    not consumed by the following shader.
    
    These passes support vert, tesc, tese, geom, and frag shaders.
    
    These passes are currently only available through the API.
    
    These passes together with dead code elimination, and elimination of
    dead input and output components and variables (WIP), will allow users
    to do dead code elimination across shader boundaries.
  • d35a78db
    by alan-baker at 2022-11-04T17:27:10-04:00
    Switch SPIRV-Tools to use spirv.hpp11 internally (#4981)
    
    Fixes #4960
    
    * Switches to using enum classes with an underlying type to avoid
      undefined behaviour
    
  • a5e766b2
    by Spencer Fricke at 2022-11-06T19:05:25-05:00
    spirv-val: Add VUID label for 07703 (#4980)
    
    
  • 54d4e77f
    by Spencer Fricke at 2022-11-08T10:50:42-05:00
    spirv-opt: Add const folding for CompositeInsert (#4943)
    
    * spirv-opt: Add const folding pass for CompositeInsert
    
    * spirv-opt: Fix anas stack-use-after-scope
  • 525bc380
    by Greg Fischer at 2022-11-08T10:45:32-07:00
    Add pass to eliminate dead output components (#4982)
    
    This pass eliminates components of output variables that are not stored
    to. Currently this just eliminates trailing components of arrays and
    structs, all of which are dead.
    
    WARNING: This pass is not designed to be a standalone pass as it can
    cause interface incompatibiliies with the following shader in the
    pipeline. See the comment in optimizer.hpp for best usage. This pass is
    currently available only through the API; it is not available in the CLI.
    
    This commit also fixes a bug in CreateDecoration() which is part of the
    system of generating SPIR-V from the Type manager.
  • aae7d413
    by alan-baker at 2022-11-09T17:37:23-05:00
    Fix macos kokoro builds (#4985)
    
    
  • 996d4c02
    by Spencer Fricke at 2022-11-10T12:32:58-05:00
    spirv-val: Multiple interface var with same SC (#4969)
    
    * spirv-val: Multiple interface var with same SC
    
    * spirv-val: Use C style headers
  • 68e8327f
    by Jeremy Gebben at 2022-11-10T12:35:18-05:00
    Instrument: Change output buffer offset definitions (#4961)
    
    Add a flags field at the first offset within this buffer.
    Define flags to allow buffer OOB checking to be enabled or
    disabled at run time. This is to support VK_EXT_pipeline_robustnes.
  • a8647f59
    by Shahbaz Youssefi at 2022-11-11T09:18:00-05:00
    Use Python3 for presubmit (#4986)
    
    
  • 8ea3ae6b
    by Greg Fischer at 2022-11-14T11:44:26-07:00
    Split EliminateDeadInputComponents into safe and unsafe versions. (#4984)
    
    Safe version will only optimize vertex shaders. All other shaders will
    succeed without change.
    
    Change --eliminate-dead-input-components to use new safe version.
    
    Unsafe version (allowing non-vertex shaders) currently only available
    through API. Should only be used in combination with other optimizations
    to keep interfaces consistent. See optimizer.hpp for more details.
  • 1a7f71af
    by Nathan Gauër at 2022-11-17T19:02:50+01:00
    clean: constexpr-ify and unify anon namespace use (#4991)
    
    Constexpr guaranteed no runtime init in addition to const semantics.
    Moving all opt/ to constexpr.
    Moving all compile-unit statics to anonymous namespaces to uniformize
    the method used (anonymous namespace vs static has the same behavior
    here AFAIK).
    
    Signed-off-by: Nathan Gauër <brioche@google.com>
  • 46ca66e6
    by Greg Fischer at 2022-11-18T15:08:18-07:00
    Add support for tesc, tese and geom to EliminateDead*Components (#4990)
    
    
  • 81ec2aaa
    by Greg Fischer at 2022-11-23T10:48:58-07:00
    Add option to ADCE to remove output variables from interface. (#4994)
    
    This can cause interface incompatibility and should only be done
    if ADCE has been applied to the following shader in the pipeline.
    For this reason this capability is not available through the CLI
    but rather only non-default through the API. This functionality is
    intended as part of a larger cross-shader dead code elimination
    sequence.
  • 597631b6
    by Spencer Fricke at 2022-11-24T08:38:12-05:00
    spirv-opt: Handle null CompositeInsert (#4998)
    
    Fixes #4996 
  • f33d1524
    by alelenv at 2022-11-24T09:50:45-05:00
    Add validation support for SPV_NV_shader_invocation_reorder. (#4979)
    
    
    Co-authored-by: Pankaj Mistry <pmistry@nvidia.com>
  • 9a6f4121
    by Biswapriyo Nath at 2022-11-25T10:54:38-05:00
    Fix missing declaration of std::numeric_limits (#5002)
    
    This fixes the errors:
    validate_ray_tracing_reorder.cpp:25:49: error: 'numeric_limits' is not a member of 'std'
  • 00018e58
    by Greg Fischer at 2022-11-25T16:48:13-07:00
    Change EliminateDeadInputComponentsPass to EliminateDeadIOComponentsPass (#4997)
    
    To reflect processing of both Input and Output variables.
    
    Also renamed files as needed.
  • d9446130
    by Brian Osman at 2022-11-28T13:24:44-05:00
    Update BUILD.gn with recently added file (#5004)
    
    
  • 40f5bf59
    by Cassandra Beckley at 2022-12-05T12:31:01-08:00
    Revert "spirv-val: Multiple interface var with same SC (#4969)" (#5009)
    
    This reverts commit 996d4c021f7112356b305b7172fd722d02eefdb5. This
    commit is likely good, but it causes a failure in DXC tests. Will
    un-revert once we fix the issue in DXC.
  • f7d7b6ab
    by Timo Aaltonen at 2023-01-17T20:06:16+02:00
    Merge branch 'upstream-unstable' into debian-unstable
    
  • 2c7e4dfe
    by Timo Aaltonen at 2023-01-17T20:07:20+02:00
    version bump
    
  • a488def4
    by Timo Aaltonen at 2023-01-18T12:11:15+02:00
    control: Bump build-dep on spirv-headers.
    
  • 11968216
    by Timo Aaltonen at 2023-01-18T12:13:21+02:00
    release to sid
    

30 changed files:

The diff was not included because it is too large.

Reply to: