LLVM
20.0.0git
Toggle main menu visibility
Main Page
Related Pages
Modules
Namespaces
Namespace List
Namespace Members
All
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Functions
_
a
b
c
d
e
f
g
h
i
j
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Variables
_
a
b
c
d
e
f
g
h
i
k
l
m
n
o
p
r
s
t
u
v
w
x
Typedefs
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
r
s
t
u
v
w
z
Enumerations
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
z
Enumerator
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Classes
Class List
Class Index
Class Hierarchy
Class Members
All
:
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
~
Functions
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
~
Variables
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Typedefs
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
r
s
t
u
v
w
x
y
Enumerations
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
Enumerator
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
z
Related Functions
:
a
b
c
d
e
f
g
h
i
j
l
m
n
o
p
r
s
t
u
v
w
y
Files
File List
File Members
All
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Functions
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
z
Variables
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Typedefs
_
a
b
c
d
e
f
g
h
i
k
l
m
o
p
r
s
t
u
v
w
z
Enumerations
_
a
b
c
d
e
f
g
h
i
j
l
m
o
p
q
r
s
t
u
w
x
Enumerator
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
z
Macros
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
z
Examples
include
llvm
DebugInfo
DWARF
DWARFRelocMap.h
Go to the documentation of this file.
1
//===- DWARFRelocMap.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
#ifndef LLVM_DEBUGINFO_DWARF_DWARFRELOCMAP_H
10
#define LLVM_DEBUGINFO_DWARF_DWARFRELOCMAP_H
11
12
#include "
llvm/ADT/DenseMap.h
"
13
#include "
llvm/Object/ObjectFile.h
"
14
#include "
llvm/Object/RelocationResolver.h
"
15
#include <cstdint>
16
17
namespace
llvm
{
18
19
/// RelocAddrEntry contains relocated value and section index.
20
/// Section index is -1LL if relocation points to absolute symbol.
21
struct
RelocAddrEntry
{
22
uint64_t
SectionIndex
;
23
object::RelocationRef
Reloc
;
24
uint64_t
SymbolValue
;
25
std::optional<object::RelocationRef>
Reloc2
;
26
uint64_t
SymbolValue2
;
27
object::RelocationResolver
Resolver
;
28
};
29
30
/// In place of applying the relocations to the data we've read from disk we use
31
/// a separate mapping table to the side and checking that at locations in the
32
/// dwarf where we expect relocated values. This adds a bit of complexity to the
33
/// dwarf parsing/extraction at the benefit of not allocating memory for the
34
/// entire size of the debug info sections.
35
using
RelocAddrMap
=
DenseMap<uint64_t, RelocAddrEntry>
;
36
37
}
// end namespace llvm
38
39
#endif
// LLVM_DEBUGINFO_DWARF_DWARFRELOCMAP_H
DenseMap.h
This file defines the DenseMap class.
ObjectFile.h
RelocationResolver.h
llvm::DenseMap
Definition:
DenseMap.h:727
llvm::object::RelocationRef
This is a value type class that represents a single relocation in the list of relocations in the obje...
Definition:
ObjectFile.h:52
uint64_t
llvm::object::RelocationResolver
uint64_t(*)(uint64_t Type, uint64_t Offset, uint64_t S, uint64_t LocData, int64_t Addend) RelocationResolver
Definition:
RelocationResolver.h:30
llvm
This is an optimization pass for GlobalISel generic memory operations.
Definition:
AddressRanges.h:18
llvm::RelocAddrEntry
RelocAddrEntry contains relocated value and section index.
Definition:
DWARFRelocMap.h:21
llvm::RelocAddrEntry::SectionIndex
uint64_t SectionIndex
Definition:
DWARFRelocMap.h:22
llvm::RelocAddrEntry::Reloc2
std::optional< object::RelocationRef > Reloc2
Definition:
DWARFRelocMap.h:25
llvm::RelocAddrEntry::SymbolValue
uint64_t SymbolValue
Definition:
DWARFRelocMap.h:24
llvm::RelocAddrEntry::Resolver
object::RelocationResolver Resolver
Definition:
DWARFRelocMap.h:27
llvm::RelocAddrEntry::Reloc
object::RelocationRef Reloc
Definition:
DWARFRelocMap.h:23
llvm::RelocAddrEntry::SymbolValue2
uint64_t SymbolValue2
Definition:
DWARFRelocMap.h:26
Generated on Mon Feb 17 2025 04:56:51 for LLVM by
1.9.6