Expand description
Reading of the rustc metadata for rlibs and dylibs
StructsΒ§
- Default
Metadata πLoader - The default metadata loader. This is used by cg_llvm and cg_clif.
EnumsΒ§
- Metadata
Position π
StaticsΒ§
FunctionsΒ§
- add_
gnu_ πproperty_ note - create_
compressed_ metadata_ file - create_
compressed_ metadata_ file_ for_ xcoff - Xcoff - On AIX, custom sections are merged into predefined sections,
so custom .rustc section is not preserved during linking.
For this reason, we store metadata in predefined .info section, and
define a symbol to reference the metadata. To preserve metadata during
linking on AIX, we have toCreate an empty .text section, a empty .data section.Define an empty symbol named
symbol_name
inside .data section.Define an symbol namedAIX_METADATA_SYMBOL_NAME
referencing data inside .info section. From XCOFFβs view, (2) creates a csect entry in the symbol table, the symbol created by (3) is a info symbol for the preceding csect. Thus two symbols are preserved during linking and we can use the second symbol to reference the metadata. - create_
metadata_ file_ for_ wasm - Creates a simple WebAssembly object file, which is itself a wasm module,
that contains a custom section of the name
section_name
with contentsdata
. - create_
object_ πfile - create_
wrapper_ πfile - For rlibs we βpackβ rustc metadata into a dummy object file.
- elf_
e_ πflags - elf_
os_ πabi - get_
metadata_ πxcoff - load_
metadata_ πwith - macho_
is_ πarm64e - Is Appleβs CPU subtype
arm64e
s - macho_
object_ πbuild_ version_ for_ target - Mach-O files contain information about:
- search_
for_ πsection