SymbolSize.h revision d111c7844ec26448764ced627e153f406d730c5f
1//===- SymbolSize.h ---------------------------------------------*- C++ -*-===//
2//
3// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4// See https://llvm.org/LICENSE.txt for license information.
5// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6//
7//
8//===----------------------------------------------------------------------===//
9
10#ifndef LLVM_OBJECT_SYMBOLSIZE_H
11#define LLVM_OBJECT_SYMBOLSIZE_H
12
13#include "llvm/Object/ObjectFile.h"
14
15namespace llvm {
16namespace object {
17
18struct SymEntry {
19  symbol_iterator I;
20  uint64_t Address;
21  unsigned Number;
22  unsigned SectionID;
23};
24
25int compareAddress(const SymEntry *A, const SymEntry *B);
26
27std::vector<std::pair<SymbolRef, uint64_t>>
28computeSymbolSizes(const ObjectFile &O);
29
30}
31} // namespace llvm
32
33#endif
34