mirror of
https://github.com/edg-l/edlang.git
synced 2024-11-23 08:28:24 +00:00
20 lines
118 KiB
HTML
20 lines
118 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="Mach-O definitions."><title>object::macho - 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 macho</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="#">macho</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/macho.rs.html#1-3307">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>Mach-O 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 based heavily on header files from MacOSX11.1.sdk.</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.BuildToolVersion.html" title="struct object::macho::BuildToolVersion">BuildToolVersion</a></div></li><li><div class="item-name"><a class="struct" href="struct.BuildVersionCommand.html" title="struct object::macho::BuildVersionCommand">BuildVersionCommand</a></div></li><li><div class="item-name"><a class="struct" href="struct.DataInCodeEntry.html" title="struct object::macho::DataInCodeEntry">DataInCodeEntry</a></div></li><li><div class="item-name"><a class="struct" href="struct.DyldCacheHeader.html" title="struct object::macho::DyldCacheHeader">DyldCacheHeader</a></div><div class="desc docblock-short">The dyld cache header.
|
|||
|
Corresponds to struct dyld_cache_header from dyld_cache_format.h.
|
|||
|
This header has grown over time. Only the fields up to and including dyld_base_address
|
|||
|
are guaranteed to be present. For all other fields, check the header size before
|
|||
|
accessing the field. The header size is stored in mapping_offset; the mappings start
|
|||
|
right after the theader.</div></li><li><div class="item-name"><a class="struct" href="struct.DyldCacheImageInfo.html" title="struct object::macho::DyldCacheImageInfo">DyldCacheImageInfo</a></div><div class="desc docblock-short">Corresponds to struct dyld_cache_image_info from dyld_cache_format.h.</div></li><li><div class="item-name"><a class="struct" href="struct.DyldCacheMappingInfo.html" title="struct object::macho::DyldCacheMappingInfo">DyldCacheMappingInfo</a></div><div class="desc docblock-short">Corresponds to struct dyld_cache_mapping_info from dyld_cache_format.h.</div></li><li><div class="item-name"><a class="struct" href="struct.DyldInfoCommand.html" title="struct object::macho::DyldInfoCommand">DyldInfoCommand</a></div></li><li><div class="item-name"><a class="struct" href="struct.DyldSubCacheInfo.html" title="struct object::macho::DyldSubCacheInfo">DyldSubCacheInfo</a></div><div class="desc docblock-short">Corresponds to a struct whose source code has not been published as of Nov 2021.
|
|||
|
Added in the dyld cache version which shipped with macOS 12 / iOS 15.</div></li><li><div class="item-name"><a class="struct" href="struct.Dylib.html" title="struct object::macho::Dylib">Dylib</a></div></li><li><div class="item-name"><a class="struct" href="struct.DylibCommand.html" title="struct object::macho::DylibCommand">DylibCommand</a></div></li><li><div class="item-name"><a class="struct" href="struct.DylibModule32.html" title="struct object::macho::DylibModule32">DylibModule32</a></div></li><li><div class="item-name"><a class="struct" href="struct.DylibModule64.html" title="struct object::macho::DylibModule64">DylibModule64</a></div></li><li><div class="item-name"><a class="struct" href="struct.DylibReference.html" title="struct object::macho::DylibReference">DylibReference</a></div></li><li><div class="item-name"><a class="struct" href="struct.DylibTableOfContents.html" title="struct object::macho::DylibTableOfContents">DylibTableOfContents</a></div></li><li><div class="item-name"><a class="struct" href="struct.DylinkerCommand.html" title="struct object::macho::DylinkerCommand">DylinkerCommand</a></div></li><li><div class="item-name"><a class="struct" href="struct.DysymtabCommand.html" title="struct object::macho::DysymtabCommand">DysymtabCommand</a></div></li><li><div class="item-name"><a class="struct" href="struct.EncryptionInfoCommand32.html" title="struct object::macho::EncryptionInfoCommand32">EncryptionInfoCommand32</a></div></li><li><div class="item-name"><a class="struct" href="struct.EncryptionInfoCommand64.html" title="struct object::macho::EncryptionInfoCommand64">EncryptionInfoCommand64</a></div></li><li><div class="item-name"><a class="struct" href="struct.EntryPointCommand.html" title="struct object::macho::EntryPointCommand">EntryPointCommand</a></div></li><li><div class="item-name"><a class="struct" href="struct.FatArch32.html" title="struct object::macho::FatArch32">FatArch32</a></div></li><li><div class="item-name"><a class="struct" href="struct.FatArch64.html" title="struct object::macho::FatArch64">FatArch64</a></div></li><li><div class="item-name"><a class="struct" href="struct.FatHeader.html" title="struct object::macho::FatHeader">FatHeader</a></div></li><li><div class="item-name"><a class="struct" href="struct.FilesetEntryCommand.html" title="struct object::macho::FilesetEntryCommand">FilesetEntryCommand</a></div></li><li><div class="item-name"><a class="struct" href="struct.FvmfileCommand.html" title="struct object::macho::FvmfileCommand">FvmfileCommand</a></div></li><li><div class="item-name"><a class="struct" href="struct.Fvmlib.html" title="struct object::macho::Fvmlib">Fvmlib</a></div></li><li><div class="item-name"><a class="struct" href="struct.FvmlibCommand.html" title="struct object::macho::FvmlibCommand">FvmlibCommand</a></div></li><li><div class="item-name"><a class="struct" href="struct.IdentCommand.html" title="struct object::macho::IdentCommand">IdentCommand</a></div></li><li><div class="item-name"><a class="struct" href="struct.LcStr.html" title="struct object::macho::LcStr">LcStr</a></div><div class="desc docblock-short">A variable length string in a load command.</div></li><li><div class="item-name"><a class="struct" href="struct.LinkeditDataCommand.html" title="struct object::macho::LinkeditDataCommand">LinkeditDataCommand</a></div></li><li><div class="item-name"><a class="struct" href="struct.LinkerOptionCommand.html" title="struct object::macho::LinkerOptionCommand">LinkerOptionCommand</a></div></li><li><div class="item-name"><a class="struct" href="struct.LoadCommand.html" title="struct object::macho::LoadCommand">LoadCommand</a></div><div class="desc docblock-short">Common fields at the start of every load command.</div></li><li><div class="item-name"><a class="struct" href="struct.MachHeader32.html" title="struct object::macho::MachHeader32">MachHeader32</a></div><div class="desc docblock-short">The 32-bit mach header.</div></li><li><div class="item-name"><a class="struct" href="struct.MachHeader64.html" title="struct object::macho::MachHeader64">MachHeader64</a></
|
|||
|
grading for the selected cpu_type_t, unlike the “ALL” subtypes,
|
|||
|
which are the slices that can run on any hardware for that cpu type.</div></li><li><div class="item-name"><a class="constant" href="constant.CPU_SUBTYPE_ARM64E.html" title="constant object::macho::CPU_SUBTYPE_ARM64E">CPU_SUBTYPE_ARM64E</a></div></li><li><div class="item-name"><a class="constant" href="constant.CPU_SUBTYPE_ARM64_32_ALL.html" title="constant object::macho::CPU_SUBTYPE_ARM64_32_ALL">CPU_SUBTYPE_ARM64_32_ALL</a></div></li><li><div class="item-name"><a class="constant" href="constant.CPU_SUBTYPE_ARM64_32_V8.html" title="constant object::macho::CPU_SUBTYPE_ARM64_32_V8">CPU_SUBTYPE_ARM64_32_V8</a></div></li><li><div class="item-name"><a class="constant" href="constant.CPU_SUBTYPE_ARM64_ALL.html" title="constant object::macho::CPU_SUBTYPE_ARM64_ALL">CPU_SUBTYPE_ARM64_ALL</a></div></li><li><div class="item-name"><a class="constant" href="constant.CPU_SUBTYPE_ARM64_V8.html" title="constant object::macho::CPU_SUBTYPE_ARM64_V8">CPU_SUBTYPE_ARM64_V8</a></div></li><li><div class="item-name"><a class="constant" href="constant.CPU_SUBTYPE_ARM_ALL.html" title="constant object::macho::CPU_SUBTYPE_ARM_ALL">CPU_SUBTYPE_ARM_ALL</a></div></li><li><div class="item-name"><a class="constant" href="constant.CPU_SUBTYPE_ARM_V4T.html" title="constant object::macho::CPU_SUBTYPE_ARM_V4T">CPU_SUBTYPE_ARM_V4T</a></div></li><li><div class="item-name"><a class="constant" href="constant.CPU_SUBTYPE_ARM_V5TEJ.html" title="constant object::macho::CPU_SUBTYPE_ARM_V5TEJ">CPU_SUBTYPE_ARM_V5TEJ</a></div></li><li><div class="item-name"><a class="constant" href="constant.CPU_SUBTYPE_ARM_V6.html" title="constant object::macho::CPU_SUBTYPE_ARM_V6">CPU_SUBTYPE_ARM_V6</a></div></li><li><div class="item-name"><a class="constant" href="constant.CPU_SUBTYPE_ARM_V6M.html" title="constant object::macho::CPU_SUBTYPE_ARM_V6M">CPU_SUBTYPE_ARM_V6M</a></div><div class="desc docblock-short">Not meant to be run under xnu</div></li><li><div class="item-name"><a class="constant" href="constant.CPU_SUBTYPE_ARM_V7.html" title="constant object::macho::CPU_SUBTYPE_ARM_V7">CPU_SUBTYPE_ARM_V7</a></div><div class="desc docblock-short">ARMv7-A and ARMv7-R</div></li><li><div class="item-name"><a class="constant" href="constant.CPU_SUBTYPE_ARM_V7EM.html" title="constant object::macho::CPU_SUBTYPE_ARM_V7EM">CPU_SUBTYPE_ARM_V7EM</a></div><div class="desc docblock-short">Not meant to be run under xnu</div></li><li><div class="item-name"><a class="constant" href="constant.CPU_SUBTYPE_ARM_V7F.html" title="constant object::macho::CPU_SUBTYPE_ARM_V7F">CPU_SUBTYPE_ARM_V7F</a></div><div class="desc docblock-short">Cortex A9</div></li><li><div class="item-name"><a class="constant" href="constant.CPU_SUBTYPE_ARM_V7K.html" title="constant object::macho::CPU_SUBTYPE_ARM_V7K">CPU_SUBTYPE_ARM_V7K</a></div></li><li><div class="item-name"><a class="constant" href="constant.CPU_SUBTYPE_ARM_V7M.html" title="constant object::macho::CPU_SUBTYPE_ARM_V7M">CPU_SUBTYPE_ARM_V7M</a></div><div class="desc docblock-short">Not meant to be run under xnu</div></li><li><div class="item-name"><a class="constant" href="constant.CPU_SUBTYPE_ARM_V7S.html" title="constant object::macho::CPU_SUBTYPE_ARM_V7S">CPU_SUBTYPE_ARM_V7S</a></div><div class="desc docblock-short">Swift</div></li><li><div class="item-name"><a class="constant" href="constant.CPU_SUBTYPE_ARM_V8.html" title="constant object::macho::CPU_SUBTYPE_ARM_V8">CPU_SUBTYPE_ARM_V8</a></div></li><li><div class="item-name"><a class="constant" href="constant.CPU_SUBTYPE_ARM_V8M.html" title="constant object::macho::CPU_SUBTYPE_ARM_V8M">CPU_SUBTYPE_ARM_V8M</a></div><div class="desc docblock-short">Not meant to be run under xnu</div></li><li><div class="item-name"><a class="constant" href="constant.CPU_SUBTYPE_ARM_XSCALE.html" title="constant object::macho::CPU_SUBTYPE_ARM_XSCALE">CPU_SUBTYPE_ARM_XSCALE</a></div></li><li><div class="item-name"><a class="constant" href="constant.CPU_SUBTYPE_BIG_ENDIAN.html" title="constant object::macho::CPU_SUBTYPE_BIG_ENDIAN">CPU_SUBTYPE_BIG_ENDIAN</a></div></li><li><div class="item-name"><a class="constant" href="constant.C
|
|||
|
(all symbols are weak imported).</div></li><li><div class="item-name"><a class="constant" href="constant.LC_MAIN.html" title="constant object::macho::LC_MAIN">LC_MAIN</a></div><div class="desc docblock-short">replacement for LC_UNIXTHREAD</div></li><li><div class="item-name"><a class="constant" href="constant.LC_NOTE.html" title="constant object::macho::LC_NOTE">LC_NOTE</a></div><div class="desc docblock-short">arbitrary data included within a Mach-O file</div></li><li><div class="item-name"><a class="constant" href="constant.LC_PREBIND_CKSUM.html" title="constant object::macho::LC_PREBIND_CKSUM">LC_PREBIND_CKSUM</a></div><div class="desc docblock-short">prebind checksum</div></li><li><div class="item-name"><a class="constant" href="constant.LC_PREBOUND_DYLIB.html" title="constant object::macho::LC_PREBOUND_DYLIB">LC_PREBOUND_DYLIB</a></div><div class="desc docblock-short">modules prebound for a dynamically linked shared library</div></li><li><div class="item-name"><a class="constant" href="constant.LC_PREPAGE.html" title="constant object::macho::LC_PREPAGE">LC_PREPAGE</a></div><div class="desc docblock-short">prepage command (internal use)</div></li><li><div class="item-name"><a class="constant" href="constant.LC_REEXPORT_DYLIB.html" title="constant object::macho::LC_REEXPORT_DYLIB">LC_REEXPORT_DYLIB</a></div><div class="desc docblock-short">load and re-export dylib</div></li><li><div class="item-name"><a class="constant" href="constant.LC_REQ_DYLD.html" title="constant object::macho::LC_REQ_DYLD">LC_REQ_DYLD</a></div></li><li><div class="item-name"><a class="constant" href="constant.LC_ROUTINES.html" title="constant object::macho::LC_ROUTINES">LC_ROUTINES</a></div><div class="desc docblock-short">image routines</div></li><li><div class="item-name"><a class="constant" href="constant.LC_ROUTINES_64.html" title="constant object::macho::LC_ROUTINES_64">LC_ROUTINES_64</a></div><div class="desc docblock-short">64-bit image routines</div></li><li><div class="item-name"><a class="constant" href="constant.LC_RPATH.html" title="constant object::macho::LC_RPATH">LC_RPATH</a></div><div class="desc docblock-short">runpath additions</div></li><li><div class="item-name"><a class="constant" href="constant.LC_SEGMENT.html" title="constant object::macho::LC_SEGMENT">LC_SEGMENT</a></div><div class="desc docblock-short">segment of this file to be mapped</div></li><li><div class="item-name"><a class="constant" href="constant.LC_SEGMENT_64.html" title="constant object::macho::LC_SEGMENT_64">LC_SEGMENT_64</a></div><div class="desc docblock-short">64-bit segment of this file to be mapped</div></li><li><div class="item-name"><a class="constant" href="constant.LC_SEGMENT_SPLIT_INFO.html" title="constant object::macho::LC_SEGMENT_SPLIT_INFO">LC_SEGMENT_SPLIT_INFO</a></div><div class="desc docblock-short">local of info to split segments</div></li><li><div class="item-name"><a class="constant" href="constant.LC_SOURCE_VERSION.html" title="constant object::macho::LC_SOURCE_VERSION">LC_SOURCE_VERSION</a></div><div class="desc docblock-short">source version used to build binary</div></li><li><div class="item-name"><a class="constant" href="constant.LC_SUB_CLIENT.html" title="constant object::macho::LC_SUB_CLIENT">LC_SUB_CLIENT</a></div><div class="desc docblock-short">sub client</div></li><li><div class="item-name"><a class="constant" href="constant.LC_SUB_FRAMEWORK.html" title="constant object::macho::LC_SUB_FRAMEWORK">LC_SUB_FRAMEWORK</a></div><div class="desc docblock-short">sub framework</div></li><li><div class="item-name"><a class="constant" href="constant.LC_SUB_LIBRARY.html" title="constant object::macho::LC_SUB_LIBRARY">LC_SUB_LIBRARY</a></div><div class="desc docblock-short">sub library</div></li><li><div class="item-name"><a class="constant" href="constant.LC_SUB_UMBRELLA.html" title="constant object::macho::LC_SUB_UMBRELLA">LC_SUB_UMBRELLA</a></div><div class="desc docblock-short">sub umbrella</div></li><li><div class="item-name"><a class="constant" href="constant.LC_SYMSEG.html" title="constant object::macho::LC_SYMSEG">LC_SYMSEG</a></d
|
|||
|
shared cache, rather than loose in the filesystem.</div></li><li><div class="item-name"><a class="constant" href="constant.MH_DYLIB_STUB.html" title="constant object::macho::MH_DYLIB_STUB">MH_DYLIB_STUB</a></div><div class="desc docblock-short">shared library stub for static linking only, no section contents</div></li><li><div class="item-name"><a class="constant" href="constant.MH_DYLINKER.html" title="constant object::macho::MH_DYLINKER">MH_DYLINKER</a></div><div class="desc docblock-short">dynamic link editor</div></li><li><div class="item-name"><a class="constant" href="constant.MH_EXECUTE.html" title="constant object::macho::MH_EXECUTE">MH_EXECUTE</a></div><div class="desc docblock-short">demand paged executable file</div></li><li><div class="item-name"><a class="constant" href="constant.MH_FILESET.html" title="constant object::macho::MH_FILESET">MH_FILESET</a></div><div class="desc docblock-short">set of mach-o’s</div></li><li><div class="item-name"><a class="constant" href="constant.MH_FORCE_FLAT.html" title="constant object::macho::MH_FORCE_FLAT">MH_FORCE_FLAT</a></div><div class="desc docblock-short">the executable is forcing all images to use flat name space bindings</div></li><li><div class="item-name"><a class="constant" href="constant.MH_FVMLIB.html" title="constant object::macho::MH_FVMLIB">MH_FVMLIB</a></div><div class="desc docblock-short">fixed VM shared library file</div></li><li><div class="item-name"><a class="constant" href="constant.MH_HAS_TLV_DESCRIPTORS.html" title="constant object::macho::MH_HAS_TLV_DESCRIPTORS">MH_HAS_TLV_DESCRIPTORS</a></div><div class="desc docblock-short">Contains a section of type S_THREAD_LOCAL_VARIABLES</div></li><li><div class="item-name"><a class="constant" href="constant.MH_INCRLINK.html" title="constant object::macho::MH_INCRLINK">MH_INCRLINK</a></div><div class="desc docblock-short">the object file is the output of an incremental link against a base file and can’t be link edited again</div></li><li><div class="item-name"><a class="constant" href="constant.MH_KEXT_BUNDLE.html" title="constant object::macho::MH_KEXT_BUNDLE">MH_KEXT_BUNDLE</a></div><div class="desc docblock-short">x86_64 kexts</div></li><li><div class="item-name"><a class="constant" href="constant.MH_LAZY_INIT.html" title="constant object::macho::MH_LAZY_INIT">MH_LAZY_INIT</a></div><div class="desc docblock-short">the shared library init routine is to be run lazily via catching memory faults to its writeable segments (obsolete)</div></li><li><div class="item-name"><a class="constant" href="constant.MH_MAGIC.html" title="constant object::macho::MH_MAGIC">MH_MAGIC</a></div><div class="desc docblock-short">the mach magic number</div></li><li><div class="item-name"><a class="constant" href="constant.MH_MAGIC_64.html" title="constant object::macho::MH_MAGIC_64">MH_MAGIC_64</a></div><div class="desc docblock-short">the 64-bit mach magic number</div></li><li><div class="item-name"><a class="constant" href="constant.MH_NLIST_OUTOFSYNC_WITH_DYLDINFO.html" title="constant object::macho::MH_NLIST_OUTOFSYNC_WITH_DYLDINFO">MH_NLIST_OUTOFSYNC_WITH_DYLDINFO</a></div><div class="desc docblock-short">The external symbols listed in the nlist symbol table do not include all the symbols listed in the dyld info.</div></li><li><div class="item-name"><a class="constant" href="constant.MH_NOFIXPREBINDING.html" title="constant object::macho::MH_NOFIXPREBINDING">MH_NOFIXPREBINDING</a></div><div class="desc docblock-short">do not have dyld notify the prebinding agent about this executable</div></li><li><div class="item-name"><a class="constant" href="constant.MH_NOMULTIDEFS.html" title="constant object::macho::MH_NOMULTIDEFS">MH_NOMULTIDEFS</a></div><div class="desc docblock-short">this umbrella guarantees no multiple definitions of symbols in its sub-images so the two-level namespace hints can always be used.</div></li><li><div class="item-name"><a class="constant" href="constant.MH_NOUNDEFS.html" title="constant object::macho::MH_NOUNDEFS">MH_NOUNDEFS</a></div><div class="desc docblock-short">the object file has no undefine
|
|||
|
the platforms macOS, iOSMac, iOSSimulator, tvOSSimulator and watchOSSimulator.</div></li><li><div class="item-name"><a class="constant" href="constant.MH_SPLIT_SEGS.html" title="constant object::macho::MH_SPLIT_SEGS">MH_SPLIT_SEGS</a></div><div class="desc docblock-short">the file has its read-only and read-write segments split</div></li><li><div class="item-name"><a class="constant" href="constant.MH_SUBSECTIONS_VIA_SYMBOLS.html" title="constant object::macho::MH_SUBSECTIONS_VIA_SYMBOLS">MH_SUBSECTIONS_VIA_SYMBOLS</a></div><div class="desc docblock-short">safe to divide up the sections into sub-sections via symbols for dead code stripping</div></li><li><div class="item-name"><a class="constant" href="constant.MH_TWOLEVEL.html" title="constant object::macho::MH_TWOLEVEL">MH_TWOLEVEL</a></div><div class="desc docblock-short">the image is using two-level name space bindings</div></li><li><div class="item-name"><a class="constant" href="constant.MH_WEAK_DEFINES.html" title="constant object::macho::MH_WEAK_DEFINES">MH_WEAK_DEFINES</a></div><div class="desc docblock-short">the final linked image contains external weak symbols</div></li><li><div class="item-name"><a class="constant" href="constant.NO_SECT.html" title="constant object::macho::NO_SECT">NO_SECT</a></div><div class="desc docblock-short">symbol is not in any section</div></li><li><div class="item-name"><a class="constant" href="constant.N_ABS.html" title="constant object::macho::N_ABS">N_ABS</a></div><div class="desc docblock-short">absolute, n_sect == NO_SECT</div></li><li><div class="item-name"><a class="constant" href="constant.N_ALT_ENTRY.html" title="constant object::macho::N_ALT_ENTRY">N_ALT_ENTRY</a></div></li><li><div class="item-name"><a class="constant" href="constant.N_ARM_THUMB_DEF.html" title="constant object::macho::N_ARM_THUMB_DEF">N_ARM_THUMB_DEF</a></div><div class="desc docblock-short">symbol is a Thumb function (ARM)</div></li><li><div class="item-name"><a class="constant" href="constant.N_AST.html" title="constant object::macho::N_AST">N_AST</a></div><div class="desc docblock-short">AST file path: name,,NO_SECT,0,0</div></li><li><div class="item-name"><a class="constant" href="constant.N_BCOMM.html" title="constant object::macho::N_BCOMM">N_BCOMM</a></div><div class="desc docblock-short">begin common: name,,NO_SECT,0,0</div></li><li><div class="item-name"><a class="constant" href="constant.N_BINCL.html" title="constant object::macho::N_BINCL">N_BINCL</a></div><div class="desc docblock-short">include file beginning: name,,NO_SECT,0,sum</div></li><li><div class="item-name"><a class="constant" href="constant.N_BNSYM.html" title="constant object::macho::N_BNSYM">N_BNSYM</a></div><div class="desc docblock-short">begin nsect sym: 0,,n_sect,0,address</div></li><li><div class="item-name"><a class="constant" href="constant.N_DESC_DISCARDED.html" title="constant object::macho::N_DESC_DISCARDED">N_DESC_DISCARDED</a></div><div class="desc docblock-short">symbol is discarded</div></li><li><div class="item-name"><a class="constant" href="constant.N_ECOML.html" title="constant object::macho::N_ECOML">N_ECOML</a></div><div class="desc docblock-short">end common (local name): 0,,n_sect,0,address</div></li><li><div class="item-name"><a class="constant" href="constant.N_ECOMM.html" title="constant object::macho::N_ECOMM">N_ECOMM</a></div><div class="desc docblock-short">end common: name,,n_sect,0,0</div></li><li><div class="item-name"><a class="constant" href="constant.N_EINCL.html" title="constant object::macho::N_EINCL">N_EINCL</a></div><div class="desc docblock-short">include file end: name,,NO_SECT,0,0</div></li><li><div class="item-name"><a class="constant" href="constant.N_ENSYM.html" title="constant object::macho::N_ENSYM">N_ENSYM</a></div><div class="desc docblock-short">end nsect sym: 0,,n_sect,0,address</div></li><li><div class="item-name"><a class="constant" href="constant.N_ENTRY.html" title="constant object::macho::N_ENTRY">N_ENTRY</a></div><div class="desc docblock-short">alternate entry: name,,n_sect,linenumber,address</div></li><li><div class="ite
|
|||
|
with the low 16 bits sign extended first. This means if bit 15 of the low 16 bits is
|
|||
|
set the high 16 bits stored in the instruction will be adjusted.</div></li><li><div class="item-name"><a class="constant" href="constant.PPC_RELOC_HA16_SECTDIFF.html" title="constant object::macho::PPC_RELOC_HA16_SECTDIFF">PPC_RELOC_HA16_SECTDIFF</a></div></li><li><div class="item-name"><a class="constant" href="constant.PPC_RELOC_HI16.html" title="constant object::macho::PPC_RELOC_HI16">PPC_RELOC_HI16</a></div><div class="desc docblock-short">a PAIR follows with the low half</div></li><li><div class="item-name"><a class="constant" href="constant.PPC_RELOC_HI16_SECTDIFF.html" title="constant object::macho::PPC_RELOC_HI16_SECTDIFF">PPC_RELOC_HI16_SECTDIFF</a></div><div class="desc docblock-short">section difference forms of above. a PAIR</div></li><li><div class="item-name"><a class="constant" href="constant.PPC_RELOC_JBSR.html" title="constant object::macho::PPC_RELOC_JBSR">PPC_RELOC_JBSR</a></div></li><li><div class="item-name"><a class="constant" href="constant.PPC_RELOC_LO14.html" title="constant object::macho::PPC_RELOC_LO14">PPC_RELOC_LO14</a></div><div class="desc docblock-short">Same as the LO16 except that the low 2 bits are not stored in the instruction and are
|
|||
|
always zero. This is used in double word load/store instructions.</div></li><li><div class="item-name"><a class="constant" href="constant.PPC_RELOC_LO14_SECTDIFF.html" title="constant object::macho::PPC_RELOC_LO14_SECTDIFF">PPC_RELOC_LO14_SECTDIFF</a></div></li><li><div class="item-name"><a class="constant" href="constant.PPC_RELOC_LO16.html" title="constant object::macho::PPC_RELOC_LO16">PPC_RELOC_LO16</a></div><div class="desc docblock-short">a PAIR follows with the high half</div></li><li><div class="item-name"><a class="constant" href="constant.PPC_RELOC_LO16_SECTDIFF.html" title="constant object::macho::PPC_RELOC_LO16_SECTDIFF">PPC_RELOC_LO16_SECTDIFF</a></div><div class="desc docblock-short">follows these with subtract symbol value</div></li><li><div class="item-name"><a class="constant" href="constant.PPC_RELOC_LOCAL_SECTDIFF.html" title="constant object::macho::PPC_RELOC_LOCAL_SECTDIFF">PPC_RELOC_LOCAL_SECTDIFF</a></div><div class="desc docblock-short">like PPC_RELOC_SECTDIFF, but the symbol referenced was local.</div></li><li><div class="item-name"><a class="constant" href="constant.PPC_RELOC_PAIR.html" title="constant object::macho::PPC_RELOC_PAIR">PPC_RELOC_PAIR</a></div><div class="desc docblock-short">the second relocation entry of a pair</div></li><li><div class="item-name"><a class="constant" href="constant.PPC_RELOC_PB_LA_PTR.html" title="constant object::macho::PPC_RELOC_PB_LA_PTR">PPC_RELOC_PB_LA_PTR</a></div><div class="desc docblock-short">prebound lazy pointer</div></li><li><div class="item-name"><a class="constant" href="constant.PPC_RELOC_SECTDIFF.html" title="constant object::macho::PPC_RELOC_SECTDIFF">PPC_RELOC_SECTDIFF</a></div><div class="desc docblock-short">a PAIR follows with subtract symbol value</div></li><li><div class="item-name"><a class="constant" href="constant.PPC_RELOC_VANILLA.html" title="constant object::macho::PPC_RELOC_VANILLA">PPC_RELOC_VANILLA</a></div><div class="desc docblock-short">generic relocation as described above</div></li><li><div class="item-name"><a class="constant" href="constant.REBASE_IMMEDIATE_MASK.html" title="constant object::macho::REBASE_IMMEDIATE_MASK">REBASE_IMMEDIATE_MASK</a></div></li><li><div class="item-name"><a class="constant" href="constant.REBASE_OPCODE_ADD_ADDR_IMM_SCALED.html" title="constant object::macho::REBASE_OPCODE_ADD_ADDR_IMM_SCALED">REBASE_OPCODE_ADD_ADDR_IMM_SCALED</a></div></li><li><div class="item-name"><a class="constant" href="constant.REBASE_OPCODE_ADD_ADDR_ULEB.html" title="constant object::macho::REBASE_OPCODE_ADD_ADDR_ULEB">REBASE_OPCODE_ADD_ADDR_ULEB</a></div></li><li><div class="item-name"><a class="constant" href="constant.REBASE_OPCODE_DONE.html" title="constant object::macho::REBASE_OPCODE_DONE">REBASE_OPCODE_DONE</a></div></li><li><div class="item-name"><a class="constant" href="constant.REBASE_OPCODE_DO_REBASE_ADD_ADDR_ULEB.html" title="constant object::macho::REBASE_OPCODE_DO_REBASE_ADD_ADDR_ULEB">REBASE_OPCODE_DO_REBASE_ADD_ADDR_ULEB</a></div></li><li><div class="item-name"><a class="constant" href="constant.REBASE_OPCODE_DO_REBASE_IMM_TIMES.html" title="constant object::macho::REBASE_OPCODE_DO_REBASE_IMM_TIMES">REBASE_OPCODE_DO_REBASE_IMM_TIMES</a></div></li><li><div class="item-name"><a class="constant" href="constant.REBASE_OPCODE_DO_REBASE_ULEB_TIMES.html" title="constant object::macho::REBASE_OPCODE_DO_REBASE_ULEB_TIMES">REBASE_OPCODE_DO_REBASE_ULEB_TIMES</a></div></li><li><div class="item-name"><a class="constant" href="constant.REBASE_OPCODE_DO_REBASE_ULEB_TIMES_SKIPPING_ULEB.html" title="constant object::macho::REBASE_OPCODE_DO_REBASE_ULEB_TIMES_SKIPPING_ULEB">REBASE_OPCODE_DO_REBASE_ULEB_TIMES_SKIPPING_ULEB</a></div></li><li><div class="item-name"><a class="constant" href="constant.REBASE_OPCODE_MASK.html" title="constant object::macho::REBASE_OPCODE_MASK">REBASE_OPCODE_MASK</a></div></li><li><div class="item-name"><a class="constant" href="constant.REBASE_OPCODE_SET_SEGMENT_AND_OFFSET_ULEB.html" title="constant object::macho::REBASE_OPCODE_SET_SEGMENT_AND_OFFSET_ULEB">REBASE_OPCODE_SET_SEGMENT_AND_OFFSET_UL
|