diff options
author | Ulrich Weigand <ulrich.weigand@de.ibm.com> | 2024-03-14 18:19:12 +0100 |
---|---|---|
committer | Ulrich Weigand <ulrich.weigand@de.ibm.com> | 2024-03-15 18:28:28 +0100 |
commit | 2210c85a664463cdc11e3b7990c9663c739e6060 (patch) | |
tree | 84058b51aee2d9b67aeaf117ec556b4050e6b241 /clang/lib/Frontend/CreateInvocationFromCommandLine.cpp | |
parent | bb9ca8afc0bd5a1abb8ef3d0f5c8e4928c2f7f60 (diff) | |
download | llvm-2210c85a664463cdc11e3b7990c9663c739e6060.zip llvm-2210c85a664463cdc11e3b7990c9663c739e6060.tar.gz llvm-2210c85a664463cdc11e3b7990c9663c739e6060.tar.bz2 |
Reapply [libomptarget] Support BE ELF files in plugins-nextgen (#85246)
Code in plugins-nextgen reading ELF files is currently hard-coded to
assume a 64-bit little-endian ELF format. Unfortunately, this assumption
is even embedded in the interface between GlobalHandler and Utils/ELF
routines, which use ELF64LE types.
To fix this, I've refactored the interface to use generic types, in
particular by using (a unique_ptr to) ObjectFile instead of
ELF64LEObjectFile, and ELFSymbolRef instead of ELF64LE::Sym.
This allows properly templating over multiple ELF format variants inside
Utils/ELF; specifically, this patch adds support for 64-bit big-endian
ELF files in addition to 64-bit little-endian files.
Diffstat (limited to 'clang/lib/Frontend/CreateInvocationFromCommandLine.cpp')
0 files changed, 0 insertions, 0 deletions