diff options
| author | jsmall-nvidia <jsmall@nvidia.com> | 2022-04-27 17:53:21 -0400 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2022-04-27 17:53:21 -0400 |
| commit | 634f5414f332f904c7db968810b3d6f0ca253959 (patch) | |
| tree | c5747ca337e21ce74cc5997722b19a94604fe4aa /source/core | |
| parent | ec530b300524635dfe0fd86949b0a4fc5c19a984 (diff) | |
Make artifact an interface (#2195)
* #include an absolute path didn't work - because paths were taken to always be relative.
* Compile to a dxil library.
* Added CompileProduct.
* Support handling of ModuleLibrary.
* CacheBehavior -> Cache
* Use CompileProduct for -r references.
* CompileProduct -> Artifact.
* Determining an artifact type on binding.
* Determine binary linkability.
* Added Artifact::exists.
* Added ArtifactKeep.
* Small fixes.
* Small improvements to Artifact.
* Add zip extension.
* Fix some comments.
* Fix multiple adding of PublicDecoration.
Make public output export for DXIL/lib.
Add checking for simpleDecorations such that only added once.
* Use 'whole program' to identify library build.
* Move slang-artifact into compiler-core.
* Split out Keep free functions.
* Artifact::Keep -> ArtifactKeep.
* Handle libraries as artifacts.
* Add -target dxil so test infrastructure knows it needs DXC.
* Linking working in DXC.
* Improve handling around emit for 'export'.
* Add comment around Artifact name.
* Render test working with linking.
* Improvements around Artifact handling.
* Add ArtifactPayloadInfo.
* Small tidy up around artifact.
* Split out code to get info about Artifacts into artifact-info.cpp/.h
* IArtifact interface and IArtifactInstance interface.
* Fix small issues.
* Fix compilation warning issue.
* Fix missing SLANG_OVERRIDE.
* Small fixes to make compilation work on Visual Studio 2022.
* Small improvements to Artifact interface/naming.
* Added Desc with each element in IArchive to allow more flexibility in usage.
* Fix clang warning issue.
* Add ArtifactPayload::Diagnostics
* More discussion around IArtifact usage.
* Re-add slang-artifact.h which was removed during merge.
* Fix typo identified in review.
Diffstat (limited to 'source/core')
| -rw-r--r-- | source/core/slang-archive-file-system.cpp | 1 | ||||
| -rw-r--r-- | source/core/slang-com-object.h | 13 | ||||
| -rw-r--r-- | source/core/slang-deflate-compression-system.cpp | 2 | ||||
| -rw-r--r-- | source/core/slang-lz4-compression-system.cpp | 1 | ||||
| -rw-r--r-- | source/core/slang-smart-pointer.h | 2 |
5 files changed, 11 insertions, 8 deletions
diff --git a/source/core/slang-archive-file-system.cpp b/source/core/slang-archive-file-system.cpp index 8c4d0ef2d..0d998c849 100644 --- a/source/core/slang-archive-file-system.cpp +++ b/source/core/slang-archive-file-system.cpp @@ -96,6 +96,7 @@ void ImplicitDirectoryCollector::addRemainingPath(SlangPathType pathType, const } const Index countIndex = m_map.findOrAdd(pathRemainder, pathType); + SLANG_UNUSED(countIndex); // Make sure they are the same type SLANG_ASSERT(SlangPathType(m_map.getValueAt(countIndex)) == pathType); } diff --git a/source/core/slang-com-object.h b/source/core/slang-com-object.h index ad4578585..50dac5ba2 100644 --- a/source/core/slang-com-object.h +++ b/source/core/slang-com-object.h @@ -15,12 +15,13 @@ public: ComObject() : comRefCount(0) {} - ComObject(const ComObject&) : comRefCount(0) {} - ComObject& operator=(const ComObject&) - { - comRefCount = 0; - return *this; - }; + ComObject(const ComObject& rhs) : + RefObject(rhs), + comRefCount(0) + {} + + ComObject& operator=(const ComObject&) { return *this; } + virtual void comFree() {} uint32_t addRefImpl() diff --git a/source/core/slang-deflate-compression-system.cpp b/source/core/slang-deflate-compression-system.cpp index dab6654f7..6c75de9e4 100644 --- a/source/core/slang-deflate-compression-system.cpp +++ b/source/core/slang-deflate-compression-system.cpp @@ -50,7 +50,7 @@ SlangResult DeflateCompressionSystemImpl::compress(const CompressionStyle* style size_t compressedSizeInBytes; const int flags = 0; - void* compressed = tdefl_compress_mem_to_heap(src, srcSizeInBytes, &compressedSizeInBytes, 0); + void* compressed = tdefl_compress_mem_to_heap(src, srcSizeInBytes, &compressedSizeInBytes, flags); if (!compressed) { diff --git a/source/core/slang-lz4-compression-system.cpp b/source/core/slang-lz4-compression-system.cpp index fd360ce2e..4b8661534 100644 --- a/source/core/slang-lz4-compression-system.cpp +++ b/source/core/slang-lz4-compression-system.cpp @@ -56,6 +56,7 @@ SlangResult LZ4CompressionSystemImpl::compress(const CompressionStyle* style, co SlangResult LZ4CompressionSystemImpl::decompress(const void* compressed, size_t compressedSizeInBytes, size_t decompressedSizeInBytes, void* outDecompressed) { const int decompressedSize = LZ4_decompress_safe((const char*)compressed, (char*)outDecompressed, int(compressedSizeInBytes), int(decompressedSizeInBytes)); + SLANG_UNUSED(decompressedSize); SLANG_ASSERT(size_t(decompressedSize) == decompressedSizeInBytes); return SLANG_OK; } diff --git a/source/core/slang-smart-pointer.h b/source/core/slang-smart-pointer.h index a6aa35906..c473cca3c 100644 --- a/source/core/slang-smart-pointer.h +++ b/source/core/slang-smart-pointer.h @@ -24,7 +24,7 @@ namespace Slang : referenceCount(0) {} - RefObject& operator=(const RefObject& rhs) = default; + RefObject& operator=(const RefObject&) { return *this; } virtual ~RefObject() {} |
