aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/InterfaceStub
diff options
context:
space:
mode:
authorAlex Brachet <abrachet@google.com>2022-05-14 17:33:27 +0000
committerAlex Brachet <abrachet@google.com>2022-05-14 17:33:27 +0000
commit1f61260847642008b5d7ca8a19f5e51ee599ddfd (patch)
treeb125e0b5c83f0dc975f9b628b125617e0ba54717 /llvm/lib/InterfaceStub
parentb6b0fd6a940b7006ced344736decccffaa583b8a (diff)
downloadllvm-1f61260847642008b5d7ca8a19f5e51ee599ddfd.zip
llvm-1f61260847642008b5d7ca8a19f5e51ee599ddfd.tar.gz
llvm-1f61260847642008b5d7ca8a19f5e51ee599ddfd.tar.bz2
Revert "[ifs] Add --strip-size flag"
This reverts commit b6b0fd6a940b7006ced344736decccffaa583b8a.
Diffstat (limited to 'llvm/lib/InterfaceStub')
-rw-r--r--llvm/lib/InterfaceStub/ELFObjHandler.cpp3
-rw-r--r--llvm/lib/InterfaceStub/IFSHandler.cpp11
2 files changed, 6 insertions, 8 deletions
diff --git a/llvm/lib/InterfaceStub/ELFObjHandler.cpp b/llvm/lib/InterfaceStub/ELFObjHandler.cpp
index 6f37cf6..7420e15 100644
--- a/llvm/lib/InterfaceStub/ELFObjHandler.cpp
+++ b/llvm/lib/InterfaceStub/ELFObjHandler.cpp
@@ -217,8 +217,7 @@ public:
// time as long as it is not SHN_UNDEF. Set shndx to 1, which
// points to ".dynsym".
uint16_t Shndx = Sym.Undefined ? SHN_UNDEF : 1;
- uint64_t Size = Sym.Size ? *Sym.Size : 0;
- DynSym.Content.add(DynStr.Content.getOffset(Sym.Name), Size, Bind,
+ DynSym.Content.add(DynStr.Content.getOffset(Sym.Name), Sym.Size, Bind,
convertIFSSymbolTypeToELF(Sym.Type), 0, Shndx);
}
DynSym.Size = DynSym.Content.getSize();
diff --git a/llvm/lib/InterfaceStub/IFSHandler.cpp b/llvm/lib/InterfaceStub/IFSHandler.cpp
index 82d65ad..92c8830 100644
--- a/llvm/lib/InterfaceStub/IFSHandler.cpp
+++ b/llvm/lib/InterfaceStub/IFSHandler.cpp
@@ -118,12 +118,11 @@ template <> struct MappingTraits<IFSSymbol> {
IO.mapRequired("Type", Symbol.Type);
// The need for symbol size depends on the symbol type.
if (Symbol.Type == IFSSymbolType::NoType) {
- // Either Size is None, so we are reading it in, or it is non 0 so we
- // should emit it.
- if (!Symbol.Size || *Symbol.Size)
- IO.mapOptional("Size", Symbol.Size, (uint64_t)0);
- } else if (Symbol.Type != IFSSymbolType::Func) {
- IO.mapOptional("Size", Symbol.Size);
+ IO.mapOptional("Size", Symbol.Size, (uint64_t)0);
+ } else if (Symbol.Type == IFSSymbolType::Func) {
+ Symbol.Size = 0;
+ } else {
+ IO.mapRequired("Size", Symbol.Size);
}
IO.mapOptional("Undefined", Symbol.Undefined, false);
IO.mapOptional("Weak", Symbol.Weak, false);