From 3cf5935b434a8b9a07a6df5a6ab4c4dc373a1ac3 Mon Sep 17 00:00:00 2001 From: kaizhangNV <149626564+kaizhangNV@users.noreply.github.com> Date: Fri, 30 Aug 2024 15:57:11 -0500 Subject: 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 --- tools/slang-replay/main.cpp | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'tools/slang-replay/main.cpp') 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 #include #include @@ -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 jsonConsumer; SlangRecord::ReplayConsumer replayConsumer; SlangRecord::SlangDecoder decoder; if (options.convertToJson) { - decoder.addConsumer(&jsonConsumer); + jsonConsumer = new SlangRecord::JsonConsumer(jsonPath); + decoder.addConsumer(jsonConsumer.get()); } else { -- cgit v1.2.3