Skip to content

spirv-fuzz: Always add new globals to entry point interfaces#3113

Merged
afd merged 2 commits intoKhronosGroup:masterfrom
afd:fuzzer-add-global-variables-to-entry-point-interface
Dec 19, 2019
Merged

spirv-fuzz: Always add new globals to entry point interfaces#3113
afd merged 2 commits intoKhronosGroup:masterfrom
afd:fuzzer-add-global-variables-to-entry-point-interface

Conversation

@afd
Copy link
Copy Markdown
Contributor

@afd afd commented Dec 19, 2019

In the context of SPIR-V 1.4 or higher, global variables cannot be
used by an instruction unless they are listed in the interface of all
entry points that might invoke the instruction. This change
conservatively adds new global variables to the interfaces of all
entry points (if the SPIR-V version is 1.4 or higher).

Issue #3111 notes that a more rigorous approach to entry point
interfaces could be taken in spirv-fuzz, which would allow being less
conservative here.

In the context of SPIR-V 1.4 or higher, global variables cannot be
used by an instruction unless they are listed in the interface of all
entry points that might invoke the instruction.  This change
conservatively adds new global variables to the interfaces of all
entry points (if the SPIR-V version is 1.4 or higher).

Issue KhronosGroup#3111 notes that a more rigorous approach to entry point
interfaces could be taken in spirv-fuzz, which would allow being less
conservative here.
@afd afd requested a review from paulthomson December 19, 2019 14:11
@afd afd merged commit e01bc6d into KhronosGroup:master Dec 19, 2019
@afd afd deleted the fuzzer-add-global-variables-to-entry-point-interface branch December 19, 2019 21:16
dneto0 pushed a commit to dneto0/SPIRV-Tools that referenced this pull request Sep 14, 2024
Roll third_party/glslang/ ebf634b..40801e3 (8 commits)

KhronosGroup/glslang@ebf634b...40801e3

$ git log ebf634b..40801e3 --date=short --no-merges --format='%ad %ae %s'
2020-01-06 cepheus Bump revision
2020-01-06 laddoc Add builtin constants
2019-12-26 cepheus HLSL: Fix KhronosGroup#2037: Integer dot used incorrect input for adds.
2019-12-25 laddoc atomic counter offset should align to 4
2019-11-26 laddoc Add support for ARB_uniform_buffer_object
2019-11-26 laddoc Add support for ARB_texture_multisample
2019-11-26 laddoc Add support for ARB_sample_shading
2019-12-20 cepheus Command-line: Give better error messages. From KhronosGroup#1829.

Roll third_party/googletest/ 5b162a79d..306f3754a (17 commits)

google/googletest@5b162a7...306f375

$ git log 5b162a79d..306f3754a --date=short --no-merges --format='%ad %ae %s'
2019-12-30 absl-team Googletest export
2019-12-30 absl-team Googletest export
2019-12-26 absl-team Googletest export
2019-12-19 absl-team Googletest export
2019-12-18 absl-team Googletest export
2019-12-18 absl-team Googletest export
2019-12-20 kontakt Make move operation noexcept.
2019-12-20 kontakt Define default destructor for test classes
2019-12-20 kontakt Deleted functions as part of public interface
2019-12-20 kontakt Review notes: Return T& from assignment operators
2019-12-17 kontakt Disable move constructor and assignment operator for test classes.
2019-12-16 krzysio Googletest export
2019-12-10 syoussefi Revert "Googletest export": disallow empty prefix
2019-12-10 syoussefi Revert "Googletest export": Remove test for empty prefix
2019-12-16 syoussefi Workaround VS bug w.r.t empty arguments to macros
2019-12-13 kravlala.1 Activate GNU extensions in case of MSYS generator
2019-11-22 krystian.kuzniarek remove stale comments about older GCC versions

Roll third_party/re2/ 7470f4d02..00af5b44d (2 commits)

google/re2@7470f4d...00af5b4

$ git log 7470f4d02..00af5b44d --date=short --no-merges --format='%ad %ae %s'
2020-01-05 junyer Fix a comment.
2019-12-29 junyer Make DFA use hints.

Roll third_party/spirv-cross/ f912c3289..961b9014a (6 commits)

KhronosGroup/SPIRV-Cross@f912c32...961b901

$ git log f912c3289..961b9014a --date=short --no-merges --format='%ad %ae %s'
2020-01-06 post Fix Clang warnings.
2020-01-06 post Roll custom versions of isalpha/isalnum.
2020-01-06 post Add test shader for OpCopyLogical with packing/unpacking.
2020-01-06 post Go through access chain path for OpCopyLogical.
2020-01-06 post Basic implementation of OpCopyLogical.
2019-12-21 dm86.jang Add debug prefix on Windows

Roll third_party/spirv-tools/ 96354f5..c8bf143 (12 commits)

KhronosGroup/SPIRV-Tools@96354f5...c8bf143

$ git log 96354f5..c8bf143 --date=short --no-merges --format='%ad %ae %s'
2020-01-06 dneto GetOperandConstants operand can be const (KhronosGroup#3126)
2019-12-27 dneto Avoid pessimizing std::move (KhronosGroup#3124)
2019-12-27 kburjack Fix typo in validation message (KhronosGroup#3122)
2019-12-27 greg Change default version for CreatInstBindlessCheckPass to 2 (KhronosGroup#3119)
2019-12-20 greg Fix convert-relax-to-half invalid code (KhronosGroup#3099) (KhronosGroup#3106)
2019-12-19 dneto Support OpenCL.DebugInfo.100 extended instruction set (KhronosGroup#3080)
2019-12-19 afdx spirv-fuzz: Always add new globals to entry point interfaces (KhronosGroup#3113)
2019-12-19 afdx spirv-fuzz: Transformation to add a new function to a module (KhronosGroup#3114)
2019-12-19 afdx spirv-fuzz: Avoid passing access chains as parameters (KhronosGroup#3112)
2019-12-18 dneto Add support for SPV_KHR_non_semantic_info (KhronosGroup#3110)
2019-12-16 afdx spirv-fuzz: Transformations to add types, constants and variables (KhronosGroup#3101)
2019-12-16 greg Make Instrumentation format version 2 the default (Step 1) (KhronosGroup#3096)

Created with:
  roll-dep third_party/effcee third_party/glslang third_party/googletest third_party/re2 third_party/spirv-cross third_party/spirv-headers third_party/spirv-tools
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants