dawn-cmake/fuzzers
Ben Clayton eb496d0a4d transform: API cleanup
Transforms are meant to be reusable. Those that hold state cannot be used concurrently.
State leakage between runs is dangerous.
To fix this:
* Add transform::Data - A new base class for extra information emitted by transforms.
* Add transform::DataMap - A container of Data, keyed by type.
* Add a transform::DataMap field to Transform::Output.
* Have FirstIndexOffset emit a FirstIndexOffset::Data.
* Deprecate the getters on the transform.

Mutability of the transform config is also dangerous as setters can be called while a transform is actively running on another thread.
To fix:
* Expose a VertexPulling::Config structure and add a constructor that accepts this.
* Deprecate the setters on VertexPulling.

Also deprecate Transform::Output::diagnostics.
Put all the transform diagnostics into the returned Program. Reduces error handling of the client.

Change-Id: Ibd228dc2fbf004ede4720e2d6019c024bc5934d1
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/42264
Reviewed-by: dan sinclair <dsinclair@chromium.org>
Reviewed-by: Ryan Harrison <rharrison@chromium.org>
Commit-Queue: Ben Clayton <bclayton@google.com>
2021-02-24 15:55:24 +00:00
..
CMakeLists.txt Fix typos in CMakeLists 2021-01-18 21:39:14 +00:00
dictionary.txt Remove references 1D Array texture dimension 2021-02-24 05:05:21 +00:00
tint_all_transforms_fuzzer.cc Re-land fuzzing work with fix 2021-01-12 16:23:48 +00:00
tint_ast_clone_fuzzer.cc Add semantic::Node 2021-01-29 15:17:30 +00:00
tint_bound_array_accessors_fuzzer.cc Re-land fuzzing work with fix 2021-01-12 16:23:48 +00:00
tint_common_fuzzer.cc transform: API cleanup 2021-02-24 15:55:24 +00:00
tint_common_fuzzer.h Add fuzzer for Inspector 2021-01-13 15:50:11 +00:00
tint_emit_vertex_point_size_fuzzer.cc Re-land fuzzing work with fix 2021-01-12 16:23:48 +00:00
tint_first_index_offset_fuzzer.cc Re-land fuzzing work with fix 2021-01-12 16:23:48 +00:00
tint_inspector_fuzzer.cc Add in Inspector Fuzzer implementation file 2021-01-13 20:15:32 +00:00
tint_spv_reader_fuzzer.cc Re-land fuzzing work with fix 2021-01-12 16:23:48 +00:00
tint_spv_reader_hlsl_writer_fuzzer.cc Re-land fuzzing work with fix 2021-01-12 16:23:48 +00:00
tint_spv_reader_msl_writer_fuzzer.cc Re-land fuzzing work with fix 2021-01-12 16:23:48 +00:00
tint_spv_reader_spv_writer_fuzzer.cc Re-land fuzzing work with fix 2021-01-12 16:23:48 +00:00
tint_spv_reader_wgsl_writer_fuzzer.cc Re-land fuzzing work with fix 2021-01-12 16:23:48 +00:00
tint_wgsl_reader_fuzzer.cc Re-land fuzzing work with fix 2021-01-12 16:23:48 +00:00
tint_wgsl_reader_hlsl_writer_fuzzer.cc Re-land fuzzing work with fix 2021-01-12 16:23:48 +00:00
tint_wgsl_reader_msl_writer_fuzzer.cc Re-land fuzzing work with fix 2021-01-12 16:23:48 +00:00
tint_wgsl_reader_spv_writer_fuzzer.cc Re-land fuzzing work with fix 2021-01-12 16:23:48 +00:00
tint_wgsl_reader_wgsl_writer_fuzzer.cc Re-land fuzzing work with fix 2021-01-12 16:23:48 +00:00