mirror of
https://github.com/edg-l/edlang.git
synced 2024-11-15 04:28:25 +00:00
38 lines
597 KiB
HTML
38 lines
597 KiB
HTML
|
<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="ELF definitions."><title>object::elf - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/FiraSans-Regular-018c141bf0843ffd.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/FiraSans-Medium-8f9a781e4970d388.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceCodePro-Regular-562dcc5011b6de7d.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceCodePro-Semibold-d899c5a5c4aeb14a.ttf.woff2"><link rel="stylesheet" href="../../static.files/normalize-76eba96aa4d2e634.css"><link rel="stylesheet" href="../../static.files/rustdoc-ac92e1bbe349e143.css"><meta name="rustdoc-vars" data-root-path="../../" data-static-root-path="../../static.files/" data-current-crate="object" data-themes="" data-resource-suffix="" data-rustdoc-version="1.76.0 (07dca489a 2024-02-04)" data-channel="1.76.0" data-search-js="search-2b6ce74ff89ae146.js" data-settings-js="settings-4313503d2e1961c2.js" ><script src="../../static.files/storage-f2adc0d6ca4d09fb.js"></script><script defer src="../sidebar-items.js"></script><script defer src="../../static.files/main-305769736d49e732.js"></script><noscript><link rel="stylesheet" href="../../static.files/noscript-feafe1bb7466e4bd.css"></noscript><link rel="alternate icon" type="image/png" href="../../static.files/favicon-16x16-8b506e7a72182f1c.png"><link rel="alternate icon" type="image/png" href="../../static.files/favicon-32x32-422f7d1d52889060.png"><link rel="icon" type="image/svg+xml" href="../../static.files/favicon-2c020d218678b618.svg"></head><body class="rustdoc mod"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="mobile-topbar"><button class="sidebar-menu-toggle">☰</button></nav><nav class="sidebar"><div class="sidebar-crate"><h2><a href="../../object/index.html">object</a><span class="version">0.32.2</span></h2></div><h2 class="location"><a href="#">Module elf</a></h2><div class="sidebar-elems"><section><ul class="block"><li><a href="#structs">Structs</a></li><li><a href="#constants">Constants</a></li><li><a href="#functions">Functions</a></li></ul></section><h2><a href="../index.html">In crate object</a></h2></div></nav><div class="sidebar-resizer"></div>
|
|||
|
<main><div class="width-limiter"><nav class="sub"><form class="search-form"><span></span><div id="sidebar-button" tabindex="-1"><a href="../../object/all.html" title="show sidebar"></a></div><input class="search-input" name="search" aria-label="Run search in the documentation" autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"><div id="help-button" tabindex="-1"><a href="../../help.html" title="help">?</a></div><div id="settings-menu" tabindex="-1"><a href="../../settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="../../static.files/wheel-7b819b6101059cd0.svg"></a></div></form></nav><section id="main-content" class="content"><div class="main-heading"><h1>Module <a href="../index.html">object</a>::<wbr><a class="mod" href="#">elf</a><button id="copy-path" title="Copy item path to clipboard"><img src="../../static.files/clipboard-7571035ce49a181d.svg" width="19" height="18" alt="Copy item path"></button></h1><span class="out-of-band"><a class="src" href="../../src/object/elf.rs.html#1-6287">source</a> · <button id="toggle-all-docs" title="collapse all docs">[<span>−</span>]</button></span></div><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>ELF definitions.</p>
|
|||
|
<p>These definitions are independent of read/write support, although we do implement
|
|||
|
some traits useful for those.</p>
|
|||
|
<p>This module is the equivalent of /usr/include/elf.h, and is based heavily on it.</p>
|
|||
|
</div></details><h2 id="structs" class="section-header"><a href="#structs">Structs</a></h2><ul class="item-table"><li><div class="item-name"><a class="struct" href="struct.CompressionHeader32.html" title="struct object::elf::CompressionHeader32">CompressionHeader32</a></div><div class="desc docblock-short">Section compression header.</div></li><li><div class="item-name"><a class="struct" href="struct.CompressionHeader64.html" title="struct object::elf::CompressionHeader64">CompressionHeader64</a></div><div class="desc docblock-short">Section compression header.</div></li><li><div class="item-name"><a class="struct" href="struct.Dyn32.html" title="struct object::elf::Dyn32">Dyn32</a></div><div class="desc docblock-short">Dynamic section entry.</div></li><li><div class="item-name"><a class="struct" href="struct.Dyn64.html" title="struct object::elf::Dyn64">Dyn64</a></div><div class="desc docblock-short">Dynamic section entry.</div></li><li><div class="item-name"><a class="struct" href="struct.FileHeader32.html" title="struct object::elf::FileHeader32">FileHeader32</a></div><div class="desc docblock-short">The header at the start of every 32-bit ELF file.</div></li><li><div class="item-name"><a class="struct" href="struct.FileHeader64.html" title="struct object::elf::FileHeader64">FileHeader64</a></div><div class="desc docblock-short">The header at the start of every 64-bit ELF file.</div></li><li><div class="item-name"><a class="struct" href="struct.GnuHashHeader.html" title="struct object::elf::GnuHashHeader">GnuHashHeader</a></div><div class="desc docblock-short">Header of <code>SHT_GNU_HASH</code> section.</div></li><li><div class="item-name"><a class="struct" href="struct.HashHeader.html" title="struct object::elf::HashHeader">HashHeader</a></div><div class="desc docblock-short">Header of <code>SHT_HASH</code> section.</div></li><li><div class="item-name"><a class="struct" href="struct.Ident.html" title="struct object::elf::Ident">Ident</a></div><div class="desc docblock-short">Magic number and other information.</div></li><li><div class="item-name"><a class="struct" href="struct.NoteHeader32.html" title="struct object::elf::NoteHeader32">NoteHeader32</a></div><div class="desc docblock-short">Note section entry header.</div></li><li><div class="item-name"><a class="struct" href="struct.NoteHeader64.html" title="struct object::elf::NoteHeader64">NoteHeader64</a></div><div class="desc docblock-short">Note section entry header.</div></li><li><div class="item-name"><a class="struct" href="struct.ProgramHeader32.html" title="struct object::elf::ProgramHeader32">ProgramHeader32</a></div><div class="desc docblock-short">Program segment header.</div></li><li><div class="item-name"><a class="struct" href="struct.ProgramHeader64.html" title="struct object::elf::ProgramHeader64">ProgramHeader64</a></div><div class="desc docblock-short">Program segment header.</div></li><li><div class="item-name"><a class="struct" href="struct.Rel32.html" title="struct object::elf::Rel32">Rel32</a></div><div class="desc docblock-short">Relocation table entry without explicit addend.</div></li><li><div class="item-name"><a class="struct" href="struct.Rel64.html" title="struct object::elf::Rel64">Rel64</a></div><div class="desc docblock-short">Relocation table entry without explicit addend.</div></li><li><div class="item-name"><a class="struct" href="struct.Rela32.html" title="struct object::elf::Rela32">Rela32</a></div><div class="desc docblock-short">Relocation table entry with explicit addend.</div></li><li><div class="item-name"><a class="struct" href="struct.Rela64.html" title="struct object::elf::Rela64">Rela64</a></div><div class="desc docblock-short">Relocation table entry with explicit addend.</div></li><li><div class="item-name"><a class="struct" href="struct.SectionHeader32.html" title="struct object::elf::SectionHeader32">SectionHeader32</a></div><div class="desc docblock-short">Section header.</div></li><li><div class="item-name"><a class="struct" href="struct.SectionHeader64.html" title="struct object::elf::SectionHeader64">SectionHea
|
|||
|
for the relocations so that linker relaxation is possible.</div></li><li><div class="item-name"><a class="constant" href="constant.EF_CSKY_ABIMASK.html" title="constant object::elf::EF_CSKY_ABIMASK">EF_CSKY_ABIMASK</a></div></li><li><div class="item-name"><a class="constant" href="constant.EF_CSKY_ABIV1.html" title="constant object::elf::EF_CSKY_ABIV1">EF_CSKY_ABIV1</a></div></li><li><div class="item-name"><a class="constant" href="constant.EF_CSKY_ABIV2.html" title="constant object::elf::EF_CSKY_ABIV2">EF_CSKY_ABIV2</a></div></li><li><div class="item-name"><a class="constant" href="constant.EF_CSKY_OTHER.html" title="constant object::elf::EF_CSKY_OTHER">EF_CSKY_OTHER</a></div></li><li><div class="item-name"><a class="constant" href="constant.EF_CSKY_PROCESSOR.html" title="constant object::elf::EF_CSKY_PROCESSOR">EF_CSKY_PROCESSOR</a></div></li><li><div class="item-name"><a class="constant" href="constant.EF_IA_64_ABI64.html" title="constant object::elf::EF_IA_64_ABI64">EF_IA_64_ABI64</a></div><div class="desc docblock-short">64-bit ABI</div></li><li><div class="item-name"><a class="constant" href="constant.EF_IA_64_ARCH.html" title="constant object::elf::EF_IA_64_ARCH">EF_IA_64_ARCH</a></div><div class="desc docblock-short">arch. version mask</div></li><li><div class="item-name"><a class="constant" href="constant.EF_IA_64_MASKOS.html" title="constant object::elf::EF_IA_64_MASKOS">EF_IA_64_MASKOS</a></div><div class="desc docblock-short">os-specific flags</div></li><li><div class="item-name"><a class="constant" href="constant.EF_LARCH_ABI_DOUBLE_FLOAT.html" title="constant object::elf::EF_LARCH_ABI_DOUBLE_FLOAT">EF_LARCH_ABI_DOUBLE_FLOAT</a></div><div class="desc docblock-short">Uses GPRs, 64-bit FPRs and the stack for parameter passing</div></li><li><div class="item-name"><a class="constant" href="constant.EF_LARCH_ABI_MODIFIER_MASK.html" title="constant object::elf::EF_LARCH_ABI_MODIFIER_MASK">EF_LARCH_ABI_MODIFIER_MASK</a></div><div class="desc docblock-short">Additional properties of the base ABI type, including the FP calling
|
|||
|
convention.</div></li><li><div class="item-name"><a class="constant" href="constant.EF_LARCH_ABI_SINGLE_FLOAT.html" title="constant object::elf::EF_LARCH_ABI_SINGLE_FLOAT">EF_LARCH_ABI_SINGLE_FLOAT</a></div><div class="desc docblock-short">Uses GPRs, 32-bit FPRs and the stack for parameter passing</div></li><li><div class="item-name"><a class="constant" href="constant.EF_LARCH_ABI_SOFT_FLOAT.html" title="constant object::elf::EF_LARCH_ABI_SOFT_FLOAT">EF_LARCH_ABI_SOFT_FLOAT</a></div><div class="desc docblock-short">Uses GPRs and the stack for parameter passing</div></li><li><div class="item-name"><a class="constant" href="constant.EF_LARCH_OBJABI_V1.html" title="constant object::elf::EF_LARCH_OBJABI_V1">EF_LARCH_OBJABI_V1</a></div><div class="desc docblock-short">Uses relocation types directly writing to immediate slots</div></li><li><div class="item-name"><a class="constant" href="constant.EF_MIPS_64BIT_WHIRL.html" title="constant object::elf::EF_MIPS_64BIT_WHIRL">EF_MIPS_64BIT_WHIRL</a></div></li><li><div class="item-name"><a class="constant" href="constant.EF_MIPS_ABI.html" title="constant object::elf::EF_MIPS_ABI">EF_MIPS_ABI</a></div><div class="desc docblock-short">Mask for selecting EF_MIPS_ABI_ variant</div></li><li><div class="item-name"><a class="constant" href="constant.EF_MIPS_ABI2.html" title="constant object::elf::EF_MIPS_ABI2">EF_MIPS_ABI2</a></div></li><li><div class="item-name"><a class="constant" href="constant.EF_MIPS_ABI_EABI32.html" title="constant object::elf::EF_MIPS_ABI_EABI32">EF_MIPS_ABI_EABI32</a></div><div class="desc docblock-short">EABI in 32-bit mode</div></li><li><div class="item-name"><a class="constant" href="constant.EF_MIPS_ABI_EABI64.html" title="constant object::elf::EF_MIPS_ABI_EABI64">EF_MIPS_ABI_EABI64</a></div><div class="desc docblock-short">EABI in 64-bit mode</div></li><li><div class="item-name"><a class="constant" href="constant.EF_MIPS_ABI_O32.html" title="constant object::elf::EF_MIPS_ABI_O32">EF_MIPS_ABI_O32</a></div><div class="desc docblock-short">The first MIPS 32 bit ABI</div></li><li><div class="item-name"><a class="constant" href="constant.EF_MIPS_ABI_O64.html" title="constant object::elf::EF_MIPS_ABI_O64">EF_MIPS_ABI_O64</a></div><div class="desc docblock-short">O32 ABI extended for 64-bit architectures</div></li><li><div class="item-name"><a class="constant" href="constant.EF_MIPS_ABI_ON32.html" title="constant object::elf::EF_MIPS_ABI_ON32">EF_MIPS_ABI_ON32</a></div></li><li><div class="item-name"><a class="constant" href="constant.EF_MIPS_ARCH.html" title="constant object::elf::EF_MIPS_ARCH">EF_MIPS_ARCH</a></div><div class="desc docblock-short">MIPS architecture level.</div></li><li><div class="item-name"><a class="constant" href="constant.EF_MIPS_ARCH_1.html" title="constant object::elf::EF_MIPS_ARCH_1">EF_MIPS_ARCH_1</a></div><div class="desc docblock-short">-mips1 code.</div></li><li><div class="item-name"><a class="constant" href="constant.EF_MIPS_ARCH_2.html" title="constant object::elf::EF_MIPS_ARCH_2">EF_MIPS_ARCH_2</a></div><div class="desc docblock-short">-mips2 code.</div></li><li><div class="item-name"><a class="constant" href="constant.EF_MIPS_ARCH_3.html" title="constant object::elf::EF_MIPS_ARCH_3">EF_MIPS_ARCH_3</a></div><div class="desc docblock-short">-mips3 code.</div></li><li><div class="item-name"><a class="constant" href="constant.EF_MIPS_ARCH_4.html" title="constant object::elf::EF_MIPS_ARCH_4">EF_MIPS_ARCH_4</a></div><div class="desc docblock-short">-mips4 code.</div></li><li><div class="item-name"><a class="constant" href="constant.EF_MIPS_ARCH_5.html" title="constant object::elf::EF_MIPS_ARCH_5">EF_MIPS_ARCH_5</a></div><div class="desc docblock-short">-mips5 code.</div></li><li><div class="item-name"><a class="constant" href="constant.EF_MIPS_ARCH_32.html" title="constant object::elf::EF_MIPS_ARCH_32">EF_MIPS_ARCH_32</a></div><div class="desc docblock-short">MIPS32 code.</div></li><li><div class="item-name"><a class="constant" href="constant.EF_MIPS_ARCH_32R2.html" title="constant object::elf::EF_MIPS_ARCH_32R2">EF_MIPS_ARCH_32R2</a></d
|
|||
|
cannot be used with copy relocation.</div></li><li><div class="item-name"><a class="constant" href="constant.GNU_PROPERTY_AARCH64_FEATURE_1_AND.html" title="constant object::elf::GNU_PROPERTY_AARCH64_FEATURE_1_AND">GNU_PROPERTY_AARCH64_FEATURE_1_AND</a></div><div class="desc docblock-short">AArch64 specific GNU properties.</div></li><li><div class="item-name"><a class="constant" href="constant.GNU_PROPERTY_AARCH64_FEATURE_1_BTI.html" title="constant object::elf::GNU_PROPERTY_AARCH64_FEATURE_1_BTI">GNU_PROPERTY_AARCH64_FEATURE_1_BTI</a></div></li><li><div class="item-name"><a class="constant" href="constant.GNU_PROPERTY_AARCH64_FEATURE_1_PAC.html" title="constant object::elf::GNU_PROPERTY_AARCH64_FEATURE_1_PAC">GNU_PROPERTY_AARCH64_FEATURE_1_PAC</a></div></li><li><div class="item-name"><a class="constant" href="constant.GNU_PROPERTY_AARCH64_FEATURE_PAUTH.html" title="constant object::elf::GNU_PROPERTY_AARCH64_FEATURE_PAUTH">GNU_PROPERTY_AARCH64_FEATURE_PAUTH</a></div></li><li><div class="item-name"><a class="constant" href="constant.GNU_PROPERTY_HIPROC.html" title="constant object::elf::GNU_PROPERTY_HIPROC">GNU_PROPERTY_HIPROC</a></div><div class="desc docblock-short">Processor-specific semantics, hi</div></li><li><div class="item-name"><a class="constant" href="constant.GNU_PROPERTY_HIUSER.html" title="constant object::elf::GNU_PROPERTY_HIUSER">GNU_PROPERTY_HIUSER</a></div><div class="desc docblock-short">Application-specific semantics, hi</div></li><li><div class="item-name"><a class="constant" href="constant.GNU_PROPERTY_LOPROC.html" title="constant object::elf::GNU_PROPERTY_LOPROC">GNU_PROPERTY_LOPROC</a></div><div class="desc docblock-short">Processor-specific semantics, lo</div></li><li><div class="item-name"><a class="constant" href="constant.GNU_PROPERTY_LOUSER.html" title="constant object::elf::GNU_PROPERTY_LOUSER">GNU_PROPERTY_LOUSER</a></div><div class="desc docblock-short">Application-specific semantics, lo</div></li><li><div class="item-name"><a class="constant" href="constant.GNU_PROPERTY_NO_COPY_ON_PROTECTED.html" title="constant object::elf::GNU_PROPERTY_NO_COPY_ON_PROTECTED">GNU_PROPERTY_NO_COPY_ON_PROTECTED</a></div><div class="desc docblock-short">No copy relocation on protected data symbol.</div></li><li><div class="item-name"><a class="constant" href="constant.GNU_PROPERTY_STACK_SIZE.html" title="constant object::elf::GNU_PROPERTY_STACK_SIZE">GNU_PROPERTY_STACK_SIZE</a></div><div class="desc docblock-short">Stack size.</div></li><li><div class="item-name"><a class="constant" href="constant.GNU_PROPERTY_UINT32_AND_HI.html" title="constant object::elf::GNU_PROPERTY_UINT32_AND_HI">GNU_PROPERTY_UINT32_AND_HI</a></div></li><li><div class="item-name"><a class="constant" href="constant.GNU_PROPERTY_UINT32_AND_LO.html" title="constant object::elf::GNU_PROPERTY_UINT32_AND_LO">GNU_PROPERTY_UINT32_AND_LO</a></div></li><li><div class="item-name"><a class="constant" href="constant.GNU_PROPERTY_UINT32_OR_HI.html" title="constant object::elf::GNU_PROPERTY_UINT32_OR_HI">GNU_PROPERTY_UINT32_OR_HI</a></div></li><li><div class="item-name"><a class="constant" href="constant.GNU_PROPERTY_UINT32_OR_LO.html" title="constant object::elf::GNU_PROPERTY_UINT32_OR_LO">GNU_PROPERTY_UINT32_OR_LO</a></div></li><li><div class="item-name"><a class="constant" href="constant.GNU_PROPERTY_X86_FEATURE_1_AND.html" title="constant object::elf::GNU_PROPERTY_X86_FEATURE_1_AND">GNU_PROPERTY_X86_FEATURE_1_AND</a></div><div class="desc docblock-short">X86 processor-specific features used in program.</div></li><li><div class="item-name"><a class="constant" href="constant.GNU_PROPERTY_X86_FEATURE_1_IBT.html" title="constant object::elf::GNU_PROPERTY_X86_FEATURE_1_IBT">GNU_PROPERTY_X86_FEATURE_1_IBT</a></div><div class="desc docblock-short">This indicates that all executable sections are compatible with IBT.</div></li><li><div class="item-name"><a class="constant" href="constant.GNU_PROPERTY_X86_FEATURE_1_SHSTK.html" title="constant object::elf::GNU_PROPERTY_X86_FEATURE_1_SHSTK">GNU_PROPERTY_X86_FEATURE_1_SHSTK</a></div><div class="desc docblock-
|
|||
|
MMX, OSFXSR (fxsave), SCE (syscall), SSE and SSE2.</div></li><li><div class="item-name"><a class="constant" href="constant.GNU_PROPERTY_X86_ISA_1_NEEDED.html" title="constant object::elf::GNU_PROPERTY_X86_ISA_1_NEEDED">GNU_PROPERTY_X86_ISA_1_NEEDED</a></div><div class="desc docblock-short">The x86 instruction sets indicated by the corresponding bits are
|
|||
|
used in program and they must be supported by the hardware.</div></li><li><div class="item-name"><a class="constant" href="constant.GNU_PROPERTY_X86_ISA_1_USED.html" title="constant object::elf::GNU_PROPERTY_X86_ISA_1_USED">GNU_PROPERTY_X86_ISA_1_USED</a></div><div class="desc docblock-short">The x86 instruction sets indicated by the corresponding bits are
|
|||
|
used in program. Their support in the hardware is optional.</div></li><li><div class="item-name"><a class="constant" href="constant.GNU_PROPERTY_X86_ISA_1_V2.html" title="constant object::elf::GNU_PROPERTY_X86_ISA_1_V2">GNU_PROPERTY_X86_ISA_1_V2</a></div><div class="desc docblock-short">GNU_PROPERTY_X86_ISA_1_V2: GNU_PROPERTY_X86_ISA_1_BASELINE,
|
|||
|
CMPXCHG16B (cmpxchg16b), LAHF-SAHF (lahf), POPCNT (popcnt), SSE3,
|
|||
|
SSSE3, SSE4.1 and SSE4.2.</div></li><li><div class="item-name"><a class="constant" href="constant.GNU_PROPERTY_X86_ISA_1_V3.html" title="constant object::elf::GNU_PROPERTY_X86_ISA_1_V3">GNU_PROPERTY_X86_ISA_1_V3</a></div><div class="desc docblock-short">GNU_PROPERTY_X86_ISA_1_V3: GNU_PROPERTY_X86_ISA_1_V2, AVX, AVX2, BMI1,
|
|||
|
BMI2, F16C, FMA, LZCNT, MOVBE, XSAVE.</div></li><li><div class="item-name"><a class="constant" href="constant.GNU_PROPERTY_X86_ISA_1_V4.html" title="constant object::elf::GNU_PROPERTY_X86_ISA_1_V4">GNU_PROPERTY_X86_ISA_1_V4</a></div><div class="desc docblock-short">GNU_PROPERTY_X86_ISA_1_V4: GNU_PROPERTY_X86_ISA_1_V3, AVX512F,
|
|||
|
AVX512BW, AVX512CD, AVX512DQ and AVX512VL.</div></li><li><div class="item-name"><a class="constant" href="constant.GNU_PROPERTY_X86_UINT32_AND_HI.html" title="constant object::elf::GNU_PROPERTY_X86_UINT32_AND_HI">GNU_PROPERTY_X86_UINT32_AND_HI</a></div></li><li><div class="item-name"><a class="constant" href="constant.GNU_PROPERTY_X86_UINT32_AND_LO.html" title="constant object::elf::GNU_PROPERTY_X86_UINT32_AND_LO">GNU_PROPERTY_X86_UINT32_AND_LO</a></div></li><li><div class="item-name"><a class="constant" href="constant.GNU_PROPERTY_X86_UINT32_OR_AND_HI.html" title="constant object::elf::GNU_PROPERTY_X86_UINT32_OR_AND_HI">GNU_PROPERTY_X86_UINT32_OR_AND_HI</a></div></li><li><div class="item-name"><a class="constant" href="constant.GNU_PROPERTY_X86_UINT32_OR_AND_LO.html" title="constant object::elf::GNU_PROPERTY_X86_UINT32_OR_AND_LO">GNU_PROPERTY_X86_UINT32_OR_AND_LO</a></div></li><li><div class="item-name"><a class="constant" href="constant.GNU_PROPERTY_X86_UINT32_OR_HI.html" title="constant object::elf::GNU_PROPERTY_X86_UINT32_OR_HI">GNU_PROPERTY_X86_UINT32_OR_HI</a></div></li><li><div class="item-name"><a class="constant" href="constant.GNU_PROPERTY_X86_UINT32_OR_LO.html" title="constant object::elf::GNU_PROPERTY_X86_UINT32_OR_LO">GNU_PROPERTY_X86_UINT32_OR_LO</a></div></li><li><div class="item-name"><a class="constant" href="constant.GRP_COMDAT.html" title="constant object::elf::GRP_COMDAT">GRP_COMDAT</a></div><div class="desc docblock-short">Mark group as COMDAT.</div></li><li><div class="item-name"><a class="constant" href="constant.LITUSE_ALPHA_ADDR.html" title="constant object::elf::LITUSE_ALPHA_ADDR">LITUSE_ALPHA_ADDR</a></div></li><li><div class="item-name"><a class="constant" href="constant.LITUSE_ALPHA_BASE.html" title="constant object::elf::LITUSE_ALPHA_BASE">LITUSE_ALPHA_BASE</a></div></li><li><div class="item-name"><a class="constant" href="constant.LITUSE_ALPHA_BYTOFF.html" title="constant object::elf::LITUSE_ALPHA_BYTOFF">LITUSE_ALPHA_BYTOFF</a></div></li><li><div class="item-name"><a class="constant" href="constant.LITUSE_ALPHA_JSR.html" title="constant object::elf::LITUSE_ALPHA_JSR">LITUSE_ALPHA_JSR</a></div></li><li><div class="item-name"><a class="constant" href="constant.LITUSE_ALPHA_TLS_GD.html" title="constant object::elf::LITUSE_ALPHA_TLS_GD">LITUSE_ALPHA_TLS_GD</a></div></li><li><div class="item-name"><a class="constant" href="constant.LITUSE_ALPHA_TLS_LDM.html" title="constant object::elf::LITUSE_ALPHA_TLS_LDM">LITUSE_ALPHA_TLS_LDM</a></div></li><li><div class="item-name"><a class="constant" href="constant.LL_DELAY_LOAD.html" title="constant object::elf::LL_DELAY_LOAD">LL_DELAY_LOAD</a></div></li><li><div class="item-name"><a class="constant" href="constant.LL_DELTA.html" title="constant object::elf::LL_DELTA">LL_DELTA</a></div></li><li><div class="item-name"><a class="constant" href="constant.LL_EXACT_MATCH.html" title="constant object::elf::LL_EXACT_MATCH">LL_EXACT_MATCH</a></div><div class="desc docblock-short">Require exact match</div></li><li><div class="item-name"><a class="constant" href="constant.LL_EXPORTS.html" title="constant object::elf::LL_EXPORTS">LL_EXPORTS</a></div></li><li><div class="item-name"><a class="constant" href="constant.LL_IGNORE_INT_VER.html" title="constant object::elf::LL_IGNORE_INT_VER">LL_IGNORE_INT_VER</a></div><div class="desc docblock-short">Ignore interface version</div></li><li><div class="item-name"><a class="constant" href="constant.LL_NONE.html" title="constant object::elf::LL_NONE">LL_NONE</a></div></li><li><div class="item-name"><a class="constant" href="constant.LL_REQUIRE_MINOR.html" title="constant object::elf::LL_REQUIRE_MINOR">LL_REQUIRE_MINOR</a></div></li><li><div class="item-name"><a class="constant" href="constant.NT_386_IOPERM.html" title="constant object::elf::NT_386_IOPERM">NT_386_IOPERM</a></div><div class="desc docblock-short">x86 io permission bitmap (1=deny).</div></li><li><div class="item-name"><a class="constant" href="constant.NT_386_TLS.html" title="constant object::elf::NT_386_TLS">NT_386_TLS</a></div><div class="desc docblock-short">
|
|||
|
<code>A.next_power_of_two()</code>-byte boundary</div></li><li><div class="item-name"><a class="constant" href="constant.R_LARCH_B16.html" title="constant object::elf::R_LARCH_B16">R_LARCH_B16</a></div><div class="desc docblock-short">18-bit PC-relative jump offset with two trailing zeros</div></li><li><div class="item-name"><a class="constant" href="constant.R_LARCH_B21.html" title="constant object::elf::R_LARCH_B21">R_LARCH_B21</a></div><div class="desc docblock-short">23-bit PC-relative jump offset with two trailing zeros</div></li><li><div class="item-name"><a class="constant" href="constant.R_LARCH_B26.html" title="constant object::elf::R_LARCH_B26">R_LARCH_B26</a></div><div class="desc docblock-short">28-bit PC-relative jump offset with two trailing zeros</div></li><li><div class="item-name"><a class="constant" href="constant.R_LARCH_CALL36.html" title="constant object::elf::R_LARCH_CALL36">R_LARCH_CALL36</a></div><div class="desc docblock-short">18..=37 bits of <code>S + A - PC</code> into the <code>pcaddu18i</code> instruction at <code>PC</code>,
|
|||
|
and 2..=17 bits of <code>S + A - PC</code> into the <code>jirl</code> instruction at <code>PC + 4</code></div></li><li><div class="item-name"><a class="constant" href="constant.R_LARCH_CFA.html" title="constant object::elf::R_LARCH_CFA">R_LARCH_CFA</a></div><div class="desc docblock-short">Reserved</div></li><li><div class="item-name"><a class="constant" href="constant.R_LARCH_COPY.html" title="constant object::elf::R_LARCH_COPY">R_LARCH_COPY</a></div><div class="desc docblock-short">Runtime memory copy in executable</div></li><li><div class="item-name"><a class="constant" href="constant.R_LARCH_DELETE.html" title="constant object::elf::R_LARCH_DELETE">R_LARCH_DELETE</a></div><div class="desc docblock-short">Reserved</div></li><li><div class="item-name"><a class="constant" href="constant.R_LARCH_GNU_VTENTRY.html" title="constant object::elf::R_LARCH_GNU_VTENTRY">R_LARCH_GNU_VTENTRY</a></div><div class="desc docblock-short">GNU C++ vtable member usage</div></li><li><div class="item-name"><a class="constant" href="constant.R_LARCH_GNU_VTINHERIT.html" title="constant object::elf::R_LARCH_GNU_VTINHERIT">R_LARCH_GNU_VTINHERIT</a></div><div class="desc docblock-short">GNU C++ vtable hierarchy</div></li><li><div class="item-name"><a class="constant" href="constant.R_LARCH_GOT64_HI12.html" title="constant object::elf::R_LARCH_GOT64_HI12">R_LARCH_GOT64_HI12</a></div><div class="desc docblock-short">52..=63 bits of 64-bit GOT entry absolute address</div></li><li><div class="item-name"><a class="constant" href="constant.R_LARCH_GOT64_LO20.html" title="constant object::elf::R_LARCH_GOT64_LO20">R_LARCH_GOT64_LO20</a></div><div class="desc docblock-short">32..=51 bits of 64-bit GOT entry absolute address</div></li><li><div class="item-name"><a class="constant" href="constant.R_LARCH_GOT64_PC_HI12.html" title="constant object::elf::R_LARCH_GOT64_PC_HI12">R_LARCH_GOT64_PC_HI12</a></div><div class="desc docblock-short">52..=63 bits of the 64-bit offset from the
|
|||
|
<a href="constant.R_LARCH_GOT_PC_HI20.html" title="constant object::elf::R_LARCH_GOT_PC_HI20">PC relative anchor</a> to the GOT entry.</div></li><li><div class="item-name"><a class="constant" href="constant.R_LARCH_GOT64_PC_LO20.html" title="constant object::elf::R_LARCH_GOT64_PC_LO20">R_LARCH_GOT64_PC_LO20</a></div><div class="desc docblock-short">32..=51 bits of the 64-bit offset from the
|
|||
|
<a href="constant.R_LARCH_GOT_PC_HI20.html" title="constant object::elf::R_LARCH_GOT_PC_HI20">PC relative anchor</a> to the GOT entry.</div></li><li><div class="item-name"><a class="constant" href="constant.R_LARCH_GOT_HI20.html" title="constant object::elf::R_LARCH_GOT_HI20">R_LARCH_GOT_HI20</a></div><div class="desc docblock-short">12..=31 bits of 32/64-bit GOT entry absolute address</div></li><li><div class="item-name"><a class="constant" href="constant.R_LARCH_GOT_LO12.html" title="constant object::elf::R_LARCH_GOT_LO12">R_LARCH_GOT_LO12</a></div><div class="desc docblock-short">0..=11 bits of 32/64-bit GOT entry absolute address</div></li><li><div class="item-name"><a class="constant" href="constant.R_LARCH_GOT_PC_HI20.html" title="constant object::elf::R_LARCH_GOT_PC_HI20">R_LARCH_GOT_PC_HI20</a></div><div class="desc docblock-short">The signed 32-bit offset <code>offs</code> from <code>PC & 0xfffff000</code> to
|
|||
|
<code>(GP + G + 0x800) & 0xfffff000</code>, with 12 trailing zeros removed.</div></li><li><div class="item-name"><a class="constant" href="constant.R_LARCH_GOT_PC_LO12.html" title="constant object::elf::R_LARCH_GOT_PC_LO12">R_LARCH_GOT_PC_LO12</a></div><div class="desc docblock-short">0..=11 bits of the 32/64-bit offset from the
|
|||
|
<a href="constant.R_LARCH_GOT_PC_HI20.html" title="constant object::elf::R_LARCH_GOT_PC_HI20">PC relative anchor</a> to the GOT entry.</div></li><li><div class="item-name"><a class="constant" href="constant.R_LARCH_IRELATIVE.html" title="constant object::elf::R_LARCH_IRELATIVE">R_LARCH_IRELATIVE</a></div><div class="desc docblock-short">Runtime local indirect function resolving</div></li><li><div class="item-name"><a class="constant" href="constant.R_LARCH_JUMP_SLOT.html" title="constant object::elf::R_LARCH_JUMP_SLOT">R_LARCH_JUMP_SLOT</a></div><div class="desc docblock-short">Runtime PLT supporting</div></li><li><div class="item-name"><a class="constant" href="constant.R_LARCH_MARK_LA.html" title="constant object::elf::R_LARCH_MARK_LA">R_LARCH_MARK_LA</a></div><div class="desc docblock-short">Mark la.abs: load absolute address for static link.</div></li><li><div class="item-name"><a class="constant" href="constant.R_LARCH_MARK_PCREL.html" title="constant object::elf::R_LARCH_MARK_PCREL">R_LARCH_MARK_PCREL</a></div><div class="desc docblock-short">Mark external label branch: access PC relative address for static link.</div></li><li><div class="item-name"><a class="constant" href="constant.R_LARCH_NONE.html" title="constant object::elf::R_LARCH_NONE">R_LARCH_NONE</a></div><div class="desc docblock-short">No reloc</div></li><li><div class="item-name"><a class="constant" href="constant.R_LARCH_PCALA64_HI12.html" title="constant object::elf::R_LARCH_PCALA64_HI12">R_LARCH_PCALA64_HI12</a></div><div class="desc docblock-short">52..=63 bits of the 64-bit offset from the
|
|||
|
<a href="constant.R_LARCH_PCALA_HI20.html" title="constant object::elf::R_LARCH_PCALA_HI20">PC relative anchor</a>.</div></li><li><div class="item-name"><a class="constant" href="constant.R_LARCH_PCALA64_LO20.html" title="constant object::elf::R_LARCH_PCALA64_LO20">R_LARCH_PCALA64_LO20</a></div><div class="desc docblock-short">32..=51 bits of the 64-bit offset from the
|
|||
|
<a href="constant.R_LARCH_PCALA_HI20.html" title="constant object::elf::R_LARCH_PCALA_HI20">PC relative anchor</a>.</div></li><li><div class="item-name"><a class="constant" href="constant.R_LARCH_PCALA_HI20.html" title="constant object::elf::R_LARCH_PCALA_HI20">R_LARCH_PCALA_HI20</a></div><div class="desc docblock-short">The signed 32-bit offset <code>offs</code> from <code>PC & 0xfffff000</code> to
|
|||
|
<code>(S + A + 0x800) & 0xfffff000</code>, with 12 trailing zeros removed.</div></li><li><div class="item-name"><a class="constant" href="constant.R_LARCH_PCALA_LO12.html" title="constant object::elf::R_LARCH_PCALA_LO12">R_LARCH_PCALA_LO12</a></div><div class="desc docblock-short">Same as R_LARCH_ABS_LO12. 0..=11 bits of the 32/64-bit offset from the
|
|||
|
<a href="constant.R_LARCH_PCALA_HI20.html" title="constant object::elf::R_LARCH_PCALA_HI20">PC relative anchor</a>.</div></li><li><div class="item-name"><a class="constant" href="constant.R_LARCH_PCREL20_S2.html" title="constant object::elf::R_LARCH_PCREL20_S2">R_LARCH_PCREL20_S2</a></div><div class="desc docblock-short">22-bit PC-relative offset with two trailing zeros</div></li><li><div class="item-name"><a class="constant" href="constant.R_LARCH_RELATIVE.html" title="constant object::elf::R_LARCH_RELATIVE">R_LARCH_RELATIVE</a></div><div class="desc docblock-short">Runtime fixup for load-address</div></li><li><div class="item-name"><a class="constant" href="constant.R_LARCH_RELAX.html" title="constant object::elf::R_LARCH_RELAX">R_LARCH_RELAX</a></div><div class="desc docblock-short">Paired with a normal relocation at the same address to indicate the
|
|||
|
instruction can be relaxed</div></li><li><div class="item-name"><a class="constant" href="constant.R_LARCH_SOP_ADD.html" title="constant object::elf::R_LARCH_SOP_ADD">R_LARCH_SOP_ADD</a></div><div class="desc docblock-short">Stack top addition (binary)</div></li><li><div class="item-name"><a class="constant" href="constant.R_LARCH_SOP_AND.html" title="constant object::elf::R_LARCH_SOP_AND">R_LARCH_SOP_AND</a></div><div class="desc docblock-short">Stack top bitwise and (binary)</div></li><li><div class="item-name"><a class="constant" href="constant.R_LARCH_SOP_ASSERT.html" title="constant object::elf::R_LARCH_SOP_ASSERT">R_LARCH_SOP_ASSERT</a></div><div class="desc docblock-short">Assert stack top</div></li><li><div class="item-name"><a class="constant" href="constant.R_LARCH_SOP_IF_ELSE.html" title="constant object::elf::R_LARCH_SOP_IF_ELSE">R_LARCH_SOP_IF_ELSE</a></div><div class="desc docblock-short">Stack top selection (tertiary)</div></li><li><div class="item-name"><a class="constant" href="constant.R_LARCH_SOP_NOT.html" title="constant object::elf::R_LARCH_SOP_NOT">R_LARCH_SOP_NOT</a></div><div class="desc docblock-short">Stack top logical not (unary)</div></li><li><div class="item-name"><a class="constant" href="constant.R_LARCH_SOP_POP_32_S_0_5_10_16_S2.html" title="constant object::elf::R_LARCH_SOP_POP_32_S_0_5_10_16_S2">R_LARCH_SOP_POP_32_S_0_5_10_16_S2</a></div><div class="desc docblock-short">Pop stack top to fill 23-bit signed immediate operand with two trailing
|
|||
|
zeros implied</div></li><li><div class="item-name"><a class="constant" href="constant.R_LARCH_SOP_POP_32_S_0_10_10_16_S2.html" title="constant object::elf::R_LARCH_SOP_POP_32_S_0_10_10_16_S2">R_LARCH_SOP_POP_32_S_0_10_10_16_S2</a></div><div class="desc docblock-short">Pop stack top to fill 28-bit signed immediate operand with two trailing
|
|||
|
zeros implied</div></li><li><div class="item-name"><a class="constant" href="constant.R_LARCH_SOP_POP_32_S_5_20.html" title="constant object::elf::R_LARCH_SOP_POP_32_S_5_20">R_LARCH_SOP_POP_32_S_5_20</a></div><div class="desc docblock-short">Pop stack top to fill 20-bit signed immediate operand</div></li><li><div class="item-name"><a class="constant" href="constant.R_LARCH_SOP_POP_32_S_10_5.html" title="constant object::elf::R_LARCH_SOP_POP_32_S_10_5">R_LARCH_SOP_POP_32_S_10_5</a></div><div class="desc docblock-short">Pop stack top to fill 5-bit signed immediate operand</div></li><li><div class="item-name"><a class="constant" href="constant.R_LARCH_SOP_POP_32_S_10_12.html" title="constant object::elf::R_LARCH_SOP_POP_32_S_10_12">R_LARCH_SOP_POP_32_S_10_12</a></div><div class="desc docblock-short">Pop stack top to fill 12-bit signed immediate operand</div></li><li><div class="item-name"><a class="constant" href="constant.R_LARCH_SOP_POP_32_S_10_16.html" title="constant object::elf::R_LARCH_SOP_POP_32_S_10_16">R_LARCH_SOP_POP_32_S_10_16</a></div><div class="desc docblock-short">Pop stack top to fill 16-bit signed immediate operand</div></li><li><div class="item-name"><a class="constant" href="constant.R_LARCH_SOP_POP_32_S_10_16_S2.html" title="constant object::elf::R_LARCH_SOP_POP_32_S_10_16_S2">R_LARCH_SOP_POP_32_S_10_16_S2</a></div><div class="desc docblock-short">Pop stack top to fill 18-bit signed immediate operand with two trailing
|
|||
|
zeros implied</div></li><li><div class="item-name"><a class="constant" href="constant.R_LARCH_SOP_POP_32_U.html" title="constant object::elf::R_LARCH_SOP_POP_32_U">R_LARCH_SOP_POP_32_U</a></div><div class="desc docblock-short">Pop stack top to fill an instruction</div></li><li><div class="item-name"><a class="constant" href="constant.R_LARCH_SOP_POP_32_U_10_12.html" title="constant object::elf::R_LARCH_SOP_POP_32_U_10_12">R_LARCH_SOP_POP_32_U_10_12</a></div><div class="desc docblock-short">Pop stack top to fill 12-bit unsigned immediate operand</div></li><li><div class="item-name"><a class="constant" href="constant.R_LARCH_SOP_PUSH_ABSOLUTE.html" title="constant object::elf::R_LARCH_SOP_PUSH_ABSOLUTE">R_LARCH_SOP_PUSH_ABSOLUTE</a></div><div class="desc docblock-short">Push constant or absolute address</div></li><li><div class="item-name"><a class="constant" href="constant.R_LARCH_SOP_PUSH_DUP.html" title="constant object::elf::R_LARCH_SOP_PUSH_DUP">R_LARCH_SOP_PUSH_DUP</a></div><div class="desc docblock-short">Duplicate stack top</div></li><li><div class="item-name"><a class="constant" href="constant.R_LARCH_SOP_PUSH_GPREL.html" title="constant object::elf::R_LARCH_SOP_PUSH_GPREL">R_LARCH_SOP_PUSH_GPREL</a></div><div class="desc docblock-short">Push for access GOT entry</div></li><li><div class="item-name"><a class="constant" href="constant.R_LARCH_SOP_PUSH_PCREL.html" title="constant object::elf::R_LARCH_SOP_PUSH_PCREL">R_LARCH_SOP_PUSH_PCREL</a></div><div class="desc docblock-short">Push PC-relative offset</div></li><li><div class="item-name"><a class="constant" href="constant.R_LARCH_SOP_PUSH_PLT_PCREL.html" title="constant object::elf::R_LARCH_SOP_PUSH_PLT_PCREL">R_LARCH_SOP_PUSH_PLT_PCREL</a></div><div class="desc docblock-short">Push for external function calling</div></li><li><div class="item-name"><a class="constant" href="constant.R_LARCH_SOP_PUSH_TLS_GD.html" title="constant object::elf::R_LARCH_SOP_PUSH_TLS_GD">R_LARCH_SOP_PUSH_TLS_GD</a></div><div class="desc docblock-short">Push for TLS-GD</div></li><li><div class="item-name"><a class="constant" href="constant.R_LARCH_SOP_PUSH_TLS_GOT.html" title="constant object::elf::R_LARCH_SOP_PUSH_TLS_GOT">R_LARCH_SOP_PUSH_TLS_GOT</a></div><div class="desc docblock-short">Push for TLS-IE</div></li><li><div class="item-name"><a class="constant" href="constant.R_LARCH_SOP_PUSH_TLS_TPREL.html" title="constant object::elf::R_LARCH_SOP_PUSH_TLS_TPREL">R_LARCH_SOP_PUSH_TLS_TPREL</a></div><div class="desc docblock-short">Push for TLS-LE</div></li><li><div class="item-name"><a class="constant" href="constant.R_LARCH_SOP_SL.html" title="constant object::elf::R_LARCH_SOP_SL">R_LARCH_SOP_SL</a></div><div class="desc docblock-short">Stack top left shift (binary)</div></li><li><div class="item-name"><a class="constant" href="constant.R_LARCH_SOP_SR.html" title="constant object::elf::R_LARCH_SOP_SR">R_LARCH_SOP_SR</a></div><div class="desc docblock-short">Stack top right shift (binary)</div></li><li><div class="item-name"><a class="constant" href="constant.R_LARCH_SOP_SUB.html" title="constant object::elf::R_LARCH_SOP_SUB">R_LARCH_SOP_SUB</a></div><div class="desc docblock-short">Stack top subtraction (binary)</div></li><li><div class="item-name"><a class="constant" href="constant.R_LARCH_SUB6.html" title="constant object::elf::R_LARCH_SUB6">R_LARCH_SUB6</a></div><div class="desc docblock-short">6-bit in-place subtraction</div></li><li><div class="item-name"><a class="constant" href="constant.R_LARCH_SUB8.html" title="constant object::elf::R_LARCH_SUB8">R_LARCH_SUB8</a></div><div class="desc docblock-short">8-bit in-place subtraction</div></li><li><div class="item-name"><a class="constant" href="constant.R_LARCH_SUB16.html" title="constant object::elf::R_LARCH_SUB16">R_LARCH_SUB16</a></div><div class="desc docblock-short">16-bit in-place subtraction</div></li><li><div class="item-name"><a class="constant" href="constant.R_LARCH_SUB24.html" title="constant object::elf::R_LARCH_SUB24">R_LARCH_SUB24</a></div><div class="desc docblock-short">24-bit in-place subtraction</div></li><li><di
|
|||
|
anchor for the TLE GD GOT entry.</div></li><li><div class="item-name"><a class="constant" href="constant.R_LARCH_TLS_IE64_HI12.html" title="constant object::elf::R_LARCH_TLS_IE64_HI12">R_LARCH_TLS_IE64_HI12</a></div><div class="desc docblock-short">51..=63 bits of TLS IE GOT entry 64-bit absolute address</div></li><li><div class="item-name"><a class="constant" href="constant.R_LARCH_TLS_IE64_LO20.html" title="constant object::elf::R_LARCH_TLS_IE64_LO20">R_LARCH_TLS_IE64_LO20</a></div><div class="desc docblock-short">32..=51 bits of TLS IE GOT entry 64-bit absolute address</div></li><li><div class="item-name"><a class="constant" href="constant.R_LARCH_TLS_IE64_PC_HI12.html" title="constant object::elf::R_LARCH_TLS_IE64_PC_HI12">R_LARCH_TLS_IE64_PC_HI12</a></div><div class="desc docblock-short">52..=63 bits of the 64-bit offset from the
|
|||
|
<a href="constant.R_LARCH_TLS_IE_PC_HI20.html" title="constant object::elf::R_LARCH_TLS_IE_PC_HI20">PC-relative anchor</a> to the TLS IE GOT entry.</div></li><li><div class="item-name"><a class="constant" href="constant.R_LARCH_TLS_IE64_PC_LO20.html" title="constant object::elf::R_LARCH_TLS_IE64_PC_LO20">R_LARCH_TLS_IE64_PC_LO20</a></div><div class="desc docblock-short">32..=51 bits of the 64-bit offset from the
|
|||
|
<a href="constant.R_LARCH_TLS_IE_PC_HI20.html" title="constant object::elf::R_LARCH_TLS_IE_PC_HI20">PC-relative anchor</a> to the TLS IE GOT entry.</div></li><li><div class="item-name"><a class="constant" href="constant.R_LARCH_TLS_IE_HI20.html" title="constant object::elf::R_LARCH_TLS_IE_HI20">R_LARCH_TLS_IE_HI20</a></div><div class="desc docblock-short">12..=31 bits of TLS IE GOT entry 32/64-bit absolute address</div></li><li><div class="item-name"><a class="constant" href="constant.R_LARCH_TLS_IE_LO12.html" title="constant object::elf::R_LARCH_TLS_IE_LO12">R_LARCH_TLS_IE_LO12</a></div><div class="desc docblock-short">0..=11 bits of TLS IE GOT entry 32/64-bit absolute address</div></li><li><div class="item-name"><a class="constant" href="constant.R_LARCH_TLS_IE_PC_HI20.html" title="constant object::elf::R_LARCH_TLS_IE_PC_HI20">R_LARCH_TLS_IE_PC_HI20</a></div><div class="desc docblock-short">The signed 32-bit offset <code>offs</code> from <code>PC & 0xfffff000</code> to
|
|||
|
<code>(GP + IE + 0x800) & 0xfffff000</code>, with 12 trailing zeros removed.</div></li><li><div class="item-name"><a class="constant" href="constant.R_LARCH_TLS_IE_PC_LO12.html" title="constant object::elf::R_LARCH_TLS_IE_PC_LO12">R_LARCH_TLS_IE_PC_LO12</a></div><div class="desc docblock-short">0..=12 bits of the 32/64-bit offset from the
|
|||
|
<a href="constant.R_LARCH_TLS_IE_PC_HI20.html" title="constant object::elf::R_LARCH_TLS_IE_PC_HI20">PC-relative anchor</a> to the TLS IE GOT entry.</div></li><li><div class="item-name"><a class="constant" href="constant.R_LARCH_TLS_LD_HI20.html" title="constant object::elf::R_LARCH_TLS_LD_HI20">R_LARCH_TLS_LD_HI20</a></div><div class="desc docblock-short">12..=31 bits of TLS LD GOT entry 32/64-bit absolute address</div></li><li><div class="item-name"><a class="constant" href="constant.R_LARCH_TLS_LD_PC_HI20.html" title="constant object::elf::R_LARCH_TLS_LD_PC_HI20">R_LARCH_TLS_LD_PC_HI20</a></div><div class="desc docblock-short">12..=31 bits of the offset from <code>PC</code> to <code>GP + GD + 0x800</code>, where
|
|||
|
<code>GP + GD</code> is a TLS LD GOT entry</div></li><li><div class="item-name"><a class="constant" href="constant.R_LARCH_TLS_LE64_HI12.html" title="constant object::elf::R_LARCH_TLS_LE64_HI12">R_LARCH_TLS_LE64_HI12</a></div><div class="desc docblock-short">52..=63 bits of TLS LE 64-bit offset from thread pointer</div></li><li><div class="item-name"><a class="constant" href="constant.R_LARCH_TLS_LE64_LO20.html" title="constant object::elf::R_LARCH_TLS_LE64_LO20">R_LARCH_TLS_LE64_LO20</a></div><div class="desc docblock-short">32..=51 bits of TLS LE 64-bit offset from thread pointer</div></li><li><div class="item-name"><a class="constant" href="constant.R_LARCH_TLS_LE_HI20.html" title="constant object::elf::R_LARCH_TLS_LE_HI20">R_LARCH_TLS_LE_HI20</a></div><div class="desc docblock-short">12..=31 bits of TLS LE 32/64-bit offset from thread pointer</div></li><li><div class="item-name"><a class="constant" href="constant.R_LARCH_TLS_LE_LO12.html" title="constant object::elf::R_LARCH_TLS_LE_LO12">R_LARCH_TLS_LE_LO12</a></div><div class="desc docblock-short">0..=11 bits of TLS LE 32/64-bit offset from thread pointer</div></li><li><div class="item-name"><a class="constant" href="constant.R_LARCH_TLS_TPREL32.html" title="constant object::elf::R_LARCH_TLS_TPREL32">R_LARCH_TLS_TPREL32</a></div><div class="desc docblock-short">Runtime relocation for TLE-IE</div></li><li><div class="item-name"><a class="constant" href="constant.R_LARCH_TLS_TPREL64.html" title="constant object::elf::R_LARCH_TLS_TPREL64">R_LARCH_TLS_TPREL64</a></div><div class="desc docblock-short">Runtime relocation for TLE-IE</div></li><li><div class="item-name"><a class="constant" href="constant.R_M32R_10_PCREL.html" title="constant object::elf::R_M32R_10_PCREL">R_M32R_10_PCREL</a></div><div class="desc docblock-short">PC relative 10 bit shifted.</div></li><li><div class="item-name"><a class="constant" href="constant.R_M32R_10_PCREL_RELA.html" title="constant object::elf::R_M32R_10_PCREL_RELA">R_M32R_10_PCREL_RELA</a></div><div class="desc docblock-short">PC relative 10 bit shifted.</div></li><li><div class="item-name"><a class="constant" href="constant.R_M32R_16.html" title="constant object::elf::R_M32R_16">R_M32R_16</a></div><div class="desc docblock-short">Direct 16 bit.</div></li><li><div class="item-name"><a class="constant" href="constant.R_M32R_16_RELA.html" title="constant object::elf::R_M32R_16_RELA">R_M32R_16_RELA</a></div><div class="desc docblock-short">Direct 16 bit.</div></li><li><div class="item-name"><a class="constant" href="constant.R_M32R_18_PCREL.html" title="constant object::elf::R_M32R_18_PCREL">R_M32R_18_PCREL</a></div><div class="desc docblock-short">PC relative 18 bit shifted.</div></li><li><div class="item-name"><a class="constant" href="constant.R_M32R_18_PCREL_RELA.html" title="constant object::elf::R_M32R_18_PCREL_RELA">R_M32R_18_PCREL_RELA</a></div><div class="desc docblock-short">PC relative 18 bit shifted.</div></li><li><div class="item-name"><a class="constant" href="constant.R_M32R_24.html" title="constant object::elf::R_M32R_24">R_M32R_24</a></div><div class="desc docblock-short">Direct 24 bit.</div></li><li><div class="item-name"><a class="constant" href="constant.R_M32R_24_RELA.html" title="constant object::elf::R_M32R_24_RELA">R_M32R_24_RELA</a></div><div class="desc docblock-short">Direct 24 bit.</div></li><li><div class="item-name"><a class="constant" href="constant.R_M32R_26_PCREL.html" title="constant object::elf::R_M32R_26_PCREL">R_M32R_26_PCREL</a></div><div class="desc docblock-short">PC relative 26 bit shifted.</div></li><li><div class="item-name"><a class="constant" href="constant.R_M32R_26_PCREL_RELA.html" title="constant object::elf::R_M32R_26_PCREL_RELA">R_M32R_26_PCREL_RELA</a></div><div class="desc docblock-short">PC relative 26 bit shifted.</div></li><li><div class="item-name"><a class="constant" href="constant.R_M32R_26_PLTREL.html" title="constant object::elf::R_M32R_26_PLTREL">R_M32R_26_PLTREL</a></div><div class="desc docblock-short">26 bit PC relative to PLT shifted</div></li><li><div class="item-name"><a c
|
|||
|
still be in object files.</div></li><li><div class="item-name"><a class="constant" href="constant.R_PPC_TPREL16.html" title="constant object::elf::R_PPC_TPREL16">R_PPC_TPREL16</a></div><div class="desc docblock-short">half16* (sym+add)@tprel</div></li><li><div class="item-name"><a class="constant" href="constant.R_PPC_TPREL16_HA.html" title="constant object::elf::R_PPC_TPREL16_HA">R_PPC_TPREL16_HA</a></div><div class="desc docblock-short">half16 (sym+add)@tprel@ha</div></li><li><div class="item-name"><a class="constant" href="constant.R_PPC_TPREL16_HI.html" title="constant object::elf::R_PPC_TPREL16_HI">R_PPC_TPREL16_HI</a></div><div class="desc docblock-short">half16 (sym+add)@tprel@h</div></li><li><div class="item-name"><a class="constant" href="constant.R_PPC_TPREL16_LO.html" title="constant object::elf::R_PPC_TPREL16_LO">R_PPC_TPREL16_LO</a></div><div class="desc docblock-short">half16 (sym+add)@tprel@l</div></li><li><div class="item-name"><a class="constant" href="constant.R_PPC_TPREL32.html" title="constant object::elf::R_PPC_TPREL32">R_PPC_TPREL32</a></div><div class="desc docblock-short">word32 (sym+add)@tprel</div></li><li><div class="item-name"><a class="constant" href="constant.R_PPC_UADDR16.html" title="constant object::elf::R_PPC_UADDR16">R_PPC_UADDR16</a></div></li><li><div class="item-name"><a class="constant" href="constant.R_PPC_UADDR32.html" title="constant object::elf::R_PPC_UADDR32">R_PPC_UADDR32</a></div></li><li><div class="item-name"><a class="constant" href="constant.R_RISCV_32.html" title="constant object::elf::R_RISCV_32">R_RISCV_32</a></div></li><li><div class="item-name"><a class="constant" href="constant.R_RISCV_32_PCREL.html" title="constant object::elf::R_RISCV_32_PCREL">R_RISCV_32_PCREL</a></div></li><li><div class="item-name"><a class="constant" href="constant.R_RISCV_64.html" title="constant object::elf::R_RISCV_64">R_RISCV_64</a></div></li><li><div class="item-name"><a class="constant" href="constant.R_RISCV_ADD8.html" title="constant object::elf::R_RISCV_ADD8">R_RISCV_ADD8</a></div></li><li><div class="item-name"><a class="constant" href="constant.R_RISCV_ADD16.html" title="constant object::elf::R_RISCV_ADD16">R_RISCV_ADD16</a></div></li><li><div class="item-name"><a class="constant" href="constant.R_RISCV_ADD32.html" title="constant object::elf::R_RISCV_ADD32">R_RISCV_ADD32</a></div></li><li><div class="item-name"><a class="constant" href="constant.R_RISCV_ADD64.html" title="constant object::elf::R_RISCV_ADD64">R_RISCV_ADD64</a></div></li><li><div class="item-name"><a class="constant" href="constant.R_RISCV_ALIGN.html" title="constant object::elf::R_RISCV_ALIGN">R_RISCV_ALIGN</a></div></li><li><div class="item-name"><a class="constant" href="constant.R_RISCV_BRANCH.html" title="constant object::elf::R_RISCV_BRANCH">R_RISCV_BRANCH</a></div></li><li><div class="item-name"><a class="constant" href="constant.R_RISCV_CALL.html" title="constant object::elf::R_RISCV_CALL">R_RISCV_CALL</a></div></li><li><div class="item-name"><a class="constant" href="constant.R_RISCV_CALL_PLT.html" title="constant object::elf::R_RISCV_CALL_PLT">R_RISCV_CALL_PLT</a></div></li><li><div class="item-name"><a class="constant" href="constant.R_RISCV_COPY.html" title="constant object::elf::R_RISCV_COPY">R_RISCV_COPY</a></div></li><li><div class="item-name"><a class="constant" href="constant.R_RISCV_GNU_VTENTRY.html" title="constant object::elf::R_RISCV_GNU_VTENTRY">R_RISCV_GNU_VTENTRY</a></div></li><li><div class="item-name"><a class="constant" href="constant.R_RISCV_GNU_VTINHERIT.html" title="constant object::elf::R_RISCV_GNU_VTINHERIT">R_RISCV_GNU_VTINHERIT</a></div></li><li><div class="item-name"><a class="constant" href="constant.R_RISCV_GOT_HI20.html" title="constant object::elf::R_RISCV_GOT_HI20">R_RISCV_GOT_HI20</a></div></li><li><div class="item-name"><a class="constant" href="constant.R_RISCV_GPREL_I.html" title="constant object::elf::R_RISCV_GPREL_I">R_RISCV_GPREL_I</a></div></li><li><div class="item-name"><a class="constant" href="constant.R_RISCV_GPREL_S.html" title="constant object::elf::R_RISCV_G
|
|||
|
Start of reserved section indices.</div></li><li><div class="item-name"><a class="constant" href="constant.SHN_MIPS_ACOMMON.html" title="constant object::elf::SHN_MIPS_ACOMMON">SHN_MIPS_ACOMMON</a></div><div class="desc docblock-short">Allocated common symbols.</div></li><li><div class="item-name"><a class="constant" href="constant.SHN_MIPS_DATA.html" title="constant object::elf::SHN_MIPS_DATA">SHN_MIPS_DATA</a></div><div class="desc docblock-short">Allocated data symbols.</div></li><li><div class="item-name"><a class="constant" href="constant.SHN_MIPS_SCOMMON.html" title="constant object::elf::SHN_MIPS_SCOMMON">SHN_MIPS_SCOMMON</a></div><div class="desc docblock-short">Small common symbols.</div></li><li><div class="item-name"><a class="constant" href="constant.SHN_MIPS_SUNDEFINED.html" title="constant object::elf::SHN_MIPS_SUNDEFINED">SHN_MIPS_SUNDEFINED</a></div><div class="desc docblock-short">Small undefined symbols.</div></li><li><div class="item-name"><a class="constant" href="constant.SHN_MIPS_TEXT.html" title="constant object::elf::SHN_MIPS_TEXT">SHN_MIPS_TEXT</a></div><div class="desc docblock-short">Allocated test symbols.</div></li><li><div class="item-name"><a class="constant" href="constant.SHN_PARISC_ANSI_COMMON.html" title="constant object::elf::SHN_PARISC_ANSI_COMMON">SHN_PARISC_ANSI_COMMON</a></div><div class="desc docblock-short">Section for tentatively declared symbols in ANSI C.</div></li><li><div class="item-name"><a class="constant" href="constant.SHN_PARISC_HUGE_COMMON.html" title="constant object::elf::SHN_PARISC_HUGE_COMMON">SHN_PARISC_HUGE_COMMON</a></div><div class="desc docblock-short">Common blocks in huge model.</div></li><li><div class="item-name"><a class="constant" href="constant.SHN_UNDEF.html" title="constant object::elf::SHN_UNDEF">SHN_UNDEF</a></div><div class="desc docblock-short">Undefined section.</div></li><li><div class="item-name"><a class="constant" href="constant.SHN_XINDEX.html" title="constant object::elf::SHN_XINDEX">SHN_XINDEX</a></div><div class="desc docblock-short">Section index is in the <code>SHT_SYMTAB_SHNDX</code> section.</div></li><li><div class="item-name"><a class="constant" href="constant.SHT_ALPHA_DEBUG.html" title="constant object::elf::SHT_ALPHA_DEBUG">SHT_ALPHA_DEBUG</a></div></li><li><div class="item-name"><a class="constant" href="constant.SHT_ALPHA_REGINFO.html" title="constant object::elf::SHT_ALPHA_REGINFO">SHT_ALPHA_REGINFO</a></div></li><li><div class="item-name"><a class="constant" href="constant.SHT_ARM_ATTRIBUTES.html" title="constant object::elf::SHT_ARM_ATTRIBUTES">SHT_ARM_ATTRIBUTES</a></div><div class="desc docblock-short">ARM attributes section.</div></li><li><div class="item-name"><a class="constant" href="constant.SHT_ARM_EXIDX.html" title="constant object::elf::SHT_ARM_EXIDX">SHT_ARM_EXIDX</a></div><div class="desc docblock-short">ARM unwind section.</div></li><li><div class="item-name"><a class="constant" href="constant.SHT_ARM_PREEMPTMAP.html" title="constant object::elf::SHT_ARM_PREEMPTMAP">SHT_ARM_PREEMPTMAP</a></div><div class="desc docblock-short">Preemption details.</div></li><li><div class="item-name"><a class="constant" href="constant.SHT_CHECKSUM.html" title="constant object::elf::SHT_CHECKSUM">SHT_CHECKSUM</a></div><div class="desc docblock-short">Checksum for DSO content.</div></li><li><div class="item-name"><a class="constant" href="constant.SHT_CSKY_ATTRIBUTES.html" title="constant object::elf::SHT_CSKY_ATTRIBUTES">SHT_CSKY_ATTRIBUTES</a></div><div class="desc docblock-short">C-SKY attributes section.</div></li><li><div class="item-name"><a class="constant" href="constant.SHT_DYNAMIC.html" title="constant object::elf::SHT_DYNAMIC">SHT_DYNAMIC</a></div><div class="desc docblock-short">Dynamic linking information.</div></li><li><div class="item-name"><a class="constant" href="constant.SHT_DYNSYM.html" title="constant object::elf::SHT_DYNSYM">SHT_DYNSYM</a></div><div class="desc docblock-short">Dynamic linker symbol table.</div></li><li><div class="item-name"><a class="constant" href="constant.SHT_FINI_ARRAY.html" title="const
|