Skip to content

spirv-fuzz: Add transformation to apply OpCopyMemory and OpCopyMemorySized #3382

@Vasniktel

Description

@Vasniktel

Overview

SPIRV-Fuzz has a transformation that inserts OpCopyObject instructions into the module. The result of this instruction can later be used to replace the usages of the original object. The SPIR-V language has two more instructions that perform a similar task: OpCopyMemory and OpCopyMemorySized. This transformation will randomly insert these instructions into the module.

Implementation details

A simple implementation here would be to just randomly introduce these instructions to the module. We should make sure that they are only used with pointer types. Additionally, we would need to make sure that every use of an original id is replaced with the copied one if we decide to do so. (We could probably implement a separate transformation for that).

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions