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
Object
COFFModuleDefinition.h
Go to the documentation of this file.
1
//===--- COFFModuleDefinition.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
// Windows-specific.
10
// A parser for the module-definition file (.def file).
11
// Parsed results are directly written to Config global variable.
12
//
13
// The format of module-definition files are described in this document:
14
// https://msdn.microsoft.com/en-us/library/28d6s79h.aspx
15
//
16
//===----------------------------------------------------------------------===//
17
18
#ifndef LLVM_OBJECT_COFFMODULEDEFINITION_H
19
#define LLVM_OBJECT_COFFMODULEDEFINITION_H
20
21
#include "
llvm/BinaryFormat/COFF.h
"
22
#include "
llvm/Object/COFFImportFile.h
"
23
24
namespace
llvm
{
25
namespace
object {
26
27
struct
COFFModuleDefinition
{
28
std::vector<COFFShortExport>
Exports
;
29
std::string
OutputFile
;
30
std::string
ImportName
;
31
uint64_t
ImageBase
= 0;
32
uint64_t
StackReserve
= 0;
33
uint64_t
StackCommit
= 0;
34
uint64_t
HeapReserve
= 0;
35
uint64_t
HeapCommit
= 0;
36
uint32_t
MajorImageVersion
= 0;
37
uint32_t
MinorImageVersion
= 0;
38
uint32_t
MajorOSVersion
= 0;
39
uint32_t
MinorOSVersion
= 0;
40
};
41
42
Expected<COFFModuleDefinition>
43
parseCOFFModuleDefinition
(
MemoryBufferRef
MB,
COFF::MachineTypes
Machine
,
44
bool
MingwDef =
false
,
bool
AddUnderscores =
true
);
45
46
}
// End namespace object.
47
}
// End namespace llvm.
48
49
#endif
COFF.h
COFFImportFile.h
Machine
COFF::MachineTypes Machine
Definition:
COFFYAML.cpp:390
llvm::Expected
Tagged union holding either a T or a Error.
Definition:
Error.h:481
llvm::MemoryBufferRef
Definition:
MemoryBufferRef.h:22
uint32_t
uint64_t
llvm::COFF::MachineTypes
MachineTypes
Definition:
COFF.h:92
llvm::object::parseCOFFModuleDefinition
Expected< COFFModuleDefinition > parseCOFFModuleDefinition(MemoryBufferRef MB, COFF::MachineTypes Machine, bool MingwDef=false, bool AddUnderscores=true)
Definition:
COFFModuleDefinition.cpp:365
llvm
This is an optimization pass for GlobalISel generic memory operations.
Definition:
AddressRanges.h:18
llvm::object::COFFModuleDefinition
Definition:
COFFModuleDefinition.h:27
llvm::object::COFFModuleDefinition::MajorOSVersion
uint32_t MajorOSVersion
Definition:
COFFModuleDefinition.h:38
llvm::object::COFFModuleDefinition::MajorImageVersion
uint32_t MajorImageVersion
Definition:
COFFModuleDefinition.h:36
llvm::object::COFFModuleDefinition::StackCommit
uint64_t StackCommit
Definition:
COFFModuleDefinition.h:33
llvm::object::COFFModuleDefinition::MinorOSVersion
uint32_t MinorOSVersion
Definition:
COFFModuleDefinition.h:39
llvm::object::COFFModuleDefinition::ImportName
std::string ImportName
Definition:
COFFModuleDefinition.h:30
llvm::object::COFFModuleDefinition::StackReserve
uint64_t StackReserve
Definition:
COFFModuleDefinition.h:32
llvm::object::COFFModuleDefinition::OutputFile
std::string OutputFile
Definition:
COFFModuleDefinition.h:29
llvm::object::COFFModuleDefinition::HeapCommit
uint64_t HeapCommit
Definition:
COFFModuleDefinition.h:35
llvm::object::COFFModuleDefinition::HeapReserve
uint64_t HeapReserve
Definition:
COFFModuleDefinition.h:34
llvm::object::COFFModuleDefinition::MinorImageVersion
uint32_t MinorImageVersion
Definition:
COFFModuleDefinition.h:37
llvm::object::COFFModuleDefinition::ImageBase
uint64_t ImageBase
Definition:
COFFModuleDefinition.h:31
llvm::object::COFFModuleDefinition::Exports
std::vector< COFFShortExport > Exports
Definition:
COFFModuleDefinition.h:28
Generated on Sat Apr 5 2025 17:07:40 for LLVM by
1.9.6