diff options
| author | kaizhangNV <149626564+kaizhangNV@users.noreply.github.com> | 2024-08-30 15:57:11 -0500 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2024-08-30 13:57:11 -0700 |
| commit | 3cf5935b434a8b9a07a6df5a6ab4c4dc373a1ac3 (patch) | |
| tree | 7480a6c583b97b8f90797d73b88731a8854bf3c8 /tools | |
| parent | de83628070614ec37349c9f334ed72a54a6889da (diff) | |
capture component type (#4967)
* Refactor the IComponentType recording
Refactor the `IComponentType` recording by creating a abstract class
`IComponentTypeRecorder` to record all the methods of `IComponentType`,
so that `ICompositeComponentType`, `IModule`, 'IEntryPoint',
'ITypeConformance' can share the same recording implementation.
Capture the out IComponentType from
linkWithOptions()
link()
specialize()
renameEntryPoint()
* fix bugs
* Finish the unimeplemented functions in json consumer
Fix the address print to use 64 bit hex.
Fix the reference count issue when allocating new recorder object.
* Disable few examples using reflection APIs
* Add gpu-printing example into slang-test
* Replace of using std::unique_ptr with RefPtr
Diffstat (limited to 'tools')
| -rw-r--r-- | tools/slang-replay/main.cpp | 6 | ||||
| -rw-r--r-- | tools/slang-unit-test/unit-test-record-replay.cpp | 7 |
2 files changed, 8 insertions, 5 deletions
diff --git a/tools/slang-replay/main.cpp b/tools/slang-replay/main.cpp index 85669aa7d..ac7654794 100644 --- a/tools/slang-replay/main.cpp +++ b/tools/slang-replay/main.cpp @@ -1,3 +1,4 @@ +#include <memory> #include <stdio.h> #include <replay/recordFile-processor.h> @@ -79,14 +80,15 @@ int main(int argc, char *argv[]) SlangRecord::RecordFileProcessor recordFileProcessor(options.recordFileName); Slang::String jsonPath = Slang::Path::replaceExt(options.recordFileName, "json"); - SlangRecord::JsonConsumer jsonConsumer(jsonPath); + Slang::RefPtr<SlangRecord::JsonConsumer> jsonConsumer; SlangRecord::ReplayConsumer replayConsumer; SlangRecord::SlangDecoder decoder; if (options.convertToJson) { - decoder.addConsumer(&jsonConsumer); + jsonConsumer = new SlangRecord::JsonConsumer(jsonPath); + decoder.addConsumer(jsonConsumer.get()); } else { diff --git a/tools/slang-unit-test/unit-test-record-replay.cpp b/tools/slang-unit-test/unit-test-record-replay.cpp index 81e74a407..d775e1421 100644 --- a/tools/slang-unit-test/unit-test-record-replay.cpp +++ b/tools/slang-unit-test/unit-test-record-replay.cpp @@ -436,11 +436,12 @@ static SlangResult runTests(UnitTestContext* context) const char* testBinaryNames[] = { "cpu-hello-world", "triangle", - "shader-object", "ray-tracing", "ray-tracing-pipeline", - "model-viewer", - "autodiff-texture" + "autodiff-texture", + "gpu-printing" + // "shader-object", // these examples requires reflection API to replay, we have to disable it for now. + // "model-viewer", }; SlangResult finalRes = SLANG_OK; |
