From 7fcd84e49657950b2f72859f5aaa4df55887a68e Mon Sep 17 00:00:00 2001 From: Viktoria Maksimova Date: Mon, 21 Jun 2021 19:11:53 +0300 Subject: [PATCH 1/2] [sycl-post-link] Avoid copying from nullptr --- llvm/tools/sycl-post-link/SpecConstants.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/llvm/tools/sycl-post-link/SpecConstants.cpp b/llvm/tools/sycl-post-link/SpecConstants.cpp index b493050cb9b3..e213c403768a 100644 --- a/llvm/tools/sycl-post-link/SpecConstants.cpp +++ b/llvm/tools/sycl-post-link/SpecConstants.cpp @@ -320,7 +320,7 @@ void collectCompositeElementsDefaultValuesRecursive( } else { // Assume that we encountered some scalar element int NumBytes = Ty->getScalarSizeInBits() / CHAR_BIT + (Ty->getScalarSizeInBits() % 8 != 0); - char *CharPtr; + char *CharPtr = nullptr; if (auto IntConst = dyn_cast(C)) { auto Val = IntConst->getValue().getZExtValue(); @@ -336,6 +336,7 @@ void collectCompositeElementsDefaultValuesRecursive( CharPtr = reinterpret_cast(&v); } } + assert(CharPtr != nullptr && "Unexpected constant type"); std::copy_n(CharPtr, NumBytes, std::back_inserter(DefaultValues)); Offset += NumBytes; } From e611841028786fd14b61d834c3ba89a85be04515 Mon Sep 17 00:00:00 2001 From: Viktoria Maximova Date: Tue, 22 Jun 2021 11:46:48 +0300 Subject: [PATCH 2/2] Update llvm/tools/sycl-post-link/SpecConstants.cpp Co-authored-by: Mariya Podchishchaeva --- llvm/tools/sycl-post-link/SpecConstants.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/llvm/tools/sycl-post-link/SpecConstants.cpp b/llvm/tools/sycl-post-link/SpecConstants.cpp index e213c403768a..abfd2fceac0b 100644 --- a/llvm/tools/sycl-post-link/SpecConstants.cpp +++ b/llvm/tools/sycl-post-link/SpecConstants.cpp @@ -336,7 +336,7 @@ void collectCompositeElementsDefaultValuesRecursive( CharPtr = reinterpret_cast(&v); } } - assert(CharPtr != nullptr && "Unexpected constant type"); + assert(CharPtr && "Unexpected constant type"); std::copy_n(CharPtr, NumBytes, std::back_inserter(DefaultValues)); Offset += NumBytes; }