[clang] f933c89 - [OpenMP] Add a check for alignment in the offload packager
Joseph Huber via cfe-commits
cfe-commits at lists.llvm.org
Wed May 11 09:25:55 PDT 2022
Author: Joseph Huber
Date: 2022-05-11T12:25:44-04:00
New Revision: f933c896d1abe9e0e7854e95023fe389c0e704eb
URL: https://github.com/llvm/llvm-project/commit/f933c896d1abe9e0e7854e95023fe389c0e704eb
DIFF: https://github.com/llvm/llvm-project/commit/f933c896d1abe9e0e7854e95023fe389c0e704eb.diff
LOG: [OpenMP] Add a check for alignment in the offload packager
Summary:
These sections need to be aligned correctly to be extracted later, add
a check to indicate if they aren't.
Added:
Modified:
clang/tools/clang-offload-packager/ClangOffloadPackager.cpp
Removed:
################################################################################
diff --git a/clang/tools/clang-offload-packager/ClangOffloadPackager.cpp b/clang/tools/clang-offload-packager/ClangOffloadPackager.cpp
index a9b84669ab671..f05697539675d 100644
--- a/clang/tools/clang-offload-packager/ClangOffloadPackager.cpp
+++ b/clang/tools/clang-offload-packager/ClangOffloadPackager.cpp
@@ -100,6 +100,10 @@ int main(int argc, const char **argv) {
}
}
std::unique_ptr<MemoryBuffer> Buffer = OffloadBinary::write(ImageBinary);
+ if (Buffer->getBufferSize() % OffloadBinary::getAlignment() != 0)
+ return reportError(
+ createStringError(inconvertibleErrorCode(),
+ "Offload binary has invalid size alignment"));
OS << Buffer->getBuffer();
}
More information about the cfe-commits
mailing list