aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/CodeGen/TargetLoweringObjectFileImpl.cpp
diff options
context:
space:
mode:
authorJoseph Huber <jhuber6@vols.utk.edu>2022-07-03 16:46:31 -0400
committerJoseph Huber <jhuber6@vols.utk.edu>2022-07-07 12:20:30 -0400
commit1d2ce4da8414de8775c134eb1c7e2c9436b443df (patch)
tree2d15a16236c6a41f7a4e141f0d781045f278c909 /llvm/lib/CodeGen/TargetLoweringObjectFileImpl.cpp
parented801ad5e5fef76c4303d04fd8de21662b428bee (diff)
downloadllvm-1d2ce4da8414de8775c134eb1c7e2c9436b443df.zip
llvm-1d2ce4da8414de8775c134eb1c7e2c9436b443df.tar.gz
llvm-1d2ce4da8414de8775c134eb1c7e2c9436b443df.tar.bz2
[Object] Add ELF section type for offloading objects
Currently we use the `.llvm.offloading` section to store device-side objects inside the host, creating a fat binary. The contents of these sections is currently determined by the name of the section while it should ideally be determined by its type. This patch adds the new `SHT_LLVM_OFFLOADING` section type to the ELF section types. Which should make it easier to identify this specific data format. Reviewed By: jhenderson Differential Revision: https://reviews.llvm.org/D129052
Diffstat (limited to 'llvm/lib/CodeGen/TargetLoweringObjectFileImpl.cpp')
-rw-r--r--llvm/lib/CodeGen/TargetLoweringObjectFileImpl.cpp3
1 files changed, 3 insertions, 0 deletions
diff --git a/llvm/lib/CodeGen/TargetLoweringObjectFileImpl.cpp b/llvm/lib/CodeGen/TargetLoweringObjectFileImpl.cpp
index f3d68bd..dbac474 100644
--- a/llvm/lib/CodeGen/TargetLoweringObjectFileImpl.cpp
+++ b/llvm/lib/CodeGen/TargetLoweringObjectFileImpl.cpp
@@ -501,6 +501,9 @@ static unsigned getELFSectionType(StringRef Name, SectionKind K) {
if (hasPrefix(Name, ".preinit_array"))
return ELF::SHT_PREINIT_ARRAY;
+ if (hasPrefix(Name, ".llvm.offloading"))
+ return ELF::SHT_LLVM_OFFLOADING;
+
if (K.isBSS() || K.isThreadBSS())
return ELF::SHT_NOBITS;