Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

spirv-fuzz: adds TransformationReplaceCopyObjectWithStoreLoad #3567

Merged

Conversation

antonikarp
Copy link
Collaborator

@antonikarp antonikarp commented Jul 21, 2020

Adds a transformation that replaces instruction OpCopyObject with
storing into a new variable and immediately loading this variable to
|result_id| of the original OpCopyObject instruction.

Fixes #3351

@antonikarp antonikarp force-pushed the t_replace_copyobject_with_store_load_3351 branch from 7175a06 to fe33ec6 Compare July 21, 2020 18:35
Copy link
Contributor

@afd afd left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is really excellent, Antoni! Quite a few comments but all minor. Good job.

Copy link
Contributor

@afd afd left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for making the changes! Some tiny final things requested.

Copy link
Contributor

@afd afd left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM - and well done for spotting that bug with SpvOpTypePointer!

@afd afd merged commit 586a12b into KhronosGroup:master Jul 23, 2020
dnovillo pushed a commit to dnovillo/SPIRV-Tools that referenced this pull request Aug 19, 2020
…sGroup#3567)

Adds a transformation that replaces instruction OpCopyObject with
storing into a new variable and immediately loading this variable to
|result_id| of the original OpCopyObject instruction.

Fixes KhronosGroup#3351.
dneto0 added a commit to dneto0/SPIRV-Tools that referenced this pull request Sep 14, 2024
KhronosGroup/glslang@9eef54b...3ee5f2f

$ git log 9eef54b..3ee5f2f --date=short --no-merges --format='%ad %ae %s'
2020-07-22 greg Update spirv-tools known-good to most recent stable
2020-07-19 vkushwaha Add changes for SPV_EXT_shader_atomic_float_add
2020-07-14 bclayton Limit visibility of symbols for internal libraries
2020-07-20 john SPV: Update to the latest SPIR-V headers.
2020-07-14 bclayton Deprecate InitializeDll functions
2020-07-14 bclayton Simplify PoolAlloc with use of thread_local.
2020-07-14 malcolm also search global variables assignment for live variables
2020-07-20 bclayton Drop support for VS2013
2020-07-20 bclayton Start glslang 11.0.0
2020-07-20 bclayton Finalize glslang 10.15.3847
2020-07-20 bclayton build_info: Fix parsing of versions with no flavor

Created with:
  roll-dep third_party/glslang

Roll third_party/spirv-headers/ 7f2ae11..979924c (1 commit)

KhronosGroup/SPIRV-Headers@7f2ae11...979924c

$ git log 7f2ae11..979924c --date=short --no-merges --format='%ad %ae %s'
2020-07-21 alanbaker Support SPV_KHR_terminate_invocation (KhronosGroup#163)

Created with:
  roll-dep third_party/spirv-headers

Roll third_party/spirv-tools/ c10d6ce..969f028 (18 commits)

KhronosGroup/SPIRV-Tools@c10d6ce...969f028

$ git log c10d6ce..969f028 --date=short --no-merges --format='%ad %ae %s'
2020-07-23 rharrison Change DEPS rolling script to point at external/ (KhronosGroup#3584)
2020-07-23 vasniktel spirv-fuzz: Create a helper in fuzzerutil to reuse function type (KhronosGroup#3572)
2020-07-23 vasniktel spirv-fuzz: Test usages of IdIsIrrelevant fact (KhronosGroup#3578)
2020-07-23 antonikarp spirv-fuzz: adds TransformationReplaceCopyMemoryWithLoadStore (KhronosGroup#3575)
2020-07-23 antonikarp spirv-fuzz: adds TransformationReplaceCopyObjectWithStoreLoad (KhronosGroup#3567)
2020-07-22 stevenperron Start SPIRV-Tools v2020.5
2020-07-22 stevenperron Finalize SPIRV-Tools v2020.4
2020-07-22 vasniktel spirv-fuzz: Fix usages of irrelevant constants (KhronosGroup#3566)
2020-07-22 stevenperron Update CHANGES
2020-07-22 alanbaker Support SPV_KHR_terminate_invocation (KhronosGroup#3568)
2020-07-22 stevenperron Sink pointer instructions in merge return (KhronosGroup#3569)
2020-07-21 greg Preserve OpenCL.DebugInfo.100 through elim-dead-code-aggressive (KhronosGroup#3542)
2020-07-21 vasniktel spirv-fuzz: TransformationReplaceParamsWithStruct (KhronosGroup#3455)
2020-07-21 38144211+vkushwaha-nv Add changes for SPV_EXT_shader_atomic_float (KhronosGroup#3562)
2020-07-21 vasniktel spirv-fuzz: Use irrelevant constants (KhronosGroup#3565)
2020-07-21 stefanomil spirv-fuzz: Extend TransformationRecordSynonymousConstants to allow composite constants (KhronosGroup#3537)
2020-07-21 vasniktel spirv-fuzz: Add is_irrelevant parameter (KhronosGroup#3563)
2020-07-20 vasniktel spirv-fuzz: Add IdIsIrrelevant fact (KhronosGroup#3561)

Created with:
  roll-dep 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.

spirv-fuzz: Replace OpCopyObject with the pair OpStore and OpLoad instructions
3 participants