aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/Object/ObjectFile.cpp
diff options
context:
space:
mode:
authorYaxun (Sam) Liu <yaxun.liu@amd.com>2023-10-05 10:19:13 -0400
committerYaxun (Sam) Liu <yaxun.liu@amd.com>2023-10-05 11:20:46 -0400
commit7e2823438e920d25364ff92b62ad90020c31bb59 (patch)
treea6bc9c265533a6be0afb08c2eb6c3893147afc15 /llvm/lib/Object/ObjectFile.cpp
parent4732b0cbc0ab123479084184305fb2873e221780 (diff)
downloadllvm-7e2823438e920d25364ff92b62ad90020c31bb59.zip
llvm-7e2823438e920d25364ff92b62ad90020c31bb59.tar.gz
llvm-7e2823438e920d25364ff92b62ad90020c31bb59.tar.bz2
Reland "[HIP] Support compressing device binary"
Original PR: https://github.com/llvm/llvm-project/pull/67162 The commit was reverted due to UB detected by santizer: https://lab.llvm.org/buildbot/#/builders/238/builds/5955 clang/lib/Driver/OffloadBundler.cpp:1012:25: runtime error: load of misaligned address 0xaaaae2d90e7c for type 'const uint64_t' (aka 'const unsigned long'), which requires 8 byte alignment It was fixed by using memcpy instead of dereferencing int* casted from unaligned char*.
Diffstat (limited to 'llvm/lib/Object/ObjectFile.cpp')
-rw-r--r--llvm/lib/Object/ObjectFile.cpp2
1 files changed, 2 insertions, 0 deletions
diff --git a/llvm/lib/Object/ObjectFile.cpp b/llvm/lib/Object/ObjectFile.cpp
index 2a67246..428166f 100644
--- a/llvm/lib/Object/ObjectFile.cpp
+++ b/llvm/lib/Object/ObjectFile.cpp
@@ -158,6 +158,8 @@ ObjectFile::createObjectFile(MemoryBufferRef Object, file_magic Type,
case file_magic::cuda_fatbinary:
case file_magic::offload_binary:
case file_magic::dxcontainer_object:
+ case file_magic::offload_bundle:
+ case file_magic::offload_bundle_compressed:
return errorCodeToError(object_error::invalid_file_type);
case file_magic::tapi_file:
return errorCodeToError(object_error::invalid_file_type);