packages feed

hs-bindgen (empty) → 1.0.0.0

raw patch · 3015 files changed

+565552/−0 lines, 3015 filesdep +Diffdep +aesondep +ansi-terminal

Dependencies added: Diff, aeson, ansi-terminal, array, async, base, base-compat, base16-bytestring, bytestring, c-expr-dsl, c-expr-runtime, containers, contra-tracer, cryptohash-sha256, data-default, debruijn, deepseq, directory, doxygen-parser, edit-distance, exceptions, filepath, fin, hs-bindgen, hs-bindgen-runtime, language-c, libclang-bindings, mtl, optics, optics-core, optparse-applicative, parsec, pretty, prettyprinter, primitive, process, regex-pcre-builtin, some, syb, tasty, tasty-hunit, tasty-quickcheck, template-haskell, temporary, text, transformers, unliftio-core, utf8-string, vec, vector, yaml

This diff is very large; some files are shown as “too large to diff”. Download the raw patch for the complete diff.

Files

+ CHANGELOG.md view
@@ -0,0 +1,537 @@+# Revision history for hs-bindgen++## 1.0.0.0 -- 2026-10-08++### Breaking changes++* Drop support for GHC 9.2.+* Bindings generated by earlier versions do not compile against the new+  `hs-bindgen-runtime`; regenerate them. See the `hs-bindgen-runtime`+  changelog.+* Macros defined on the command line are no longer passed to Clang as `-D`+  arguments but are *root directives*: an ordered list of `#include` and+  `#define` directives. The root header is rendered from this list, and the+  generated C wrapper source starts with the same rendering, so that binding+  generation and binding compilation agree by construction. The wrapper+  translation unit of a module therefore includes every main header.+  Previously, `-D FOO` had to be stated twice: once for `hs-bindgen` and once+  as `ghc-options: -optc-DFOO` in the `.cabal` file. See [issue+  #2214][is-2214] and the [C stages][manual-c-stages] manual page.+  * The CLI option `-D`/`--define-macro` is replaced by `--hash-define NAME+    VALUE`. The order of `--hash-define` and `HEADER` arguments matters.+    `--hash-define` takes *two* arguments: `-DFOO` becomes `--hash-define FOO+    1`; an empty replacement list is `--hash-define FOO ''`.+  * `ClangArgsConfig.defineMacros` is removed. In Template Haskell mode, use+    the new `hashDefine :: String -> String -> BindgenM ()` next to+    `hashInclude`. This is `#define` syntax, not `-D` syntax: `hashDefine+    "FOO" ""` is `#define FOO`, `hashDefine "FOO" "1"` is `#define FOO 1`.+  * As before, raw `-D` options passed via `argsBefore`/`argsInner`/`argsAfter`+    or `BINDGEN_EXTRA_CLANG_ARGS` reach binding generation only, not the+    compilation of the C wrapper.+* Macros defined by `-D` Clang options or by `#define` root directives are now+  declarations. See [issue #2280][is-2280].+  * They are not in any header, so the default selection predicate does not+    select them; program slicing selects the ones a selected declaration uses.+  * Consider `struct S { T x; };` with `-DT=int`. Previously, `x` was a+    `CInt`. Now, `S` is deselected without program slicing, just as if `T`+    were defined in a header that is not a main header; with program slicing,+    `x` has the macro type `T`.+  * `--select-all` selects all of these macros, including those the Clang+    driver defines itself, such as `__GCC_HAVE_DWARF2_CFI_ASM`. So does+    `--select-by-decl-name` when its pattern matches their names. See also the+    new selection predicate `--select-from-all-headers`.+  * Generated binding specifications do not list these macros.+* The `IncludeDir` data constructors have been renamed: `Dir` → `AbsDir` and+  `Pkg` → `PkgDir`. Their paths are now checked in Template Haskell mode: a+  relative `AbsDir` path warns (it is resolved against the working directory of+  the compiler invocation), and an absolute `PkgDir` path is an error (the+  package root would be discarded). See [issue #2217][is-2217].+* The `SelectPredicate` type has been renamed to `SelectionPredicate`, and the+  `selectPredicate` field of `Config_` has been renamed to+  `selectionPredicate`.+* The `--select-by-header-path` regex now matches against canonical absolute+  paths. See [issue #2236][is-2236].+* The `--path-style` CLI option and the corresponding `PathStyle` type and+  `haddockPathStyle` field of `Config_` have been removed. They had no effect:+  generated Haddock comments show the header path as written in the `#include`+  directive. See [issue #2266][is-2266].+* The `--log-show-time` CLI option has been removed. Trace output no longer+  includes timestamps.+* CLI exit codes have changed. Exit code 2 is now used for CLI usage errors;+  a failed call to `libclang` now exits with code 3 (previously 2), and an+  error in `hs-bindgen` with code 4 (previously 3). See the invocation section+  of the manual.+* The `LLVM_CONFIG` environment variable is no longer used to locate+  `llvm-config`. Set `LLVM_PATH`, or configure `PATH` so that the desired+  `llvm-config` is found.+* Generated field names referencing anonymous structs and unions are now+  prefixed with `anon'`. This highlights that the field is generated by+  `hs-bindgen`; the tick ensures that the name cannot clash with a C field,+  since ticks are not allowed in C identifiers. Since anonymous structs and+  unions are named after the generated fields, these names now also include an+  `anon'` infix. Code rarely needs to refer to these names: the fields of an+  anonymous struct or union can be accessed as indirect fields of the+  enclosing struct or union (see below). See [issue #2064][is-2064] and [PR+  #2070][pr-2070].+* Tagged types that would clash with the name of a typedef that refers to them+  are now disambiguated with a `_struct`/`_union`/`_enum` suffix (mirroring the+  C keyword) instead of `_Aux`. Clash detection now also looks through arrays,+  blocks, and function types (argument and result types), not just pointers,+  so e.g. `typedef struct {…} foo[10];` no longer produces clashing names.+  Qualifiers (e.g. `const`) are treated as transparent, so `typedef const+  struct {…} foo;` is now squashed like its unqualified counterpart. This+  renames affected generated identifiers. See [issue #1445][is-1445].+* Derived names (data constructors, record fields, union getters and setters,+  enum constants, and `_Aux` types for flexible array members and function+  pointers) are now checked for collisions. A declaration whose derived names+  collide is deselected with a warning instead of producing uncompilable+  Haskell. In particular, under `OmitFieldPrefixes`, a struct with two fields+  that mangle to the same Haskell name is deselected. See [issue+  #1432][is-1432].+* Modules generated under `OmitFieldPrefixes` now enable `NoFieldSelectors` (in+  addition to `DuplicateRecordFields`). No top-level field selector is emitted,+  so an unprefixed field name can no longer clash with a non-field declaration+  of the same name; fields are accessed via `HasField`/record dot syntax.+* Remove the generated union getters and setters (e.g. `get_u_c`). Use the new+  `get` and `set` functions from `hs-bindgen-runtime` instead. See [issue+  #2060][is-2060] and [PR #2091][pr-2091].+* Character literal macros are now translated to `CChar` (previously+  `CharValue` from `c-expr-runtime`), and string literal macros to a strict+  `ByteString` (previously `(Ptr CChar, Int)`). Multi-character literal macros+  (e.g. `#define X 'ab'`) are no longer supported, as their value is+  implementation-defined.+* The types used in `foreign import` declarations (FFI types) have been+  overhauled. Previously, every argument and result type was reduced to a+  primitive type with a fixed size, which made the generated bindings less+  portable than necessary. See the [FFI types][manual-ffi-types] manual page+  and [PR #2267][pr-2267].+  * An external binding specification can (and should) specify the FFI type of+    a Haskell type: a module and a type that may appear in a `foreign import`+    when that module is in scope. Generated `foreign import`s use the FFI type,+    and convert from and to the Haskell type with `toFFIType`/`fromFFIType` of+    the `HasFFIType` class.+  * `HasFFIType` instances are now only generated for types that can be used in+    `foreign import` argument and result positions.+  * `HasFFIType` is an open class: users can write instances, e.g. for types+    referenced by external binding specifications.+* In external binding specifications, the class name `HasField` now records+  that a type has the usual `HasField` instances for the fields of record+  datatypes. Specifications that use `HasField` for the `HasField` instances of+  the pointer manipulation API must rename it to `HasFieldPtr`. See [PR+  #2094][pr-2094].+* The name mangler reserves the names that generated modules import+  unqualified from the `Prelude`, each in its namespace. See [issue+  #2287][is-2287].+  * `String` and `fmap` are now reserved: a C type `string` becomes `String'`,+    a C function `fmap` becomes `fmap'`.+  * `Void`, `FiniteBits` and `showsPrec` are no longer reserved: a C type+    `Void` becomes `Void`, not `Void'`.+  * Reserved names apply only in their own namespace: a C enumeration constant+    `Eq` becomes the pattern `Eq`, not `Eq'`. The names of `Foreign.C.Types`,+    such as `CInt`, remain reserved for types and constructors alike.++### New features++* Macro handling has been overhauled. See [PR #1862][pr-1862].+  * Type-like macros (e.g. `#define A int`) are now parsed and typechecked+    together with value-like macros (e.g. `#define FOO 1`) using `c-expr-dsl`,+    rather than `language-c`, and translated directly to Haskell types. See+    [issue #1953][is-1953].+  * Names in macro bodies are resolved against all declarations in the+    translation unit.+  * Program slicing follows the dependencies of macros: selecting a macro also+    selects the declarations it uses.+  * When reparsing a declaration that uses macros, only the macros Clang+    expanded *in that declaration* are substituted.+  * Macro expansions in global variable declarations are supported. See [issue+    #831][is-831].+* Declarations may use type macros together with other macros, including+  macros that `hs-bindgen` cannot translate, such as macros expanding to+  attributes. The type macros are reflected in the generated bindings, and the+  other macros are expanded as Clang expands them. Previously, type macros were+  only supported in bindings that used no other macros at all.+  Support is decided per declaration: it works as long as no macro the+  declaration expands is ambiguous, that is, neither the macro nor any macro it+  depends on has conflicting redefinitions (see below). See [issue+  #1225][is-1225], [issue #2012][is-2012], [PR #1892][pr-1892] and [PR+  #2034][pr-2034].+* Benign macro redefinitions now collapse into one declaration, and do not+  make the expansion of the macro ambiguous. A macro redefinition is benign if+  and only if all definitions have the same name, parameter list and+  replacement list (white space within the replacement list is ignored), and+  none of the macros they depend on, directly or indirectly, has conflicting+  redefinitions; all other redefinitions conflict. In particular, repeating a+  definition word for word conflicts if a macro it uses is redefined+  differently in between. We generate no bindings for a macro with conflicting+  redefinitions. For any repeated+  declaration, macro or not, we keep the definition in a main header, or the+  first if none is in a main header. A declaration first defined in an+  included header and repeated in a main header is therefore now selected by+  the default selection predicate. See [issue #2264][is-2264] and [PR+  #2281][pr-2281].+* In Template Haskell mode, the macro language (how macro bodies are parsed,+  typechecked and translated) can be chosen:+  `HsBindgen.TH.withHsBindgenMacroLang` takes the macro language as an+  argument, while `withHsBindgen` uses the default. `HsBindgen.Macro` provides+  `cExpr` (the default), `empty` (recognises no macros; Clang's own expansions+  are used), and `raw` (every macro becomes a `HsBindgen.Runtime.Macro.Raw+  String` value holding its name, parameter list and token spellings).+  The macro language argument is a function of the C standard, which+  `withHsBindgenMacroLang` detects. The macro language interface is opaque, so+  custom macro languages are not yet supported; they will be once the+  `hs-bindgen` library API is finalised (see [issue #1003][is-1003]). See+  [issue #2242][is-2242] and [issue #2243][is-2243].+* A new CLI option `--parse-empty-macros` (`EmptyMacros` with+  `ParseEmptyMacros`/`DoNotParseEmptyMacros` in Template Haskell mode) passes+  macros with an empty replacement list on to the macro language. `raw` can+  translate such macros. The default `cExpr` has no expression to translate and+  declines them; they are reported like any other macro that failed to+  translate. By default, empty macros are not parsed at all, since include+  guards have this shape. See [issue #2246][is-2246].+* `hs-bindgen` now emits a single, default-visible summary line reporting how+  many selected macros it failed to translate, e.g. `14 macros failed to+  translate; use --log-enable-macro-warnings for details`. Previously these+  failures were only logged at `Info` level and hidden at the default+  verbosity, giving the impression that macros were not translated at all. See+  [issue #2185][is-2185].+* A new CLI option `--select-from-all-headers` (`SelectHeader FromAllHeaders`+  in Template Haskell mode) selects every declaration in any header, main or+  included. Unlike `--select-all`, it does not select macros defined by `-D`+  Clang options or by root directives. See [issue #2280][is-2280].+* Extract Haddock documentation from C headers using Doxygen. When the+  `doxygen` binary is available on `PATH`, `hs-bindgen` invokes it to parse+  structured documentation comments (Javadoc/Doxygen-style `/** ... */`) and+  translates them into Haddock comments on the generated bindings. If `doxygen`+  is not found, `hs-bindgen` warns and generates metadata-only comments (source+  location and C name).+* Mirror Doxygen `@defgroup` sections (including nested `@ingroup` groupings)+  as Haddock section headers in the export lists of generated modules.+* The `hs-bindgen-cli info doxygen` subcommand dumps the parsed Doxygen+  comments.+* Generate class instances for field access and zero values of structs,+  unions and newtypes:+  * `GHC.Records.Compat.HasField` instances for struct fields, union fields,+    and the fields of generated newtypes (for typedefs, enums, and macro+    types), with Haddock comments;+  * `GHC.Records.HasField` instances for union fields;+  * `HsBindgen.Runtime.Struct.IsStruct` instances for structs;+  * `HsBindgen.Runtime.Union.IsUnion` instances for unions.++  With `OverloadedRecordUpdate` (see `HsBindgen.Runtime.Overloading`), struct+  and union values can be constructed by record updates of the zero value of+  `IsStruct` or `IsUnion`. This is particularly useful for unions, which are+  opaque datatypes, and combines with indirect fields (see below).++  See [issue #2059][is-2059], [issue #2060][is-2060], [issue #2083][is-2083],+  [issue #2121][is-2121], [PR #2075][pr-2075], [PR #2087][pr-2087], [PR+  #2091][pr-2091], [PR #2150][pr-2150] and [PR #2164][pr-2164].+* Generate `HasField` instances for indirect fields, both for values and, for+  the pointer manipulation API, for pointers. Indirect fields are fields of+  anonymous structs and unions that can be accessed as if they were fields of+  the enclosing struct or union, as in C. With `OverloadedRecordDot`, a field+  of an anonymous union inside a struct can thus be read from a value of, or a+  pointer to, the struct directly, without naming the generated union type.+  See [issue #2061][is-2061] and [PR #2136][pr-2136].+* Support bit-fields in unions. See [issue #1253][is-1253].+* Generate `_Aux` newtypes for function types that are indirectly referenced by+  `typedef`s. Previously these newtypes were only generated when function types+  were indirectly referenced through pointers. Now any type of indirection is+  supported, such as arrays, qualifiers, and blocks. Likewise, generate+  `ToFunPtr` and `FromFunPtr` instances for all nested function types,+  including those nested in global variables and typedefs. See [issue+  #1520][is-1520] and [PR #2068][pr-2068].+* Generate a `StaticSize` instance for `emptydata` types whose underlying C+  type is complete (a struct, union, or enum with a known size and alignment,+  or a typedef of one), so that callers can allocate the type from Haskell even+  though its fields are hidden. Types that are opaque in C (such as forward+  declarations) get no instance. See [issue #2014][is-2014].+* The C type specification of binding specifications gains an `enum` key with+  values `open` (default) or `closed`. For a closed `enum`, we generate a+  `COMPLETE` pragma for the declared patterns, so that GHC considers a match+  on all of them exhaustive. See [issue #2101][is-2101].+* In Template Haskell mode, external types referenced via external binding+  specifications that are not in scope now produce a helpful compile error+  suggesting the missing import.+* A new CLI option `--color WHEN` controls ANSI colours in diagnostics, where+  `WHEN` is `always`, `auto` (default: detect terminal support), or `never`.+  See [issue #2166][is-2166].+* A new CLI option `--log-squashed-as-info` (and matching+  `CustomLogLevelSetting` constructor `MakeMangleNamesSquashedInfo`) demotes+  the `select-mangle-names-squashed` trace from `Notice` to `Info`, so the+  per-typedef squash messages no longer appear at the default verbosity. See+  [issue #1574][is-1574].+* A new CLI option `--log-as-error-bugs` turns bug-level trace messages into+  errors. This is useful when `hs-bindgen` is used in a CI pipeline.+* The `hs-bindgen-cli info include-graph` command gained a `--toposort` flag+  that outputs the headers as a topologically sorted list (one per line, each+  header after the ones it `#include`s) instead of a Mermaid graph. Respects+  `--include`/`--exclude` and `--show-paths`. See [issue #2080][is-2080].+* Support LLVM/Clang 23. See [issue #2235][is-2235].++### Minor changes++* The `c-expr-dsl` and `c-expr-runtime` libraries have been extracted into+  their own repository ([well-typed/c-expr](https://github.com/well-typed/c-expr))+  and are consumed from Hackage.+* Print types without redundant parentheses, and type operators with infix+  notation, in generated bindings. See [issue #1790][is-1790], [issue+  #1715][is-1715] and [PR #1917][pr-1917].+* `HsBindgen.TH` now also exports `BindgenM` (opaque).+* `hs-bindgen-cli info builtin-macros` no longer lists macros defined by `-D`+  Clang options, including the ones the Clang driver adds itself. See [issue+  #2280][is-2280].+* Trace messages capture call stacks where they are created rather than where+  they are emitted, making `--log-show-call-stack` output point at the code+  that produced the message.++### Bug fixes++* Generated modules no longer clash with `Prelude` names. Previously, C+  declarations such as `typedef int Maybe` or `enum { LT, EQ, GT }` resulted in+  ambiguous names. See [issue #2287][is-2287].+* Object-like macros whose replacement list starts with `(`, such as+  `#define G (x, y) x + y`, are no longer parsed as function-like macros. A+  macro is function-like only if there is no white space between its name and+  the opening parenthesis.+* A function-like macro whose parameter is spelled like a C keyword, such as+  `#define F(bool) bool`, is no longer dropped. Such a parameter shadows the+  keyword in the replacement list: the body of `#define F(bool) bool` is the+  parameter, not the type.+* A header that uses a macro defined by a `-D` Clang option, and then redefines+  it, no longer makes `hs-bindgen` panic. The redefinition is now a conflict,+  like two differing definitions in a header. See [issue #2280][is-2280].+* Fix the parsing of primitive types in declarations that involve macro+  expansions. The bug would, for example, cause `long long int` to be parsed as+  `long int` in some cases. See [issue #1685][is-1685] and [PR #1921][pr-1921].+* Fix the reparser to ignore storage class specifiers, function specifiers, and+  attribute specifier sequences. Previously, macro-using declarations carrying+  any of these failed to reparse and silently fell back to the un-reparsed+  type, dropping macro typedef names from generated bindings. See [issue+  #1891][is-1891] and [PR #1955][pr-1955].+* Prevent confusing info-level messages for reparse errors involving+  declarations that contain nested declarations. For example, for a nested+  declaration such as `typedef struct { MyInt x; } * foo;` where `MyInt` is a+  macro type, a message would be traced that `foo` could not be reparsed, even+  though the struct field `x` is still reparsed successfully. See [issue+  #1382][is-1382] and [PR #2021][pr-2021].+* Unnamed declarations originating from the same macro expansion no longer+  make `hs-bindgen` panic. Their identifiers now include a hash of the+  declaration, which makes them unique on all supported LLVM versions. See+  [issue #1860][is-1860] and [issue #2210][is-2210].+* Support untagged structs, unions and enums that are indirectly referenced+  by global variables. For example, `struct { int x; } var;` was+  previously supported but `struct { int x; } * var;` or `struct { int x; }+  var[];` would cause a panic. See [PR #2017][pr-2017].+* External binding specifications now match correctly when the same header is+  reached by different `#include` spellings (e.g. `../core.h` vs `core.h`).+  Identity comparisons use canonical paths instead of the Clang-reported+  filename, which depends on include order. See [issue #2236][is-2236].+* Declarations using `_Float16`, `__fp16`, `__bf16`, or `__ibm128` now fail to+  parse with an unsupported-feature warning, instead of being reported as a+  bug in `hs-bindgen`. See [issue #2230][is-2230].+* Declarations using SIMD vector types now fail to parse with an+  unsupported-feature warning. See [issue #2198][is-2198].+* Declarations with unexposed types (such as the type of `malloc` with+  LLVM/Clang 22) now fail to parse with a warning.+* Silently ignore `__declspec(dllimport)` and `__declspec(dllexport)`+  attributes when parsing function, variable, and enum declarations.+  Previously, these triggered a `Bug`-level `Unexpected cursor kind` trace on+  Windows for every CRT declaration carrying `__declspec(dllimport)`. See+  [issue #1910][is-1910].+* `_Static_assert` declarations are now ignored, rather than reported as an+  unexpected cursor kind.+* Generated modules now enable every language extension they need, such as+  `FlexibleInstances` and `ForeignFunctionInterface`, so that they compile+  with `Haskell2010` or `Haskell98` as the default language. Previously, some+  of these were covered only implicitly by `GHC2021`.+* Stop emitting the `CApiFFI` language pragma in generated modules that do not+  use the `capi` calling convention. See [issue #1868][is-1868].+* Fix reversed order of Haddock documentation in Template Haskell mode. See+  [issue #1832][is-1832] and [PR #1895][pr-1895].+* In Template Haskell mode, traces are no longer prefixed with "Template+  Haskell error: ", which made warnings look like errors. All traces now go to+  `stderr` (previously, only warnings and errors did). See [issue+  #2216][is-2216].+* Fix duplicated `--safe`, `--unsafe`, and `--pointer` options in the+  `preprocess --help` output. See [issue #2010][is-2010].++[manual-c-stages]: https://github.com/well-typed/hs-bindgen/blob/main/manual/low-level/usage/c-stages.md+[manual-ffi-types]: https://github.com/well-typed/hs-bindgen/blob/main/manual/low-level/translation/ffi-types.md+[is-831]: https://github.com/well-typed/hs-bindgen/issues/831+[is-1003]: https://github.com/well-typed/hs-bindgen/issues/1003+[is-1225]: https://github.com/well-typed/hs-bindgen/issues/1225+[is-1253]: https://github.com/well-typed/hs-bindgen/issues/1253+[is-1382]: https://github.com/well-typed/hs-bindgen/issues/1382+[is-1432]: https://github.com/well-typed/hs-bindgen/issues/1432+[is-1445]: https://github.com/well-typed/hs-bindgen/issues/1445+[is-1520]: https://github.com/well-typed/hs-bindgen/issues/1520+[is-1574]: https://github.com/well-typed/hs-bindgen/issues/1574+[is-1685]: https://github.com/well-typed/hs-bindgen/issues/1685+[is-1715]: https://github.com/well-typed/hs-bindgen/issues/1715+[is-1790]: https://github.com/well-typed/hs-bindgen/issues/1790+[is-1832]: https://github.com/well-typed/hs-bindgen/issues/1832+[is-1860]: https://github.com/well-typed/hs-bindgen/issues/1860+[is-1868]: https://github.com/well-typed/hs-bindgen/issues/1868+[is-1891]: https://github.com/well-typed/hs-bindgen/issues/1891+[is-1910]: https://github.com/well-typed/hs-bindgen/issues/1910+[is-1953]: https://github.com/well-typed/hs-bindgen/issues/1953+[is-2010]: https://github.com/well-typed/hs-bindgen/issues/2010+[is-2012]: https://github.com/well-typed/hs-bindgen/issues/2012+[is-2014]: https://github.com/well-typed/hs-bindgen/issues/2014+[is-2059]: https://github.com/well-typed/hs-bindgen/issues/2059+[is-2060]: https://github.com/well-typed/hs-bindgen/issues/2060+[is-2061]: https://github.com/well-typed/hs-bindgen/issues/2061+[is-2064]: https://github.com/well-typed/hs-bindgen/issues/2064+[is-2080]: https://github.com/well-typed/hs-bindgen/issues/2080+[is-2083]: https://github.com/well-typed/hs-bindgen/issues/2083+[is-2101]: https://github.com/well-typed/hs-bindgen/issues/2101+[is-2121]: https://github.com/well-typed/hs-bindgen/issues/2121+[is-2166]: https://github.com/well-typed/hs-bindgen/issues/2166+[is-2185]: https://github.com/well-typed/hs-bindgen/issues/2185+[is-2198]: https://github.com/well-typed/hs-bindgen/issues/2198+[is-2210]: https://github.com/well-typed/hs-bindgen/issues/2210+[is-2214]: https://github.com/well-typed/hs-bindgen/issues/2214+[is-2216]: https://github.com/well-typed/hs-bindgen/issues/2216+[is-2217]: https://github.com/well-typed/hs-bindgen/issues/2217+[is-2230]: https://github.com/well-typed/hs-bindgen/issues/2230+[is-2235]: https://github.com/well-typed/hs-bindgen/issues/2235+[is-2236]: https://github.com/well-typed/hs-bindgen/issues/2236+[is-2242]: https://github.com/well-typed/hs-bindgen/issues/2242+[is-2243]: https://github.com/well-typed/hs-bindgen/issues/2243+[is-2246]: https://github.com/well-typed/hs-bindgen/issues/2246+[is-2264]: https://github.com/well-typed/hs-bindgen/issues/2264+[is-2266]: https://github.com/well-typed/hs-bindgen/issues/2266+[is-2280]: https://github.com/well-typed/hs-bindgen/issues/2280+[is-2287]: https://github.com/well-typed/hs-bindgen/issues/2287+[pr-1862]: https://github.com/well-typed/hs-bindgen/pull/1862+[pr-1892]: https://github.com/well-typed/hs-bindgen/pull/1892+[pr-1895]: https://github.com/well-typed/hs-bindgen/pull/1895+[pr-1917]: https://github.com/well-typed/hs-bindgen/pull/1917+[pr-1921]: https://github.com/well-typed/hs-bindgen/pull/1921+[pr-1955]: https://github.com/well-typed/hs-bindgen/pull/1955+[pr-2017]: https://github.com/well-typed/hs-bindgen/pull/2017+[pr-2021]: https://github.com/well-typed/hs-bindgen/pull/2021+[pr-2034]: https://github.com/well-typed/hs-bindgen/pull/2034+[pr-2068]: https://github.com/well-typed/hs-bindgen/pull/2068+[pr-2070]: https://github.com/well-typed/hs-bindgen/pull/2070+[pr-2075]: https://github.com/well-typed/hs-bindgen/pull/2075+[pr-2087]: https://github.com/well-typed/hs-bindgen/pull/2087+[pr-2091]: https://github.com/well-typed/hs-bindgen/pull/2091+[pr-2094]: https://github.com/well-typed/hs-bindgen/pull/2094+[pr-2136]: https://github.com/well-typed/hs-bindgen/pull/2136+[pr-2150]: https://github.com/well-typed/hs-bindgen/pull/2150+[pr-2164]: https://github.com/well-typed/hs-bindgen/pull/2164+[pr-2267]: https://github.com/well-typed/hs-bindgen/pull/2267+[pr-2281]: https://github.com/well-typed/hs-bindgen/pull/2281++## 0.1.0-alpha2 -- 2026-03-27++### Breaking changes++* Rename option `--enable-record-dot` to `--omit-field-prefixes`, which is more+  to the point.+* Occurrences of the `CFieldType`/`CBitfieldType` type families in+  class instance heads are now replaced by their definition.+* `--enable-blocks` CLI option renamed to `-fblocks`, matching `clang`+* Macro declarations are now handled internally using a separate namespace.+  Binding specifications and selection predicates now refer to macros using+  `macro`.  For example, a macro named `foo` is referred to as `macro foo`.+* For C function *declarations* that take arrays as arguments, generate Haskell+  function declarations that take pointers to their corresponding array+  *elements* as arguments. This uses the `Elem` associated type class from the+  new `IsArray` class. See [PR #1712][pr-1712].+* For C function *types* (.e.g, `typedef`s) that take arrays as arguments,+  generate Haskell function types (.e.g, `newtype`s) that take pointers to their+  corresponding array *elements* as arguments. This uses the `Elem` associated+  type class from the new `IsArray` class. See [PR #1712][pr-1712].+* Parse predicates have been removed. Now, `hs-bindgen` always parses and+  reifies all declarations, reducing code complexity and cognitive overhead+  imposed on users. To migrate, remove `--parse-*` command line client options,+  or the parse-related configuration option when using Template Haskell model.++### New features++* The `info include-graph` sub-command has received new options: `--include+  PCRE`, and `--exclude PCRE` allow fine-tuned choice of headers to include or+  exclude from the include graph; `--simple` reduces include graph verbosity,+  for example, by removing edge labels.+* Generate explicit export lists in preprocessor-generated modules, hiding+  internal `hs_bindgen_` helper bindings from the public API and documentation+  ([#76](https://github.com/well-typed/hs-bindgen/issues/76)). Export items+  are module-qualified (e.g. `Example.myFunc`) to avoid ambiguity with+  Prelude names.+* The command line client has a new `internal frontend` sub-command. It takes a+  `--pass` option (e.g. `internal frontend --pass select`), dumping the result+  of the provided frontend pass. Defaults to `adjust-types` (the final pass)+  when omitted.+* Add `--post-qualified-imports` flag to generate post-qualified imports+  (`import Data.Proxy qualified`) instead of pre-qualified imports. This adds+  the `ImportQualifiedPost` language extension to generated modules.+* Support top-level untagged structs and enums as global variables+  (e.g., `struct { int x; int y; } point;`). The untagged type is named+  after the global variable. Extern untagged declarations+  (e.g., `extern struct { .. } config;`) are rejected as unusable.+* Generate an `IsArray` instance for each newtype of a type with an `IsArray`+* Support unnamed bit-field declarations, used for padding.+* Generate bindings for nested struct and union declarations even if we failed+  to generate bindings for the enclosing struct or union. See [PR+  #1849][pr-1849].+* Generate bindings for nested anonymous structs and unions. See [PR+  #1839][pr-1839] and [PR #1869][pr-1869].++### Minor changes++* Support `language-c` 0.9.x through 0.10.2+  ([#1662](https://github.com/well-typed/hs-bindgen/issues/1662)).+* Re-export all global definitions used by `hs-bindgen` generated code from+  `hs-bindgen-runtime`. This may affect required packages when using+  `hs-bindgen` generated code. In particular, the packages `ghc-prim` and+  `primitive` are not required by `hs-bindgen` generated code anymore.+* Improve and disambiguate delayed parse trace messages.+* Improve error handling in `hs-bindgen` frontend, see [issue #1009][is-1009]++### Bug fixes++* Fix generation of documentation for record fields in Template Haskell mode+  with `OmitFieldPrefixes`. Previously, duplicate record fields induced "ambiguous+  occurrence" errors. This fix is only available for GHC versions 9.8 and newer.+  For older versions of GHC, we deactivated creation of documentation for record+  fields in Template Haskell mode.+* Generate bindings for `static` (non-`const`) declarations. Previously these+  were rejected as an unsupported, even though the duplicate-symbols warning+  suggested using `static`+  ([#1769](https://github.com/well-typed/hs-bindgen/issues/1769)).+* Wrap function names in parentheses in generated C wrappers (`(erf)(x)`+  instead of `erf(x)`) to prevent function-like macro expansion when a macro+  shadows the function name.+* Fix incorrect enum constant values for enums with unsigned underlying types+  (e.g. `enum : uint8_t`). Values above the signed range (such as 128 or 255+  for `uint8_t`) were incorrectly stored as negative numbers because+  `hs-bindgen` used the signed libclang API.+* Include `FunPtr` for macro-defined newtypes. See [PR #1711][pr-1711].+* Fix a panic that occurred in some cases when generating `_Aux` newtypes for+  function pointers. See [issue #1694][is-1694] and [PR #1724][pr-1724].+* Fix a panic that occurred when the argument to a `#include` is a macro. In+  Haddock documentation of declarations in the included header, we just+  document the filename of the header.+* Fix `--create-output-dirs` not creating directories for `--gen-binding-spec`+  output paths. See [issue #1806][is-1806].+* Skip functions whose parameters reference struct/union declarations that+  will not be visible outside of the function, including both forward+  references and inline definitions. This could indicate a missing `#include`+  in the C header. Previously, forward references caused a panic in+  `MangleNames`; now they are skipped with a warning.++[is-1009]: https://github.com/well-typed/hs-bindgen/issues/1009+[is-1694]: https://github.com/well-typed/hs-bindgen/issues/1694+[is-1806]: https://github.com/well-typed/hs-bindgen/issues/1806+[pr-1711]: https://github.com/well-typed/hs-bindgen/pull/1711+[pr-1712]: https://github.com/well-typed/hs-bindgen/pull/1712+[pr-1724]: https://github.com/well-typed/hs-bindgen/pull/1724+[pr-1839]: https://github.com/well-typed/hs-bindgen/pull/1839+[pr-1849]: https://github.com/well-typed/hs-bindgen/pull/1849+[pr-1869]: https://github.com/well-typed/hs-bindgen/pull/1869++## 0.1.0-alpha -- 2026-02-06++* First public pre-release.
+ LICENSE view
@@ -0,0 +1,29 @@+Copyright (c) 2024-2026, Well-Typed LLP and Anduril Industries Inc.+++Redistribution and use in source and binary forms, with or without+modification, are permitted provided that the following conditions are met:++    * Redistributions of source code must retain the above copyright+      notice, this list of conditions and the following disclaimer.++    * Redistributions in binary form must reproduce the above+      copyright notice, this list of conditions and the following+      disclaimer in the documentation and/or other materials provided+      with the distribution.++    * Neither the name of the copyright holder nor the names of its+      contributors may be used to endorse or promote products derived+      from this software without specific prior written permission.++THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS+"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT+LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR+A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT+HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,+SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT+LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,+DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY+THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT+(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE+OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ README.md view
@@ -0,0 +1,9 @@+# `hs-bindgen`++`hs-bindgen` is a [Haskell][] library that *automatically* generates Haskell FFI+bindings from C header files.++See the [repository README][] for the manual and other information.++[Haskell]: https://www.haskell.org/+[repository README]: https://github.com/well-typed/hs-bindgen#hs-bindgen
+ app/HsBindgen/App.hs view
@@ -0,0 +1,617 @@+{-# LANGUAGE ApplicativeDo #-}++-- | @hs-bindgen@ application common types and functions+module HsBindgen.App (+    hsBindgen++    -- * Global options+  , GlobalOpts(..)+  , parseGlobalOpts++    -- * Argument/option parsers+    -- ** Bindgen configuration+  , Config+  , parseConfig+    -- ** Clang arguments+  , parseClangArgsConfig+    -- ** Translation option+  , parseUniqueId+    -- ** Module option+  , parseBaseModuleName+  , parseQualifiedStyle+    -- ** Output options+  , parseHsOutputDir+  , parseDirPolicy+  , parseFilePolicy+  , parseGenBindingSpec+  , parseGenTestsOutput+    -- ** Input arguments+  , parseInputs++    -- * Auxiliary optparse-applicative functions+  , cmd+  , cmd_+  ) where++import Data.Char qualified as Char+import Data.Default (Default (..))+import Data.Either (partitionEithers)+import Data.Maybe (catMaybes)+import Options.Applicative+import Options.Applicative.Extra (helperWith)+import System.IO (stderr)++import HsBindgen+import HsBindgen.ArtefactM (DirPolicy (..), FilePolicy (..))+import HsBindgen.BindingSpec+import HsBindgen.Config+import HsBindgen.Config.ClangArgs+import HsBindgen.Config.Internal+import HsBindgen.Frontend.Pass.Parse.IsPass (EmptyMacros (..))+import HsBindgen.Frontend.Pass.Select.IsPass+import HsBindgen.Frontend.Predicate+import HsBindgen.IR.C qualified as C+import HsBindgen.Macro (CExpr)+import HsBindgen.Macro qualified as Macro+import HsBindgen.TraceMsg+import HsBindgen.Util.Tracer++-- | Convenience entry point using the default C macro language.+hsBindgen ::+     TracerConfig Level     TraceMsg+  -> TracerConfig SafeLevel SafeTraceMsg+  -> BindgenConfig+  -> [C.UncheckedRootDirective]+  -> Artefact CExpr a+  -> IO a+hsBindgen = hsBindgenMacroLang (pure . Macro.cExpr)++{-------------------------------------------------------------------------------+  Global options+-------------------------------------------------------------------------------}++data GlobalOpts = GlobalOpts {+      unsafe :: TracerConfig Level     TraceMsg+    , safe   :: TracerConfig SafeLevel SafeTraceMsg+    }++parseGlobalOpts :: Parser GlobalOpts+parseGlobalOpts = aux <$> parseAnsiColor <*> parseTracerConfig+  where+    aux :: Maybe AnsiColor -> TracerConfig Level TraceMsg -> GlobalOpts+    aux ansiColor tracerConfig =+      let tracerConfigUnsafe :: TracerConfig Level TraceMsg+          tracerConfigUnsafe =+            tracerConfig { outputConfig = mkOutputConfig ansiColor }+          tracerConfigSafe :: TracerConfig SafeLevel SafeTraceMsg+          tracerConfigSafe = TracerConfig {+              verbosity      = tracerConfig.verbosity+            , outputConfig   = mkOutputConfig ansiColor+            , customLogLevel = mempty+            , showCallStack  = tracerConfig.showCallStack+            }+      in  GlobalOpts tracerConfigUnsafe tracerConfigSafe++{-------------------------------------------------------------------------------+  Output configuration+-------------------------------------------------------------------------------}++-- | Output configuration writing to 'stderr' with the given ANSI color setting.+--+-- 'Nothing' auto-detects color support from the handle.+mkOutputConfig :: Maybe AnsiColor -> OutputConfig e+mkOutputConfig ansiColor = OutputConfigHandle OutputHandle {+      handle    = stderr+    , ansiColor = ansiColor+    }++-- | Parse the @--color WHEN@ option: 'Nothing' (auto) is the default.+parseAnsiColor :: Parser (Maybe AnsiColor)+parseAnsiColor = option (eitherReader auxParse) $ mconcat [+      long "color"+    , metavar "WHEN"+    , value Nothing+    , showDefaultWith auxRender+    , help "Colorize diagnostics WHEN (supported: always, auto, never)"+    ]+  where+    auxParse :: String -> Either String (Maybe AnsiColor)+    auxParse = \case+      "always" -> Right (Just EnableAnsiColor)+      "auto"   -> Right Nothing+      "never"  -> Right (Just DisableAnsiColor)+      other    -> Left $+        "invalid color mode: " ++ other ++ " (supported: always, auto, never)"++    auxRender :: Maybe AnsiColor -> String+    auxRender = \case+      Just EnableAnsiColor  -> "always"+      Nothing               -> "auto"+      Just DisableAnsiColor -> "never"++{-------------------------------------------------------------------------------+  Tracer configuration+-------------------------------------------------------------------------------}++parseTracerConfig :: Parser (TracerConfig Level TraceMsg)+parseTracerConfig =+    TracerConfig+      <$> parseVerbosity+      <*> pure def+      <*> parseCustomLogLevel+      <*> parseShowCallStack++parseVerbosity :: Parser Verbosity+parseVerbosity = fmap nToVerbosity . option auto $ mconcat [+      short 'v'+    , long "verbosity"+    , metavar "INT"+    , value 2+    , help "Verbosity (0: error, 1: warning, 2: notice, 3: info, 4: debug)"+    , showDefault+    ]+  where+    nToVerbosity :: Int -> Verbosity+    nToVerbosity = Verbosity . \case+      n | n <= 0 -> Error+      1          -> Warning+      2          -> Notice+      3          -> Info+      _otherwise -> Debug++parseCustomLogLevel :: Parser (CustomLogLevel Level TraceMsg)+parseCustomLogLevel = do+    -- Generic setters+    makeTraceInfos    <- many $ parseMakeTrace Info+    makeTraceWarnings <- many $ parseMakeTrace Warning+    makeTraceErrors   <- many $ parseMakeTrace Error+    -- Generic modifiers+    makeBugsErrors     <- optional parseMakeBugsErrors+    makeWarningsErrors <- optional parseMakeWarningsErrors+    -- Specific setters+    enableMacroWarnings         <- optional parseEnableMacroWarnings+    makeMangleNamesSquashedInfo <- optional parseMakeMangleNamesSquashedInfo+    pure $ getCustomLogLevel $ catMaybes [+        enableMacroWarnings+      , makeMangleNamesSquashedInfo+      , makeBugsErrors+      , makeWarningsErrors+      ]+      ++ makeTraceInfos+      ++ makeTraceWarnings+      ++ makeTraceErrors+  where+    parseMakeTrace :: Level -> Parser CustomLogLevelSetting+    parseMakeTrace level =+      let levelStr = map Char.toLower $ show level+      in  fmap (MakeTrace level) . strOption $ mconcat [+              long $ "log-as-" <> levelStr+            , metavar "TRACE_ID"+            , help $ "Set log level of traces with TRACE_ID to " <> levelStr+            ]++    parseMakeBugsErrors :: Parser CustomLogLevelSetting+    parseMakeBugsErrors = flag' MakeBugsErrors $ mconcat [+        long "log-as-error-bugs"+      , help "Set log level of bugs to error"+      ]++    parseMakeWarningsErrors :: Parser CustomLogLevelSetting+    parseMakeWarningsErrors = flag' MakeWarningsErrors $ mconcat [+        long "log-as-error-warnings"+      , help "Set log level of warnings and bugs to error"+      ]++    parseEnableMacroWarnings :: Parser CustomLogLevelSetting+    parseEnableMacroWarnings = flag' EnableMacroWarnings $ mconcat [+        long "log-enable-macro-warnings"+      , help $ concat [+            "Set log level of macro reparse and typecheck errors to warning"+          , " (default: info)"+          ]+      ]++    parseMakeMangleNamesSquashedInfo :: Parser CustomLogLevelSetting+    parseMakeMangleNamesSquashedInfo =+        flag' MakeMangleNamesSquashedInfo $ mconcat [+            long "log-squashed-as-info"+          , help $ concat [+                "Set log level of squashed-typedef traces to info"+              , " (default: notice)"+              ]+          ]++parseShowCallStack :: Parser ShowCallStack+parseShowCallStack = flag DisableCallStack EnableCallStack $ mconcat [+      long "log-show-call-stack"+    , help "Show call stacks in traces"+    ]++{-------------------------------------------------------------------------------+  Configuration+-------------------------------------------------------------------------------}++type Config = Config_ FilePath++parseConfig :: Parser Config+parseConfig = Config+    <$> parseClangArgsConfig+    <*> parseBindingSpec+    <*> parseSelectionPredicate+    <*> parseProgramSlicing+    <*> parseFieldNamingStrategy+    <*> parseEmptyMacros++{-------------------------------------------------------------------------------+  Binding specifications+-------------------------------------------------------------------------------}++parseBindingSpec :: Parser BindingSpecConfig+parseBindingSpec = BindingSpecConfig+  <$> parseEnableStdlibBindingSpec+  <*> parseBindingSpecAllowNewer+  <*> many parseExtBindingSpec+  <*> optional parsePrescriptiveBindingSpec++parseEnableStdlibBindingSpec :: Parser EnableStdlibBindingSpec+parseEnableStdlibBindingSpec =+    flag EnableStdlibBindingSpec DisableStdlibBindingSpec $ mconcat [+        long "no-stdlib"+      , help "Do not automatically use stdlib external binding specification"+      ]++parseBindingSpecAllowNewer :: Parser BindingSpecCompatibility+parseBindingSpecAllowNewer =+    flag BindingSpecStrict BindingSpecAllowNewer $ mconcat [+        long "binding-spec-allow-newer"+      , help "Parse binding specifications with newer minor version"+      ]++parseExtBindingSpec :: Parser FilePath+parseExtBindingSpec = strOption $ mconcat [+      long "external-binding-spec"+    , metavar "FILE"+    , help "External binding specification (YAML file)"+    ]++parsePrescriptiveBindingSpec :: Parser FilePath+parsePrescriptiveBindingSpec = strOption $ mconcat [+      long "prescriptive-binding-spec"+    , metavar "FILE"+    , help "Prescriptive binding specification (YAML file)"+    ]++{-------------------------------------------------------------------------------+  Builtin include directory+-------------------------------------------------------------------------------}++parseBuiltinIncDirConfig :: Parser BuiltinIncDirConfig+parseBuiltinIncDirConfig = option (eitherReader auxParse) $ mconcat [+      long "builtin-include-dir"+    , metavar "MODE"+    , showDefaultWith auxRender+    , value BuiltinIncDirClang+    , help+        "Configure builtin include directory (supported: clang, disable)"+    ]+  where+    auxParse :: String -> Either String BuiltinIncDirConfig+    auxParse = \case+      "clang"   -> Right BuiltinIncDirClang+      "disable" -> Right BuiltinIncDirDisable+      other     -> Left $ "invalid builtin include directory mode: " ++ other++    auxRender :: BuiltinIncDirConfig -> String+    auxRender = \case+      BuiltinIncDirClang   -> "clang"+      BuiltinIncDirDisable -> "disable"++{-------------------------------------------------------------------------------+  Clang arguments+-------------------------------------------------------------------------------}++parseClangArgsConfig :: Parser (ClangArgsConfig FilePath)+parseClangArgsConfig = do+    -- ApplicativeDo to be able to reorder arguments for --help, and to use+    -- record construction (i.e., to avoid bool or string/path blindness)+    -- instead of positional one.+    enableBlocks     <- parseEnableBlocks+    builtinIncDir    <- parseBuiltinIncDirConfig+    extraIncludeDirs <- many parseIncludeDir+    argsBefore       <- many parseClangOptionBefore+    argsInner        <- many parseClangOptionInner+    argsAfter        <- many parseClangOptionAfter+    pure $ ClangArgsConfig{+        enableBlocks     = enableBlocks+      , builtinIncDir    = builtinIncDir+      , extraIncludeDirs = extraIncludeDirs+      , argsBefore       = argsBefore+      , argsInner        = argsInner+      , argsAfter        = argsAfter+      }++parseEnableBlocks :: Parser Bool+parseEnableBlocks = switch $ mconcat [+      long "fblocks"+    , help "Enable the 'blocks' language feature"+    ]++parseIncludeDir :: Parser FilePath+parseIncludeDir = strOption $ mconcat [+      short 'I'+    , metavar "DIR"+    , help "Include search path directory"+    ]++parseClangOptionBefore :: Parser String+parseClangOptionBefore = strOption $ mconcat [+      long "clang-option-before"+    , metavar "OPTION"+    , help "Prepend option when calling Clang; see also --clang-option"+    ]++parseClangOptionInner :: Parser String+parseClangOptionInner = strOption $ mconcat [+      long "clang-option"+    , metavar "OPTION"+    , help "Pass option to Clang"+    ]++parseClangOptionAfter :: Parser String+parseClangOptionAfter = strOption $ mconcat [+      long "clang-option-after"+    , metavar "OPTION"+    , help "Append option when calling Clang; see also --clang-option"+    ]++{-------------------------------------------------------------------------------+  Predicates and slicing+-------------------------------------------------------------------------------}++parseSelectionPredicate :: Parser (Boolean SelectionPredicate)+parseSelectionPredicate = fmap aux . many . asum $ [+      flag' (Right BTrue) $ mconcat [+          long "select-all"+        , help "Select all declarations"+        ]+    , flag' (Right (BIf (SelectHeader FromMainHeaders))) $ mconcat [+          long "select-from-main-headers"+        , help "Select declarations in main headers (default)"+        ]+    , flag' (Right (BIf (SelectHeader FromMainHeaderDirs))) $ mconcat [+          long "select-from-main-header-dirs"+        , help "Select declarations in main header directories"+        ]+    , flag' (Right (BIf (SelectHeader FromAllHeaders))) $ mconcat [+          long "select-from-all-headers"+        , help $ concat [+              "Select declarations in any header"+            , " (unlike --select-all, not root directives or -D options)"+            ]+        ]+    , fmap (Right . BIf . SelectHeader . HeaderPathMatches) $ strOption $ mconcat [+          long "select-by-header-path"+        , metavar "PCRE"+        , help "Select declarations in headers with paths that match PCRE"+        ]+    , fmap (Left . BIf . SelectHeader . HeaderPathMatches) $ strOption $ mconcat [+          long "select-except-by-header-path"+        , metavar "PCRE"+        , help $ concat [+              "Select except declarations in headers with paths that match"+            , " PCRE"+            ]+        ]+    , fmap (Right . BIf . SelectDecl . DeclNameMatches) $ strOption $ mconcat [+          long "select-by-decl-name"+        , metavar "PCRE"+        , help "Select declarations with C names that match PCRE"+        ]+    , fmap (Left . BIf . SelectDecl . DeclNameMatches) $ strOption $ mconcat [+          long "select-except-by-decl-name"+        , metavar "PCRE"+        , help "Select except (i.e., do not select) declarations with C names that match PCRE"+        ]+    , flag' (Left $ BIf $ SelectDecl DeclDeprecated) $ mconcat [+          long "select-except-deprecated"+        , help "Select except (i.e., do not select) deprecated declarations"+        ]+    ]+  where+    aux ::+         [Either (Boolean SelectionPredicate) (Boolean SelectionPredicate)]+      -> (Boolean SelectionPredicate)+    aux = uncurry mergeBooleans . fmap applyDefault . partitionEithers++    applyDefault :: Default a => [a] -> [a]+    applyDefault = \case+      [] -> [def]+      ps -> ps++parseProgramSlicing :: Parser ProgramSlicing+parseProgramSlicing =+    flag DisableProgramSlicing EnableProgramSlicing $ mconcat [+        long "enable-program-slicing"+      , help $ concat [+            "Enable program slicing:"+          , " Select declarations using the selection predicate,"+          , " and also select their transitive dependencies;"+          , " program slicing can cause declarations to be included"+          , " even if they are explicitly deselected by a selection predicate"+          ]+      ]++{-------------------------------------------------------------------------------+  Macros+-------------------------------------------------------------------------------}++parseEmptyMacros :: Parser EmptyMacros+parseEmptyMacros =+    flag DoNotParseEmptyMacros ParseEmptyMacros $ mconcat [+        long "parse-empty-macros"+      , help $ concat [+            "Parse macros with an empty replacement list (e.g. '#define FOO');"+          , " by default, empty macros are not parsed"+          ]+      ]++{-------------------------------------------------------------------------------+  Translation options+-------------------------------------------------------------------------------}++parseUniqueId :: Parser UniqueId+parseUniqueId = fmap UniqueId . strOption $ mconcat [+      long "unique-id"+    , metavar "ID"+    , value ""+    , help $ concat [+          "Use unique ID to discriminate global C identifiers"+        , " (default: empty string)"+        ]+    ]++{-------------------------------------------------------------------------------+  Module option+-------------------------------------------------------------------------------}+++parseFieldNamingStrategy :: Parser FieldNamingStrategy+parseFieldNamingStrategy =+    flag AddFieldPrefixes OmitFieldPrefixes $ mconcat [+        long "omit-field-prefixes"+      , help $ concat [+            "Use unprefixed field names (e.g. 'x' instead of 'structName_x'). "+          , "All newtype unwrap functions are called 'unwrap'. "+          , "Requires 'DuplicateRecordFields' extension."+          ]+      ]++parseQualifiedStyle :: Parser QualifiedStyle+parseQualifiedStyle =+    flag PreQualified PostQualified $ mconcat [+        long "post-qualified-imports"+      , help $ concat [+            "Use post-qualified imports (e.g. 'import Data.Proxy qualified')"+          , " instead of pre-qualified imports."+          , " Adds 'ImportQualifiedPost' extension."+          ]+      ]++parseBaseModuleName :: Parser BaseModuleName+parseBaseModuleName = strOption $ mconcat [+      long "module"+    , metavar "NAME"+    , showDefault+    , value def+    , help "Base name of the generated Haskell modules"+    ]++{-------------------------------------------------------------------------------+  Output options+-------------------------------------------------------------------------------}++parseHsOutputDir :: Parser FilePath+parseHsOutputDir = strOption $ mconcat [+      long "hs-output-dir"+    , metavar "PATH"+    , help "Output directory of generated Haskell modules"+    ]++parseDirPolicy :: Parser DirPolicy+parseDirPolicy = flag DoNotCreateOutputDirs CreateOutputDirs $ mconcat [+      long "create-output-dirs"+    , help "Create the specified output directories if they do not exist"+    ]++parseFilePolicy :: Parser FilePolicy+parseFilePolicy = flag DoNotOverwriteFiles AllowFileOverwrite $ mconcat [+      long "overwrite-files"+    , help "Allow overwriting existing output files"+    ]++parseGenBindingSpec :: Parser FilePath+parseGenBindingSpec = strOption $ mconcat [+      long "gen-binding-spec"+    , metavar "PATH"+    , help "Binding specification to generate"+    ]++parseGenTestsOutput :: Parser FilePath+parseGenTestsOutput = strOption $ mconcat [+      short 'o'+    , long "output"+    , metavar "PATH"+    , showDefault+    , value "test-hs-bindgen"+    , help "Output directory for the test suite"+    ]++{-------------------------------------------------------------------------------+  Input arguments+-------------------------------------------------------------------------------}++-- | Parse one or more input root directives+--+-- @#include@s and @#define@s form a single ordered list: a @#define@ only+-- affects the headers listed after it.+--+-- We check that at least one directive is of type @#include@ when the root+-- header is constructed ('HsBindgen.Frontend.RootHeader.fromRootDirectives').+-- This ensures that CLI and TH mode have the same behavior. Also,+-- @optparse-applicative@ can only reject the parsed list with monadic+-- sequencing, but its usage renderer does not distinguish monadic sequencing+-- from repetition, so every bind picks up the @multiSuffix@ marker.+parseInputs :: Parser [C.UncheckedRootDirective]+parseInputs = some . asum $ [+      C.DirectiveHashInclude <$> parseHashInclude+    , C.DirectiveHashDefine  <$> parseHashDefine+    ]+  where+    parseHashInclude :: Parser C.UncheckedHashIncludeArg+    parseHashInclude = strArgument $ mconcat [+        metavar "HEADER"+      , help "Input C header(s), relative to an include path directory"+      ]++    parseHashDefine :: Parser C.HashDefine+    parseHashDefine =+        C.HashDefine+          -- The metavar covers both arguments, so that @--help@ shows the+          -- @#define@ shape; the value argument itself renders nothing.+          <$> strOption   (long "hash-define" <> metavar "NAME VALUE" <> help hashDefineHelp)+          <*> strArgument mempty++    hashDefineHelp :: String+    hashDefineHelp = unwords [+        "Emit '#define NAME VALUE' before the following headers."+      , "See 'Root directives' in the manual"+      , "(manual/low-level/usage/c-stages.md)."+      ]++{-------------------------------------------------------------------------------+  Auxiliary optparse-applicative functions+-------------------------------------------------------------------------------}++-- | Command with @-h@ and @--help@+cmd ::+     String     -- ^ Name+  -> (a -> c)   -- ^ Constructor+  -> Parser a   -- ^ Options parser+  -> InfoMod c  -- ^ Information+  -> Mod CommandFields c+cmd name mk parser = command name . info (helper <*> (mk <$> parser))++-- | Command with @--help@ (but no @-h@)+cmd_ ::+     String     -- ^ Name+  -> (a -> c)   -- ^ Constructor+  -> Parser a   -- ^ Options parser+  -> InfoMod c  -- ^ Information+  -> Mod CommandFields c+cmd_ name mk parser = command name . info (helper' <*> (mk <$> parser))+  where+    helper' :: Parser (a -> a)+    helper' = helperWith $ mconcat [+        long "help"+      , help "Show this help text"+      ]
+ app/HsBindgen/App/Output.hs view
@@ -0,0 +1,160 @@+{-# LANGUAGE ApplicativeDo #-}+{-# LANGUAGE RecordWildCards #-}++-- | Output mode and category selection options for @hs-bindgen@+module HsBindgen.App.Output (+    -- * Output mode+    OutputMode(..)+  , parseOutputMode+    -- * Single-file category selection+  , SingleFileCategory(..)+  , parseSingleFileCategories+    -- * Output options+  , OutputOptions(..)+  , parseOutputOptions+    -- * Builder+  , buildCategoryChoice+  ) where++import Data.Default (Default (..))+import Data.List.NonEmpty (NonEmpty (..))+import Data.Text (Text)+import GHC.Generics (Generic)+import Options.Applicative+import Options.Applicative.NonEmpty (some1)++import HsBindgen.Backend.Category (ByCategory (..), Choice (..),+                                   RenameTerm (..))+import HsBindgen.Backend.Level (Level (..))++{-------------------------------------------------------------------------------+  Output mode+-------------------------------------------------------------------------------}++-- | Output mode (single-file vs multi-module)+data OutputMode =+    FilePerModule+      -- ^ One file per category (default)+  | SingleFile (NonEmpty SingleFileCategory)+      -- ^ Single file combining categories+  deriving (Show, Eq)++-- | Parse output mode+parseOutputMode :: OutputMode -> Parser OutputMode+parseOutputMode defMode =+  asum [+    (flag' FilePerModule $ mconcat [+        long "file-per-module"+      , help "Generate one file per binding category (default)"+      ])+  , (flag' SingleFile $ mconcat [+        long "single-file"+      , help (  "Generate a single module file. If more than one category selected "+             ++ "they will be combined. If more than one of the same category is "+             ++ "selected only the last suffix is used."+             )+      ]) <*> parseSingleFileCategories+  , pure defMode+  ]++{-------------------------------------------------------------------------------+  Single-file category selection+-------------------------------------------------------------------------------}++-- | Which category to include in single-file mode (required when mode=SingleFile)+data SingleFileCategory =+    SingleFileSafe Text+      -- ^ Safe only, with optional suffix (empty = none)+  | SingleFileUnsafe Text+      -- ^ Unsafe only, with optional suffix+  | SingleFilePointer Text+      -- ^ Pointer only, with optional suffix+  deriving (Show, Eq)++-- | Parse single-file category selections (one or more required)+parseSingleFileCategories :: Parser (NonEmpty SingleFileCategory)+parseSingleFileCategories = some1 parseSingleFileCategory+  where+    parseSingleFileCategory :: Parser SingleFileCategory+    parseSingleFileCategory =+          (SingleFileSafe <$> strOption (mconcat [+                long "safe"+              , metavar "SUFFIX"+              , help "Include safe bindings (empty suffix for no suffix)"+              ]))+      <|> (SingleFileUnsafe <$> strOption (mconcat [+                long "unsafe"+              , metavar "SUFFIX"+              , help "Include unsafe bindings (empty suffix for no suffix)"+              ]))+      <|> (SingleFilePointer <$> strOption (mconcat [+                long "pointer"+              , metavar "SUFFIX"+              , help "Include pointer bindings (empty suffix for no suffix)"+              ]))++{-------------------------------------------------------------------------------+  Output options+-------------------------------------------------------------------------------}++-- | Output options+newtype OutputOptions = OutputOptions { mode :: OutputMode }+  deriving (Show, Eq, Generic)++-- | Parse output options+parseOutputOptions :: OutputMode -> Parser OutputOptions+parseOutputOptions defMode = OutputOptions <$> parseOutputMode defMode++{-------------------------------------------------------------------------------+  Builder+-------------------------------------------------------------------------------}++-- | Build 'ByCategory' 'Choice' from output options+--+-- When multiple categories are selected, each category gets the specified suffix+-- to avoid duplicate symbols. When only one category is selected with an empty+-- suffix, no renaming occurs.+--+buildCategoryChoice :: OutputOptions -> ByCategory Choice+buildCategoryChoice opts = case opts.mode of+  FilePerModule       -> useAllCategories+  SingleFile cats     -> buildSingleFileChoice cats+  where+    -- Multi-module: all categories, no renaming+    useAllCategories :: ByCategory Choice+    useAllCategories = ByCategory {+          cType   = IncludeTypeCategory+        , cSafe   = IncludeTermCategory def+        , cUnsafe = IncludeTermCategory def+        , cFunPtr = IncludeTermCategory def+        , cGlobal = IncludeTermCategory def+        }++    -- Single-file: build based on category selections+    buildSingleFileChoice :: NonEmpty SingleFileCategory -> ByCategory Choice+    buildSingleFileChoice cats = ByCategory {+          cType   = IncludeTypeCategory+        , cSafe   = foldMap safeChoice cats+        , cUnsafe = foldMap unsafeChoice cats+        , cFunPtr = foldMap pointerChoice cats+        , cGlobal = IncludeTermCategory def+        }++    safeChoice :: SingleFileCategory -> Choice LvlTerm+    safeChoice = \case+      SingleFileSafe s    -> IncludeTermCategory (rename s)+      _                   -> ExcludeCategory++    unsafeChoice :: SingleFileCategory -> Choice LvlTerm+    unsafeChoice = \case+      SingleFileUnsafe s  -> IncludeTermCategory (rename s)+      _                   -> ExcludeCategory++    pointerChoice :: SingleFileCategory -> Choice LvlTerm+    pointerChoice = \case+      SingleFilePointer s -> IncludeTermCategory (rename s)+      _                   -> ExcludeCategory++    rename :: Text -> RenameTerm+    rename "" = def  -- Empty suffix = no renaming+    rename s  = RenameTerm (<> s)
+ app/HsBindgen/Cli.hs view
@@ -0,0 +1,58 @@+-- | @hs-bindgen-cli@ commands+--+-- Intended for qualified import.+--+-- > import HsBindgen.Cli qualified as Cli+module HsBindgen.Cli (+    -- * Commands+    Cmd(..)+  , parseCmd+    -- * Execution+  , exec+  ) where++import Options.Applicative++import HsBindgen.App+import HsBindgen.Cli.BindingSpec qualified as BindingSpec+import HsBindgen.Cli.GenTests qualified as GenTests+import HsBindgen.Cli.Info qualified as Info+import HsBindgen.Cli.Internal qualified as Internal+import HsBindgen.Cli.Preprocess qualified as Preprocess+import HsBindgen.Cli.ToolSupport qualified as ToolSupport++{-------------------------------------------------------------------------------+  Commands+-------------------------------------------------------------------------------}++-- Ordered by usage+data Cmd =+    CmdPreprocess  Preprocess.Opts+  | CmdGenTests    GenTests.Opts+  | CmdBindingSpec BindingSpec.Cmd+  | CmdInfo        Info.Cmd+  | CmdInternal    Internal.Cmd+  | CmdToolSupport ToolSupport.Cmd++parseCmd :: Parser Cmd+parseCmd = subparser $ mconcat [+      cmd  "preprocess"   CmdPreprocess  Preprocess.parseOpts Preprocess.info+    , cmd  "gen-tests"    CmdGenTests    GenTests.parseOpts   GenTests.info+    , cmd  "binding-spec" CmdBindingSpec BindingSpec.parseCmd BindingSpec.info+    , cmd  "info"         CmdInfo        Info.parseCmd        Info.info+    , cmd  "internal"     CmdInternal    Internal.parseCmd    Internal.info+    , cmd_ "tool-support" CmdToolSupport ToolSupport.parseCmd ToolSupport.info+    ]++{-------------------------------------------------------------------------------+  Execution+-------------------------------------------------------------------------------}++exec :: GlobalOpts -> Cmd -> IO ()+exec gopts = \case+    CmdPreprocess  opts -> Preprocess.exec  gopts opts+    CmdGenTests    opts -> GenTests.exec    gopts opts+    CmdBindingSpec cmd' -> BindingSpec.exec gopts cmd'+    CmdInfo        cmd' -> Info.exec        gopts cmd'+    CmdInternal    cmd' -> Internal.exec    gopts cmd'+    CmdToolSupport cmd' -> ToolSupport.exec gopts cmd'
+ app/HsBindgen/Cli/BindingSpec.hs view
@@ -0,0 +1,47 @@+-- | @hs-bindgen-cli binding-spec@ commands+--+-- Intended for qualified import.+--+-- > import HsBindgen.Cli.BindingSpec qualified as BindingSpec+module HsBindgen.Cli.BindingSpec (+    -- * CLI help+    info+    -- * Commands+  , Cmd(..)+  , parseCmd+    -- * Execution+  , exec+  ) where++import Options.Applicative hiding (info)++import HsBindgen.App+import HsBindgen.Cli.BindingSpec.StdLib qualified as StdLib++{-------------------------------------------------------------------------------+  CLI help+-------------------------------------------------------------------------------}++info :: InfoMod a+info = progDesc "Binding specification commands"++{-------------------------------------------------------------------------------+  Commands+-------------------------------------------------------------------------------}++-- Ordered lexicographically+newtype Cmd =+    CmdStdLib StdLib.Opts++parseCmd :: Parser Cmd+parseCmd = subparser $ mconcat [+      cmd "stdlib" CmdStdLib StdLib.parseOpts StdLib.info+    ]++{-------------------------------------------------------------------------------+  Execution+-------------------------------------------------------------------------------}++exec :: GlobalOpts -> Cmd -> IO ()+exec gopts = \case+    CmdStdLib opts -> StdLib.exec gopts opts
+ app/HsBindgen/Cli/BindingSpec/StdLib.hs view
@@ -0,0 +1,76 @@+-- | @hs-bindgen-cli binding-spec stdlib@ command+--+-- Intended for qualified import.+--+-- > import HsBindgen.Cli.BindingSpec.StdLib qualified as StdLib+module HsBindgen.Cli.BindingSpec.StdLib (+    -- * CLI help+    info+    -- * Options+  , Opts(..)+  , parseOpts+    -- * Execution+  , exec+  ) where++import Data.ByteString qualified as BS+import Options.Applicative hiding (info)+import System.Exit (exitFailure)++import HsBindgen.App+import HsBindgen.BindingSpec+import HsBindgen.Boot+import HsBindgen.Config.ClangArgs+import HsBindgen.TraceMsg+import HsBindgen.Util.Tracer++{-------------------------------------------------------------------------------+  CLI help+-------------------------------------------------------------------------------}++info :: InfoMod a+info = progDesc "Write stdlib external binding specification"++{-------------------------------------------------------------------------------+  Options+-------------------------------------------------------------------------------}++data Opts = Opts {+      clangArgsConfig :: ClangArgsConfig FilePath+    , output          :: Maybe FilePath+    }++parseOpts :: Parser Opts+parseOpts =+    Opts+      <$> parseClangArgsConfig+      <*> optional parseOutput'+  where+    parseOutput' :: Parser FilePath+    parseOutput' = strOption $ mconcat [+        short 'o'+      , long "output"+      , metavar "PATH"+      , help "Output path for the binding specification"+      ]++{-------------------------------------------------------------------------------+  Execution+-------------------------------------------------------------------------------}++exec :: GlobalOpts -> Opts -> IO ()+exec global opts = do+    mSpec <- withTracer global.unsafe $ \tracer -> do+      clangArgs <- (.clangArgs) <$>+        getClangArtefacts (contramap TraceBoot tracer) opts.clangArgsConfig+      getStdlibBindingSpec+        (contramap (TraceBoot . BootBindingSpec) tracer)+        clangArgs+    case mSpec of+      Left _ -> do+        putStrLn $ "An error happened (see above)"+        exitFailure+      Right spec ->+        case opts.output of+          Just path -> BS.writeFile path $ encode (getFormat path) spec+          Nothing   -> BS.putStr         $ encode FormatYAML       spec
+ app/HsBindgen/Cli/GenTests.hs view
@@ -0,0 +1,76 @@+-- | @hs-bindgen-cli gentests@ command+--+-- Intended for qualified import.+--+-- > import HsBindgen.Cli.GenTests qualified as GenTests+module HsBindgen.Cli.GenTests (+    -- * CLI help+    info+    -- * Options+  , Opts(..)+  , parseOpts+    -- * Execution+  , exec+  ) where++import Data.Default (Default (..))+import Options.Applicative hiding (info)++import HsBindgen+import HsBindgen.App+import HsBindgen.Config+import HsBindgen.Config.Internal+import HsBindgen.IR.C qualified as C+import HsBindgen.Macro++{-------------------------------------------------------------------------------+  CLI help+-------------------------------------------------------------------------------}++info :: InfoMod a+info = progDesc "Generate tests for generated Haskell code"++{-------------------------------------------------------------------------------+  Options+-------------------------------------------------------------------------------}++data Opts = Opts {+      config         :: Config+    , uniqueId       :: UniqueId+    , baseModuleName :: BaseModuleName+    , output         :: FilePath+    , inputs         :: [C.UncheckedRootDirective]+    }++parseOpts :: Parser Opts+parseOpts =+    Opts+      <$> parseConfig+      <*> parseUniqueId+      <*> parseBaseModuleName+      <*> parseGenTestsOutput+      <*> parseInputs++{-------------------------------------------------------------------------------+  Execution+-------------------------------------------------------------------------------}++exec :: GlobalOpts -> Opts -> IO ()+exec global opts =+    hsBindgen+      global.unsafe+      global.safe+      bindgenConfig+      opts.inputs+      artefact+  where+    artefact :: Artefact CExpr ()+    artefact = writeTests opts.output++    bindgenConfig :: BindgenConfig+    bindgenConfig =+        toBindgenConfig+          opts.config+          opts.uniqueId+          opts.baseModuleName+          def
+ app/HsBindgen/Cli/Info.hs view
@@ -0,0 +1,99 @@+-- | @hs-bindgen-cli info@ commands+--+-- Intended for qualified import.+--+-- > import HsBindgen.Cli.Info qualified as Info+module HsBindgen.Cli.Info (+    -- * CLI help+    info+    -- * Commands+  , Cmd(..)+  , parseCmd+    -- * Execution+  , exec+  ) where++import Options.Applicative hiding (info)++import HsBindgen.App+import HsBindgen.Cli.Info.BuiltinMacros qualified as BuiltinMacros+import HsBindgen.Cli.Info.Doxygen qualified as Doxygen+import HsBindgen.Cli.Info.IncludeGraph qualified as IncludeGraph+import HsBindgen.Cli.Info.Instances qualified as Instances+import HsBindgen.Cli.Info.Libclang qualified as Libclang+import HsBindgen.Cli.Info.ResolveHeader qualified as ResolveHeader+import HsBindgen.Cli.Info.UseDeclGraph qualified as UseDeclGraph++{-------------------------------------------------------------------------------+  CLI help+-------------------------------------------------------------------------------}++info :: InfoMod a+info = progDesc "Informational commands, useful when creating bindings"++{-------------------------------------------------------------------------------+  Commands+-------------------------------------------------------------------------------}++-- Ordered lexicographically+data Cmd =+    CmdBuiltinMacros BuiltinMacros.Opts+  | CmdDoxygen       Doxygen.Opts+  | CmdIncludeGraph  IncludeGraph.Opts+  | CmdInstances     ()+  | CmdLibclang      Libclang.Opts+  | CmdResolveHeader ResolveHeader.Opts+  | CmdUseDeclGraph  UseDeclGraph.Opts++parseCmd :: Parser Cmd+parseCmd = subparser $ mconcat [+      cmd+        "builtin-macros"+        CmdBuiltinMacros+        BuiltinMacros.parseOpts+        BuiltinMacros.info+    , cmd+        "doxygen"+        CmdDoxygen+        Doxygen.parseOpts+        Doxygen.info+    , cmd+        "include-graph"+        CmdIncludeGraph+        IncludeGraph.parseOpts+        IncludeGraph.info+    , cmd+        "instances"+        CmdInstances+        (pure ())+        Instances.info+    , cmd+        "libclang"+        CmdLibclang+        Libclang.parseOpts+        Libclang.info+    , cmd+        "resolve-header"+        CmdResolveHeader+        ResolveHeader.parseOpts+        ResolveHeader.info+    , cmd+        "use-decl-graph"+        CmdUseDeclGraph+        UseDeclGraph.parseOpts+        UseDeclGraph.info+    ]++{-------------------------------------------------------------------------------+  Execution+-------------------------------------------------------------------------------}++exec :: GlobalOpts -> Cmd -> IO ()+exec gopts = \case+    CmdBuiltinMacros opts -> BuiltinMacros.exec gopts opts+    CmdDoxygen       opts -> Doxygen.exec       gopts opts+    CmdIncludeGraph  opts -> IncludeGraph.exec  gopts opts+    CmdInstances     ()   -> Instances.exec+    CmdLibclang      opts -> Libclang.exec      gopts opts+    CmdResolveHeader opts -> ResolveHeader.exec gopts opts+    CmdUseDeclGraph  opts -> UseDeclGraph.exec  gopts opts
+ app/HsBindgen/Cli/Info/BuiltinMacros.hs view
@@ -0,0 +1,231 @@+-- | @hs-bindgen-cli info builtin-macros@ command+--+-- This command dumps builtin macros using @libclang@.  The same can be done+-- using @clang@ with command @clang -dM -E -x c /dev/null@.  This command+-- exists because @libclang@ exposes some different macros than @clang@.+--+-- This command is different from the @clang@ dump command in that it fully+-- expands macros.+--+-- Intended for qualified import.+--+-- > import HsBindgen.Cli.Info.BuiltinMacros qualified as BuiltinMacros+module HsBindgen.Cli.Info.BuiltinMacros (+    -- * CLI help+    info+    -- * Options+  , Opts(..)+  , parseOpts+    -- * Execution+  , exec+  ) where++import Data.Map.Strict qualified as Map+import Data.Set qualified as Set+import Data.Text qualified as Text+import Options.Applicative hiding (info)++import Clang.Args+import Clang.Enum.Simple+import Clang.HighLevel qualified as HighLevel+import Clang.HighLevel.Types+import Clang.LowLevel.Core++import HsBindgen.App+import HsBindgen.Boot+import HsBindgen.Clang+import HsBindgen.Config.ClangArgs+import HsBindgen.Frontend.Pass.Parse.Builtin+import HsBindgen.Imports+import HsBindgen.IR.C qualified as C+import HsBindgen.TraceMsg+import HsBindgen.Util.Tracer++{-------------------------------------------------------------------------------+  CLI help+-------------------------------------------------------------------------------}++info :: InfoMod a+info = progDesc "List LLVM/Clang builtin macros"++{-------------------------------------------------------------------------------+  Options+-------------------------------------------------------------------------------}++newtype Opts = Opts {+      clangArgsConfig :: ClangArgsConfig FilePath+    }++parseOpts :: Parser Opts+parseOpts = Opts <$> parseClangArgsConfig++{-------------------------------------------------------------------------------+  Execution+-------------------------------------------------------------------------------}++exec :: GlobalOpts -> Opts -> IO ()+exec global opts =+    void . withTracer global.unsafe $ \tracer -> do+      let tracerBoot  = contramap TraceBoot tracer+          tracerClang = contramap (TraceFrontend . FrontendClang) tracer+      clangArgs <-+        (.clangArgs) <$> getClangArtefacts tracerBoot opts.clangArgsConfig+      -- 1. Get the names of the builtin macros+      names <- getBuiltinMacroNames tracerClang clangArgs+      -- 2. Try to get stringified values for all macros+      results1 <- getMacros tracerClang clangArgs names+      -- 3. Find failed macros, where the stringified macro is the macro name,+      --    and remove them from the results+      let failedNames =+            [n | (n, v) <- Map.toList results1, Text.unpack n == v]+          results2 = foldr Map.delete results1 failedNames+      -- 4. Try to get stringified values for the failed macros by passing a+      --    single paramater+      paramResults <- getParamMacros tracerClang clangArgs failedNames+      -- 5. Compute the final results and the set of all names, with the+      --    parameterized macro names+      let results3 = results2 <> paramResults+          paramNamesSet = Map.keysSet paramResults+          namesSet =+            Set.difference+              (Set.fromList names <> paramNamesSet)+              (Set.map stripParams paramNamesSet)+      -- 6. Print all macros, including any failed ones+      forM_ (Set.toAscList namesSet) $ \name ->+        putStrLn $ renderResult name (Map.lookup name results3)+  where+    -- Output space even when @v@ is empty to match @clang@ behavior+    renderResult :: Text -> Maybe String -> String+    renderResult builtinName mValue =+      let n = Text.unpack builtinName+          v = fromMaybe "UNKNOWN_MACRO_DEFINITION" mValue+      in  "#define " ++ n ++ ' ' : v++    stripParams :: Text -> Text+    stripParams = Text.takeWhile (/= '(')++-- | Get the names of all builtin macros+--+-- Parameterized macros do /not/ include the parameters.+getBuiltinMacroNames :: Tracer ClangMsg -> ClangArgs -> IO [Text]+getBuiltinMacroNames tracer clangArgs =+    fmap (fromMaybe []) . withClang' tracer setup $ \unit -> do+      root <- clang_getTranslationUnitCursor unit+      Just <$> HighLevel.clang_visitChildren root visit+  where+    setup :: ClangSetup+    setup = defaultClangSetup clangArgs $+      ClangInputMemory "hs-bindgen-builtins.h" ""++    visit :: Fold IO Text+    visit = simpleFold $ \curr -> do+      mBuiltin <- checkIsBuiltin curr+      case mBuiltin of+        Just name -> foldContinueWith name+        Nothing   -> foldBreak++-- | Get stringified definitions of the specified macros+--+-- The stringified definition of a parameteried macro is the macro name itself+-- (not including the parameters).+getMacros :: Tracer ClangMsg -> ClangArgs -> [Text] -> IO (Map Text String)+getMacros tracer clangArgs names =+    fmap (maybe Map.empty Map.fromList) . withClang' tracer setup $ \unit -> do+      root <- clang_getTranslationUnitCursor unit+      Just <$> HighLevel.clang_visitChildren root visit+  where+    setup :: ClangSetup+    setup =+        defaultClangSetup clangArgs+      . ClangInputMemory "hs-bindgen-builtins.h"+      . unlines+      $ helperMacros ++ map mkDecl names++    -- https://gcc.gnu.org/onlinedocs/cpp/Stringizing.html+    helperMacros :: [String]+    helperMacros = [+        "#define STREX(x) #x"+      , "#define STR(x) STREX(x)"+      ]++    mkDecl :: Text -> String+    mkDecl builtinName =+      let name = Text.unpack builtinName+      in  "const char *BUILTIN_X_" ++ name ++ " = STR(" ++ name ++ ");"++    parseName :: Text -> Maybe Text+    parseName = Text.stripPrefix "BUILTIN_X_"++    visit :: Fold IO (Text, String)+    visit = simpleFold $ \curr -> do+      C.prelimDeclIdAtCursor curr C.NameKindOrdinary >>= \case+        C.PrelimDeclIdUnnamed{}  -> foldContinue+        C.PrelimDeclIdNamed name ->+          (fromSimpleEnum <$> clang_getCursorKind curr) >>= \case+            Right CXCursor_VarDecl -> case parseName name.text of+              Nothing          -> foldContinue+              Just builtinName -> HighLevel.clang_evaluate curr >>= \case+                Just (EvalResultString s) -> foldContinueWith (builtinName, s)+                _otherwise                -> foldContinue+            _otherwise -> foldContinue++-- | Get stringified definitions of the specified macros with a single parameter+--+-- This is a dirty hack just for the builtin macros.  It just passes a single+-- parameter and expects the stringified result to either be unchanged for+-- append some string.+getParamMacros ::+     Tracer ClangMsg+  -> ClangArgs+  -> [Text]+  -> IO (Map Text String)+getParamMacros tracer clangArgs names =+    fmap (maybe Map.empty Map.fromList) . withClang' tracer setup $ \unit -> do+      root <- clang_getTranslationUnitCursor unit+      Just <$> HighLevel.clang_visitChildren root visit+  where+    setup :: ClangSetup+    setup =+        defaultClangSetup clangArgs+      . ClangInputMemory "hs-bindgen-builtins.h"+      . unlines+      $ helperMacros ++ map mkDecl names++    -- https://gcc.gnu.org/onlinedocs/cpp/Stringizing.html+    helperMacros :: [String]+    helperMacros = [+        "#define STREX(x) #x"+      , "#define STR(x) STREX(x)"+      ]++    mkDecl :: Text -> String+    mkDecl builtinName =+      let name = Text.unpack builtinName+      in  "const char *BUILTIN_X_" ++ name ++ " = STR(" ++ name ++ "(c));"++    parseName :: Text -> Maybe Text+    parseName = Text.stripPrefix "BUILTIN_X_"++    visit :: Fold IO (Text, String)+    visit = simpleFold $ \curr ->+      C.prelimDeclIdAtCursor curr C.NameKindOrdinary >>= \case+        C.PrelimDeclIdUnnamed{}  -> foldContinue+        C.PrelimDeclIdNamed name ->+          (fromSimpleEnum <$> clang_getCursorKind curr) >>= \case+            Right CXCursor_VarDecl -> case parseName name.text of+              Nothing          -> foldContinue+              Just builtinName -> HighLevel.clang_evaluate curr >>= \case+                Just (EvalResultString s) -> case mangleValue s of+                  Just s' -> foldContinueWith (mangleName builtinName, s')+                  Nothing -> foldContinue+                _otherwise -> foldContinue+            _otherwise -> foldContinue++    mangleName :: Text -> Text+    mangleName = (<> "(c)")++    mangleValue :: String -> Maybe String+    mangleValue = \case+      "c"        -> Just "c"+      'c' : s    -> Just ("c##" ++ s)+      _otherwise -> Nothing
+ app/HsBindgen/Cli/Info/Doxygen.hs view
@@ -0,0 +1,86 @@+-- | @hs-bindgen-cli info doxygen@ command+--+-- Intended for qualified import.+--+-- > import HsBindgen.Cli.Info.Doxygen qualified as Doxygen+module HsBindgen.Cli.Info.Doxygen (+    -- * CLI help+    info+    -- * Options+  , Opts(..)+  , parseOpts+    -- * Execution+  , exec+  ) where++import Options.Applicative hiding (info)++import HsBindgen+import HsBindgen.App+import HsBindgen.ArtefactM+import HsBindgen.Backend.Category+import HsBindgen.Config+import HsBindgen.Config.Internal (BindgenConfig)+import HsBindgen.Imports+import HsBindgen.IR.C qualified as C+import HsBindgen.Macro++{-------------------------------------------------------------------------------+  CLI help+-------------------------------------------------------------------------------}++info :: InfoMod a+info = progDesc "Output the parsed doxygen state"++{-------------------------------------------------------------------------------+  Options+-------------------------------------------------------------------------------}++data Opts = Opts {+      config     :: Config+    , output     :: Maybe FilePath+    , inputs     :: [C.UncheckedRootDirective]+    , filePolicy :: FilePolicy+    , dirPolicy  :: DirPolicy+    }++parseOpts :: Parser Opts+parseOpts =+    Opts+      <$> parseConfig+      <*> optional parseOutput'+      <*> parseInputs+      <*> parseFilePolicy+      <*> parseDirPolicy++parseOutput' :: Parser FilePath+parseOutput' = strOption $ mconcat [+      short 'o'+    , long "output"+    , metavar "PATH"+    , help "Output path for the doxygen state"+    ]++{-------------------------------------------------------------------------------+  Execution+-------------------------------------------------------------------------------}++exec :: GlobalOpts -> Opts -> IO ()+exec global opts =+    hsBindgen+      global.unsafe+      global.safe+      bindgenConfig+      opts.inputs+      artefact+  where+    artefact :: Artefact CExpr ()+    artefact = writeDoxygen opts.filePolicy opts.dirPolicy opts.output++    bindgenConfig :: BindgenConfig+    bindgenConfig =+        toBindgenConfig+          opts.config+          (UniqueId       "unused-unique-id")+          (BaseModuleName "unused-module-name")+          (def :: ByCategory Choice)
+ app/HsBindgen/Cli/Info/IncludeGraph.hs view
@@ -0,0 +1,137 @@+-- | @hs-bindgen-cli info include-graph@ command+--+-- Intended for qualified import.+--+-- > import HsBindgen.Cli.Info.IncludeGraph qualified as IncludeGraph+module HsBindgen.Cli.Info.IncludeGraph (+    -- * CLI help+    info+    -- * Options+  , Opts(..)+  , parseOpts+    -- * Execution+  , exec+  ) where++import Data.Either (partitionEithers)+import Options.Applicative hiding (info)++import HsBindgen+import HsBindgen.App+import HsBindgen.ArtefactM+import HsBindgen.Backend.Category+import HsBindgen.Config+import HsBindgen.Config.Internal (BindgenConfig)+import HsBindgen.Frontend.Analysis.IncludeGraph (HeaderLabelStyle (..),+                                                 IncludeGraphFormat (..))+import HsBindgen.Frontend.Predicate+import HsBindgen.Imports+import HsBindgen.IR.C qualified as C+import HsBindgen.Macro++{-------------------------------------------------------------------------------+  CLI help+-------------------------------------------------------------------------------}++info :: InfoMod a+info = progDesc "Output the include graph"++{-------------------------------------------------------------------------------+  Options+-------------------------------------------------------------------------------}++data Opts = Opts {+      config         :: Config+    , predicate      :: Boolean Regex+    , labelStyle     :: HeaderLabelStyle+    , format         :: IncludeGraphFormat+    , output         :: Maybe FilePath+    , inputs         :: [C.UncheckedRootDirective]+    , filePolicy     :: FilePolicy+    , dirPolicy      :: DirPolicy+    }++parseOpts :: Parser Opts+parseOpts =+    Opts+      <$> parseConfig+      <*> parsePredicate+      <*> parseHeaderLabelStyle+      <*> parseIncludeGraphFormat+      <*> optional parseOutput'+      <*> parseInputs+      <*> parseFilePolicy+      <*> parseDirPolicy++parsePredicate :: Parser (Boolean Regex)+parsePredicate = fmap merge . many . asum $ [+      fmap (Right . BIf) $ strOption $ mconcat [+          long "include"+        , metavar "PCRE"+        , help "Only include headers with paths that match PCRE (by default, include all)"+        ]+    , fmap (Left . BIf) $ strOption $ mconcat [+          long "exclude"+        , metavar "PCRE"+        , help "Exclude headers with paths that match PCRE"+        ]+    ]+  where+    merge :: Eq a => [Either (Boolean a) (Boolean a)] -> Boolean a+    merge = uncurry mergeBooleans . fmap defaultIncludeAll . partitionEithers++    defaultIncludeAll :: [Boolean a] -> [Boolean a]+    defaultIncludeAll = \case+      [] -> [BTrue]+      xs -> xs++parseHeaderLabelStyle :: Parser HeaderLabelStyle+parseHeaderLabelStyle = flag ShowIncludeArgs ShowPaths $ mconcat [+      long "show-paths"+    , help "Show paths of include header files instead of their '#include' arguments"+    ]++parseIncludeGraphFormat :: Parser IncludeGraphFormat+parseIncludeGraphFormat = flag Mermaid SortedList $ mconcat [+      long "toposort"+    , help "Output a topologically sorted list of headers instead of a Mermaid graph"+    ]++parseOutput' :: Parser FilePath+parseOutput' = strOption $ mconcat [+      short 'o'+    , long "output"+    , metavar "PATH"+    , help "Output path for the graph"+    ]++{-------------------------------------------------------------------------------+  Execution+-------------------------------------------------------------------------------}++exec :: GlobalOpts -> Opts -> IO ()+exec global opts =+    hsBindgen+      global.unsafe+      global.safe+      bindgenConfig+      opts.inputs+      artefact+  where+    artefact :: Artefact CExpr ()+    artefact =+      writeIncludeGraph+        opts.predicate+        opts.labelStyle+        opts.format+        opts.filePolicy+        opts.dirPolicy+        opts.output++    bindgenConfig :: BindgenConfig+    bindgenConfig =+        toBindgenConfig+          opts.config+          (UniqueId       "unused-unique-id")+          (BaseModuleName "unused-module-name")+          (def :: ByCategory Choice)
+ app/HsBindgen/Cli/Info/Instances.hs view
@@ -0,0 +1,62 @@+-- | @hs-bindgen-cli info instances@ command+--+-- Intended for qualified import.+--+-- > import HsBindgen.Cli.Info.Instances qualified as Instances+module HsBindgen.Cli.Info.Instances (+    -- * CLI help+    info+    -- * Execution+  , exec+  ) where++import Data.List qualified as List+import Data.Map.Strict qualified as Map+import Data.Set qualified as Set+import Options.Applicative hiding (info)++import HsBindgen.Imports+import HsBindgen.Instances qualified as Inst++{-------------------------------------------------------------------------------+  CLI help+-------------------------------------------------------------------------------}++info :: InfoMod a+info = progDesc "List supported instances and strategies"++{-------------------------------------------------------------------------------+  Execution+-------------------------------------------------------------------------------}++exec :: IO ()+exec = mapM_ putStrLn (aux def)+  where+    aux :: Inst.SupportedInstances -> [String]+    aux supportedInstances =+         auxKind "struct"    supportedInstances.struct+      ++ auxKind "union"     supportedInstances.union+      ++ auxKind "enum"      supportedInstances.enum+      ++ auxKind "typedef"   supportedInstances.typedef+      ++ auxKind "emptydata" supportedInstances.emptydata++    auxKind :: String -> Map Inst.TypeClass Inst.SupportedStrategies -> [String]+    auxKind kind classMap =+        ("* `" ++ kind ++ "`")+      : map (indent . uncurry auxClass) (Map.toAscList classMap)++    auxClass :: Inst.TypeClass -> Inst.SupportedStrategies -> String+    auxClass clss supportedStrategies = "* `" ++ show clss ++ "`: "+      ++  List.intercalate ", "+            ( map+                (auxStrategy supportedStrategies.defStrategy)+                (Set.toAscList supportedStrategies.strategies)+            )++    auxStrategy :: Maybe Inst.Strategy -> Inst.Strategy -> String+    auxStrategy mDefStrat strat = '`' : show strat ++ "`" ++ case mDefStrat of+      Just defStrat | strat == defStrat -> " (default)"+      _otherwise                        -> ""++    indent :: String -> String+    indent = ("    " ++)
+ app/HsBindgen/Cli/Info/Libclang.hs view
@@ -0,0 +1,110 @@+-- | @hs-bindgen-cli info libclang@ command+--+-- Intended for qualified import.+--+-- > import HsBindgen.Cli.Info.Libclang qualified as Libclang+module HsBindgen.Cli.Info.Libclang (+    -- * CLI help+    info+    -- * Options+  , Opts(..)+  , parseOpts+    -- * Execution+  , exec+  ) where++import Options.Applicative hiding (info)+import Prettyprinter.Util qualified as PP+import System.Exit (exitFailure)++import Clang.Enum.Simple (SimpleEnum (..), simpleFromC)+import Clang.LowLevel.Core (CXErrorCode (..))++import HsBindgen.App+import HsBindgen.Boot+import HsBindgen.Clang+import HsBindgen.Config.ClangArgs+import HsBindgen.Imports+import HsBindgen.TraceMsg+import HsBindgen.Util.Tracer++{-------------------------------------------------------------------------------+  CLI help+-------------------------------------------------------------------------------}++info :: InfoMod a+info = mconcat [+      progDesc "Run libclang with empty input"+    , footerDoc . Just . PP.reflow $ mconcat infoHelpMessage+    ]++{-------------------------------------------------------------------------------+  Options+-------------------------------------------------------------------------------}++newtype Opts = Opts {+      clangArgsConfig :: ClangArgsConfig FilePath+    }++parseOpts :: Parser Opts+parseOpts = Opts <$> parseClangArgsConfig++{-------------------------------------------------------------------------------+  Execution+-------------------------------------------------------------------------------}++exec :: GlobalOpts -> Opts -> IO ()+exec global opts = do+    eRes <- withTracer tracerConfigWithoutASTReadError $ \tracer -> do+      clangArgs <- (.clangArgs) <$>+        getClangArtefacts (contramap TraceBoot tracer) opts.clangArgsConfig+      let hasNoUserOptions = hasNoUserClangOptions opts.clangArgsConfig+          setup = defaultClangSetup clangArgs $+            ClangInputMemory "hs-bindgen-nop.h" ""++      -- Emit informational message if no user options provided+      when (   hasNoUserOptions+            && global.unsafe.verbosity.level >= Info) $ do+        traceWith (contramap (TraceFrontend . FrontendClang) tracer) $+                  withCallStack ClangInvokedWithoutOptions++      withClang+        (contramap (TraceFrontend . FrontendClang) tracer)+        setup+        (const (pure ()))+    case eRes of+      Left e  -> do+        print $ prettyForTrace e+        exitFailure+      Right _ -> pure ()+  where+    -- Check if user provided any Clang options via command line+    --+    hasNoUserClangOptions :: ClangArgsConfig FilePath -> Bool+    hasNoUserClangOptions clangArgs = and [+          null clangArgs.argsBefore+        , null clangArgs.argsInner+        , null clangArgs.argsAfter+        ]++    -- Check if a trace is CXError_ASTReadError.+    -- This error is benign in the context of 'info libclang' when users+    -- provide diagnostic flags, as they cause Clang to exit without building an AST.+    --+    -- If trace is CXError_ASTReadError make it debug level which should+    -- supress it but still make it available if needed with Debug level+    -- logging+    --+    tracerConfigWithoutASTReadError =+      global.unsafe {+          customLogLevel = CustomLogLevel $ \trace actualLevel ->+            case trace of+              TraceFrontend (FrontendClang (ClangErrorCode (SimpleEnum x)))+                | Just CXError_ASTReadError <- simpleFromC x ->+                  Debug+              _ ->+                applyCustomLogLevel+                  global.unsafe.customLogLevel+                  trace+                  actualLevel+        }
+ app/HsBindgen/Cli/Info/ResolveHeader.hs view
@@ -0,0 +1,107 @@+-- | @hs-bindgen-cli info resolve-header@ command+--+-- Intended for qualified import.+--+-- > import HsBindgen.Cli.Info.ResolveHeader qualified as ResolveHeader+module HsBindgen.Cli.Info.ResolveHeader (+    -- * CLI help+    info+    -- * Options+  , Opts(..)+  , parseOpts+    -- * Execution+  , exec+  ) where++import Data.Map.Strict qualified as Map+import Data.Set qualified as Set+import Options.Applicative hiding (info)+import System.Exit (ExitCode (ExitFailure))++import HsBindgen.App+import HsBindgen.Boot+import HsBindgen.Clang.Macos+import HsBindgen.Config.ClangArgs+import HsBindgen.Imports+import HsBindgen.IR.C qualified as C+import HsBindgen.Resolve+import HsBindgen.TraceMsg+import HsBindgen.Util.Tracer++{-------------------------------------------------------------------------------+  CLI help+-------------------------------------------------------------------------------}++info :: InfoMod a+info = progDesc "Resolve C headers to source paths"++{-------------------------------------------------------------------------------+  Options+-------------------------------------------------------------------------------}++data Opts = Opts {+      clangArgsConfig :: ClangArgsConfig FilePath+    , inputs          :: [C.UncheckedRootDirective]+    }++parseOpts :: Parser Opts+parseOpts =+    Opts+      <$> parseClangArgsConfig+      <*> parseInputs++{-------------------------------------------------------------------------------+  Execution+-------------------------------------------------------------------------------}++exec :: GlobalOpts -> Opts -> IO ()+exec global opts = do+    eErr <- withTracer tracerConfig' $ \tracer -> do+      -- This command only resolves headers; #define directives play no role.+      hashIncludeArgs <- checkInputs tracer (C.hashIncludeArgsOf opts.inputs)+      checkMacosEnv (contramap (TraceBoot . BootMacos) tracer)+      clangArgs <- (.clangArgs) <$>+        getClangArtefacts (contramap TraceBoot tracer) opts.clangArgsConfig+      includes <-+        resolveHeaders+          (contramap TraceResolveHeader tracer)+          clangArgs+          (Set.fromList hashIncludeArgs)+      fmap or . forM hashIncludeArgs $ \header' ->+        case Map.lookup header' includes of+          Just path -> (False <$) . putStrLn $ concat [+              "#include <"+            , header'.path+            , "> resolved to "+            , show path+            ]+          Nothing   -> (True  <$) . putStrLn $ concat [+              "#include <"+            , header'.path+            , "> could not be resolved (header not found)"+            ]+    case eErr of+      Right False -> return ()+      Right True  -> throwIO (ExitFailure 1)+      Left e      -> do+        print $ prettyForTrace e+  where+    tracerConfig' :: TracerConfig Level TraceMsg+    tracerConfig' = global.unsafe{+        customLogLevel = customLogLevel <> global.unsafe.customLogLevel+      }++    customLogLevel :: CustomLogLevel Level TraceMsg+    customLogLevel = CustomLogLevel $ \case+      TraceResolveHeader ResolveHeaderFound{}    -> const Debug+      TraceResolveHeader ResolveHeaderNotAttempted{} -> const Debug+      _otherTrace                                -> id++    -- | Check the @#include@ arguments, emitting trace messages+    checkInputs ::+        Tracer TraceMsg+      -> [C.UncheckedHashIncludeArg]+      -> IO [C.HashIncludeArg]+    checkInputs tracer = mapM $+        C.hashIncludeArgWithTrace+          (contramap (TraceBoot . BootHashIncludeArg) tracer)
+ app/HsBindgen/Cli/Info/UseDeclGraph.hs view
@@ -0,0 +1,89 @@+-- | @hs-bindgen-cli info use-decl-graph@ command+--+-- Intended for qualified import.+--+-- > import HsBindgen.Cli.Info.UseDeclGraph qualified as UseDeclGraph+module HsBindgen.Cli.Info.UseDeclGraph (+    -- * CLI help+    info+    -- * Options+  , Opts(..)+  , parseOpts+    -- * Execution+  , exec+  ) where++import Options.Applicative hiding (info)++import HsBindgen+import HsBindgen.App+import HsBindgen.ArtefactM+import HsBindgen.Config+import HsBindgen.Config.Internal (BindgenConfig)+import HsBindgen.Imports+import HsBindgen.IR.C qualified as C+import HsBindgen.Macro++{-------------------------------------------------------------------------------+  CLI help+-------------------------------------------------------------------------------}++info :: InfoMod a+info = progDesc "Output the use-decl graph"++{-------------------------------------------------------------------------------+  Options+-------------------------------------------------------------------------------}++data Opts = Opts {+      config         :: Config+    , uniqueId       :: UniqueId+    , baseModuleName :: BaseModuleName+    , output         :: Maybe FilePath+    , inputs         :: [C.UncheckedRootDirective]+    , filePolicy     :: FilePolicy+    , dirPolicy      :: DirPolicy+    }++parseOpts :: Parser Opts+parseOpts =+    Opts+      <$> parseConfig+      <*> parseUniqueId+      <*> parseBaseModuleName+      <*> optional parseOutput'+      <*> parseInputs+      <*> parseFilePolicy+      <*> parseDirPolicy++parseOutput' :: Parser FilePath+parseOutput' = strOption $ mconcat [+      short 'o'+    , long "output"+    , metavar "PATH"+    , help "Output path for the graph"+    ]++{-------------------------------------------------------------------------------+  Execution+-------------------------------------------------------------------------------}++exec :: GlobalOpts -> Opts -> IO ()+exec global opts =+    hsBindgen+      global.unsafe+      global.safe+      bindgenConfig+      opts.inputs+      artefact+  where+    artefact :: Artefact CExpr ()+    artefact = writeUseDeclGraph opts.filePolicy opts.dirPolicy opts.output++    bindgenConfig :: BindgenConfig+    bindgenConfig =+        toBindgenConfig+          opts.config+          opts.uniqueId+          opts.baseModuleName+          def
+ app/HsBindgen/Cli/Internal.hs view
@@ -0,0 +1,45 @@+-- | @hs-bindgen-cli internal@ commands+--+-- Intended for qualified import.+--+-- > import HsBindgen.Cli.Internal qualified as Internal+module HsBindgen.Cli.Internal (+    -- * CLI help+    info+    -- * Commands+  , Cmd(..)+  , parseCmd+    -- * Execution+  , exec+  ) where++import Options.Applicative hiding (info)++import HsBindgen.App+import HsBindgen.Cli.Internal.Frontend qualified as Frontend++{-------------------------------------------------------------------------------+  CLI help+-------------------------------------------------------------------------------}++info :: InfoMod a+info = progDesc "Internal commands, for hs-bindgen development"++{-------------------------------------------------------------------------------+  Commands+-------------------------------------------------------------------------------}++newtype Cmd = CmdFrontend Frontend.Opts++parseCmd :: Parser Cmd+parseCmd = subparser $ mconcat [+      cmd "frontend" CmdFrontend Frontend.parseOpts Frontend.info+    ]++{-------------------------------------------------------------------------------+  Execution+-------------------------------------------------------------------------------}++exec :: GlobalOpts -> Cmd -> IO ()+exec gopts = \case+    CmdFrontend opts -> Frontend.exec gopts opts
+ app/HsBindgen/Cli/Internal/Frontend.hs view
@@ -0,0 +1,149 @@+-- | @hs-bindgen-cli internal frontend@ command+--+-- Intended for qualified import.+--+-- > import HsBindgen.Cli.Internal.Frontend qualified as Frontend+module HsBindgen.Cli.Internal.Frontend (+    -- * CLI help+    info+    -- * Options+  , Opts(..)+  , parseOpts+    -- * Execution+  , exec+  ) where++import Data.List (intercalate)+import Options.Applicative hiding (info)++import HsBindgen+import HsBindgen.App+import HsBindgen.Artefact+import HsBindgen.ArtefactM+import HsBindgen.Config+import HsBindgen.Config.Internal+import HsBindgen.Imports+import HsBindgen.IR.C qualified as C+import HsBindgen.Macro++{-------------------------------------------------------------------------------+  Existential wrapper+-------------------------------------------------------------------------------}++-- | Existential wrapper pairing 'FrontendPass' with a 'Show' constraint.+data SomeFrontendPass where+  SomeFrontendPass :: Show result => FrontendPass CExpr result -> SomeFrontendPass++-- | Parse a frontend pass name (inverse of 'frontendPassName').+--+-- Returns 'Left' with an error message listing valid names on failure.+parseFrontendPassName :: String -> Either String SomeFrontendPass+parseFrontendPassName s = case lookup s knownPasses of+    Just d  -> Right d+    Nothing -> Left $+      "unknown pass " ++ show s ++ "; valid passes: "+        ++ intercalate ", " (map fst knownPasses)+  where+    knownPasses :: [(String, SomeFrontendPass)]+    knownPasses = [+          mk ParsePass+        , mk SimplifyASTPass+        , mk FillUnnamedIdsPass+        , mk EnrichCommentsPass+        , mk ConstructTranslationUnitPass+        , mk TypecheckMacrosPass+        , mk ReparseMacroExpansionsPass+        , mk ResolveBindingSpecsPass+        , mk MangleNamesPass+        , mk AdjustTypesPass+        , mk SelectPass+        , mk FinalPass+        ]++    mk :: Show result => FrontendPass CExpr result -> (String, SomeFrontendPass)+    mk d = (frontendPassName d, SomeFrontendPass d)++-- Ensure that we handle all 'FrontendPass' constructors.+frontendPassName :: FrontendPass CExpr result -> String+frontendPassName = \case+  ParsePass                    -> "parse"+  SimplifyASTPass              -> "simplify-ast"+  FillUnnamedIdsPass           -> "fill-unnamed-ids"+  EnrichCommentsPass           -> "enrich-comments"+  ConstructTranslationUnitPass -> "construct-translation-unit"+  TypecheckMacrosPass          -> "typecheck-macros"+  ReparseMacroExpansionsPass   -> "reparse-macro-expansions"+  ResolveBindingSpecsPass      -> "resolve-binding-specs"+  MangleNamesPass              -> "mangle-names"+  AdjustTypesPass              -> "adjust-types"+  SelectPass                   -> "select"+  FinalPass                    -> "final"++{-------------------------------------------------------------------------------+  CLI help+-------------------------------------------------------------------------------}++info :: InfoMod a+info = progDesc "Dump the result of a frontend pass"++{-------------------------------------------------------------------------------+  Options+-------------------------------------------------------------------------------}++data Opts = Opts {+      dump           :: SomeFrontendPass+    , config         :: Config+    , uniqueId       :: UniqueId+    , baseModuleName :: BaseModuleName+    , dirPolicy      :: DirPolicy+    , inputs         :: [C.UncheckedRootDirective]+    , filePolicy     :: FilePolicy+    }++parseOpts :: Parser Opts+parseOpts =+    Opts+      <$> parseDump+      <*> parseConfig+      <*> parseUniqueId+      <*> parseBaseModuleName+      <*> parseDirPolicy+      <*> parseInputs+      <*> parseFilePolicy++parseDump :: Parser SomeFrontendPass+parseDump = option (eitherReader parseFrontendPassName) $ mconcat [+      long "pass"+    , value (SomeFrontendPass AdjustTypesPass)+    , showDefaultWith (\(SomeFrontendPass d) -> frontendPassName d)+    , help "Frontend pass to dump"+    , metavar "PASS"+    ]++{-------------------------------------------------------------------------------+  Execution+-------------------------------------------------------------------------------}++exec :: GlobalOpts -> Opts -> IO ()+exec global opts = do+    case opts.dump of+      SomeFrontendPass pass ->+        hsBindgen+          global.unsafe+          global.safe+          bindgenConfig+          opts.inputs+          (artefact pass)+  where+    artefact :: Show result => FrontendPass CExpr result -> Artefact CExpr ()+    artefact pass = do+        result <- FrontendPassA pass+        Lift $ delay . WriteToStdOut . StringContent $ show result++    bindgenConfig :: BindgenConfig+    bindgenConfig =+        toBindgenConfig+          opts.config+          opts.uniqueId+          opts.baseModuleName+          def
+ app/HsBindgen/Cli/Preprocess.hs view
@@ -0,0 +1,127 @@+-- | @hs-bindgen-cli preprocess@ command+--+-- Intended for qualified import.+--+-- > import HsBindgen.Cli.Preprocess qualified as Preprocess+module HsBindgen.Cli.Preprocess (+    -- * CLI help+    info+    -- * Options+  , Opts(..)+  , parseOpts+  , ConfigCLI(..)+    -- * Execution+  , exec+  ) where++import Options.Applicative hiding (info)++import HsBindgen+import HsBindgen.App+import HsBindgen.App.Output (OutputMode (..), OutputOptions (..),+                             buildCategoryChoice, parseOutputOptions)+import HsBindgen.ArtefactM+import HsBindgen.Config+import HsBindgen.Config.Internal+import HsBindgen.Imports+import HsBindgen.IR.C qualified as C+import HsBindgen.Macro++{-------------------------------------------------------------------------------+  CLI help+-------------------------------------------------------------------------------}++info :: InfoMod a+info = progDesc "Generate Haskell module from C headers"++{-------------------------------------------------------------------------------+  Options+-------------------------------------------------------------------------------}++data Opts = Opts {+      config              :: Config+    , configCLI           :: ConfigCLI+    }+  deriving (Generic)++parseOpts :: Parser Opts+parseOpts =+    Opts+      <$> parseConfig+      <*> parseConfigCLI++-- | CLI options; the TH equivalent of ConfigCLI' is 'HsBindgen.Config.ConfigTH'.+data ConfigCLI = ConfigCLI {+      uniqueId          :: UniqueId+    , baseModuleName    :: BaseModuleName+    , qualifiedStyle    :: QualifiedStyle+    , outputOptions     :: OutputOptions+    , hsOutputDir       :: FilePath+    , outputBindingSpec :: Maybe FilePath+    , dirPolicy         :: DirPolicy+    , filePolicy        :: FilePolicy+    -- NOTE: Inputs (arguments) must be last, options must go before it.+    , inputs            :: [C.UncheckedRootDirective]+    }+  deriving (Generic)++parseConfigCLI :: Parser ConfigCLI+parseConfigCLI =+    ConfigCLI+      <$> parseUniqueId+      <*> parseBaseModuleName+      <*> parseQualifiedStyle+      <*> parseOutputOptions FilePerModule+      <*> parseHsOutputDir+      <*> optional parseGenBindingSpec+      <*> parseDirPolicy+      <*> parseFilePolicy+      <*> parseInputs++{-------------------------------------------------------------------------------+  Execution+-------------------------------------------------------------------------------}++exec :: GlobalOpts -> Opts -> IO ()+exec global opts = do+    hsBindgen+      global.unsafe+      global.safe+      bindgenConfig+      opts.configCLI.inputs+      artefact+  where+    bindgenConfig :: BindgenConfig+    bindgenConfig =+        toBindgenConfig+          opts.config+          opts.configCLI.uniqueId+          opts.configCLI.baseModuleName+          (buildCategoryChoice opts.configCLI.outputOptions)++    mrc :: ModuleRenderConfig+    mrc = ModuleRenderConfig {+        qualifiedStyle = opts.configCLI.qualifiedStyle+      }++    artefact :: Artefact CExpr ()+    artefact = do+      case opts.configCLI.outputOptions of+        OutputOptions (SingleFile _) ->+          writeBindingsSingle+            mrc+            opts.configCLI.filePolicy+            opts.configCLI.dirPolicy+            opts.configCLI.hsOutputDir+        _ ->+          writeBindingsMultiple+            mrc+            opts.configCLI.filePolicy+            opts.configCLI.dirPolicy+            opts.configCLI.hsOutputDir++      forM_ opts.configCLI.outputBindingSpec $ \path ->+        writeBindingSpec+          opts.configCLI.filePolicy+          opts.configCLI.dirPolicy+          path
+ app/HsBindgen/Cli/ToolSupport.hs view
@@ -0,0 +1,47 @@+-- | @hs-bindgen-cli tool-support@ commands+--+-- Intended for qualified import.+--+-- > import HsBindgen.Cli.ToolSupport qualified as ToolSupport+module HsBindgen.Cli.ToolSupport (+    -- * CLI help+    info+    -- * Commands+  , Cmd(..)+  , parseCmd+    -- * Execution+  , exec+  ) where++import Options.Applicative hiding (info)++import HsBindgen.App+import HsBindgen.Cli.ToolSupport.Literate qualified as Literate++{-------------------------------------------------------------------------------+  CLI help+-------------------------------------------------------------------------------}++info :: InfoMod a+info = progDesc "Tool support commands, not meant to be used directly"++{-------------------------------------------------------------------------------+  Commands+-------------------------------------------------------------------------------}++-- | Ordered lexicographically+newtype Cmd =+    CmdLiterate Literate.Opts++parseCmd :: Parser Cmd+parseCmd = subparser $ mconcat [+      cmd_ "literate" CmdLiterate Literate.parseOpts Literate.info+    ]++{-------------------------------------------------------------------------------+  Execution+-------------------------------------------------------------------------------}++exec :: GlobalOpts -> Cmd -> IO ()+exec _gopts = \case+    CmdLiterate opts -> Literate.exec opts
+ app/HsBindgen/Cli/ToolSupport/Literate.hs view
@@ -0,0 +1,160 @@+{-# LANGUAGE ApplicativeDo #-}++-- | @hs-bindgen-cli tool-support literate@ command+--+-- Intended for qualified import.+--+-- > import HsBindgen.Cli.ToolSupport.Literate qualified as Literate+module HsBindgen.Cli.ToolSupport.Literate (+    -- * CLI help+    info+    -- * Options (provided by @cabal-install@ on the command line)+  , Opts(..)+  , parseOpts+    -- * Execution+  , exec+  ) where++import Control.Exception (throwIO)+import Data.List.NonEmpty (NonEmpty (..))+import GHC.Exception (Exception (..))+import Options.Applicative hiding (info)+import Options.Applicative qualified as O+import Text.Read (readMaybe)++import HsBindgen+import HsBindgen.App+import HsBindgen.App.Output (OutputMode (..), OutputOptions,+                             SingleFileCategory (..), buildCategoryChoice,+                             parseOutputOptions)+import HsBindgen.ArtefactM+import HsBindgen.Config+import HsBindgen.Config.Internal (BindgenConfig)+import HsBindgen.Errors+import HsBindgen.IR.C qualified as C+import HsBindgen.Macro++{-------------------------------------------------------------------------------+  CLI help+-------------------------------------------------------------------------------}++info :: InfoMod a+info = progDesc $ mconcat [+      "Generate Haskell module from C header, acting as literate Haskell"+    , " preprocessor"+    ]++{-------------------------------------------------------------------------------+  Options (provided by @cabal-install@ on the command line)+-------------------------------------------------------------------------------}++-- | Command line options when the literate preprocessor is invoked+--+-- NOTE: Most of the /actual/ @hs-bindgen-cli@ arguments come from parsing the+-- /contents/ of the file we are processing.+data Opts = Opts {+      input  :: FilePath+    , output :: FilePath+    }+  deriving (Show, Eq)++parseOpts :: Parser Opts+parseOpts = do+    -- When @cabal-install@ calls GHC and the preprocessor, it passes some+    -- standard flags, which we do not (all) use.  In particular, it passes+    -- @-hide-all-packages@.+    _ <- strOption @String $ mconcat [+             short 'h'+           , metavar "IGNORED"+           , help "Ignore some preprocessor options provided by cabal-install"+           ]++    input  <- strArgument $ metavar "IN"+    output <- strArgument $ metavar "OUT"++    return Opts{+        input  = input+      , output = output+      }++{-------------------------------------------------------------------------------+  Options (provided at the top of literate Haskell files)+-------------------------------------------------------------------------------}++data Lit = Lit {+      globalOpts     :: GlobalOpts+    , config         :: Config+    , uniqueId       :: UniqueId+    , baseModuleName :: BaseModuleName+    , qualifiedStyle :: QualifiedStyle+    , outputOptions  :: OutputOptions+    , inputs         :: [C.UncheckedRootDirective]+    }++parseLit :: Parser Lit+parseLit = Lit+  <$> parseGlobalOpts+  <*> parseConfig+  <*> parseUniqueId+  <*> parseBaseModuleName+  <*> parseQualifiedStyle+  <*> parseOutputOptions (SingleFile (SingleFileSafe "" :| []))+  <*> parseInputs++{-------------------------------------------------------------------------------+  Execution+-------------------------------------------------------------------------------}++exec :: Opts -> IO ()+exec opts = do+    args <- maybe (throwIO' "cannot parse literate file") return . readMaybe+      =<< readFile opts.input+    lit <- handleParseResult $ pureParseLit args++    let bindgenConfig :: BindgenConfig+        bindgenConfig =+          toBindgenConfig+            lit.config+            lit.uniqueId+            lit.baseModuleName+            (buildCategoryChoice lit.outputOptions)++        -- It is understood that literate mode will overwrite existing files+        -- (generated files will anyway live in @dist-newstyle@ or similar)+        filePolicy :: FilePolicy+        filePolicy = AllowFileOverwrite++        mrc :: ModuleRenderConfig+        mrc = ModuleRenderConfig {+            qualifiedStyle = lit.qualifiedStyle+          }++        artefact :: Artefact CExpr ()+        artefact = writeBindings mrc filePolicy DoNotCreateOutputDirs opts.output++    hsBindgen+      lit.globalOpts.unsafe+      lit.globalOpts.safe+      bindgenConfig+      lit.inputs+      artefact+  where+    throwIO' :: String -> IO a+    throwIO' = throwIO . LiterateFileException opts.input++    pureParseLit :: [String] -> ParserResult Lit+    pureParseLit =+        execParserPure (prefs subparserInline) (O.info parseLit mempty)++{-------------------------------------------------------------------------------+  Exception+-------------------------------------------------------------------------------}++data LiterateFileException = LiterateFileException FilePath String+  deriving Show++instance Exception LiterateFileException where+    toException = hsBindgenExceptionToException+    fromException = hsBindgenExceptionFromException+    displayException (LiterateFileException path err) =+      "error loading " ++ path ++ ": " ++ err
+ app/hs-bindgen-cli.hs view
@@ -0,0 +1,144 @@+module Main (main) where++import Control.Exception (Exception (..), SomeException (..), handle)+import Data.List qualified as List+import Data.Text qualified as Text+import Data.Version (showVersion)+import Options.Applicative+import Options.Applicative.Help qualified as Help+import Prettyprinter.Util qualified as PP+import System.Exit (ExitCode, exitFailure)++import Clang.Version (compileTimeClangVersionString, runtimeClangVersionString)++import HsBindgen.App+import HsBindgen.BindingSpec qualified as BindingSpec+import HsBindgen.Cli qualified as Cli+import HsBindgen.Errors+import HsBindgen.Imports++import Paths_hs_bindgen qualified as Package++{-------------------------------------------------------------------------------+  CLI parser+-------------------------------------------------------------------------------}++data Cli = Cli {+      globalOpts :: GlobalOpts+    , cmd        :: Cli.Cmd+    }++parseCli :: Parser Cli+parseCli =+    Cli+      <$> parseGlobalOpts+      <*> Cli.parseCmd++execCliParser :: IO Cli+execCliParser = customExecParser prefs' opts+  where+    prefs' :: ParserPrefs+    -- 'multiSuffix' marks repeatable options and arguments in the usage+    -- synopsis; without it, @(HEADER | --hash-define NAME VALUE)@ reads as an+    -- exclusive choice of one.+    prefs' = prefs $ multiSuffix "..." <> helpShowGlobals <> subparserInline++    opts :: ParserInfo Cli+    opts = info (parseCli <**> simpleVersioner vers <**> helper) $+      mconcat [+          progDesc "Generate Haskell bindings from C headers"+        , failureCode 2+        , footerDoc . Just . Help.vcat $ List.intersperse "" [+              envVarsFooter+            , clangArgsFooter+            , selectSliceFooter+            , exitCodeFooter+            ]+        ]++    vers :: String+    vers = List.intercalate "\n" [+        "hs-bindgen " ++ showVersion Package.version+      , "binding specification " ++ show BindingSpec.currentBindingSpecVersion+      , "clang compile time version: "+          ++ Text.unpack compileTimeClangVersionString+      , "clang runtime version:      " ++ Text.unpack runtimeClangVersionString+      ]++{-------------------------------------------------------------------------------+  Execution+-------------------------------------------------------------------------------}++main :: IO ()+main = handle exceptionHandler $ do+    cli <- execCliParser+    Cli.exec cli.globalOpts cli.cmd++{-------------------------------------------------------------------------------+  Auxiliary functions: exception handling+-------------------------------------------------------------------------------}++exceptionHandler :: SomeException -> IO ()+exceptionHandler e+    | Just _ <- fromException e :: Maybe ExitCode+    = throwIO e++    | Just (HsBindgenException e'') <- fromException e = do+      putStrLn $ displayException e''+      exitFailure++    -- truly unexpected exceptions+    | otherwise = do+      putStrLn $ "Uncaught exception: " ++ displayException e+      putStrLn+        "Please report this at https://github.com/well-typed/hs-bindgen/issues"+      exitFailure++{-------------------------------------------------------------------------------+  Auxiliary functions: footers+-------------------------------------------------------------------------------}++envVarsFooter :: Help.Doc+envVarsFooter = Help.vcat [+      "Environment variables:"+    , li $ "BINDGEN_EXTRA_CLANG_ARGS: Arguments passed to Clang"+    ]++clangArgsFooter :: Help.Doc+clangArgsFooter = Help.vcat [+      "Options passed to Clang have the following order:"+    , "  1. --clang-option-before options"+    , "  2. Clang options managed by hs-bindgen (e.g., -I options)"+    , "  3. --clang-option options"+    , "  4. BINDGEN_EXTRA_CLANG_ARGS options"+    , "  5. --clang-option-after options"+    , "  6. Builtin include directory options"+    ]++selectSliceFooter :: Help.Doc+selectSliceFooter = Help.vcat [+      "Selection and program slicing:"+    , li $ mconcat [+          "Program slicing disabled (default):"+        , " only select declarations according to the selection predicate"+        ]+    , li $ mconcat [+          "Program slicing enabled ('--enable-program-slicing'):"+        , " select declarations using the selection predicate,"+        , " and also select their transitive dependencies;"+        , " program slicing can cause declarations to be included"+        , " even if they are explicitly deselected by a selection predicate"+        ]+    ]++exitCodeFooter :: Help.Doc+exitCodeFooter = Help.vcat [+      "Exit codes:"+    , "  0: Success"+    , "  1: Other errors (panics)"+    , "  2: Invocation of `libclang` has failed"+    , "  3: An `hs-bindgen`-specific error has happened"+    ]++li :: Text -> Help.Doc+li = ("  -" Help.<+>) . Help.align . PP.reflow
+ bootstrap/standard_headers.h view
@@ -0,0 +1,119 @@+#ifndef STANDARD_HEADERS_H+#define STANDARD_HEADERS_H++/**+ * C Standard Library header files+ *+ * Reference:+ *+ * * https://en.cppreference.com/w/c/header+ * * https://en.wikipedia.org/wiki/C_standard_library+ */++/**+ * C89/C90+ *+ * Reference:+ *+ * * https://web.archive.org/web/20161223125339/http://flash-gordon.me.uk/ansi.c.txt+ *   4.1.2 Standard headers+ */++#include <assert.h>+#include <ctype.h>+#include <errno.h>+#include <float.h>+#include <limits.h>+#include <locale.h>+#include <math.h>+#include <setjmp.h>+#include <signal.h>+#include <stdarg.h>+#include <stddef.h>+#include <stdio.h>+#include <stdlib.h>+#include <string.h>+#include <time.h>++/**+* C95 (Normative Addendum 1)+*+* Reference:+*+* * http://www.lysator.liu.se/c/na1.html+*/++#include <iso646.h>+#include <wchar.h>+#include <wctype.h>++/**+ * C99+ *+ * Reference:+ *+ * * https://www.open-std.org/jtc1/sc22/wg14/www/docs/n1256.pdf+ *   7.1.2 Standard headers+ *+ * Notes:+ *+ * * complex.h is optional+ * * stdbool.h is deprecated in C23+ */++#include <complex.h>+#include <fenv.h>+#include <inttypes.h>+#include <stdbool.h>+#include <stdint.h>+#include <tgmath.h>++/**+ * C11+ *+ * Reference:+ *+ * * https://www.open-std.org/jtc1/sc22/wg14/www/docs/n1570.pdf+ *   7.1.2 Standard headers+ *+ * Notes:+ *+ * * stdalign.h is deprecated in C23+ * * stdatomic.h is optional, and it is not included in musl+ * * stdnoreturn.h is deprecated in C23+ * * threads.h is optional+ */++#include <stdalign.h>+// #include <stdatomic.h>+#include <stdnoreturn.h>+#include <threads.h>+#include <uchar.h>++/**+ * C17+ *+ * Reference:+ *+ * * https://web.archive.org/web/20181230041359/http://www.open-std.org/jtc1/sc22/wg14/www/abq/c17_updated_proposed_fdis.pdf+ *   7.1.2 Standard headers+ */++/**+ * C23+ *+ * Reference:+ *+ * * https://www.open-std.org/jtc1/sc22/wg14/www/docs/n3096.pdf+ *   7.1.2 Standard headers+ *+ * Notes:+ *+ * * stdbit.h is not included in musl+ * * stdckdint.h is not included in musl+ */++// #include <stdbit.h>+// #include <stdckdint.h>++#endif
+ clang-ast-dump/Main.hs view
@@ -0,0 +1,519 @@+{-# LANGUAGE ApplicativeDo #-}++module Main (main) where++import Control.Exception+import Control.Monad+import Control.Monad.IO.Class+import Data.Bifunctor+import Data.Default (Default (def))+import Data.Map.Strict qualified as Map+import Data.Set qualified as Set+import Data.Text (Text)+import Data.Text qualified as T+import Foreign.C.Types (CUInt)+import GHC.Generics (Generic)+import Options.Applicative qualified as OA+import System.Exit (exitFailure)++import Clang.Enum.Bitfield+import Clang.Enum.Simple+import Clang.HighLevel qualified as HighLevel+import Clang.HighLevel.Types hiding (FoldException (..))+import Clang.LowLevel.Core+import Clang.LowLevel.Doxygen+import Clang.Paths++import HsBindgen.Clang+import HsBindgen.Config.ClangArgs+import HsBindgen.IR.C qualified as C+import HsBindgen.Resolve (resolveHeaders)+import HsBindgen.TraceMsg+import HsBindgen.Util.Tracer++{-------------------------------------------------------------------------------+  Options+-------------------------------------------------------------------------------}++data Options = Options {+      builtin         :: Bool+    , comments        :: Bool+    , extents         :: Bool+    , file            :: C.HashIncludeArg+    , kind            :: Bool+    , includePath     :: [FilePath]+    , clangArgsInner  :: [String]+    , sameFile        :: Bool+    , typ             :: Bool+    }++{-------------------------------------------------------------------------------+  Errors+-------------------------------------------------------------------------------}++data AstDumpException =+    HeaderNotFound+  | ClangError+  deriving stock (Show)++instance Exception AstDumpException where+  displayException HeaderNotFound = "header not found"+  displayException ClangError     = "clang error"++{-------------------------------------------------------------------------------+  Implementation+-------------------------------------------------------------------------------}++data DumpTrace =+    DumpTraceResolveHeader ResolveHeaderMsg+  | DumpTraceClang         ClangMsg+  deriving stock (Show, Generic)+  deriving anyclass (PrettyForTrace, IsTrace Level)++clangAstDump :: Options -> IO ()+clangAstDump opts = do+    putStrLn $ "## `" ++ opts.file.path ++ "`"+    putStrLn ""++    eitherRes <- withTracer tracerConf $ \tracer -> do+      let clangArgs     = clangArgsConfigToClangArgs cArgsConfig+          tracerResolve = contramap DumpTraceResolveHeader tracer+          tracerClang   = contramap DumpTraceClang         tracer+      src <- maybe (throwIO HeaderNotFound) return . Map.lookup opts.file+          =<< resolveHeaders tracerResolve clangArgs (Set.singleton opts.file)+      let setup :: ClangSetup+          setup = (defaultClangSetup clangArgs $ ClangInputFile (realPathToSourcePath src)) {+                flags = cOpts+              }++      maybe (throwIO ClangError) return <=< withClang tracerClang setup $ \unit -> Just <$> do+        rootCursor <- clang_getTranslationUnitCursor unit+        void . HighLevel.clang_visitChildren rootCursor $ simpleFold $ \cursor -> do+          loc <- clang_getPresumedLocation =<< clang_getCursorLocation cursor+          case loc of+            (file, _, _)+              | opts.sameFile && file /= getRealPathText src -> foldContinue+              | not opts.builtin && isBuiltIn file           -> foldContinue+              | otherwise                                    -> foldDecls opts cursor+    case eitherRes of+      Left  e  -> do+        print $ prettyForTrace e+        exitFailure+      Right _  -> pure ()+  where+    tracerConf :: TracerConfig Level DumpTrace+    tracerConf = def {+        verbosity = Verbosity Debug+      }++    cArgsConfig :: ClangArgsConfig FilePath+    cArgsConfig = def {+        extraIncludeDirs = opts.includePath+      , argsInner        = opts.clangArgsInner+      }++    cOpts :: BitfieldEnum CXTranslationUnit_Flags+    cOpts = bitfieldEnum [+        CXTranslationUnit_DetailedPreprocessingRecord+      , CXTranslationUnit_IncludeAttributedTypes+      , CXTranslationUnit_VisitImplicitAttributes+      ]++    isBuiltIn :: Text -> Bool+    isBuiltIn = (`elem` [T.pack "<built-in>", T.pack "<command line>"])+++foldDecls :: Options -> CXCursor -> IO (Next IO ())+foldDecls opts = \cursor -> do+    traceU_ 0 =<< clang_getCursorDisplayName cursor++    dumpParents cursor+    when opts.extents $ dumpExtent cursor++    cursorKind <- clang_getCursorKind cursor+    traceU 1 "cursor kind" cursorKind+    isDecl <- clang_isDeclaration cursorKind+    when opts.kind $+      traceWhen 2 "declaration" id isDecl++    cursorType <- clang_getCursorType cursor++    isRecurse <- case fromSimpleEnum cursorKind of+      Right CXCursor_StructDecl -> do+        dumpType cursor cursorType isDecl+        pure True+      Right CXCursor_EnumDecl -> do+        dumpType cursor cursorType isDecl+        traceU 1 "integer type" =<< clang_getEnumDeclIntegerType cursor+        pure True+      Right CXCursor_FieldDecl -> do+        dumpType cursor cursorType isDecl+        traceU 1 "field offset" =<< clang_Cursor_getOffsetOfField cursor+        isBitField <- clang_Cursor_isBitField cursor+        when isBitField $+          traceU 1 "bit width" =<< clang_getFieldDeclBitWidth cursor+        pure False -- leaf+      Right CXCursor_EnumConstantDecl -> do+        dumpType cursor cursorType isDecl+        traceU 1 "integer value" =<< clang_getEnumConstantDeclValue cursor+        pure False -- leaf+      Right CXCursor_FunctionDecl -> do+        dumpType cursor cursorType isDecl+        numArgs <- clang_getNumArgTypes cursorType+        traceU 1 "args" numArgs+        forM_ [0 .. numArgs - 1] $ \i -> do+          argType <- clang_getArgType cursorType (fromIntegral i)+          traceO_ 2 i =<< clang_getTypeSpelling argType+        resultType <- clang_getResultType cursorType+        traceU 1 "result" =<< clang_getTypeSpelling resultType+        pure False+      Right CXCursor_VarDecl -> do+        traceU 1 "eval result" =<< HighLevel.clang_evaluate cursor+        pure False+      Right CXCursor_TypedefDecl -> do+        dumpType cursor cursorType isDecl+        traceU 1 "typedef name" =<< clang_getTypedefName cursorType+        -- Results in repeated information unless the `typedef` is a+        -- declaration.+        pure True+      Right CXCursor_MacroDefinition ->+        -- TODO: Not defined yet.+        pure True+      Right CXCursor_InclusionDirective ->+        pure False -- does not matter+      Right CXCursor_UnionDecl -> do+        dumpType cursor cursorType isDecl+        pure True+      Right CXCursor_LinkageSpec -> do+        -- NOTE: The linkage specification has no display name, and so the+        -- parents of the children are unknown, that is, the empty string "".+        pure True+      Right{} -> False <$ traceL 1 "CURSOR_KIND_NOT_IMPLEMENTED"+      Left n  -> False <$ traceU 1 "CURSOR_KIND_ENUM_OUT_OF_RANGE" n++    when (isDecl && opts.comments) $ do+      commentText <- clang_Cursor_getRawCommentText cursor+      unless (T.null commentText) $ do+        traceU 1 "comment" commentText+        traceU 2 "brief" =<< clang_Cursor_getBriefCommentText cursor+        dumpComment 2 Nothing =<< clang_Cursor_getParsedComment cursor++    if isRecurse+      then foldRecurse $ simpleFold (foldDecls opts)+      else foldContinue+  where+    dumpParents :: CXCursor -> IO ()+    dumpParents cursor = do+      semanticParent <- clang_getCursorSemanticParent cursor+      lexicalParent  <- clang_getCursorLexicalParent  cursor+      parentsEq      <- clang_equalCursors semanticParent lexicalParent+      if parentsEq+        then+          traceU 1 "parent"+            =<< clang_getCursorDisplayName semanticParent+        else do+          traceU 1 "semantic parent"+            =<< clang_getCursorDisplayName semanticParent+          traceU 1 "lexical parent"+            =<< clang_getCursorDisplayName lexicalParent++    dumpExtent :: CXCursor -> IO ()+    dumpExtent cursor = do+      extent <- clang_getCursorExtent cursor+      (file, startLine, startCol) <-+        clang_getPresumedLocation =<< clang_getRangeStart extent+      (_, endLine, endCol) <-+        clang_getPresumedLocation =<< clang_getRangeEnd extent+      traceU 1 "extent" (file, (startLine, startCol), (endLine, endCol))++    dumpType :: CXCursor -> CXType -> Bool -> IO ()+    dumpType cursor cursorType isDecl = do+      traceU 1 "cursor type" =<< clang_getTypeSpelling cursorType+      when opts.typ $ do+        let typeKind = cxtKind cursorType+        traceU 2 "kind" $ fromSimpleEnum typeKind+        traceU 3 "spelling" =<< clang_getTypeKindSpelling typeKind+        traceU 2 "canonical"+          =<< clang_getTypeSpelling =<< clang_getCanonicalType cursorType+        when isDecl $ do+          decl <- HighLevel.classifyDeclaration cursor+          case decl of+            Definition -> do+              traceU 2 "declaration type" ("Definition" :: String)+              traceU 2 "sizeof"+                =<< handleCallFailed (clang_Type_getSizeOf cursorType)+              traceU 2 "alignment"+                =<< handleCallFailed (clang_Type_getAlignOf cursorType)+            DefinitionElsewhere{} ->+              traceU 2 "declaration type" ("DefinitionElsewhere" :: String)+            DefinitionUnavailable ->+              traceU 2 "declaration type" ("DefinitionUnavailable" :: String)++dumpComment :: Int -> Maybe CUInt -> CXComment -> IO ()+dumpComment level mIdx comment = do+    commentKind <- clang_Comment_getKind comment+    maybe (traceU level) (traceO level) mIdx "kind" $ fromSimpleEnum commentKind+    traceWhen level1 "whitespace" id =<< clang_Comment_isWhitespace comment++    case fromSimpleEnum commentKind of+      Right CXComment_Null -> pure ()++      Right CXComment_Text ->+        traceU level1 "text" =<< clang_TextComment_getText comment++      Right CXComment_InlineCommand -> do+        traceU level1 "name"+          =<< clang_InlineCommandComment_getCommandName comment+        traceU level1 "render kind" . fromSimpleEnum+          =<< clang_InlineCommandComment_getRenderKind comment+        numArgs <- clang_InlineCommandComment_getNumArgs comment+        when (numArgs > 0) $ do+          traceU level1 "args" numArgs+          forM_ [0 .. numArgs - 1] $ \i ->+            traceO_ level2 i =<< clang_InlineCommandComment_getArgText comment i++      Right CXComment_HTMLStartTag -> do+        traceU level1 "name" =<< clang_HTMLTagComment_getTagName comment+        traceWhen level1 "self-closing" id+          =<< clang_HTMLStartTagComment_isSelfClosing comment+        numAttrs <- clang_HTMLStartTag_getNumAttrs comment+        when (numAttrs > 0) $ do+          traceU level1 "attributes" numAttrs+          forM_ [0 .. numAttrs - 1] $ \i -> do+            traceO_ level2 i =<< clang_HTMLStartTag_getAttrName comment i+            traceU level3 "value" =<< clang_HTMLStartTag_getAttrValue comment i++      Right CXComment_HTMLEndTag -> do+        traceU level1 "name" =<< clang_HTMLTagComment_getTagName comment++      Right CXComment_Paragraph -> pure ()++      Right CXComment_BlockCommand -> do+        traceU level1 "name" =<<+          clang_BlockCommandComment_getCommandName comment+        numArgs <- clang_BlockCommandComment_getNumArgs comment+        when (numArgs > 0) $ do+          traceU level1 "args" numArgs+          forM_ [0 .. numArgs - 1] $ \i ->+            traceO_ level2 i =<< clang_BlockCommandComment_getArgText comment i+        -- NOTE paragraph is also provided by children+        -- para <- clang_BlockCommandComment_getParagraph comment+        -- traceL level1 "paragraph"+        -- dumpComment level2 Nothing para++      Right CXComment_ParamCommand -> do+        traceU level1 "name" =<< clang_ParamCommandComment_getParamName comment+        traceU level1 "index"+          =<< clang_ParamCommandComment_getParamIndex comment+        traceUnless level2 "invalid" id+          =<< clang_ParamCommandComment_isParamIndexValid comment+        traceU level1 "direction" . fromSimpleEnum+          =<< clang_ParamCommandComment_getDirection comment+        traceU level2 "explicit"+          =<< clang_ParamCommandComment_isDirectionExplicit comment++      Right CXComment_TParamCommand -> do+        traceU level1 "name" =<< clang_TParamCommandComment_getParamName comment+        traceUnless level1 "position invalid" id+          =<< clang_TParamCommandComment_isParamPositionValid comment+        depth <- clang_TParamCommandComment_getDepth comment+        traceU level1 "depth" depth+        forM_ [0 .. depth] $ \i ->+          traceO level2 i "index"+            =<< clang_TParamCommandComment_getIndex comment i++      Right CXComment_VerbatimBlockCommand -> pure ()++      Right CXComment_VerbatimBlockLine ->+        traceU level1 "text" =<< clang_VerbatimBlockLineComment_getText comment++      Right CXComment_VerbatimLine ->+        traceU level1 "text" =<< clang_VerbatimLineComment_getText comment++      Right CXComment_FullComment -> do+        traceUnless level "HTML" T.null =<< clang_FullComment_getAsHTML comment+        traceUnless level "XML"  T.null =<< clang_FullComment_getAsXML  comment++      Left n -> traceU level1 "COMMENT_KIND_ENUM_OUT_OF_RANGE" n++    numChildren <- clang_Comment_getNumChildren comment+    when (numChildren > 0) $ do+      traceU level1 "children" numChildren+      forM_ [0 .. numChildren - 1] $ \i ->+        dumpComment level2 (Just i) =<< clang_Comment_getChild comment i+  where+    level1, level2, level3 :: Int+    level1 = level + 1+    level2 = level + 2+    level3 = level + 3++{-------------------------------------------------------------------------------+  Error handling+-------------------------------------------------------------------------------}++-- | Handle 'CallFailed' exceptions, returning the hint on error+handleCallFailed :: forall a m.+     MonadIO m+  => IO a+  -> m (Either String a)+handleCallFailed action = liftIO $ first getHint <$> try action+  where+    getHint :: CallFailed -> String+    getHint (CallFailed hint _backtrace) = hint++{-------------------------------------------------------------------------------+  Trace Functions+-------------------------------------------------------------------------------}++-- | Trace Markdown list item (internal)+--+-- This function is not meant to be used directly.  Use one of the below+-- functions instead.+trace' :: (Show a, MonadIO m)+  => Int           -- ^ indentation level, from 0+  -> Maybe Int     -- ^ index of ordered list+  -> Maybe String  -- ^ label+  -> Maybe a       -- ^ value+  -> m ()+trace' level mIndex mLabel mValue = liftIO . putStrLn $ concat+    [ replicate (level * 4) ' '+    , maybe "* " ((++ ". ") . show) mIndex+    , case (mLabel, mValue) of+        (Just label, Just value) -> label ++ ": " ++ show value+        (Just label, Nothing)    -> label+        (Nothing,    Just value) -> show value+        (Nothing,    Nothing)    -> ""+    ]++-- | Trace label (unordered)+traceL :: MonadIO m+  => Int     -- ^ indentation level, from 0+  -> String  -- ^ label+  -> m ()+traceL level label = trace' @() level Nothing (Just label) Nothing++-- | Trace value (unordered, no label)+traceU_ :: (Show a, MonadIO m)+  => Int  -- ^ indentation level, from 0+  -> a    -- ^ value+  -> m ()+traceU_ level value = trace' level Nothing Nothing (Just value)++-- | Trace value (unordered, with label)+traceU :: (Show a, MonadIO m)+  => Int     -- ^ indentation level, from 0+  -> String  -- ^ label+  -> a       -- ^ value+  -> m ()+traceU level label value = trace' level Nothing (Just label) (Just value)++-- | Trace value (ordered, no label)+traceO_ :: (Integral i, Show a, MonadIO m)+  => Int  -- ^ indentation level, from 0+  -> i    -- ^ index of ordered list+  -> a    -- ^ value+  -> m ()+traceO_ level index value =+    trace' level (Just $ fromIntegral index) Nothing (Just value)++-- | Trace value (ordered, with label)+traceO :: (Integral i, Show a, MonadIO m)+  => Int     -- ^ indentation level, from 0+  -> i       -- ^ index of ordered list+  -> String  -- ^ label+  -> a       -- ^ value+  -> m ()+traceO level index label value =+    trace' level (Just $ fromIntegral index) (Just label) (Just value)++-- | Trace value when predicate holds (unordered, with label)+traceWhen :: (Show a, MonadIO m)+  => Int          -- ^ indentation level, from 0+  -> String       -- ^ label+  -> (a -> Bool)  -- ^ predicate+  -> a            -- ^ value+  -> m ()+traceWhen level label p value = when (p value) $ traceU level label value++-- | Trace value when predicate does not hold (unordered, with label)+traceUnless :: (Show a, MonadIO m)+  => Int          -- ^ indentation level, from 0+  -> String       -- ^ label+  -> (a -> Bool)  -- ^ predicate+  -> a            -- ^ value+  -> m ()+traceUnless level label p value = unless (p value) $ traceU level label value++{-------------------------------------------------------------------------------+  CLI+-------------------------------------------------------------------------------}++main :: IO ()+main = clangAstDump . uncurry applyAll =<< OA.execParser pinfo+  where+    pinfo :: OA.ParserInfo (Bool, Options)+    pinfo = OA.info (OA.helper <*> parseOptions) $ mconcat+      [ OA.fullDesc+      , OA.progDesc "Clang AST dump"+      , OA.failureCode 2+      ]++    parseOptions :: OA.Parser (Bool, Options)+    parseOptions = do+      -- flags enabled by all flag+      optComments        <- mkFlag "comments"  "show comments"+      optExtents         <- mkFlag "extents"   "show extents"+      optKind            <- mkFlag "kind"      "show kind details"+      optType            <- mkFlag "type"      "show type details"+      -- all flag+      optAll             <- mkFlag "all"       "enable all above flags"+      -- other options/arguments+      optBuiltin         <- mkFlag "builtin"   "show builtin macros"+      optSameFile        <- mkFlag "same-file" "only show from specified file"+      optIncludePath     <- includeDirOptions+      optClangArgsInner  <- clangArgsInnerOption+      optFile            <- fileArgument++      pure (optAll, Options{+          builtin        = optBuiltin+        , comments       = optComments+        , extents        = optExtents+        , file           = optFile+        , kind           = optKind+        , includePath    = optIncludePath+        , clangArgsInner = optClangArgsInner+        , sameFile       = optSameFile+        , typ            = optType+        })++    includeDirOptions :: OA.Parser [FilePath]+    includeDirOptions = OA.many . OA.strOption $ mconcat+      [ OA.short 'I'+      , OA.metavar "DIR"+      , OA.help "Include search path directory"+      ]++    clangArgsInnerOption :: OA.Parser [String]+    clangArgsInnerOption = OA.many . OA.strOption $ mconcat [+        OA.long "clang-option"+      , OA.metavar "OPTION"+      , OA.help "Pass option to clang"+      ]++    fileArgument :: OA.Parser C.HashIncludeArg+    fileArgument = fmap C.HashIncludeArg . OA.strArgument $ mconcat+      [ OA.metavar "FILE"+      , OA.help "C (header) file to parse"+      ]++    mkFlag :: String -> String -> OA.Parser Bool+    mkFlag flag doc = OA.switch $ OA.long flag <> OA.help doc++    applyAll :: Bool -> Options -> Options+    applyAll False opts = opts+    applyAll True  opts = opts {+        comments = True+      , extents  = True+      , kind     = True+      , typ      = True+      }
+ hs-bindgen.cabal view
@@ -0,0 +1,681 @@+cabal-version:      3.0+name:               hs-bindgen+version:            1.0.0.0+license:            BSD-3-Clause+license-file:       LICENSE+author:             Well-Typed LLP+maintainer:         info@well-typed.com+category:           Development+build-type:         Simple+synopsis:           Generate Haskell bindings from C headers+description:        Automatically generate Haskell bindings from C headers+tested-with:+  GHC ==9.4.8+   || ==9.6.7+   || ==9.8.4+   || ==9.10.3+   || ==9.12.2+   || ==9.14.1++extra-source-files:+  bootstrap/*.h+  musl-include/**/*.h+  musl-include/COPYRIGHT+  musl-include/VERSION+  test-artefacts/fixtures/**/*.hs+  test-artefacts/fixtures/**/*.txt+  test-artefacts/fixtures/**/*.yaml+  test-artefacts/headers/**/*.h+  test-artefacts/headers/**/*.yaml++extra-doc-files:+  CHANGELOG.md+  known-issues.md+  README.md++source-repository head+  type:     git+  location: https://github.com/well-typed/hs-bindgen+  subdir:   hs-bindgen++source-repository this+  type:     git+  location: https://github.com/well-typed/hs-bindgen+  subdir:   hs-bindgen+  tag:      release-1.0.0.0++flag dev+  description: Build debugging utilities for developing hs-bindgen itself+  default:     False+  manual:      True++common lang+  ghc-options:+    -Wall -Widentities -Wprepositive-qualified-module+    -Wredundant-constraints -Wunused-packages+    -Wno-unticked-promoted-constructors++  build-depends:      base >=4.17 && <4.23+  default-language:   GHC2021+  default-extensions:+    DataKinds+    DefaultSignatures+    DeriveAnyClass+    DerivingStrategies+    DerivingVia+    DisambiguateRecordFields+    DuplicateRecordFields+    FunctionalDependencies+    LambdaCase+    MultiWayIf+    NoFieldSelectors+    NoNamedFieldPuns+    OverloadedLabels+    OverloadedRecordDot+    OverloadedStrings+    PatternSynonyms+    QuantifiedConstraints+    TypeApplications+    TypeFamilies+    UndecidableInstances+    ViewPatterns++  if impl(ghc >=9.8)+    default-extensions: TypeAbstractions++library internal+  import:           lang+  hs-source-dirs:   src-internal+  ghc-options:      -Wmissing-export-lists++  -- Modules containing public API.+  exposed-modules:  HsBindgen.Config++  -- Internal modules+  --+  -- Rules:+  --+  -- * HsBindgen.IR.* modules must not (transitively) import from Frontend or+  --   Backend+  exposed-modules:+    Data.Digraph+    HsBindgen+    HsBindgen.Artefact+    HsBindgen.ArtefactM+    HsBindgen.Backend+    HsBindgen.Backend.Category+    HsBindgen.Backend.Category.ApplyChoice+    HsBindgen.Backend.Extensions+    HsBindgen.Backend.Global+    HsBindgen.Backend.Hs.AST+    HsBindgen.Backend.Hs.AST.CompletePragma+    HsBindgen.Backend.Hs.AST.Strategy+    HsBindgen.Backend.Hs.CallConv+    HsBindgen.Backend.Hs.Haddock.Documentation+    HsBindgen.Backend.Hs.Haddock.Translation+    HsBindgen.Backend.Hs.Name+    HsBindgen.Backend.Hs.Origin+    HsBindgen.Backend.Hs.Translation+    HsBindgen.Backend.Hs.Translation.Field+    HsBindgen.Backend.Hs.Translation.ForeignImport+    HsBindgen.Backend.Hs.Translation.Function+    HsBindgen.Backend.Hs.Translation.Instances+    HsBindgen.Backend.Hs.Translation.Monad+    HsBindgen.Backend.Hs.Translation.Newtype+    HsBindgen.Backend.Hs.Translation.Structure+    HsBindgen.Backend.Hs.Translation.ToFromFunPtr+    HsBindgen.Backend.Hs.Translation.Union+    HsBindgen.Backend.HsModule.Names+    HsBindgen.Backend.HsModule.Pretty+    HsBindgen.Backend.HsModule.Pretty.CAPI+    HsBindgen.Backend.HsModule.Pretty.Comment+    HsBindgen.Backend.HsModule.Pretty.Common+    HsBindgen.Backend.HsModule.Pretty.Decl+    HsBindgen.Backend.HsModule.Pretty.Expr+    HsBindgen.Backend.HsModule.Pretty.Type+    HsBindgen.Backend.HsModule.Render+    HsBindgen.Backend.HsModule.Translation+    HsBindgen.Backend.HsModule.Translation.Doxygen+    HsBindgen.Backend.Level+    HsBindgen.Backend.Runtime+    HsBindgen.Backend.SHs.AST+    HsBindgen.Backend.SHs.AST.Expr+    HsBindgen.Backend.SHs.AST.Type+    HsBindgen.Backend.SHs.Simplify+    HsBindgen.Backend.SHs.Translation+    HsBindgen.Backend.SHs.Translation.Common+    HsBindgen.Backend.SHs.Translation.MapFunction+    HsBindgen.Backend.TH.Translation+    HsBindgen.Backend.UniqueSymbol+    HsBindgen.BindingSpec+    HsBindgen.BindingSpec.Gen+    HsBindgen.BindingSpec.Private.Common+    HsBindgen.BindingSpec.Private.Stdlib+    HsBindgen.BindingSpec.Private.V1+    HsBindgen.BindingSpec.Private.Version+    HsBindgen.Boot+    HsBindgen.Cache+    HsBindgen.Clang+    HsBindgen.Clang.CompareVersions+    HsBindgen.Clang.Discover+    HsBindgen.Clang.ExtraClangArgs+    HsBindgen.Clang.Macos+    HsBindgen.Clang.Tokens+    HsBindgen.Config.ClangArgs+    HsBindgen.Config.Internal+    HsBindgen.Config.MangleCandidate+    HsBindgen.Config.MangleCandidate.ReservedNames+    HsBindgen.Config.Prelims+    HsBindgen.Doxygen+    HsBindgen.Eff+    HsBindgen.Errors+    HsBindgen.Frontend+    HsBindgen.Frontend.Analysis+    HsBindgen.Frontend.Analysis.DeclIndex+    HsBindgen.Frontend.Analysis.DeclIndex.ResolveMacro+    HsBindgen.Frontend.Analysis.DeclUseGraph+    HsBindgen.Frontend.Analysis.DeclUseGraph.Construction+    HsBindgen.Frontend.Analysis.DeclUseGraph.Definition+    HsBindgen.Frontend.Analysis.DeclUseGraph.Query+    HsBindgen.Frontend.Analysis.Deps+    HsBindgen.Frontend.Analysis.IncludeGraph+    HsBindgen.Frontend.Analysis.Typedefs+    HsBindgen.Frontend.Analysis.UnnamedIdUsage+    HsBindgen.Frontend.Analysis.UseDeclGraph+    HsBindgen.Frontend.DeclMeta+    HsBindgen.Frontend.LanguageC+    HsBindgen.Frontend.LanguageC.Error+    HsBindgen.Frontend.LanguageC.Monad+    HsBindgen.Frontend.LanguageC.PartialAST+    HsBindgen.Frontend.LanguageC.PartialAST.FromLanC+    HsBindgen.Frontend.LanguageC.PartialAST.ToBindgen+    HsBindgen.Frontend.Pass.AdjustTypes+    HsBindgen.Frontend.Pass.AdjustTypes.IsPass+    HsBindgen.Frontend.Pass.ConstructTranslationUnit+    HsBindgen.Frontend.Pass.ConstructTranslationUnit.IsPass+    HsBindgen.Frontend.Pass.EnrichComments+    HsBindgen.Frontend.Pass.EnrichComments.IsPass+    HsBindgen.Frontend.Pass.FillUnnamedIds+    HsBindgen.Frontend.Pass.FillUnnamedIds.ChooseNames+    HsBindgen.Frontend.Pass.FillUnnamedIds.IsPass+    HsBindgen.Frontend.Pass.Final+    HsBindgen.Frontend.Pass.MangleNames+    HsBindgen.Frontend.Pass.MangleNames.CreateNames+    HsBindgen.Frontend.Pass.MangleNames.DetectClashes+    HsBindgen.Frontend.Pass.MangleNames.Error+    HsBindgen.Frontend.Pass.MangleNames.IsPass+    HsBindgen.Frontend.Pass.MangleNames.Names+    HsBindgen.Frontend.Pass.MangleNames.ResolveNames+    HsBindgen.Frontend.Pass.Parse+    HsBindgen.Frontend.Pass.Parse.Builtin+    HsBindgen.Frontend.Pass.Parse.Context+    HsBindgen.Frontend.Pass.Parse.Decl+    HsBindgen.Frontend.Pass.Parse.Decl.Field+    HsBindgen.Frontend.Pass.Parse.Decl.ImplicitFields+    HsBindgen.Frontend.Pass.Parse.Decl.Macro+    HsBindgen.Frontend.Pass.Parse.Decl.Members+    HsBindgen.Frontend.Pass.Parse.IsPass+    HsBindgen.Frontend.Pass.Parse.Monad.Decl+    HsBindgen.Frontend.Pass.Parse.Monad.SourceRangeMap+    HsBindgen.Frontend.Pass.Parse.Monad.Type+    HsBindgen.Frontend.Pass.Parse.Msg+    HsBindgen.Frontend.Pass.Parse.Result+    HsBindgen.Frontend.Pass.Parse.Type+    HsBindgen.Frontend.Pass.PrepareReparse+    HsBindgen.Frontend.Pass.PrepareReparse.AST+    HsBindgen.Frontend.Pass.PrepareReparse.Flatten+    HsBindgen.Frontend.Pass.PrepareReparse.IsPass+    HsBindgen.Frontend.Pass.PrepareReparse.IsPass.Msg+    HsBindgen.Frontend.Pass.PrepareReparse.Lexer+    HsBindgen.Frontend.Pass.PrepareReparse.Parser+    HsBindgen.Frontend.Pass.PrepareReparse.Preprocessor+    HsBindgen.Frontend.Pass.PrepareReparse.Printer+    HsBindgen.Frontend.Pass.PrepareReparse.Printer.Util+    HsBindgen.Frontend.Pass.PrepareReparse.Simplifier+    HsBindgen.Frontend.Pass.PrepareReparse.Tracer+    HsBindgen.Frontend.Pass.PrepareReparse.Update+    HsBindgen.Frontend.Pass.ReparseMacroExpansions+    HsBindgen.Frontend.Pass.ReparseMacroExpansions.ForgetAnn+    HsBindgen.Frontend.Pass.ReparseMacroExpansions.IsPass+    HsBindgen.Frontend.Pass.ReparseMacroExpansions.IsPass.Msg+    HsBindgen.Frontend.Pass.ReparseMacroExpansions.LanC+    HsBindgen.Frontend.Pass.ReparseMacroExpansions.Zip+    HsBindgen.Frontend.Pass.ReparseMacroExpansions.Zip.Error+    HsBindgen.Frontend.Pass.ResolveBindingSpecs+    HsBindgen.Frontend.Pass.ResolveBindingSpecs.IsPass+    HsBindgen.Frontend.Pass.Select+    HsBindgen.Frontend.Pass.Select.IsPass+    HsBindgen.Frontend.Pass.SimplifyAST+    HsBindgen.Frontend.Pass.SimplifyAST.IsPass+    HsBindgen.Frontend.Pass.TranslateTypes+    HsBindgen.Frontend.Pass.TranslateTypes.IsPass+    HsBindgen.Frontend.Pass.TranslateTypes.IsPass.Msg+    HsBindgen.Frontend.Pass.TranslateTypes.Translation+    HsBindgen.Frontend.Pass.TypecheckMacros+    HsBindgen.Frontend.Pass.TypecheckMacros.IsPass+    HsBindgen.Frontend.Pass.TypecheckMacros.KnownTypes+    HsBindgen.Frontend.Pass.TypecheckMacros.Typecheck+    HsBindgen.Frontend.Predicate+    HsBindgen.Frontend.PrettyC+    HsBindgen.Frontend.ProcessIncludes+    HsBindgen.Frontend.RootHeader+    HsBindgen.Frontend.TranslationUnit+    HsBindgen.Guasi+    HsBindgen.Imports+    HsBindgen.Instances+    HsBindgen.IR.C+    HsBindgen.IR.C.Conflict+    HsBindgen.IR.C.Decl+    HsBindgen.IR.C.DeclPath+    HsBindgen.IR.C.HashDefine+    HsBindgen.IR.C.HashIncludeArg+    HsBindgen.IR.C.LocationInfo+    HsBindgen.IR.C.Naming+    HsBindgen.IR.C.PrettyPrinter+    HsBindgen.IR.C.RootDirective+    HsBindgen.IR.C.Type+    HsBindgen.IR.Hs+    HsBindgen.IR.Hs.Type+    HsBindgen.IR.Pass+    HsBindgen.IR.Pass.Ann+    HsBindgen.IR.Pass.CommentDecl+    HsBindgen.IR.Pass.Definition+    HsBindgen.IR.Pass.ExtBinding+    HsBindgen.IR.Pass.Id+    HsBindgen.IR.Pass.Macro+    HsBindgen.IR.Pass.Msg+    HsBindgen.IR.Pass.ScopedName+    HsBindgen.IR.Pass.Types+    HsBindgen.IR.Translation+    HsBindgen.Language.C+    HsBindgen.Language.Haskell+    HsBindgen.Macro.Empty+    HsBindgen.Macro.Error+    HsBindgen.Macro.Flip+    HsBindgen.Macro.Interface+    HsBindgen.Macro.Parse+    HsBindgen.Macro.Raw+    HsBindgen.Macro.Raw.Lang+    HsBindgen.Macro.Raw.Parse+    HsBindgen.Macro.Syntax+    HsBindgen.Macro.Type+    HsBindgen.Macro.UniqueExpansion+    HsBindgen.Macro.UniqueExpansion.Parse+    HsBindgen.Macro.UniqueExpansion.Types+    HsBindgen.NameHint+    HsBindgen.Orphans+    HsBindgen.Resolve+    HsBindgen.Test+    HsBindgen.Test.C+    HsBindgen.Test.Hs+    HsBindgen.Test.Internal+    HsBindgen.Test.Readme+    HsBindgen.TH.Internal+    HsBindgen.TraceMsg+    HsBindgen.Util.Monad+    HsBindgen.Util.Process+    HsBindgen.Util.Rational+    HsBindgen.Util.Tracer+    Text.SimplePrettyPrint++  other-modules:    Paths_hs_bindgen+  autogen-modules:  Paths_hs_bindgen+  other-extensions: TemplateHaskellQuotes++  -- Internal dependencies+  build-depends:    hs-bindgen-runtime >=1.0.0.0 && <1.1++  -- External dependencies+  build-depends:+    , aeson               >=2.2.1.0    && <2.3+    , ansi-terminal       >=1.0.0      && <1.2+    , array               >=0.5.4.0    && <0.6+    , base-compat         >=0.13.1     && <0.16+    , base16-bytestring   >=1.0.2.0    && <1.1+    , bytestring          >=0.11.4.0   && <0.13+    , containers          >=0.6.5.1    && <0.9+    , contra-tracer       >=0.2        && <0.3+    , cryptohash-sha256   >=0.11.102.1 && <0.12+    , data-default        >=0.7        && <0.9+    , debruijn            ^>=0.3.1+    , directory           >=1.3.6.2    && <1.4+    , doxygen-parser      >=0.1        && <0.2+    , exceptions          >=0.10       && <0.11+    , filepath            >=1.4        && <1.6+    , fin                 >=0.3.2      && <0.4+    , language-c          >=0.9        && <0.11+    , libclang-bindings   >=0.2        && <0.3+    , mtl                 >=2.2        && <2.4+    , optics-core         >=0.4        && <0.5+    , parsec              >=3.1        && <3.2+    , pretty              >=1.1.3.6    && <1.2+    , process             >=1.6        && <1.7+    , regex-pcre-builtin  >=0.95       && <0.96+    , some                >=1.0.6      && <1.1+    , template-haskell    >=2.19       && <2.25+    , temporary           >=1.3        && <1.4+    , text                >=1.2        && <2.2+    , transformers        >=0.5        && <0.7+    , unliftio-core       >=0.2.1      && <0.3+    , vec                 >=0.5        && <0.6+    , yaml                >=0.11.11.1  && <0.12++library+  import:             lang+  hs-source-dirs:     src+  exposed-modules:+    HsBindgen.Macro+    HsBindgen.TH++  other-modules:+    HsBindgen.Internal.Macro.CExpr+    HsBindgen.Internal.Macro.CExpr.Global+    HsBindgen.Internal.Macro.CExpr.Parse+    HsBindgen.Internal.Macro.CExpr.Resolution+    HsBindgen.Internal.Macro.CExpr.Translation.Type+    HsBindgen.Internal.Macro.CExpr.Translation.Value+    HsBindgen.Internal.Macro.CExpr.Type+    HsBindgen.Internal.Macro.CExpr.Typecheck++  reexported-modules:+  other-extensions:   TemplateHaskellQuotes++  -- Internal dependencies+  build-depends:+    , hs-bindgen-runtime+    , hs-bindgen:internal++  -- External dependencies+  build-depends:+    , c-expr-dsl      >=0.2 && <0.3+    , c-expr-runtime  >=0.1 && <0.2++  -- Inherited dependencies+  build-depends:+    , containers+    , data-default+    , debruijn+    , fin+    , libclang-bindings+    , template-haskell+    , text+    , vec++executable hs-bindgen-cli+  import:             lang+  default-extensions: NoFieldSelectors+  main-is:            hs-bindgen-cli.hs+  hs-source-dirs:     app+  other-modules:+    HsBindgen.App+    HsBindgen.App.Output+    HsBindgen.Cli+    HsBindgen.Cli.BindingSpec+    HsBindgen.Cli.BindingSpec.StdLib+    HsBindgen.Cli.GenTests+    HsBindgen.Cli.Info+    HsBindgen.Cli.Info.BuiltinMacros+    HsBindgen.Cli.Info.Doxygen+    HsBindgen.Cli.Info.IncludeGraph+    HsBindgen.Cli.Info.Instances+    HsBindgen.Cli.Info.Libclang+    HsBindgen.Cli.Info.ResolveHeader+    HsBindgen.Cli.Info.UseDeclGraph+    HsBindgen.Cli.Internal+    HsBindgen.Cli.Internal.Frontend+    HsBindgen.Cli.Preprocess+    HsBindgen.Cli.ToolSupport+    HsBindgen.Cli.ToolSupport.Literate+    Paths_hs_bindgen++  autogen-modules:    Paths_hs_bindgen++  -- Internal dependencies+  build-depends:+    , hs-bindgen+    , hs-bindgen:internal++  -- Inherited dependencies+  build-depends:+    , containers+    , data-default+    , libclang-bindings++  -- External dependencies+  build-depends:+    , bytestring            >=0.11.4.0 && <0.13+    , optparse-applicative  >=0.18     && <0.20+    , prettyprinter         >=1.7.1    && <1.8+    , text                  >=1.2      && <2.2++executable clang-ast-dump+  import:         lang+  main-is:        Main.hs+  hs-source-dirs: clang-ast-dump++  if flag(dev)+    buildable: True++  else+    buildable: False++  -- Internal dependencies+  build-depends:  hs-bindgen:internal++  -- Inherited dependencies+  build-depends:+    , containers+    , data-default+    , libclang-bindings+    , text++  -- External dependencies+  build-depends:  optparse-applicative >=0.18 && <0.20++library test-common+  import:          lang+  hs-source-dirs:  test/common+  exposed-modules:+    Test.Common.HsBindgen.Trace+    Test.Common.HsBindgen.Trace.Patterns+    Test.Common.HsBindgen.Trace.Predicate+    Test.Common.Util.AnsiDiff+    Test.Common.Util.Cabal+    Test.Common.Util.Tasty+    Test.Common.Util.Tasty.Golden++  -- Internal dependencies+  build-depends:   hs-bindgen:internal++  -- Inherited dependencies+  build-depends:+    , ansi-terminal+    , bytestring+    , containers+    , directory+    , filepath+    , mtl+    , text+    , transformers++  -- External dependencies+  build-depends:+    , deepseq        >=1.4     && <1.6+    , Diff           >=1.0     && <1.1+    , edit-distance  >=0.2.2.1 && <0.3+    , primitive      >=0.9     && <0.10+    , tasty          >=1.5     && <1.6+    , tasty-hunit    >=0.10.2  && <0.11+    , utf8-string    >=1.0.2   && <1.1++test-suite test-hs-bindgen+  import:             lang+  type:               exitcode-stdio-1.0+  main-is:            test-hs-bindgen.hs+  hs-source-dirs:     test/hs-bindgen++  -- -threaded is needed for parallel fixture compilation via direct GHC+  -- invocations.+  -- Suppress warning about hs-bindgen being unused in test code+  -- (it's only used when compiling generated TH modules)+  ghc-options:        -threaded -Wno-unused-packages+  other-modules:+    Test.HsBindgen.Clang+    Test.HsBindgen.Fixtures.Haddock+    Test.HsBindgen.Fixtures.TestCases+    Test.HsBindgen.Fixtures.Utils+    Test.HsBindgen.Frontend.LanguageC+    Test.HsBindgen.Frontend.Pass.PrepareReparse+    Test.HsBindgen.Golden+    Test.HsBindgen.Golden.Arrays+    Test.HsBindgen.Golden.Attributes+    Test.HsBindgen.Golden.BindingSpecs+    Test.HsBindgen.Golden.Comprehensive+    Test.HsBindgen.Golden.Declarations+    Test.HsBindgen.Golden.Documentation+    Test.HsBindgen.Golden.EdgeCases+    Test.HsBindgen.Golden.Functions+    Test.HsBindgen.Golden.Globals+    Test.HsBindgen.Golden.Infra.Check.BindingSpec+    Test.HsBindgen.Golden.Infra.Check.FailureBindgen+    Test.HsBindgen.Golden.Infra.Check.FailureLibclang+    Test.HsBindgen.Golden.Infra.Check.PP+    Test.HsBindgen.Golden.Infra.Check.TH+    Test.HsBindgen.Golden.Infra.TestCase+    Test.HsBindgen.Golden.Infra.TestCaseTree+    Test.HsBindgen.Golden.Macros+    Test.HsBindgen.Golden.Macros.Lang+    Test.HsBindgen.Golden.Macros.Redeclaration+    Test.HsBindgen.Golden.Macros.Reparse+    Test.HsBindgen.Golden.ProgramAnalysis+    Test.HsBindgen.Golden.Types+    Test.HsBindgen.Integration.ExitCode+    Test.HsBindgen.Integration.OverwritePolicy+    Test.HsBindgen.Macro.CExpr+    Test.HsBindgen.Macro.Infra+    Test.HsBindgen.Macro.Syntax+    Test.HsBindgen.Macro.Syntax.Clang+    Test.HsBindgen.Macro.UniqueExpansion+    Test.HsBindgen.PPFixtures+    Test.HsBindgen.PPFixtures.Compile+    Test.HsBindgen.PPFixtures.TestCases+    Test.HsBindgen.Prop.Selection+    Test.HsBindgen.Resources+    Test.HsBindgen.THFixtures+    Test.HsBindgen.THFixtures.Compile+    Test.HsBindgen.THFixtures.Generate+    Test.HsBindgen.THFixtures.TestCases+    Test.HsBindgen.Unit.ClangArgs+    Test.HsBindgen.Unit.Digraph+    Test.HsBindgen.Unit.Frontend+    Test.HsBindgen.Unit.Pretty+    Test.HsBindgen.Unit.RootDirective+    Test.HsBindgen.Unit.Runtime+    Test.HsBindgen.Unit.Tracer++  -- Internal dependencies+  build-depends:+    , hs-bindgen+    , hs-bindgen-runtime+    , hs-bindgen:internal+    , test-common++  -- Inherited dependencies+  build-depends:+    , c-expr-dsl+    , containers+    , data-default+    , debruijn+    , directory+    , filepath+    , libclang-bindings+    , mtl+    , optics-core+    , parsec+    , process+    , tasty+    , tasty-hunit+    , template-haskell+    , temporary+    , text+    , utf8-string++  -- External dependencies+  build-depends:+    , async             >=2.2     && <2.3+    , syb               >=0.7.2.4 && <0.8+    , tasty-quickcheck  >=0.11    && <0.12++  -- Build tools needed for integration tests+  build-tool-depends: hs-bindgen:hs-bindgen-cli++-- Test TH mode+--+-- We're intentionally /not/ importing the common @lang@ section here: this+-- forces us to explicitly declare whatever language extensions are needed+-- when using hs-bindgen's TH mode.+test-suite test-th+  type:             exitcode-stdio-1.0+  main-is:          test-th.hs+  hs-source-dirs:   test/th+  include-dirs:     test-artefacts/headers+  default-language: GHC2021+  ghc-options:+    -Wall -Widentities -Wprepositive-qualified-module+    -Wredundant-constraints -Wunused-packages+    -Wno-unticked-promoted-constructors++  other-modules:+    Test.TH.RecordDot+    Test.TH.StaticCounterA+    Test.TH.StaticCounterB+    Test.TH.Test01+    Test.TH.Test02++  -- Internal dependencies+  build-depends:+    , hs-bindgen+    , hs-bindgen-runtime+    , test-common++  -- Inherited dependencies+  build-depends:+    , base+    , filepath+    , optics+    , tasty+    , tasty-hunit++  -- External dependencies+  build-depends:    vector ^>=0.13.2.0++test-suite test-literate+  type:               exitcode-stdio-1.0+  main-is:            test-literate.hs+  hs-source-dirs:     test/literate+  include-dirs:       test-artefacts/headers+  default-language:   GHC2021+  build-depends:      base >=4.17 && <4.23+  ghc-options:+    -Wall -Widentities -Wredundant-constraints -Wunused-packages+    -Wno-unticked-promoted-constructors++  other-modules:+    Test.Literate.Test01+    Test.Literate.Test02+    Test.Literate.TestPointer+    Test.Literate.TestSafe+    Test.Literate.TestSafeAndUnsafe+    Test.Literate.TestUnsafe++  -- Here we use literate haskell "hook" to avoid setting up true preprocessors+  -- (which would require either build-type: Custom or Hooks - both not a great options, at least yet).+  --+  -- The source files contains the actual options and arguments to be used with hs-bindgen+  ghc-options:        -pgmL hs-bindgen-cli -optL tool-support -optL literate+  build-tool-depends: hs-bindgen:hs-bindgen-cli++  -- Internal dependencies+  build-depends:+    , c-expr-runtime+    , hs-bindgen-runtime
+ known-issues.md view
@@ -0,0 +1,140 @@+# Known Issues++Whenever we cut a `hs-bindgen` release, our goal is of course to release a+product without known bugs. However, this is not always practical: some bugs+have so little impact that holding up a release until they are fixed would be+counterproductive. We list these known issues in this file.++This file is bundled with each release, and is a record of which bugs are known+to be present in that specific release. Its purpose is to enable users to+quickly scan through and see if any are relevant to them. It does not replace+the [issue tracker][issue-tracker]: bugs should be reported and discussed there,+and the details of each bug can be found there also.++## Missing type class instances can result in invalid generated code++> https://github.com/well-typed/hs-bindgen/issues/2253+> https://github.com/well-typed/hs-bindgen/issues/786+> https://github.com/well-typed/hs-bindgen/issues/1621+> https://github.com/well-typed/hs-bindgen/issues/2200++Datatypes generated by `hs-bindgen` are equipped with a number of type class+instances. If an instance of class `C` for some type `B` depends on the `C`+instance for another type `A`, but that instance is missing, we might generate+invalid code (that fails to compile). The primary reason why `A` might not+have the instance is a hand-written binding specification.++## Return-by-value of const-struct results in invalid code++> https://github.com/well-typed/hs-bindgen/issues/1514++Related to #1515, but even more obscure: we generate invalid code for functions+that return a struct _by value_ which is _itself_ marked `const`:++```c+struct S { int x; };+const struct S f1();+```++Note that this `const` qualifier here is pointless anyway.++## Return-by-value of struct-of-const results in invalid code++> https://github.com/well-typed/hs-bindgen/issues/1515++We generate invalid code for functions that return a struct _by value_ where+that struct has _const_ fields:++```c+struct S { const int x; int y; };+struct S f1();+```++## Literate mode fails to detect changes in dependent C files++> https://github.com/well-typed/hs-bindgen/issues/1583++When using `hs-bindgen` in literate mode, bindings won't be re-generated when+the C headers have changed.++## Some parse failures are not printed++> https://github.com/well-typed/hs-bindgen/issues/1851++Trace messages for unnamed declarations that cannot be selected are lost in some+cases. In the following example, the reason that the declarations cannot be+selected (`long double` is not supported) is not shown.++```c+struct foo {+  struct {+     long double not_supported;+  } field;+};+```++## Generated bindings for undef-ed macros fail to compile++> https://github.com/well-typed/hs-bindgen/issues/1956++Bindings for a declaration that uses a macro that is later undefined still+use the macro and therefore fail to compile. Example:++```c+#define T int+void foo (T x);+#undef T+```++## Enums with a macro-defined underlying type are not reparsed++> https://github.com/well-typed/hs-bindgen/issues/2119++Given++```c+#define A int+enum E : A { enumerator };+```++we will use `CInt` rather than the `A` newtype as the enum's underlying type.++## Reparsing of some headers may fail++> https://github.com/well-typed/hs-bindgen/issues/2148++In `hs-bindgen`, parsing and initial analysis of the C code (memory layout etc.)+are offloaded to `clang`; we use `clang` both in "compile" and in "preprocess"+mode; the latter when we are "reparsing" C code to recover macro information. In+rare cases `clang` in "compile" mode succeeds where "preprocess" mode fails;+when this happens, you might see an error such as++```+We tried to run the clang executable to preprocess select macro invocations, but it failed to run.+```++## Selection might miss redeclared declarations++> https://github.com/well-typed/hs-bindgen/issues/2282++When, say, a `struct` declaration occurs _twice_ in a header (or its transitive+`#include`s), we only store one of the locations. Consequently, if a selection+predicate matches the _other_ location, the declaration might not be selected+and would be omitted from the generated bindings.++## Reparse range is sometimes inaccurate++> https://github.com/well-typed/hs-bindgen/issues/2286++In order to recover macro information, `hs-bindgen` needs to reparse+declarations; this process starts by asking `libclang` for the location of the+first and final token. Sometimes `libclang` reports these locations incorrectly;+we try to correct for this, but don't always succeed. When we don't succeed, we+will fail to recover macro information and fall back on the parse as `libclang`+itself previously reported it. This only happens in rare circumstances, and only+with macros with arguments.+++++[issue-tracker]: https://github.com/well-typed/hs-bindgen/issues
+ musl-include/COPYRIGHT view
@@ -0,0 +1,193 @@+musl as a whole is licensed under the following standard MIT license:++----------------------------------------------------------------------+Copyright © 2005-2020 Rich Felker, et al.++Permission is hereby granted, free of charge, to any person obtaining+a copy of this software and associated documentation files (the+"Software"), to deal in the Software without restriction, including+without limitation the rights to use, copy, modify, merge, publish,+distribute, sublicense, and/or sell copies of the Software, and to+permit persons to whom the Software is furnished to do so, subject to+the following conditions:++The above copyright notice and this permission notice shall be+included in all copies or substantial portions of the Software.++THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,+EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF+MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.+IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY+CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,+TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE+SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.+----------------------------------------------------------------------++Authors/contributors include:++A. Wilcox+Ada Worcester+Alex Dowad+Alex Suykov+Alexander Monakov+Andre McCurdy+Andrew Kelley+Anthony G. Basile+Aric Belsito+Arvid Picciani+Bartosz Brachaczek+Benjamin Peterson+Bobby Bingham+Boris Brezillon+Brent Cook+Chris Spiegel+Clément Vasseur+Daniel Micay+Daniel Sabogal+Daurnimator+David Carlier+David Edelsohn+Denys Vlasenko+Dmitry Ivanov+Dmitry V. Levin+Drew DeVault+Emil Renner Berthing+Fangrui Song+Felix Fietkau+Felix Janda+Gianluca Anzolin+Hauke Mehrtens+He X+Hiltjo Posthuma+Isaac Dunham+Jaydeep Patil+Jens Gustedt+Jeremy Huntwork+Jo-Philipp Wich+Joakim Sindholt+John Spencer+Julien Ramseier+Justin Cormack+Kaarle Ritvanen+Khem Raj+Kylie McClain+Leah Neukirchen+Luca Barbato+Luka Perkov+M Farkas-Dyck (Strake)+Mahesh Bodapati+Markus Wichmann+Masanori Ogino+Michael Clark+Michael Forney+Mikhail Kremnyov+Natanael Copa+Nicholas J. Kain+orc+Pascal Cuoq+Patrick Oppenlander+Petr Hosek+Petr Skocik+Pierre Carrier+Reini Urban+Rich Felker+Richard Pennington+Ryan Fairfax+Samuel Holland+Segev Finer+Shiz+sin+Solar Designer+Stefan Kristiansson+Stefan O'Rear+Szabolcs Nagy+Timo Teräs+Trutz Behn+Valentin Ochs+Will Dietz+William Haddon+William Pitcock++Portions of this software are derived from third-party works licensed+under terms compatible with the above MIT license:++The TRE regular expression implementation (src/regex/reg* and+src/regex/tre*) is Copyright © 2001-2008 Ville Laurikari and licensed+under a 2-clause BSD license (license text in the source files). The+included version has been heavily modified by Rich Felker in 2012, in+the interests of size, simplicity, and namespace cleanliness.++Much of the math library code (src/math/* and src/complex/*) is+Copyright © 1993,2004 Sun Microsystems or+Copyright © 2003-2011 David Schultz or+Copyright © 2003-2009 Steven G. Kargl or+Copyright © 2003-2009 Bruce D. Evans or+Copyright © 2008 Stephen L. Moshier or+Copyright © 2017-2018 Arm Limited+and labelled as such in comments in the individual source files. All+have been licensed under extremely permissive terms.++The ARM memcpy code (src/string/arm/memcpy.S) is Copyright © 2008+The Android Open Source Project and is licensed under a two-clause BSD+license. It was taken from Bionic libc, used on Android.++The AArch64 memcpy and memset code (src/string/aarch64/*) are+Copyright © 1999-2019, Arm Limited.++The implementation of DES for crypt (src/crypt/crypt_des.c) is+Copyright © 1994 David Burren. It is licensed under a BSD license.++The implementation of blowfish crypt (src/crypt/crypt_blowfish.c) was+originally written by Solar Designer and placed into the public+domain. The code also comes with a fallback permissive license for use+in jurisdictions that may not recognize the public domain.++The smoothsort implementation (src/stdlib/qsort.c) is Copyright © 2011+Valentin Ochs and is licensed under an MIT-style license.++The x86_64 port was written by Nicholas J. Kain and is licensed under+the standard MIT terms.++The mips and microblaze ports were originally written by Richard+Pennington for use in the ellcc project. The original code was adapted+by Rich Felker for build system and code conventions during upstream+integration. It is licensed under the standard MIT terms.++The mips64 port was contributed by Imagination Technologies and is+licensed under the standard MIT terms.++The powerpc port was also originally written by Richard Pennington,+and later supplemented and integrated by John Spencer. It is licensed+under the standard MIT terms.++All other files which have no copyright comments are original works+produced specifically for use as part of this library, written either+by Rich Felker, the main author of the library, or by one or more+contibutors listed above. Details on authorship of individual files+can be found in the git version control history of the project. The+omission of copyright and license comments in each file is in the+interest of source tree size.++In addition, permission is hereby granted for all public header files+(include/* and arch/*/bits/*) and crt files intended to be linked into+applications (crt/*, ldso/dlstart.c, and arch/*/crt_arch.h) to omit+the copyright notice and permission notice otherwise required by the+license, and to use these files without any requirement of+attribution. These files include substantial contributions from:++Bobby Bingham+John Spencer+Nicholas J. Kain+Rich Felker+Richard Pennington+Stefan Kristiansson+Szabolcs Nagy++all of whom have explicitly granted such permission.++This file previously contained text expressing a belief that most of+the files covered by the above exception were sufficiently trivial not+to be subject to copyright, resulting in confusion over whether it+negated the permissions granted in the license. In the spirit of+permissive licensing, and of not having licensing issues being an+obstacle to adoption, that text has been removed.
+ musl-include/VERSION view
@@ -0,0 +1,1 @@+1.2.5
+ musl-include/aarch64/aio.h view
@@ -0,0 +1,73 @@+#ifndef _AIO_H+#define _AIO_H++#ifdef __cplusplus+extern "C" {+#endif++#include <features.h>+#include <signal.h>+#include <time.h>++#define __NEED_ssize_t+#define __NEED_off_t++#include <bits/alltypes.h>++struct aiocb {+	int aio_fildes, aio_lio_opcode, aio_reqprio;+	volatile void *aio_buf;+	size_t aio_nbytes;+	struct sigevent aio_sigevent;+	void *__td;+	int __lock[2];+	volatile int __err;+	ssize_t __ret;+	off_t aio_offset;+	void *__next, *__prev;+	char __dummy4[32-2*sizeof(void *)];+};++#define AIO_CANCELED 0+#define AIO_NOTCANCELED 1+#define AIO_ALLDONE 2++#define LIO_READ 0+#define LIO_WRITE 1+#define LIO_NOP 2++#define LIO_WAIT 0+#define LIO_NOWAIT 1++int aio_read(struct aiocb *);+int aio_write(struct aiocb *);+int aio_error(const struct aiocb *);+ssize_t aio_return(struct aiocb *);+int aio_cancel(int, struct aiocb *);+int aio_suspend(const struct aiocb *const [], int, const struct timespec *);+int aio_fsync(int, struct aiocb *);++int lio_listio(int, struct aiocb *__restrict const *__restrict, int, struct sigevent *__restrict);++#if defined(_LARGEFILE64_SOURCE)+#define aiocb64 aiocb+#define aio_read64 aio_read+#define aio_write64 aio_write+#define aio_error64 aio_error+#define aio_return64 aio_return+#define aio_cancel64 aio_cancel+#define aio_suspend64 aio_suspend+#define aio_fsync64 aio_fsync+#define lio_listio64 lio_listio+#define off64_t off_t+#endif++#if _REDIR_TIME64+__REDIR(aio_suspend, __aio_suspend_time64);+#endif++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/aarch64/alloca.h view
@@ -0,0 +1,19 @@+#ifndef	_ALLOCA_H+#define	_ALLOCA_H++#ifdef __cplusplus+extern "C" {+#endif++#define	__NEED_size_t+#include <bits/alltypes.h>++void *alloca(size_t);++#define alloca __builtin_alloca++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/aarch64/ar.h view
@@ -0,0 +1,25 @@+#ifndef _AR_H+#define _AR_H++#ifdef __cplusplus+extern "C" {+#endif++#define ARMAG "!<arch>\n"+#define SARMAG 8+#define ARFMAG "`\n"++struct ar_hdr {+	char ar_name[16];+	char ar_date[12];+	char ar_uid[6], ar_gid[6];+	char ar_mode[8];+	char ar_size[10];+	char ar_fmag[2];+};++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/aarch64/arpa/ftp.h view
@@ -0,0 +1,35 @@+#ifndef _ARPA_FTP_H+#define _ARPA_FTP_H+#define PRELIM 1+#define COMPLETE 2+#define CONTINUE 3+#define TRANSIENT 4+#define ERROR 5+#define TYPE_A 1+#define TYPE_E 2+#define TYPE_I 3+#define TYPE_L 4+#define FORM_N 1+#define FORM_T 2+#define FORM_C 3+#define STRU_F 1+#define STRU_R 2+#define STRU_P 3+#define MODE_S 1+#define MODE_B 2+#define MODE_C 3+#define REC_ESC '\377'+#define REC_EOR '\001'+#define REC_EOF '\002'+#define BLK_EOR 0x80+#define BLK_EOF 0x40+#define BLK_ERRORS 0x20+#define BLK_RESTART 0x10+#define BLK_BYTECOUNT 2+#ifdef FTP_NAMES+char *modenames[] =  {"0", "Stream", "Block", "Compressed" };+char *strunames[] =  {"0", "File", "Record", "Page" };+char *typenames[] =  {"0", "ASCII", "EBCDIC", "Image", "Local" };+char *formnames[] =  {"0", "Nonprint", "Telnet", "Carriage-control" };+#endif+#endif
+ musl-include/aarch64/arpa/inet.h view
@@ -0,0 +1,31 @@+#ifndef _ARPA_INET_H+#define	_ARPA_INET_H++#ifdef __cplusplus+extern "C" {+#endif++#include <features.h>+#include <netinet/in.h>++uint32_t htonl(uint32_t);+uint16_t htons(uint16_t);+uint32_t ntohl(uint32_t);+uint16_t ntohs(uint16_t);++in_addr_t inet_addr (const char *);+in_addr_t inet_network (const char *);+char *inet_ntoa (struct in_addr);+int inet_pton (int, const char *__restrict, void *__restrict);+const char *inet_ntop (int, const void *__restrict, char *__restrict, socklen_t);++int inet_aton (const char *, struct in_addr *);+struct in_addr inet_makeaddr(in_addr_t, in_addr_t);+in_addr_t inet_lnaof(struct in_addr);+in_addr_t inet_netof(struct in_addr);++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/aarch64/arpa/nameser.h view
@@ -0,0 +1,526 @@+#ifndef _ARPA_NAMESER_H+#define _ARPA_NAMESER_H++#ifdef __cplusplus+extern "C" {+#endif++#include <stddef.h>+#include <stdint.h>++#define __NAMESER	19991006+#define NS_PACKETSZ	512+#define NS_MAXDNAME	1025+#define NS_MAXMSG	65535+#define NS_MAXCDNAME	255+#define NS_MAXLABEL	63+#define NS_HFIXEDSZ	12+#define NS_QFIXEDSZ	4+#define NS_RRFIXEDSZ	10+#define NS_INT32SZ	4+#define NS_INT16SZ	2+#define NS_INT8SZ	1+#define NS_INADDRSZ	4+#define NS_IN6ADDRSZ	16+#define NS_CMPRSFLGS	0xc0+#define NS_DEFAULTPORT	53++typedef enum __ns_sect {+	ns_s_qd = 0,+	ns_s_zn = 0,+	ns_s_an = 1,+	ns_s_pr = 1,+	ns_s_ns = 2,+	ns_s_ud = 2,+	ns_s_ar = 3,+	ns_s_max = 4+} ns_sect;++typedef struct __ns_msg {+	const unsigned char *_msg, *_eom;+	uint16_t _id, _flags, _counts[ns_s_max];+	const unsigned char *_sections[ns_s_max];+	ns_sect _sect;+	int _rrnum;+	const unsigned char *_msg_ptr;+} ns_msg;++struct _ns_flagdata {  int mask, shift;  };+extern const struct _ns_flagdata _ns_flagdata[];++#define ns_msg_id(handle) ((handle)._id + 0)+#define ns_msg_base(handle) ((handle)._msg + 0)+#define ns_msg_end(handle) ((handle)._eom + 0)+#define ns_msg_size(handle) ((handle)._eom - (handle)._msg)+#define ns_msg_count(handle, section) ((handle)._counts[section] + 0)+#define ns_msg_getflag(handle, flag) \+	(((handle)._flags & _ns_flagdata[flag].mask) >> _ns_flagdata[flag].shift)++typedef	struct __ns_rr {+	char		name[NS_MAXDNAME];+	uint16_t	type;+	uint16_t	rr_class;+	uint32_t	ttl;+	uint16_t	rdlength;+	const unsigned char *rdata;+} ns_rr;++#define ns_rr_name(rr)	(((rr).name[0] != '\0') ? (rr).name : ".")+#define ns_rr_type(rr)	((ns_type)((rr).type + 0))+#define ns_rr_class(rr)	((ns_class)((rr).rr_class + 0))+#define ns_rr_ttl(rr)	((rr).ttl + 0)+#define ns_rr_rdlen(rr)	((rr).rdlength + 0)+#define ns_rr_rdata(rr)	((rr).rdata + 0)++typedef enum __ns_flag {+	ns_f_qr,+	ns_f_opcode,+	ns_f_aa,+	ns_f_tc,+	ns_f_rd,+	ns_f_ra,+	ns_f_z,+	ns_f_ad,+	ns_f_cd,+	ns_f_rcode,+	ns_f_max+} ns_flag;++typedef enum __ns_opcode {+	ns_o_query = 0,+	ns_o_iquery = 1,+	ns_o_status = 2,+	ns_o_notify = 4,+	ns_o_update = 5,+	ns_o_max = 6+} ns_opcode;++typedef	enum __ns_rcode {+	ns_r_noerror = 0,+	ns_r_formerr = 1,+	ns_r_servfail = 2,+	ns_r_nxdomain = 3,+	ns_r_notimpl = 4,+	ns_r_refused = 5,+	ns_r_yxdomain = 6,+	ns_r_yxrrset = 7,+	ns_r_nxrrset = 8,+	ns_r_notauth = 9,+	ns_r_notzone = 10,+	ns_r_max = 11,+	ns_r_badvers = 16,+	ns_r_badsig = 16,+	ns_r_badkey = 17,+	ns_r_badtime = 18+} ns_rcode;++typedef enum __ns_update_operation {+	ns_uop_delete = 0,+	ns_uop_add = 1,+	ns_uop_max = 2+} ns_update_operation;++struct ns_tsig_key {+        char name[NS_MAXDNAME], alg[NS_MAXDNAME];+        unsigned char *data;+        int len;+};+typedef struct ns_tsig_key ns_tsig_key;++struct ns_tcp_tsig_state {+	int counter;+	struct dst_key *key;+	void *ctx;+	unsigned char sig[NS_PACKETSZ];+	int siglen;+};+typedef struct ns_tcp_tsig_state ns_tcp_tsig_state;++#define NS_TSIG_FUDGE 300+#define NS_TSIG_TCP_COUNT 100+#define NS_TSIG_ALG_HMAC_MD5 "HMAC-MD5.SIG-ALG.REG.INT"++#define NS_TSIG_ERROR_NO_TSIG -10+#define NS_TSIG_ERROR_NO_SPACE -11+#define NS_TSIG_ERROR_FORMERR -12++typedef enum __ns_type {+	ns_t_invalid = 0,+	ns_t_a = 1,+	ns_t_ns = 2,+	ns_t_md = 3,+	ns_t_mf = 4,+	ns_t_cname = 5,+	ns_t_soa = 6,+	ns_t_mb = 7,+	ns_t_mg = 8,+	ns_t_mr = 9,+	ns_t_null = 10,+	ns_t_wks = 11,+	ns_t_ptr = 12,+	ns_t_hinfo = 13,+	ns_t_minfo = 14,+	ns_t_mx = 15,+	ns_t_txt = 16,+	ns_t_rp = 17,+	ns_t_afsdb = 18,+	ns_t_x25 = 19,+	ns_t_isdn = 20,+	ns_t_rt = 21,+	ns_t_nsap = 22,+	ns_t_nsap_ptr = 23,+	ns_t_sig = 24,+	ns_t_key = 25,+	ns_t_px = 26,+	ns_t_gpos = 27,+	ns_t_aaaa = 28,+	ns_t_loc = 29,+	ns_t_nxt = 30,+	ns_t_eid = 31,+	ns_t_nimloc = 32,+	ns_t_srv = 33,+	ns_t_atma = 34,+	ns_t_naptr = 35,+	ns_t_kx = 36,+	ns_t_cert = 37,+	ns_t_a6 = 38,+	ns_t_dname = 39,+	ns_t_sink = 40,+	ns_t_opt = 41,+	ns_t_apl = 42,+	ns_t_ds = 43,+	ns_t_sshfp = 44,+	ns_t_ipseckey = 45,+	ns_t_rrsig = 46,+	ns_t_nsec = 47,+	ns_t_dnskey = 48,+	ns_t_dhcid = 49,+	ns_t_nsec3 = 50,+	ns_t_nsec3param = 51,+	ns_t_tlsa = 52,+	ns_t_smimea = 53,+	ns_t_hip = 55,+	ns_t_ninfo = 56,+	ns_t_rkey = 57,+	ns_t_talink = 58,+	ns_t_cds = 59,+	ns_t_cdnskey = 60,+	ns_t_openpgpkey = 61,+	ns_t_csync = 62,+	ns_t_spf = 99,+	ns_t_uinfo = 100,+	ns_t_uid = 101,+	ns_t_gid = 102,+	ns_t_unspec = 103,+	ns_t_nid = 104,+	ns_t_l32 = 105,+	ns_t_l64 = 106,+	ns_t_lp = 107,+	ns_t_eui48 = 108,+	ns_t_eui64 = 109,+	ns_t_tkey = 249,+	ns_t_tsig = 250,+	ns_t_ixfr = 251,+	ns_t_axfr = 252,+	ns_t_mailb = 253,+	ns_t_maila = 254,+	ns_t_any = 255,+	ns_t_zxfr = 256,+	ns_t_uri = 256,+	ns_t_caa = 257,+	ns_t_avc = 258,+	ns_t_ta = 32768,+	ns_t_dlv = 32769,+	ns_t_max = 65536+} ns_type;++#define	ns_t_qt_p(t) (ns_t_xfr_p(t) || (t) == ns_t_any || \+		      (t) == ns_t_mailb || (t) == ns_t_maila)+#define	ns_t_mrr_p(t) ((t) == ns_t_tsig || (t) == ns_t_opt)+#define ns_t_rr_p(t) (!ns_t_qt_p(t) && !ns_t_mrr_p(t))+#define ns_t_udp_p(t) ((t) != ns_t_axfr && (t) != ns_t_zxfr)+#define ns_t_xfr_p(t) ((t) == ns_t_axfr || (t) == ns_t_ixfr || \+		       (t) == ns_t_zxfr)++typedef enum __ns_class {+	ns_c_invalid = 0,+	ns_c_in = 1,+	ns_c_2 = 2,+	ns_c_chaos = 3,+	ns_c_hs = 4,+	ns_c_none = 254,+	ns_c_any = 255,+	ns_c_max = 65536+} ns_class;++typedef enum __ns_key_types {+	ns_kt_rsa = 1,+	ns_kt_dh  = 2,+	ns_kt_dsa = 3,+	ns_kt_private = 254+} ns_key_types;++typedef enum __ns_cert_types {+	cert_t_pkix = 1,+	cert_t_spki = 2,+	cert_t_pgp  = 3,+	cert_t_url  = 253,+	cert_t_oid  = 254+} ns_cert_types;++#define	NS_KEY_TYPEMASK		0xC000+#define	NS_KEY_TYPE_AUTH_CONF	0x0000+#define	NS_KEY_TYPE_CONF_ONLY	0x8000+#define	NS_KEY_TYPE_AUTH_ONLY	0x4000+#define	NS_KEY_TYPE_NO_KEY	0xC000+#define	NS_KEY_NO_AUTH		0x8000+#define	NS_KEY_NO_CONF		0x4000+#define	NS_KEY_RESERVED2	0x2000+#define	NS_KEY_EXTENDED_FLAGS	0x1000+#define	NS_KEY_RESERVED4	0x0800+#define	NS_KEY_RESERVED5	0x0400+#define	NS_KEY_NAME_TYPE	0x0300+#define	NS_KEY_NAME_USER	0x0000+#define	NS_KEY_NAME_ENTITY	0x0200+#define	NS_KEY_NAME_ZONE	0x0100+#define	NS_KEY_NAME_RESERVED	0x0300+#define	NS_KEY_RESERVED8	0x0080+#define	NS_KEY_RESERVED9	0x0040+#define	NS_KEY_RESERVED10	0x0020+#define	NS_KEY_RESERVED11	0x0010+#define	NS_KEY_SIGNATORYMASK	0x000F+#define	NS_KEY_RESERVED_BITMASK ( NS_KEY_RESERVED2 | \+				  NS_KEY_RESERVED4 | \+				  NS_KEY_RESERVED5 | \+				  NS_KEY_RESERVED8 | \+				  NS_KEY_RESERVED9 | \+				  NS_KEY_RESERVED10 | \+				  NS_KEY_RESERVED11 )+#define NS_KEY_RESERVED_BITMASK2 0xFFFF+#define	NS_ALG_MD5RSA		1+#define	NS_ALG_DH               2+#define	NS_ALG_DSA              3+#define	NS_ALG_DSS              NS_ALG_DSA+#define	NS_ALG_EXPIRE_ONLY	253+#define	NS_ALG_PRIVATE_OID	254++#define NS_KEY_PROT_TLS         1+#define NS_KEY_PROT_EMAIL       2+#define NS_KEY_PROT_DNSSEC      3+#define NS_KEY_PROT_IPSEC       4+#define NS_KEY_PROT_ANY		255++#define	NS_MD5RSA_MIN_BITS	 512+#define	NS_MD5RSA_MAX_BITS	4096+#define	NS_MD5RSA_MAX_BYTES	((NS_MD5RSA_MAX_BITS+7/8)*2+3)+#define	NS_MD5RSA_MAX_BASE64	(((NS_MD5RSA_MAX_BYTES+2)/3)*4)+#define NS_MD5RSA_MIN_SIZE	((NS_MD5RSA_MIN_BITS+7)/8)+#define NS_MD5RSA_MAX_SIZE	((NS_MD5RSA_MAX_BITS+7)/8)++#define NS_DSA_SIG_SIZE         41+#define NS_DSA_MIN_SIZE         213+#define NS_DSA_MAX_BYTES        405++#define	NS_SIG_TYPE	0+#define	NS_SIG_ALG	2+#define	NS_SIG_LABELS	3+#define	NS_SIG_OTTL	4+#define	NS_SIG_EXPIR	8+#define	NS_SIG_SIGNED	12+#define	NS_SIG_FOOT	16+#define	NS_SIG_SIGNER	18+#define	NS_NXT_BITS 8+#define	NS_NXT_BIT_SET(  n,p) (p[(n)/NS_NXT_BITS] |=  (0x80>>((n)%NS_NXT_BITS)))+#define	NS_NXT_BIT_CLEAR(n,p) (p[(n)/NS_NXT_BITS] &= ~(0x80>>((n)%NS_NXT_BITS)))+#define	NS_NXT_BIT_ISSET(n,p) (p[(n)/NS_NXT_BITS] &   (0x80>>((n)%NS_NXT_BITS)))+#define NS_NXT_MAX 127++#define NS_OPT_DNSSEC_OK        0x8000U+#define NS_OPT_NSID		3++#define NS_GET16(s, cp) (void)((s) = ns_get16(((cp)+=2)-2))+#define NS_GET32(l, cp) (void)((l) = ns_get32(((cp)+=4)-4))+#define NS_PUT16(s, cp) ns_put16((s), ((cp)+=2)-2)+#define NS_PUT32(l, cp) ns_put32((l), ((cp)+=4)-4)++unsigned ns_get16(const unsigned char *);+unsigned long ns_get32(const unsigned char *);+void ns_put16(unsigned, unsigned char *);+void ns_put32(unsigned long, unsigned char *);++int ns_initparse(const unsigned char *, int, ns_msg *);+int ns_parserr(ns_msg *, ns_sect, int, ns_rr *);+int ns_skiprr(const unsigned char *, const unsigned char *, ns_sect, int);+int ns_name_uncompress(const unsigned char *, const unsigned char *, const unsigned char *, char *, size_t);+++#define	__BIND		19950621++typedef struct {+	unsigned	id :16;+#if __BYTE_ORDER == __BIG_ENDIAN+	unsigned	qr: 1;+	unsigned	opcode: 4;+	unsigned	aa: 1;+	unsigned	tc: 1;+	unsigned	rd: 1;+	unsigned	ra: 1;+	unsigned	unused :1;+	unsigned	ad: 1;+	unsigned	cd: 1;+	unsigned	rcode :4;+#else+	unsigned	rd :1;+	unsigned	tc :1;+	unsigned	aa :1;+	unsigned	opcode :4;+	unsigned	qr :1;+	unsigned	rcode :4;+	unsigned	cd: 1;+	unsigned	ad: 1;+	unsigned	unused :1;+	unsigned	ra :1;+#endif+	unsigned	qdcount :16;+	unsigned	ancount :16;+	unsigned	nscount :16;+	unsigned	arcount :16;+} HEADER;++#define PACKETSZ	NS_PACKETSZ+#define MAXDNAME	NS_MAXDNAME+#define MAXCDNAME	NS_MAXCDNAME+#define MAXLABEL	NS_MAXLABEL+#define	HFIXEDSZ	NS_HFIXEDSZ+#define QFIXEDSZ	NS_QFIXEDSZ+#define RRFIXEDSZ	NS_RRFIXEDSZ+#define	INT32SZ		NS_INT32SZ+#define	INT16SZ		NS_INT16SZ+#define INT8SZ		NS_INT8SZ+#define	INADDRSZ	NS_INADDRSZ+#define	IN6ADDRSZ	NS_IN6ADDRSZ+#define	INDIR_MASK	NS_CMPRSFLGS+#define NAMESERVER_PORT	NS_DEFAULTPORT++#define S_ZONE		ns_s_zn+#define S_PREREQ	ns_s_pr+#define S_UPDATE	ns_s_ud+#define S_ADDT		ns_s_ar++#define QUERY		ns_o_query+#define IQUERY		ns_o_iquery+#define STATUS		ns_o_status+#define	NS_NOTIFY_OP	ns_o_notify+#define	NS_UPDATE_OP	ns_o_update++#define NOERROR		ns_r_noerror+#define FORMERR		ns_r_formerr+#define SERVFAIL	ns_r_servfail+#define NXDOMAIN	ns_r_nxdomain+#define NOTIMP		ns_r_notimpl+#define REFUSED		ns_r_refused+#define YXDOMAIN	ns_r_yxdomain+#define YXRRSET		ns_r_yxrrset+#define NXRRSET		ns_r_nxrrset+#define NOTAUTH		ns_r_notauth+#define NOTZONE		ns_r_notzone++#define DELETE		ns_uop_delete+#define ADD		ns_uop_add++#define T_A		ns_t_a+#define T_NS		ns_t_ns+#define T_MD		ns_t_md+#define T_MF		ns_t_mf+#define T_CNAME		ns_t_cname+#define T_SOA		ns_t_soa+#define T_MB		ns_t_mb+#define T_MG		ns_t_mg+#define T_MR		ns_t_mr+#define T_NULL		ns_t_null+#define T_WKS		ns_t_wks+#define T_PTR		ns_t_ptr+#define T_HINFO		ns_t_hinfo+#define T_MINFO		ns_t_minfo+#define T_MX		ns_t_mx+#define T_TXT		ns_t_txt+#define	T_RP		ns_t_rp+#define T_AFSDB		ns_t_afsdb+#define T_X25		ns_t_x25+#define T_ISDN		ns_t_isdn+#define T_RT		ns_t_rt+#define T_NSAP		ns_t_nsap+#define T_NSAP_PTR	ns_t_nsap_ptr+#define	T_SIG		ns_t_sig+#define	T_KEY		ns_t_key+#define	T_PX		ns_t_px+#define	T_GPOS		ns_t_gpos+#define	T_AAAA		ns_t_aaaa+#define	T_LOC		ns_t_loc+#define	T_NXT		ns_t_nxt+#define	T_EID		ns_t_eid+#define	T_NIMLOC	ns_t_nimloc+#define	T_SRV		ns_t_srv+#define T_ATMA		ns_t_atma+#define T_NAPTR		ns_t_naptr+#define T_A6		ns_t_a6+#define T_DNAME		ns_t_dname+#define T_DS		ns_t_ds+#define T_SSHFP		ns_t_sshfp+#define T_IPSECKEY	ns_t_ipseckey+#define T_RRSIG		ns_t_rrsig+#define T_NSEC		ns_t_nsec+#define T_DNSKEY	ns_t_dnskey+#define T_DHCID		ns_t_dhcid+#define T_NSEC3		ns_t_nsec3+#define T_NSEC3PARAM	ns_t_nsec3param+#define T_TLSA		ns_t_tlsa+#define T_SMIMEA	ns_t_smimea+#define T_HIP		ns_t_hip+#define T_NINFO		ns_t_ninfo+#define T_RKEY		ns_t_rkey+#define T_TALINK	ns_t_talink+#define T_CDS		ns_t_cds+#define T_CDNSKEY	ns_t_cdnskey+#define T_OPENPGPKEY	ns_t_openpgpkey+#define T_CSYNC		ns_t_csync+#define T_SPF		ns_t_spf+#define T_UINFO		ns_t_uinfo+#define T_UID		ns_t_uid+#define T_GID		ns_t_gid+#define T_UNSPEC	ns_t_unspec+#define T_NID		ns_t_nid+#define T_L32		ns_t_l32+#define T_L64		ns_t_l64+#define T_LP		ns_t_lp+#define T_EUI48		ns_t_eui48+#define T_EUI64		ns_t_eui64+#define T_TKEY		ns_t_tkey+#define	T_TSIG		ns_t_tsig+#define	T_IXFR		ns_t_ixfr+#define T_AXFR		ns_t_axfr+#define T_MAILB		ns_t_mailb+#define T_MAILA		ns_t_maila+#define T_ANY		ns_t_any+#define T_URI		ns_t_uri+#define T_CAA		ns_t_caa+#define T_AVC		ns_t_avc+#define T_TA		ns_t_ta+#define T_DLV		ns_t_dlv++#define C_IN		ns_c_in+#define C_CHAOS		ns_c_chaos+#define C_HS		ns_c_hs+#define C_NONE		ns_c_none+#define C_ANY		ns_c_any++#define	GETSHORT		NS_GET16+#define	GETLONG			NS_GET32+#define	PUTSHORT		NS_PUT16+#define	PUTLONG			NS_PUT32++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/aarch64/arpa/nameser_compat.h view
@@ -0,0 +1,2 @@+#include <arpa/nameser.h>+
+ musl-include/aarch64/arpa/telnet.h view
@@ -0,0 +1,251 @@+#ifndef _ARPA_TELNET_H+#define	_ARPA_TELNET_H++#define	IAC	255+#define	DONT	254+#define	DO	253+#define	WONT	252+#define	WILL	251+#define	SB	250+#define	GA	249+#define	EL	248+#define	EC	247+#define	AYT	246+#define	AO	245+#define	IP	244+#define	BREAK	243+#define	DM	242+#define	NOP	241+#define	SE	240+#define EOR     239+#define	ABORT	238+#define	SUSP	237+#define	xEOF	236++#define SYNCH	242++#define telcmds ((char [][6]){ "EOF", "SUSP", "ABORT", "EOR", "SE", "NOP", "DMARK", "BRK", "IP", "AO", "AYT", "EC", "EL", "GA", "SB", "WILL", "WONT", "DO", "DONT", "IAC", 0 })++#define	TELCMD_FIRST	xEOF+#define	TELCMD_LAST	IAC+#define	TELCMD_OK(x)	((unsigned int)(x) <= TELCMD_LAST && \+			 (unsigned int)(x) >= TELCMD_FIRST)+#define	TELCMD(x)	telcmds[(x)-TELCMD_FIRST]++#define TELOPT_BINARY	0+#define TELOPT_ECHO	1+#define	TELOPT_RCP	2+#define	TELOPT_SGA	3+#define	TELOPT_NAMS	4+#define	TELOPT_STATUS	5+#define	TELOPT_TM	6+#define	TELOPT_RCTE	7+#define TELOPT_NAOL 	8+#define TELOPT_NAOP 	9+#define TELOPT_NAOCRD	10+#define TELOPT_NAOHTS	11+#define TELOPT_NAOHTD	12+#define TELOPT_NAOFFD	13+#define TELOPT_NAOVTS	14+#define TELOPT_NAOVTD	15+#define TELOPT_NAOLFD	16+#define TELOPT_XASCII	17+#define	TELOPT_LOGOUT	18+#define	TELOPT_BM	19+#define	TELOPT_DET	20+#define	TELOPT_SUPDUP	21+#define	TELOPT_SUPDUPOUTPUT 22+#define	TELOPT_SNDLOC	23+#define	TELOPT_TTYPE	24+#define	TELOPT_EOR	25+#define	TELOPT_TUID	26+#define	TELOPT_OUTMRK	27+#define	TELOPT_TTYLOC	28+#define	TELOPT_3270REGIME 29+#define	TELOPT_X3PAD	30+#define	TELOPT_NAWS	31+#define	TELOPT_TSPEED	32+#define	TELOPT_LFLOW	33+#define TELOPT_LINEMODE	34+#define TELOPT_XDISPLOC	35+#define TELOPT_OLD_ENVIRON 36+#define	TELOPT_AUTHENTICATION 37/* Authenticate */+#define	TELOPT_ENCRYPT	38+#define TELOPT_NEW_ENVIRON 39+#define	TELOPT_EXOPL	255+++#define	NTELOPTS	(1+TELOPT_NEW_ENVIRON)+#ifdef TELOPTS+char *telopts[NTELOPTS+1] = {+	"BINARY", "ECHO", "RCP", "SUPPRESS GO AHEAD", "NAME",+	"STATUS", "TIMING MARK", "RCTE", "NAOL", "NAOP",+	"NAOCRD", "NAOHTS", "NAOHTD", "NAOFFD", "NAOVTS",+	"NAOVTD", "NAOLFD", "EXTEND ASCII", "LOGOUT", "BYTE MACRO",+	"DATA ENTRY TERMINAL", "SUPDUP", "SUPDUP OUTPUT",+	"SEND LOCATION", "TERMINAL TYPE", "END OF RECORD",+	"TACACS UID", "OUTPUT MARKING", "TTYLOC",+	"3270 REGIME", "X.3 PAD", "NAWS", "TSPEED", "LFLOW",+	"LINEMODE", "XDISPLOC", "OLD-ENVIRON", "AUTHENTICATION",+	"ENCRYPT", "NEW-ENVIRON",+	0,+};+#define	TELOPT_FIRST	TELOPT_BINARY+#define	TELOPT_LAST	TELOPT_NEW_ENVIRON+#define	TELOPT_OK(x)	((unsigned int)(x) <= TELOPT_LAST)+#define	TELOPT(x)	telopts[(x)-TELOPT_FIRST]+#endif++#define	TELQUAL_IS	0+#define	TELQUAL_SEND	1+#define	TELQUAL_INFO	2+#define	TELQUAL_REPLY	2+#define	TELQUAL_NAME	3++#define	LFLOW_OFF		0+#define	LFLOW_ON		1+#define	LFLOW_RESTART_ANY	2+#define	LFLOW_RESTART_XON	3+++#define	LM_MODE		1+#define	LM_FORWARDMASK	2+#define	LM_SLC		3++#define	MODE_EDIT	0x01+#define	MODE_TRAPSIG	0x02+#define	MODE_ACK	0x04+#define MODE_SOFT_TAB	0x08+#define MODE_LIT_ECHO	0x10++#define	MODE_MASK	0x1f++#define MODE_FLOW		0x0100+#define MODE_ECHO		0x0200+#define MODE_INBIN		0x0400+#define MODE_OUTBIN		0x0800+#define MODE_FORCE		0x1000++#define	SLC_SYNCH	1+#define	SLC_BRK		2+#define	SLC_IP		3+#define	SLC_AO		4+#define	SLC_AYT		5+#define	SLC_EOR		6+#define	SLC_ABORT	7+#define	SLC_EOF		8+#define	SLC_SUSP	9+#define	SLC_EC		10+#define	SLC_EL		11+#define	SLC_EW		12+#define	SLC_RP		13+#define	SLC_LNEXT	14+#define	SLC_XON		15+#define	SLC_XOFF	16+#define	SLC_FORW1	17+#define	SLC_FORW2	18++#define	NSLC		18++#define	SLC_NAMELIST	"0", "SYNCH", "BRK", "IP", "AO", "AYT", "EOR", \+			"ABORT", "EOF", "SUSP", "EC", "EL", "EW", "RP", \+			"LNEXT", "XON", "XOFF", "FORW1", "FORW2", 0,+#ifdef	SLC_NAMES+char *slc_names[] = {+	SLC_NAMELIST+};+#else+extern char *slc_names[];+#define	SLC_NAMES SLC_NAMELIST+#endif++#define	SLC_NAME_OK(x)	((unsigned int)(x) <= NSLC)+#define SLC_NAME(x)	slc_names[x]++#define	SLC_NOSUPPORT	0+#define	SLC_CANTCHANGE	1+#define	SLC_VARIABLE	2+#define	SLC_DEFAULT	3+#define	SLC_LEVELBITS	0x03++#define	SLC_FUNC	0+#define	SLC_FLAGS	1+#define	SLC_VALUE	2++#define	SLC_ACK		0x80+#define	SLC_FLUSHIN	0x40+#define	SLC_FLUSHOUT	0x20++#define	OLD_ENV_VAR	1+#define	OLD_ENV_VALUE	0+#define	NEW_ENV_VAR	0+#define	NEW_ENV_VALUE	1+#define	ENV_ESC		2+#define ENV_USERVAR	3++#define	AUTH_WHO_CLIENT		0+#define	AUTH_WHO_SERVER		1+#define	AUTH_WHO_MASK		1++#define	AUTH_HOW_ONE_WAY	0+#define	AUTH_HOW_MUTUAL		2+#define	AUTH_HOW_MASK		2++#define	AUTHTYPE_NULL		0+#define	AUTHTYPE_KERBEROS_V4	1+#define	AUTHTYPE_KERBEROS_V5	2+#define	AUTHTYPE_SPX		3+#define	AUTHTYPE_MINK		4+#define	AUTHTYPE_CNT		5++#define	AUTHTYPE_TEST		99++#ifdef	AUTH_NAMES+char *authtype_names[] = {+	"NULL", "KERBEROS_V4", "KERBEROS_V5", "SPX", "MINK", 0,+};+#else+extern char *authtype_names[];+#endif++#define	AUTHTYPE_NAME_OK(x)	((unsigned int)(x) < AUTHTYPE_CNT)+#define	AUTHTYPE_NAME(x)	authtype_names[x]++#define	ENCRYPT_IS		0+#define	ENCRYPT_SUPPORT		1+#define	ENCRYPT_REPLY		2+#define	ENCRYPT_START		3+#define	ENCRYPT_END		4+#define	ENCRYPT_REQSTART	5+#define	ENCRYPT_REQEND		6+#define	ENCRYPT_ENC_KEYID	7+#define	ENCRYPT_DEC_KEYID	8+#define	ENCRYPT_CNT		9++#define	ENCTYPE_ANY		0+#define	ENCTYPE_DES_CFB64	1+#define	ENCTYPE_DES_OFB64	2+#define	ENCTYPE_CNT		3++#ifdef	ENCRYPT_NAMES+char *encrypt_names[] = {+	"IS", "SUPPORT", "REPLY", "START", "END",+	"REQUEST-START", "REQUEST-END", "ENC-KEYID", "DEC-KEYID",+	0,+};+char *enctype_names[] = {+	"ANY", "DES_CFB64",  "DES_OFB64",  0,+};+#else+extern char *encrypt_names[];+extern char *enctype_names[];+#endif+++#define	ENCRYPT_NAME_OK(x)	((unsigned int)(x) < ENCRYPT_CNT)+#define	ENCRYPT_NAME(x)		encrypt_names[x]++#define	ENCTYPE_NAME_OK(x)	((unsigned int)(x) < ENCTYPE_CNT)+#define	ENCTYPE_NAME(x)		enctype_names[x]++#endif
+ musl-include/aarch64/arpa/tftp.h view
@@ -0,0 +1,31 @@+#ifndef _ARPA_TFTP_H+#define _ARPA_TFTP_H+#define SEGSIZE 512+#define RRQ 01+#define WRQ 02+#define DATA 03+#define ACK 04+#define ERROR 05+struct tftphdr {+	short th_opcode;+	union {+		unsigned short tu_block;+		short tu_code;+		char tu_stuff[1];+	} th_u;+	char th_data[1];+};+#define th_block th_u.tu_block+#define th_code th_u.tu_code+#define th_stuff th_u.tu_stuff+#define th_msg th_data+#define EUNDEF 0+#define ENOTFOUND 1+#define EACCESS 2+#define ENOSPACE 3+#define EBADOP 4+#define EBADID 5+#define EEXISTS 6+#define ENOUSER 7+#endif+
+ musl-include/aarch64/assert.h view
@@ -0,0 +1,23 @@+#include <features.h>++#undef assert++#ifdef NDEBUG+#define	assert(x) (void)0+#else+#define assert(x) ((void)((x) || (__assert_fail(#x, __FILE__, __LINE__, __func__),0)))+#endif++#if __STDC_VERSION__ >= 201112L && !defined(__cplusplus)+#define static_assert _Static_assert+#endif++#ifdef __cplusplus+extern "C" {+#endif++_Noreturn void __assert_fail (const char *, const char *, int, const char *);++#ifdef __cplusplus+}+#endif
+ musl-include/aarch64/bits/alltypes.h view
@@ -0,0 +1,423 @@+#define _Addr long+#define _Int64 long+#define _Reg long++#if __AARCH64EB__+#define __BYTE_ORDER 4321+#else+#define __BYTE_ORDER 1234+#endif++#define __LONG_MAX 0x7fffffffffffffffL++#ifndef __cplusplus+#if defined(__NEED_wchar_t) && !defined(__DEFINED_wchar_t)+typedef unsigned wchar_t;+#define __DEFINED_wchar_t+#endif++#endif+#if defined(__NEED_wint_t) && !defined(__DEFINED_wint_t)+typedef unsigned wint_t;+#define __DEFINED_wint_t+#endif+++#if defined(__NEED_blksize_t) && !defined(__DEFINED_blksize_t)+typedef int blksize_t;+#define __DEFINED_blksize_t+#endif++#if defined(__NEED_nlink_t) && !defined(__DEFINED_nlink_t)+typedef unsigned int nlink_t;+#define __DEFINED_nlink_t+#endif+++#if defined(__NEED_float_t) && !defined(__DEFINED_float_t)+typedef float float_t;+#define __DEFINED_float_t+#endif++#if defined(__NEED_double_t) && !defined(__DEFINED_double_t)+typedef double double_t;+#define __DEFINED_double_t+#endif+++#if defined(__NEED_max_align_t) && !defined(__DEFINED_max_align_t)+typedef struct { long long __ll; long double __ld; } max_align_t;+#define __DEFINED_max_align_t+#endif++#define __LITTLE_ENDIAN 1234+#define __BIG_ENDIAN 4321+#define __USE_TIME_BITS64 1++#if defined(__NEED_size_t) && !defined(__DEFINED_size_t)+typedef unsigned _Addr size_t;+#define __DEFINED_size_t+#endif++#if defined(__NEED_uintptr_t) && !defined(__DEFINED_uintptr_t)+typedef unsigned _Addr uintptr_t;+#define __DEFINED_uintptr_t+#endif++#if defined(__NEED_ptrdiff_t) && !defined(__DEFINED_ptrdiff_t)+typedef _Addr ptrdiff_t;+#define __DEFINED_ptrdiff_t+#endif++#if defined(__NEED_ssize_t) && !defined(__DEFINED_ssize_t)+typedef _Addr ssize_t;+#define __DEFINED_ssize_t+#endif++#if defined(__NEED_intptr_t) && !defined(__DEFINED_intptr_t)+typedef _Addr intptr_t;+#define __DEFINED_intptr_t+#endif++#if defined(__NEED_regoff_t) && !defined(__DEFINED_regoff_t)+typedef _Addr regoff_t;+#define __DEFINED_regoff_t+#endif++#if defined(__NEED_register_t) && !defined(__DEFINED_register_t)+typedef _Reg register_t;+#define __DEFINED_register_t+#endif++#if defined(__NEED_time_t) && !defined(__DEFINED_time_t)+typedef _Int64 time_t;+#define __DEFINED_time_t+#endif++#if defined(__NEED_suseconds_t) && !defined(__DEFINED_suseconds_t)+typedef _Int64 suseconds_t;+#define __DEFINED_suseconds_t+#endif+++#if defined(__NEED_int8_t) && !defined(__DEFINED_int8_t)+typedef signed char     int8_t;+#define __DEFINED_int8_t+#endif++#if defined(__NEED_int16_t) && !defined(__DEFINED_int16_t)+typedef signed short    int16_t;+#define __DEFINED_int16_t+#endif++#if defined(__NEED_int32_t) && !defined(__DEFINED_int32_t)+typedef signed int      int32_t;+#define __DEFINED_int32_t+#endif++#if defined(__NEED_int64_t) && !defined(__DEFINED_int64_t)+typedef signed _Int64   int64_t;+#define __DEFINED_int64_t+#endif++#if defined(__NEED_intmax_t) && !defined(__DEFINED_intmax_t)+typedef signed _Int64   intmax_t;+#define __DEFINED_intmax_t+#endif++#if defined(__NEED_uint8_t) && !defined(__DEFINED_uint8_t)+typedef unsigned char   uint8_t;+#define __DEFINED_uint8_t+#endif++#if defined(__NEED_uint16_t) && !defined(__DEFINED_uint16_t)+typedef unsigned short  uint16_t;+#define __DEFINED_uint16_t+#endif++#if defined(__NEED_uint32_t) && !defined(__DEFINED_uint32_t)+typedef unsigned int    uint32_t;+#define __DEFINED_uint32_t+#endif++#if defined(__NEED_uint64_t) && !defined(__DEFINED_uint64_t)+typedef unsigned _Int64 uint64_t;+#define __DEFINED_uint64_t+#endif++#if defined(__NEED_u_int64_t) && !defined(__DEFINED_u_int64_t)+typedef unsigned _Int64 u_int64_t;+#define __DEFINED_u_int64_t+#endif++#if defined(__NEED_uintmax_t) && !defined(__DEFINED_uintmax_t)+typedef unsigned _Int64 uintmax_t;+#define __DEFINED_uintmax_t+#endif+++#if defined(__NEED_mode_t) && !defined(__DEFINED_mode_t)+typedef unsigned mode_t;+#define __DEFINED_mode_t+#endif++#if defined(__NEED_nlink_t) && !defined(__DEFINED_nlink_t)+typedef unsigned _Reg nlink_t;+#define __DEFINED_nlink_t+#endif++#if defined(__NEED_off_t) && !defined(__DEFINED_off_t)+typedef _Int64 off_t;+#define __DEFINED_off_t+#endif++#if defined(__NEED_ino_t) && !defined(__DEFINED_ino_t)+typedef unsigned _Int64 ino_t;+#define __DEFINED_ino_t+#endif++#if defined(__NEED_dev_t) && !defined(__DEFINED_dev_t)+typedef unsigned _Int64 dev_t;+#define __DEFINED_dev_t+#endif++#if defined(__NEED_blksize_t) && !defined(__DEFINED_blksize_t)+typedef long blksize_t;+#define __DEFINED_blksize_t+#endif++#if defined(__NEED_blkcnt_t) && !defined(__DEFINED_blkcnt_t)+typedef _Int64 blkcnt_t;+#define __DEFINED_blkcnt_t+#endif++#if defined(__NEED_fsblkcnt_t) && !defined(__DEFINED_fsblkcnt_t)+typedef unsigned _Int64 fsblkcnt_t;+#define __DEFINED_fsblkcnt_t+#endif++#if defined(__NEED_fsfilcnt_t) && !defined(__DEFINED_fsfilcnt_t)+typedef unsigned _Int64 fsfilcnt_t;+#define __DEFINED_fsfilcnt_t+#endif+++#if defined(__NEED_wint_t) && !defined(__DEFINED_wint_t)+typedef unsigned wint_t;+#define __DEFINED_wint_t+#endif++#if defined(__NEED_wctype_t) && !defined(__DEFINED_wctype_t)+typedef unsigned long wctype_t;+#define __DEFINED_wctype_t+#endif+++#if defined(__NEED_timer_t) && !defined(__DEFINED_timer_t)+typedef void * timer_t;+#define __DEFINED_timer_t+#endif++#if defined(__NEED_clockid_t) && !defined(__DEFINED_clockid_t)+typedef int clockid_t;+#define __DEFINED_clockid_t+#endif++#if defined(__NEED_clock_t) && !defined(__DEFINED_clock_t)+typedef long clock_t;+#define __DEFINED_clock_t+#endif++#if defined(__NEED_struct_timeval) && !defined(__DEFINED_struct_timeval)+struct timeval { time_t tv_sec; suseconds_t tv_usec; };+#define __DEFINED_struct_timeval+#endif++#if defined(__NEED_struct_timespec) && !defined(__DEFINED_struct_timespec)+struct timespec { time_t tv_sec; int :8*(sizeof(time_t)-sizeof(long))*(__BYTE_ORDER==4321); long tv_nsec; int :8*(sizeof(time_t)-sizeof(long))*(__BYTE_ORDER!=4321); };+#define __DEFINED_struct_timespec+#endif+++#if defined(__NEED_pid_t) && !defined(__DEFINED_pid_t)+typedef int pid_t;+#define __DEFINED_pid_t+#endif++#if defined(__NEED_id_t) && !defined(__DEFINED_id_t)+typedef unsigned id_t;+#define __DEFINED_id_t+#endif++#if defined(__NEED_uid_t) && !defined(__DEFINED_uid_t)+typedef unsigned uid_t;+#define __DEFINED_uid_t+#endif++#if defined(__NEED_gid_t) && !defined(__DEFINED_gid_t)+typedef unsigned gid_t;+#define __DEFINED_gid_t+#endif++#if defined(__NEED_key_t) && !defined(__DEFINED_key_t)+typedef int key_t;+#define __DEFINED_key_t+#endif++#if defined(__NEED_useconds_t) && !defined(__DEFINED_useconds_t)+typedef unsigned useconds_t;+#define __DEFINED_useconds_t+#endif+++#ifdef __cplusplus+#if defined(__NEED_pthread_t) && !defined(__DEFINED_pthread_t)+typedef unsigned long pthread_t;+#define __DEFINED_pthread_t+#endif++#else+#if defined(__NEED_pthread_t) && !defined(__DEFINED_pthread_t)+typedef struct __pthread * pthread_t;+#define __DEFINED_pthread_t+#endif++#endif+#if defined(__NEED_pthread_once_t) && !defined(__DEFINED_pthread_once_t)+typedef int pthread_once_t;+#define __DEFINED_pthread_once_t+#endif++#if defined(__NEED_pthread_key_t) && !defined(__DEFINED_pthread_key_t)+typedef unsigned pthread_key_t;+#define __DEFINED_pthread_key_t+#endif++#if defined(__NEED_pthread_spinlock_t) && !defined(__DEFINED_pthread_spinlock_t)+typedef int pthread_spinlock_t;+#define __DEFINED_pthread_spinlock_t+#endif++#if defined(__NEED_pthread_mutexattr_t) && !defined(__DEFINED_pthread_mutexattr_t)+typedef struct { unsigned __attr; } pthread_mutexattr_t;+#define __DEFINED_pthread_mutexattr_t+#endif++#if defined(__NEED_pthread_condattr_t) && !defined(__DEFINED_pthread_condattr_t)+typedef struct { unsigned __attr; } pthread_condattr_t;+#define __DEFINED_pthread_condattr_t+#endif++#if defined(__NEED_pthread_barrierattr_t) && !defined(__DEFINED_pthread_barrierattr_t)+typedef struct { unsigned __attr; } pthread_barrierattr_t;+#define __DEFINED_pthread_barrierattr_t+#endif++#if defined(__NEED_pthread_rwlockattr_t) && !defined(__DEFINED_pthread_rwlockattr_t)+typedef struct { unsigned __attr[2]; } pthread_rwlockattr_t;+#define __DEFINED_pthread_rwlockattr_t+#endif+++#if defined(__NEED_struct__IO_FILE) && !defined(__DEFINED_struct__IO_FILE)+struct _IO_FILE { char __x; };+#define __DEFINED_struct__IO_FILE+#endif++#if defined(__NEED_FILE) && !defined(__DEFINED_FILE)+typedef struct _IO_FILE FILE;+#define __DEFINED_FILE+#endif+++#if defined(__NEED_va_list) && !defined(__DEFINED_va_list)+typedef __builtin_va_list va_list;+#define __DEFINED_va_list+#endif++#if defined(__NEED___isoc_va_list) && !defined(__DEFINED___isoc_va_list)+typedef __builtin_va_list __isoc_va_list;+#define __DEFINED___isoc_va_list+#endif+++#if defined(__NEED_mbstate_t) && !defined(__DEFINED_mbstate_t)+typedef struct __mbstate_t { unsigned __opaque1, __opaque2; } mbstate_t;+#define __DEFINED_mbstate_t+#endif+++#if defined(__NEED_locale_t) && !defined(__DEFINED_locale_t)+typedef struct __locale_struct * locale_t;+#define __DEFINED_locale_t+#endif+++#if defined(__NEED_sigset_t) && !defined(__DEFINED_sigset_t)+typedef struct __sigset_t { unsigned long __bits[128/sizeof(long)]; } sigset_t;+#define __DEFINED_sigset_t+#endif+++#if defined(__NEED_struct_iovec) && !defined(__DEFINED_struct_iovec)+struct iovec { void *iov_base; size_t iov_len; };+#define __DEFINED_struct_iovec+#endif+++#if defined(__NEED_struct_winsize) && !defined(__DEFINED_struct_winsize)+struct winsize { unsigned short ws_row, ws_col, ws_xpixel, ws_ypixel; };+#define __DEFINED_struct_winsize+#endif+++#if defined(__NEED_socklen_t) && !defined(__DEFINED_socklen_t)+typedef unsigned socklen_t;+#define __DEFINED_socklen_t+#endif++#if defined(__NEED_sa_family_t) && !defined(__DEFINED_sa_family_t)+typedef unsigned short sa_family_t;+#define __DEFINED_sa_family_t+#endif+++#if defined(__NEED_pthread_attr_t) && !defined(__DEFINED_pthread_attr_t)+typedef struct { union { int __i[sizeof(long)==8?14:9]; volatile int __vi[sizeof(long)==8?14:9]; unsigned long __s[sizeof(long)==8?7:9]; } __u; } pthread_attr_t;+#define __DEFINED_pthread_attr_t+#endif++#if defined(__NEED_pthread_mutex_t) && !defined(__DEFINED_pthread_mutex_t)+typedef struct { union { int __i[sizeof(long)==8?10:6]; volatile int __vi[sizeof(long)==8?10:6]; volatile void *volatile __p[sizeof(long)==8?5:6]; } __u; } pthread_mutex_t;+#define __DEFINED_pthread_mutex_t+#endif++#if defined(__NEED_mtx_t) && !defined(__DEFINED_mtx_t)+typedef struct { union { int __i[sizeof(long)==8?10:6]; volatile int __vi[sizeof(long)==8?10:6]; volatile void *volatile __p[sizeof(long)==8?5:6]; } __u; } mtx_t;+#define __DEFINED_mtx_t+#endif++#if defined(__NEED_pthread_cond_t) && !defined(__DEFINED_pthread_cond_t)+typedef struct { union { int __i[12]; volatile int __vi[12]; void *__p[12*sizeof(int)/sizeof(void*)]; } __u; } pthread_cond_t;+#define __DEFINED_pthread_cond_t+#endif++#if defined(__NEED_cnd_t) && !defined(__DEFINED_cnd_t)+typedef struct { union { int __i[12]; volatile int __vi[12]; void *__p[12*sizeof(int)/sizeof(void*)]; } __u; } cnd_t;+#define __DEFINED_cnd_t+#endif++#if defined(__NEED_pthread_rwlock_t) && !defined(__DEFINED_pthread_rwlock_t)+typedef struct { union { int __i[sizeof(long)==8?14:8]; volatile int __vi[sizeof(long)==8?14:8]; void *__p[sizeof(long)==8?7:8]; } __u; } pthread_rwlock_t;+#define __DEFINED_pthread_rwlock_t+#endif++#if defined(__NEED_pthread_barrier_t) && !defined(__DEFINED_pthread_barrier_t)+typedef struct { union { int __i[sizeof(long)==8?8:5]; volatile int __vi[sizeof(long)==8?8:5]; void *__p[sizeof(long)==8?4:5]; } __u; } pthread_barrier_t;+#define __DEFINED_pthread_barrier_t+#endif+++#undef _Addr+#undef _Int64+#undef _Reg
+ musl-include/aarch64/bits/dirent.h view
@@ -0,0 +1,11 @@+#define _DIRENT_HAVE_D_RECLEN+#define _DIRENT_HAVE_D_OFF+#define _DIRENT_HAVE_D_TYPE++struct dirent {+	ino_t d_ino;+	off_t d_off;+	unsigned short d_reclen;+	unsigned char d_type;+	char d_name[256];+};
+ musl-include/aarch64/bits/errno.h view
@@ -0,0 +1,134 @@+#define EPERM            1+#define ENOENT           2+#define ESRCH            3+#define EINTR            4+#define EIO              5+#define ENXIO            6+#define E2BIG            7+#define ENOEXEC          8+#define EBADF            9+#define ECHILD          10+#define EAGAIN          11+#define ENOMEM          12+#define EACCES          13+#define EFAULT          14+#define ENOTBLK         15+#define EBUSY           16+#define EEXIST          17+#define EXDEV           18+#define ENODEV          19+#define ENOTDIR         20+#define EISDIR          21+#define EINVAL          22+#define ENFILE          23+#define EMFILE          24+#define ENOTTY          25+#define ETXTBSY         26+#define EFBIG           27+#define ENOSPC          28+#define ESPIPE          29+#define EROFS           30+#define EMLINK          31+#define EPIPE           32+#define EDOM            33+#define ERANGE          34+#define EDEADLK         35+#define ENAMETOOLONG    36+#define ENOLCK          37+#define ENOSYS          38+#define ENOTEMPTY       39+#define ELOOP           40+#define EWOULDBLOCK     EAGAIN+#define ENOMSG          42+#define EIDRM           43+#define ECHRNG          44+#define EL2NSYNC        45+#define EL3HLT          46+#define EL3RST          47+#define ELNRNG          48+#define EUNATCH         49+#define ENOCSI          50+#define EL2HLT          51+#define EBADE           52+#define EBADR           53+#define EXFULL          54+#define ENOANO          55+#define EBADRQC         56+#define EBADSLT         57+#define EDEADLOCK       EDEADLK+#define EBFONT          59+#define ENOSTR          60+#define ENODATA         61+#define ETIME           62+#define ENOSR           63+#define ENONET          64+#define ENOPKG          65+#define EREMOTE         66+#define ENOLINK         67+#define EADV            68+#define ESRMNT          69+#define ECOMM           70+#define EPROTO          71+#define EMULTIHOP       72+#define EDOTDOT         73+#define EBADMSG         74+#define EOVERFLOW       75+#define ENOTUNIQ        76+#define EBADFD          77+#define EREMCHG         78+#define ELIBACC         79+#define ELIBBAD         80+#define ELIBSCN         81+#define ELIBMAX         82+#define ELIBEXEC        83+#define EILSEQ          84+#define ERESTART        85+#define ESTRPIPE        86+#define EUSERS          87+#define ENOTSOCK        88+#define EDESTADDRREQ    89+#define EMSGSIZE        90+#define EPROTOTYPE      91+#define ENOPROTOOPT     92+#define EPROTONOSUPPORT 93+#define ESOCKTNOSUPPORT 94+#define EOPNOTSUPP      95+#define ENOTSUP         EOPNOTSUPP+#define EPFNOSUPPORT    96+#define EAFNOSUPPORT    97+#define EADDRINUSE      98+#define EADDRNOTAVAIL   99+#define ENETDOWN        100+#define ENETUNREACH     101+#define ENETRESET       102+#define ECONNABORTED    103+#define ECONNRESET      104+#define ENOBUFS         105+#define EISCONN         106+#define ENOTCONN        107+#define ESHUTDOWN       108+#define ETOOMANYREFS    109+#define ETIMEDOUT       110+#define ECONNREFUSED    111+#define EHOSTDOWN       112+#define EHOSTUNREACH    113+#define EALREADY        114+#define EINPROGRESS     115+#define ESTALE          116+#define EUCLEAN         117+#define ENOTNAM         118+#define ENAVAIL         119+#define EISNAM          120+#define EREMOTEIO       121+#define EDQUOT          122+#define ENOMEDIUM       123+#define EMEDIUMTYPE     124+#define ECANCELED       125+#define ENOKEY          126+#define EKEYEXPIRED     127+#define EKEYREVOKED     128+#define EKEYREJECTED    129+#define EOWNERDEAD      130+#define ENOTRECOVERABLE 131+#define ERFKILL         132+#define EHWPOISON       133
+ musl-include/aarch64/bits/fcntl.h view
@@ -0,0 +1,38 @@+#define O_CREAT        0100+#define O_EXCL         0200+#define O_NOCTTY       0400+#define O_TRUNC       01000+#define O_APPEND      02000+#define O_NONBLOCK    04000+#define O_DSYNC      010000+#define O_SYNC     04010000+#define O_RSYNC    04010000+#define O_DIRECTORY  040000+#define O_NOFOLLOW  0100000+#define O_CLOEXEC  02000000++#define O_ASYNC      020000+#define O_DIRECT    0200000+#define O_LARGEFILE 0400000+#define O_NOATIME  01000000+#define O_PATH    010000000+#define O_TMPFILE 020040000+#define O_NDELAY O_NONBLOCK++#define F_DUPFD  0+#define F_GETFD  1+#define F_SETFD  2+#define F_GETFL  3+#define F_SETFL  4+#define F_GETLK  5+#define F_SETLK  6+#define F_SETLKW 7+#define F_SETOWN 8+#define F_GETOWN 9+#define F_SETSIG 10+#define F_GETSIG 11++#define F_SETOWN_EX 15+#define F_GETOWN_EX 16++#define F_GETOWNER_UIDS 17
+ musl-include/aarch64/bits/fenv.h view
@@ -0,0 +1,19 @@+#define FE_INVALID    1+#define FE_DIVBYZERO  2+#define FE_OVERFLOW   4+#define FE_UNDERFLOW  8+#define FE_INEXACT    16+#define FE_ALL_EXCEPT 31+#define FE_TONEAREST  0+#define FE_DOWNWARD   0x800000+#define FE_UPWARD     0x400000+#define FE_TOWARDZERO 0xc00000++typedef unsigned int fexcept_t;++typedef struct {+	unsigned int __fpcr;+	unsigned int __fpsr;+} fenv_t;++#define FE_DFL_ENV      ((const fenv_t *) -1)
+ musl-include/aarch64/bits/float.h view
@@ -0,0 +1,16 @@+#define FLT_EVAL_METHOD 0++#define LDBL_TRUE_MIN 6.47517511943802511092443895822764655e-4966L+#define LDBL_MIN 3.36210314311209350626267781732175260e-4932L+#define LDBL_MAX 1.18973149535723176508575932662800702e+4932L+#define LDBL_EPSILON 1.92592994438723585305597794258492732e-34L++#define LDBL_MANT_DIG 113+#define LDBL_MIN_EXP (-16381)+#define LDBL_MAX_EXP 16384++#define LDBL_DIG 33+#define LDBL_MIN_10_EXP (-4931)+#define LDBL_MAX_10_EXP 4932++#define DECIMAL_DIG 36
+ musl-include/aarch64/bits/hwcap.h view
@@ -0,0 +1,52 @@+#define HWCAP_FP		(1 << 0)+#define HWCAP_ASIMD		(1 << 1)+#define HWCAP_EVTSTRM		(1 << 2)+#define HWCAP_AES		(1 << 3)+#define HWCAP_PMULL		(1 << 4)+#define HWCAP_SHA1		(1 << 5)+#define HWCAP_SHA2		(1 << 6)+#define HWCAP_CRC32		(1 << 7)+#define HWCAP_ATOMICS		(1 << 8)+#define HWCAP_FPHP		(1 << 9)+#define HWCAP_ASIMDHP		(1 << 10)+#define HWCAP_CPUID		(1 << 11)+#define HWCAP_ASIMDRDM		(1 << 12)+#define HWCAP_JSCVT		(1 << 13)+#define HWCAP_FCMA		(1 << 14)+#define HWCAP_LRCPC		(1 << 15)+#define HWCAP_DCPOP		(1 << 16)+#define HWCAP_SHA3		(1 << 17)+#define HWCAP_SM3		(1 << 18)+#define HWCAP_SM4		(1 << 19)+#define HWCAP_ASIMDDP		(1 << 20)+#define HWCAP_SHA512		(1 << 21)+#define HWCAP_SVE		(1 << 22)+#define HWCAP_ASIMDFHM		(1 << 23)+#define HWCAP_DIT		(1 << 24)+#define HWCAP_USCAT		(1 << 25)+#define HWCAP_ILRCPC		(1 << 26)+#define HWCAP_FLAGM		(1 << 27)+#define HWCAP_SSBS		(1 << 28)+#define HWCAP_SB		(1 << 29)+#define HWCAP_PACA		(1 << 30)+#define HWCAP_PACG		(1UL << 31)++#define HWCAP2_DCPODP		(1 << 0)+#define HWCAP2_SVE2		(1 << 1)+#define HWCAP2_SVEAES		(1 << 2)+#define HWCAP2_SVEPMULL		(1 << 3)+#define HWCAP2_SVEBITPERM	(1 << 4)+#define HWCAP2_SVESHA3		(1 << 5)+#define HWCAP2_SVESM4		(1 << 6)+#define HWCAP2_FLAGM2		(1 << 7)+#define HWCAP2_FRINT		(1 << 8)+#define HWCAP2_SVEI8MM		(1 << 9)+#define HWCAP2_SVEF32MM		(1 << 10)+#define HWCAP2_SVEF64MM		(1 << 11)+#define HWCAP2_SVEBF16		(1 << 12)+#define HWCAP2_I8MM		(1 << 13)+#define HWCAP2_BF16		(1 << 14)+#define HWCAP2_DGH		(1 << 15)+#define HWCAP2_RNG		(1 << 16)+#define HWCAP2_BTI		(1 << 17)+#define HWCAP2_MTE		(1 << 18)
+ musl-include/aarch64/bits/io.h view
+ musl-include/aarch64/bits/ioctl.h view
@@ -0,0 +1,115 @@+#define _IOC(a,b,c,d) ( ((a)<<30) | ((b)<<8) | (c) | ((d)<<16) )+#define _IOC_NONE  0U+#define _IOC_WRITE 1U+#define _IOC_READ  2U++#define _IO(a,b) _IOC(_IOC_NONE,(a),(b),0)+#define _IOW(a,b,c) _IOC(_IOC_WRITE,(a),(b),sizeof(c))+#define _IOR(a,b,c) _IOC(_IOC_READ,(a),(b),sizeof(c))+#define _IOWR(a,b,c) _IOC(_IOC_READ|_IOC_WRITE,(a),(b),sizeof(c))++#define TCGETS		0x5401+#define TCSETS		0x5402+#define TCSETSW		0x5403+#define TCSETSF		0x5404+#define TCGETA		0x5405+#define TCSETA		0x5406+#define TCSETAW		0x5407+#define TCSETAF		0x5408+#define TCSBRK		0x5409+#define TCXONC		0x540A+#define TCFLSH		0x540B+#define TIOCEXCL	0x540C+#define TIOCNXCL	0x540D+#define TIOCSCTTY	0x540E+#define TIOCGPGRP	0x540F+#define TIOCSPGRP	0x5410+#define TIOCOUTQ	0x5411+#define TIOCSTI		0x5412+#define TIOCGWINSZ	0x5413+#define TIOCSWINSZ	0x5414+#define TIOCMGET	0x5415+#define TIOCMBIS	0x5416+#define TIOCMBIC	0x5417+#define TIOCMSET	0x5418+#define TIOCGSOFTCAR	0x5419+#define TIOCSSOFTCAR	0x541A+#define FIONREAD	0x541B+#define TIOCINQ		FIONREAD+#define TIOCLINUX	0x541C+#define TIOCCONS	0x541D+#define TIOCGSERIAL	0x541E+#define TIOCSSERIAL	0x541F+#define TIOCPKT		0x5420+#define FIONBIO		0x5421+#define TIOCNOTTY	0x5422+#define TIOCSETD	0x5423+#define TIOCGETD	0x5424+#define TCSBRKP		0x5425+#define TIOCSBRK	0x5427+#define TIOCCBRK	0x5428+#define TIOCGSID	0x5429+#define TIOCGRS485	0x542E+#define TIOCSRS485	0x542F+#define TIOCGPTN	0x80045430+#define TIOCSPTLCK	0x40045431+#define TIOCGDEV	0x80045432+#define TCGETX		0x5432+#define TCSETX		0x5433+#define TCSETXF		0x5434+#define TCSETXW		0x5435+#define TIOCSIG		0x40045436+#define TIOCVHANGUP	0x5437+#define TIOCGPKT	0x80045438+#define TIOCGPTLCK	0x80045439+#define TIOCGEXCL	0x80045440+#define TIOCGPTPEER	0x5441+#define TIOCGISO7816	0x80285442+#define TIOCSISO7816	0xc0285443++#define FIONCLEX	0x5450+#define FIOCLEX		0x5451+#define FIOASYNC	0x5452+#define TIOCSERCONFIG	0x5453+#define TIOCSERGWILD	0x5454+#define TIOCSERSWILD	0x5455+#define TIOCGLCKTRMIOS	0x5456+#define TIOCSLCKTRMIOS	0x5457+#define TIOCSERGSTRUCT	0x5458+#define TIOCSERGETLSR   0x5459+#define TIOCSERGETMULTI 0x545A+#define TIOCSERSETMULTI 0x545B++#define TIOCMIWAIT	0x545C+#define TIOCGICOUNT	0x545D+#define FIOQSIZE	0x5460++#define TIOCM_LE        0x001+#define TIOCM_DTR       0x002+#define TIOCM_RTS       0x004+#define TIOCM_ST        0x008+#define TIOCM_SR        0x010+#define TIOCM_CTS       0x020+#define TIOCM_CAR       0x040+#define TIOCM_RNG       0x080+#define TIOCM_DSR       0x100+#define TIOCM_CD        TIOCM_CAR+#define TIOCM_RI        TIOCM_RNG+#define TIOCM_OUT1      0x2000+#define TIOCM_OUT2      0x4000+#define TIOCM_LOOP      0x8000++#define FIOSETOWN       0x8901+#define SIOCSPGRP       0x8902+#define FIOGETOWN       0x8903+#define SIOCGPGRP       0x8904+#define SIOCATMARK      0x8905+#if __LONG_MAX == 0x7fffffff+#define SIOCGSTAMP      _IOR(0x89, 6, char[16])+#define SIOCGSTAMPNS    _IOR(0x89, 7, char[16])+#else+#define SIOCGSTAMP      0x8906+#define SIOCGSTAMPNS    0x8907+#endif++#include <bits/ioctl_fix.h>
+ musl-include/aarch64/bits/ioctl_fix.h view
+ musl-include/aarch64/bits/ipc.h view
@@ -0,0 +1,11 @@+struct ipc_perm {+	key_t __ipc_perm_key;+	uid_t uid;+	gid_t gid;+	uid_t cuid;+	gid_t cgid;+	mode_t mode;+	int __ipc_perm_seq;+	long __pad1;+	long __pad2;+};
+ musl-include/aarch64/bits/ipcstat.h view
@@ -0,0 +1,1 @@+#define IPC_STAT 2
+ musl-include/aarch64/bits/kd.h view
@@ -0,0 +1,1 @@+#include <linux/kd.h>
+ musl-include/aarch64/bits/limits.h view
+ musl-include/aarch64/bits/link.h view
@@ -0,0 +1,1 @@+typedef uint32_t Elf_Symndx;
+ musl-include/aarch64/bits/mman.h view
@@ -0,0 +1,2 @@+#define PROT_BTI 0x10+#define PROT_MTE 0x20
+ musl-include/aarch64/bits/msg.h view
@@ -0,0 +1,12 @@+struct msqid_ds {+	struct ipc_perm msg_perm;+	time_t msg_stime;+	time_t msg_rtime;+	time_t msg_ctime;+	unsigned long msg_cbytes;+	msgqnum_t msg_qnum;+	msglen_t msg_qbytes;+	pid_t msg_lspid;+	pid_t msg_lrpid;+	unsigned long __unused[2];+};
+ musl-include/aarch64/bits/poll.h view
+ musl-include/aarch64/bits/posix.h view
@@ -0,0 +1,2 @@+#define _POSIX_V6_LP64_OFF64  1+#define _POSIX_V7_LP64_OFF64  1
+ musl-include/aarch64/bits/ptrace.h view
+ musl-include/aarch64/bits/reg.h view
@@ -0,0 +1,2 @@+#undef __WORDSIZE+#define __WORDSIZE 64
+ musl-include/aarch64/bits/resource.h view
+ musl-include/aarch64/bits/sem.h view
@@ -0,0 +1,14 @@+struct semid_ds {+	struct ipc_perm sem_perm;+	time_t sem_otime;+	time_t sem_ctime;+#if __BYTE_ORDER == __LITTLE_ENDIAN+	unsigned short sem_nsems;+	char __sem_nsems_pad[sizeof(long)-sizeof(short)];+#else+	char __sem_nsems_pad[sizeof(long)-sizeof(short)];+	unsigned short sem_nsems;+#endif+	long __unused3;+	long __unused4;+};
+ musl-include/aarch64/bits/setjmp.h view
@@ -0,0 +1,1 @@+typedef unsigned long __jmp_buf[22];
+ musl-include/aarch64/bits/shm.h view
@@ -0,0 +1,24 @@+#define SHMLBA 4096++struct shmid_ds {+	struct ipc_perm shm_perm;+	size_t shm_segsz;+	time_t shm_atime;+	time_t shm_dtime;+	time_t shm_ctime;+	pid_t shm_cpid;+	pid_t shm_lpid;+	unsigned long shm_nattch;+	unsigned long __pad1;+	unsigned long __pad2;+};++struct shminfo {+	unsigned long shmmax, shmmin, shmmni, shmseg, shmall, __unused[4];+};++struct shm_info {+	int __used_ids;+	unsigned long shm_tot, shm_rss, shm_swp;+	unsigned long __swap_attempts, __swap_successes;+};
+ musl-include/aarch64/bits/signal.h view
@@ -0,0 +1,153 @@+#if defined(_POSIX_SOURCE) || defined(_POSIX_C_SOURCE) \+ || defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) || defined(_BSD_SOURCE)++#if defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) || defined(_BSD_SOURCE)+#define MINSIGSTKSZ 6144+#define SIGSTKSZ 12288+#endif++#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE)+typedef unsigned long greg_t;+typedef unsigned long gregset_t[34];++typedef struct {+	__uint128_t vregs[32];+	unsigned int fpsr;+	unsigned int fpcr;+} fpregset_t;+typedef struct sigcontext {+	unsigned long fault_address;+	unsigned long regs[31];+	unsigned long sp, pc, pstate;+	long double __reserved[256];+} mcontext_t;++#define FPSIMD_MAGIC 0x46508001+#define ESR_MAGIC 0x45535201+#define EXTRA_MAGIC 0x45585401+#define SVE_MAGIC 0x53564501+struct _aarch64_ctx {+	unsigned int magic;+	unsigned int size;+};+struct fpsimd_context {+	struct _aarch64_ctx head;+	unsigned int fpsr;+	unsigned int fpcr;+	__uint128_t vregs[32];+};+struct esr_context {+	struct _aarch64_ctx head;+	unsigned long esr;+};+struct extra_context {+	struct _aarch64_ctx head;+	unsigned long datap;+	unsigned int size;+	unsigned int __reserved[3];+};+struct sve_context {+	struct _aarch64_ctx head;+	unsigned short vl;+	unsigned short __reserved[3];+};+#define SVE_VQ_BYTES		16+#define SVE_VQ_MIN		1+#define SVE_VQ_MAX		512+#define SVE_VL_MIN		(SVE_VQ_MIN * SVE_VQ_BYTES)+#define SVE_VL_MAX		(SVE_VQ_MAX * SVE_VQ_BYTES)+#define SVE_NUM_ZREGS		32+#define SVE_NUM_PREGS		16+#define sve_vl_valid(vl) \+	((vl) % SVE_VQ_BYTES == 0 && (vl) >= SVE_VL_MIN && (vl) <= SVE_VL_MAX)+#define sve_vq_from_vl(vl)	((vl) / SVE_VQ_BYTES)+#define sve_vl_from_vq(vq)	((vq) * SVE_VQ_BYTES)+#define SVE_SIG_ZREG_SIZE(vq)	((unsigned)(vq) * SVE_VQ_BYTES)+#define SVE_SIG_PREG_SIZE(vq)	((unsigned)(vq) * (SVE_VQ_BYTES / 8))+#define SVE_SIG_FFR_SIZE(vq)	SVE_SIG_PREG_SIZE(vq)+#define SVE_SIG_REGS_OFFSET					\+	((sizeof(struct sve_context) + (SVE_VQ_BYTES - 1))	\+		/ SVE_VQ_BYTES * SVE_VQ_BYTES)+#define SVE_SIG_ZREGS_OFFSET	SVE_SIG_REGS_OFFSET+#define SVE_SIG_ZREG_OFFSET(vq, n) \+	(SVE_SIG_ZREGS_OFFSET + SVE_SIG_ZREG_SIZE(vq) * (n))+#define SVE_SIG_ZREGS_SIZE(vq) \+	(SVE_SIG_ZREG_OFFSET(vq, SVE_NUM_ZREGS) - SVE_SIG_ZREGS_OFFSET)+#define SVE_SIG_PREGS_OFFSET(vq) \+	(SVE_SIG_ZREGS_OFFSET + SVE_SIG_ZREGS_SIZE(vq))+#define SVE_SIG_PREG_OFFSET(vq, n) \+	(SVE_SIG_PREGS_OFFSET(vq) + SVE_SIG_PREG_SIZE(vq) * (n))+#define SVE_SIG_PREGS_SIZE(vq) \+	(SVE_SIG_PREG_OFFSET(vq, SVE_NUM_PREGS) - SVE_SIG_PREGS_OFFSET(vq))+#define SVE_SIG_FFR_OFFSET(vq) \+	(SVE_SIG_PREGS_OFFSET(vq) + SVE_SIG_PREGS_SIZE(vq))+#define SVE_SIG_REGS_SIZE(vq) \+	(SVE_SIG_FFR_OFFSET(vq) + SVE_SIG_FFR_SIZE(vq) - SVE_SIG_REGS_OFFSET)+#define SVE_SIG_CONTEXT_SIZE(vq) (SVE_SIG_REGS_OFFSET + SVE_SIG_REGS_SIZE(vq))+#else+typedef struct {+	long double __regs[18+256];+} mcontext_t;+#endif++struct sigaltstack {+	void *ss_sp;+	int ss_flags;+	size_t ss_size;+};++typedef struct __ucontext {+	unsigned long uc_flags;+	struct __ucontext *uc_link;+	stack_t uc_stack;+	sigset_t uc_sigmask;+	mcontext_t uc_mcontext;+} ucontext_t;++#define SA_NOCLDSTOP  1+#define SA_NOCLDWAIT  2+#define SA_SIGINFO    4+#define SA_ONSTACK    0x08000000+#define SA_RESTART    0x10000000+#define SA_NODEFER    0x40000000+#define SA_RESETHAND  0x80000000+#define SA_RESTORER   0x04000000++#endif++#define SIGHUP    1+#define SIGINT    2+#define SIGQUIT   3+#define SIGILL    4+#define SIGTRAP   5+#define SIGABRT   6+#define SIGIOT    SIGABRT+#define SIGBUS    7+#define SIGFPE    8+#define SIGKILL   9+#define SIGUSR1   10+#define SIGSEGV   11+#define SIGUSR2   12+#define SIGPIPE   13+#define SIGALRM   14+#define SIGTERM   15+#define SIGSTKFLT 16+#define SIGCHLD   17+#define SIGCONT   18+#define SIGSTOP   19+#define SIGTSTP   20+#define SIGTTIN   21+#define SIGTTOU   22+#define SIGURG    23+#define SIGXCPU   24+#define SIGXFSZ   25+#define SIGVTALRM 26+#define SIGPROF   27+#define SIGWINCH  28+#define SIGIO     29+#define SIGPOLL   29+#define SIGPWR    30+#define SIGSYS    31+#define SIGUNUSED SIGSYS++#define _NSIG 65
+ musl-include/aarch64/bits/socket.h view
+ musl-include/aarch64/bits/soundcard.h view
@@ -0,0 +1,1 @@+#include <linux/soundcard.h>
+ musl-include/aarch64/bits/stat.h view
@@ -0,0 +1,18 @@+struct stat {+	dev_t st_dev;+	ino_t st_ino;+	mode_t st_mode;+	nlink_t st_nlink;+	uid_t st_uid;+	gid_t st_gid;+	dev_t st_rdev;+	unsigned long __pad;+	off_t st_size;+	blksize_t st_blksize;+	int __pad2;+	blkcnt_t st_blocks;+	struct timespec st_atim;+	struct timespec st_mtim;+	struct timespec st_ctim;+	unsigned __unused[2];+};
+ musl-include/aarch64/bits/statfs.h view
@@ -0,0 +1,7 @@+struct statfs {+	unsigned long f_type, f_bsize;+	fsblkcnt_t f_blocks, f_bfree, f_bavail;+	fsfilcnt_t f_files, f_ffree;+	fsid_t f_fsid;+	unsigned long f_namelen, f_frsize, f_flags, f_spare[4];+};
+ musl-include/aarch64/bits/stdint.h view
@@ -0,0 +1,20 @@+typedef int32_t int_fast16_t;+typedef int32_t int_fast32_t;+typedef uint32_t uint_fast16_t;+typedef uint32_t uint_fast32_t;++#define INT_FAST16_MIN  INT32_MIN+#define INT_FAST32_MIN  INT32_MIN++#define INT_FAST16_MAX  INT32_MAX+#define INT_FAST32_MAX  INT32_MAX++#define UINT_FAST16_MAX UINT32_MAX+#define UINT_FAST32_MAX UINT32_MAX++#define INTPTR_MIN      INT64_MIN+#define INTPTR_MAX      INT64_MAX+#define UINTPTR_MAX     UINT64_MAX+#define PTRDIFF_MIN     INT64_MIN+#define PTRDIFF_MAX     INT64_MAX+#define SIZE_MAX        UINT64_MAX
+ musl-include/aarch64/bits/syscall.h view
@@ -0,0 +1,613 @@+#define __NR_io_setup 0+#define __NR_io_destroy 1+#define __NR_io_submit 2+#define __NR_io_cancel 3+#define __NR_io_getevents 4+#define __NR_setxattr 5+#define __NR_lsetxattr 6+#define __NR_fsetxattr 7+#define __NR_getxattr 8+#define __NR_lgetxattr 9+#define __NR_fgetxattr 10+#define __NR_listxattr 11+#define __NR_llistxattr 12+#define __NR_flistxattr 13+#define __NR_removexattr 14+#define __NR_lremovexattr 15+#define __NR_fremovexattr 16+#define __NR_getcwd 17+#define __NR_lookup_dcookie 18+#define __NR_eventfd2 19+#define __NR_epoll_create1 20+#define __NR_epoll_ctl 21+#define __NR_epoll_pwait 22+#define __NR_dup 23+#define __NR_dup3 24+#define __NR_fcntl 25+#define __NR_inotify_init1 26+#define __NR_inotify_add_watch 27+#define __NR_inotify_rm_watch 28+#define __NR_ioctl 29+#define __NR_ioprio_set 30+#define __NR_ioprio_get 31+#define __NR_flock 32+#define __NR_mknodat 33+#define __NR_mkdirat 34+#define __NR_unlinkat 35+#define __NR_symlinkat 36+#define __NR_linkat 37+#define __NR_renameat 38+#define __NR_umount2 39+#define __NR_mount 40+#define __NR_pivot_root 41+#define __NR_nfsservctl 42+#define __NR_statfs 43+#define __NR_fstatfs 44+#define __NR_truncate 45+#define __NR_ftruncate 46+#define __NR_fallocate 47+#define __NR_faccessat 48+#define __NR_chdir 49+#define __NR_fchdir 50+#define __NR_chroot 51+#define __NR_fchmod 52+#define __NR_fchmodat 53+#define __NR_fchownat 54+#define __NR_fchown 55+#define __NR_openat 56+#define __NR_close 57+#define __NR_vhangup 58+#define __NR_pipe2 59+#define __NR_quotactl 60+#define __NR_getdents64 61+#define __NR_lseek 62+#define __NR_read 63+#define __NR_write 64+#define __NR_readv 65+#define __NR_writev 66+#define __NR_pread64 67+#define __NR_pwrite64 68+#define __NR_preadv 69+#define __NR_pwritev 70+#define __NR_sendfile 71+#define __NR_pselect6 72+#define __NR_ppoll 73+#define __NR_signalfd4 74+#define __NR_vmsplice 75+#define __NR_splice 76+#define __NR_tee 77+#define __NR_readlinkat 78+#define __NR_newfstatat 79+#define __NR_fstat 80+#define __NR_sync 81+#define __NR_fsync 82+#define __NR_fdatasync 83+#define __NR_sync_file_range 84+#define __NR_timerfd_create 85+#define __NR_timerfd_settime 86+#define __NR_timerfd_gettime 87+#define __NR_utimensat 88+#define __NR_acct 89+#define __NR_capget 90+#define __NR_capset 91+#define __NR_personality 92+#define __NR_exit 93+#define __NR_exit_group 94+#define __NR_waitid 95+#define __NR_set_tid_address 96+#define __NR_unshare 97+#define __NR_futex 98+#define __NR_set_robust_list 99+#define __NR_get_robust_list 100+#define __NR_nanosleep 101+#define __NR_getitimer 102+#define __NR_setitimer 103+#define __NR_kexec_load 104+#define __NR_init_module 105+#define __NR_delete_module 106+#define __NR_timer_create 107+#define __NR_timer_gettime 108+#define __NR_timer_getoverrun 109+#define __NR_timer_settime 110+#define __NR_timer_delete 111+#define __NR_clock_settime 112+#define __NR_clock_gettime 113+#define __NR_clock_getres 114+#define __NR_clock_nanosleep 115+#define __NR_syslog 116+#define __NR_ptrace 117+#define __NR_sched_setparam 118+#define __NR_sched_setscheduler 119+#define __NR_sched_getscheduler 120+#define __NR_sched_getparam 121+#define __NR_sched_setaffinity 122+#define __NR_sched_getaffinity 123+#define __NR_sched_yield 124+#define __NR_sched_get_priority_max 125+#define __NR_sched_get_priority_min 126+#define __NR_sched_rr_get_interval 127+#define __NR_restart_syscall 128+#define __NR_kill 129+#define __NR_tkill 130+#define __NR_tgkill 131+#define __NR_sigaltstack 132+#define __NR_rt_sigsuspend 133+#define __NR_rt_sigaction 134+#define __NR_rt_sigprocmask 135+#define __NR_rt_sigpending 136+#define __NR_rt_sigtimedwait 137+#define __NR_rt_sigqueueinfo 138+#define __NR_rt_sigreturn 139+#define __NR_setpriority 140+#define __NR_getpriority 141+#define __NR_reboot 142+#define __NR_setregid 143+#define __NR_setgid 144+#define __NR_setreuid 145+#define __NR_setuid 146+#define __NR_setresuid 147+#define __NR_getresuid 148+#define __NR_setresgid 149+#define __NR_getresgid 150+#define __NR_setfsuid 151+#define __NR_setfsgid 152+#define __NR_times 153+#define __NR_setpgid 154+#define __NR_getpgid 155+#define __NR_getsid 156+#define __NR_setsid 157+#define __NR_getgroups 158+#define __NR_setgroups 159+#define __NR_uname 160+#define __NR_sethostname 161+#define __NR_setdomainname 162+#define __NR_getrlimit 163+#define __NR_setrlimit 164+#define __NR_getrusage 165+#define __NR_umask 166+#define __NR_prctl 167+#define __NR_getcpu 168+#define __NR_gettimeofday 169+#define __NR_settimeofday 170+#define __NR_adjtimex 171+#define __NR_getpid 172+#define __NR_getppid 173+#define __NR_getuid 174+#define __NR_geteuid 175+#define __NR_getgid 176+#define __NR_getegid 177+#define __NR_gettid 178+#define __NR_sysinfo 179+#define __NR_mq_open 180+#define __NR_mq_unlink 181+#define __NR_mq_timedsend 182+#define __NR_mq_timedreceive 183+#define __NR_mq_notify 184+#define __NR_mq_getsetattr 185+#define __NR_msgget 186+#define __NR_msgctl 187+#define __NR_msgrcv 188+#define __NR_msgsnd 189+#define __NR_semget 190+#define __NR_semctl 191+#define __NR_semtimedop 192+#define __NR_semop 193+#define __NR_shmget 194+#define __NR_shmctl 195+#define __NR_shmat 196+#define __NR_shmdt 197+#define __NR_socket 198+#define __NR_socketpair 199+#define __NR_bind 200+#define __NR_listen 201+#define __NR_accept 202+#define __NR_connect 203+#define __NR_getsockname 204+#define __NR_getpeername 205+#define __NR_sendto 206+#define __NR_recvfrom 207+#define __NR_setsockopt 208+#define __NR_getsockopt 209+#define __NR_shutdown 210+#define __NR_sendmsg 211+#define __NR_recvmsg 212+#define __NR_readahead 213+#define __NR_brk 214+#define __NR_munmap 215+#define __NR_mremap 216+#define __NR_add_key 217+#define __NR_request_key 218+#define __NR_keyctl 219+#define __NR_clone 220+#define __NR_execve 221+#define __NR_mmap 222+#define __NR_fadvise64 223+#define __NR_swapon 224+#define __NR_swapoff 225+#define __NR_mprotect 226+#define __NR_msync 227+#define __NR_mlock 228+#define __NR_munlock 229+#define __NR_mlockall 230+#define __NR_munlockall 231+#define __NR_mincore 232+#define __NR_madvise 233+#define __NR_remap_file_pages 234+#define __NR_mbind 235+#define __NR_get_mempolicy 236+#define __NR_set_mempolicy 237+#define __NR_migrate_pages 238+#define __NR_move_pages 239+#define __NR_rt_tgsigqueueinfo 240+#define __NR_perf_event_open 241+#define __NR_accept4 242+#define __NR_recvmmsg 243+#define __NR_wait4 260+#define __NR_prlimit64 261+#define __NR_fanotify_init 262+#define __NR_fanotify_mark 263+#define __NR_name_to_handle_at 264+#define __NR_open_by_handle_at 265+#define __NR_clock_adjtime 266+#define __NR_syncfs 267+#define __NR_setns 268+#define __NR_sendmmsg 269+#define __NR_process_vm_readv 270+#define __NR_process_vm_writev 271+#define __NR_kcmp 272+#define __NR_finit_module 273+#define __NR_sched_setattr 274+#define __NR_sched_getattr 275+#define __NR_renameat2 276+#define __NR_seccomp 277+#define __NR_getrandom 278+#define __NR_memfd_create 279+#define __NR_bpf 280+#define __NR_execveat 281+#define __NR_userfaultfd 282+#define __NR_membarrier 283+#define __NR_mlock2 284+#define __NR_copy_file_range 285+#define __NR_preadv2 286+#define __NR_pwritev2 287+#define __NR_pkey_mprotect 288+#define __NR_pkey_alloc 289+#define __NR_pkey_free 290+#define __NR_statx 291+#define __NR_io_pgetevents 292+#define __NR_rseq 293+#define __NR_kexec_file_load 294+#define __NR_pidfd_send_signal 424+#define __NR_io_uring_setup 425+#define __NR_io_uring_enter 426+#define __NR_io_uring_register 427+#define __NR_open_tree		428+#define __NR_move_mount		429+#define __NR_fsopen		430+#define __NR_fsconfig		431+#define __NR_fsmount		432+#define __NR_fspick		433+#define __NR_pidfd_open		434+#define __NR_clone3		435+#define __NR_close_range	436+#define __NR_openat2		437+#define __NR_pidfd_getfd	438+#define __NR_faccessat2		439+#define __NR_process_madvise	440+#define __NR_epoll_pwait2	441+#define __NR_mount_setattr	442+#define __NR_landlock_create_ruleset	444+#define __NR_landlock_add_rule	445+#define __NR_landlock_restrict_self	446+#define __NR_process_mrelease	448+#define __NR_futex_waitv	449+#define __NR_set_mempolicy_home_node	450+#define __NR_cachestat		451+#define __NR_fchmodat2		452++#define SYS_io_setup 0+#define SYS_io_destroy 1+#define SYS_io_submit 2+#define SYS_io_cancel 3+#define SYS_io_getevents 4+#define SYS_setxattr 5+#define SYS_lsetxattr 6+#define SYS_fsetxattr 7+#define SYS_getxattr 8+#define SYS_lgetxattr 9+#define SYS_fgetxattr 10+#define SYS_listxattr 11+#define SYS_llistxattr 12+#define SYS_flistxattr 13+#define SYS_removexattr 14+#define SYS_lremovexattr 15+#define SYS_fremovexattr 16+#define SYS_getcwd 17+#define SYS_lookup_dcookie 18+#define SYS_eventfd2 19+#define SYS_epoll_create1 20+#define SYS_epoll_ctl 21+#define SYS_epoll_pwait 22+#define SYS_dup 23+#define SYS_dup3 24+#define SYS_fcntl 25+#define SYS_inotify_init1 26+#define SYS_inotify_add_watch 27+#define SYS_inotify_rm_watch 28+#define SYS_ioctl 29+#define SYS_ioprio_set 30+#define SYS_ioprio_get 31+#define SYS_flock 32+#define SYS_mknodat 33+#define SYS_mkdirat 34+#define SYS_unlinkat 35+#define SYS_symlinkat 36+#define SYS_linkat 37+#define SYS_renameat 38+#define SYS_umount2 39+#define SYS_mount 40+#define SYS_pivot_root 41+#define SYS_nfsservctl 42+#define SYS_statfs 43+#define SYS_fstatfs 44+#define SYS_truncate 45+#define SYS_ftruncate 46+#define SYS_fallocate 47+#define SYS_faccessat 48+#define SYS_chdir 49+#define SYS_fchdir 50+#define SYS_chroot 51+#define SYS_fchmod 52+#define SYS_fchmodat 53+#define SYS_fchownat 54+#define SYS_fchown 55+#define SYS_openat 56+#define SYS_close 57+#define SYS_vhangup 58+#define SYS_pipe2 59+#define SYS_quotactl 60+#define SYS_getdents64 61+#define SYS_lseek 62+#define SYS_read 63+#define SYS_write 64+#define SYS_readv 65+#define SYS_writev 66+#define SYS_pread64 67+#define SYS_pwrite64 68+#define SYS_preadv 69+#define SYS_pwritev 70+#define SYS_sendfile 71+#define SYS_pselect6 72+#define SYS_ppoll 73+#define SYS_signalfd4 74+#define SYS_vmsplice 75+#define SYS_splice 76+#define SYS_tee 77+#define SYS_readlinkat 78+#define SYS_newfstatat 79+#define SYS_fstat 80+#define SYS_sync 81+#define SYS_fsync 82+#define SYS_fdatasync 83+#define SYS_sync_file_range 84+#define SYS_timerfd_create 85+#define SYS_timerfd_settime 86+#define SYS_timerfd_gettime 87+#define SYS_utimensat 88+#define SYS_acct 89+#define SYS_capget 90+#define SYS_capset 91+#define SYS_personality 92+#define SYS_exit 93+#define SYS_exit_group 94+#define SYS_waitid 95+#define SYS_set_tid_address 96+#define SYS_unshare 97+#define SYS_futex 98+#define SYS_set_robust_list 99+#define SYS_get_robust_list 100+#define SYS_nanosleep 101+#define SYS_getitimer 102+#define SYS_setitimer 103+#define SYS_kexec_load 104+#define SYS_init_module 105+#define SYS_delete_module 106+#define SYS_timer_create 107+#define SYS_timer_gettime 108+#define SYS_timer_getoverrun 109+#define SYS_timer_settime 110+#define SYS_timer_delete 111+#define SYS_clock_settime 112+#define SYS_clock_gettime 113+#define SYS_clock_getres 114+#define SYS_clock_nanosleep 115+#define SYS_syslog 116+#define SYS_ptrace 117+#define SYS_sched_setparam 118+#define SYS_sched_setscheduler 119+#define SYS_sched_getscheduler 120+#define SYS_sched_getparam 121+#define SYS_sched_setaffinity 122+#define SYS_sched_getaffinity 123+#define SYS_sched_yield 124+#define SYS_sched_get_priority_max 125+#define SYS_sched_get_priority_min 126+#define SYS_sched_rr_get_interval 127+#define SYS_restart_syscall 128+#define SYS_kill 129+#define SYS_tkill 130+#define SYS_tgkill 131+#define SYS_sigaltstack 132+#define SYS_rt_sigsuspend 133+#define SYS_rt_sigaction 134+#define SYS_rt_sigprocmask 135+#define SYS_rt_sigpending 136+#define SYS_rt_sigtimedwait 137+#define SYS_rt_sigqueueinfo 138+#define SYS_rt_sigreturn 139+#define SYS_setpriority 140+#define SYS_getpriority 141+#define SYS_reboot 142+#define SYS_setregid 143+#define SYS_setgid 144+#define SYS_setreuid 145+#define SYS_setuid 146+#define SYS_setresuid 147+#define SYS_getresuid 148+#define SYS_setresgid 149+#define SYS_getresgid 150+#define SYS_setfsuid 151+#define SYS_setfsgid 152+#define SYS_times 153+#define SYS_setpgid 154+#define SYS_getpgid 155+#define SYS_getsid 156+#define SYS_setsid 157+#define SYS_getgroups 158+#define SYS_setgroups 159+#define SYS_uname 160+#define SYS_sethostname 161+#define SYS_setdomainname 162+#define SYS_getrlimit 163+#define SYS_setrlimit 164+#define SYS_getrusage 165+#define SYS_umask 166+#define SYS_prctl 167+#define SYS_getcpu 168+#define SYS_gettimeofday 169+#define SYS_settimeofday 170+#define SYS_adjtimex 171+#define SYS_getpid 172+#define SYS_getppid 173+#define SYS_getuid 174+#define SYS_geteuid 175+#define SYS_getgid 176+#define SYS_getegid 177+#define SYS_gettid 178+#define SYS_sysinfo 179+#define SYS_mq_open 180+#define SYS_mq_unlink 181+#define SYS_mq_timedsend 182+#define SYS_mq_timedreceive 183+#define SYS_mq_notify 184+#define SYS_mq_getsetattr 185+#define SYS_msgget 186+#define SYS_msgctl 187+#define SYS_msgrcv 188+#define SYS_msgsnd 189+#define SYS_semget 190+#define SYS_semctl 191+#define SYS_semtimedop 192+#define SYS_semop 193+#define SYS_shmget 194+#define SYS_shmctl 195+#define SYS_shmat 196+#define SYS_shmdt 197+#define SYS_socket 198+#define SYS_socketpair 199+#define SYS_bind 200+#define SYS_listen 201+#define SYS_accept 202+#define SYS_connect 203+#define SYS_getsockname 204+#define SYS_getpeername 205+#define SYS_sendto 206+#define SYS_recvfrom 207+#define SYS_setsockopt 208+#define SYS_getsockopt 209+#define SYS_shutdown 210+#define SYS_sendmsg 211+#define SYS_recvmsg 212+#define SYS_readahead 213+#define SYS_brk 214+#define SYS_munmap 215+#define SYS_mremap 216+#define SYS_add_key 217+#define SYS_request_key 218+#define SYS_keyctl 219+#define SYS_clone 220+#define SYS_execve 221+#define SYS_mmap 222+#define SYS_fadvise64 223+#define SYS_swapon 224+#define SYS_swapoff 225+#define SYS_mprotect 226+#define SYS_msync 227+#define SYS_mlock 228+#define SYS_munlock 229+#define SYS_mlockall 230+#define SYS_munlockall 231+#define SYS_mincore 232+#define SYS_madvise 233+#define SYS_remap_file_pages 234+#define SYS_mbind 235+#define SYS_get_mempolicy 236+#define SYS_set_mempolicy 237+#define SYS_migrate_pages 238+#define SYS_move_pages 239+#define SYS_rt_tgsigqueueinfo 240+#define SYS_perf_event_open 241+#define SYS_accept4 242+#define SYS_recvmmsg 243+#define SYS_wait4 260+#define SYS_prlimit64 261+#define SYS_fanotify_init 262+#define SYS_fanotify_mark 263+#define SYS_name_to_handle_at 264+#define SYS_open_by_handle_at 265+#define SYS_clock_adjtime 266+#define SYS_syncfs 267+#define SYS_setns 268+#define SYS_sendmmsg 269+#define SYS_process_vm_readv 270+#define SYS_process_vm_writev 271+#define SYS_kcmp 272+#define SYS_finit_module 273+#define SYS_sched_setattr 274+#define SYS_sched_getattr 275+#define SYS_renameat2 276+#define SYS_seccomp 277+#define SYS_getrandom 278+#define SYS_memfd_create 279+#define SYS_bpf 280+#define SYS_execveat 281+#define SYS_userfaultfd 282+#define SYS_membarrier 283+#define SYS_mlock2 284+#define SYS_copy_file_range 285+#define SYS_preadv2 286+#define SYS_pwritev2 287+#define SYS_pkey_mprotect 288+#define SYS_pkey_alloc 289+#define SYS_pkey_free 290+#define SYS_statx 291+#define SYS_io_pgetevents 292+#define SYS_rseq 293+#define SYS_kexec_file_load 294+#define SYS_pidfd_send_signal 424+#define SYS_io_uring_setup 425+#define SYS_io_uring_enter 426+#define SYS_io_uring_register 427+#define SYS_open_tree		428+#define SYS_move_mount		429+#define SYS_fsopen		430+#define SYS_fsconfig		431+#define SYS_fsmount		432+#define SYS_fspick		433+#define SYS_pidfd_open		434+#define SYS_clone3		435+#define SYS_close_range	436+#define SYS_openat2		437+#define SYS_pidfd_getfd	438+#define SYS_faccessat2		439+#define SYS_process_madvise	440+#define SYS_epoll_pwait2	441+#define SYS_mount_setattr	442+#define SYS_landlock_create_ruleset	444+#define SYS_landlock_add_rule	445+#define SYS_landlock_restrict_self	446+#define SYS_process_mrelease	448+#define SYS_futex_waitv	449+#define SYS_set_mempolicy_home_node	450+#define SYS_cachestat		451+#define SYS_fchmodat2		452
+ musl-include/aarch64/bits/termios.h view
@@ -0,0 +1,166 @@+struct termios {+	tcflag_t c_iflag;+	tcflag_t c_oflag;+	tcflag_t c_cflag;+	tcflag_t c_lflag;+	cc_t c_line;+	cc_t c_cc[NCCS];+	speed_t __c_ispeed;+	speed_t __c_ospeed;+};++#define VINTR     0+#define VQUIT     1+#define VERASE    2+#define VKILL     3+#define VEOF      4+#define VTIME     5+#define VMIN      6+#define VSWTC     7+#define VSTART    8+#define VSTOP     9+#define VSUSP    10+#define VEOL     11+#define VREPRINT 12+#define VDISCARD 13+#define VWERASE  14+#define VLNEXT   15+#define VEOL2    16++#define IGNBRK  0000001+#define BRKINT  0000002+#define IGNPAR  0000004+#define PARMRK  0000010+#define INPCK   0000020+#define ISTRIP  0000040+#define INLCR   0000100+#define IGNCR   0000200+#define ICRNL   0000400+#define IUCLC   0001000+#define IXON    0002000+#define IXANY   0004000+#define IXOFF   0010000+#define IMAXBEL 0020000+#define IUTF8   0040000++#define OPOST  0000001+#define OLCUC  0000002+#define ONLCR  0000004+#define OCRNL  0000010+#define ONOCR  0000020+#define ONLRET 0000040+#define OFILL  0000100+#define OFDEL  0000200+#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE) || defined(_XOPEN_SOURCE)+#define NLDLY  0000400+#define NL0    0000000+#define NL1    0000400+#define CRDLY  0003000+#define CR0    0000000+#define CR1    0001000+#define CR2    0002000+#define CR3    0003000+#define TABDLY 0014000+#define TAB0   0000000+#define TAB1   0004000+#define TAB2   0010000+#define TAB3   0014000+#define BSDLY  0020000+#define BS0    0000000+#define BS1    0020000+#define FFDLY  0100000+#define FF0    0000000+#define FF1    0100000+#endif++#define VTDLY  0040000+#define VT0    0000000+#define VT1    0040000++#define B0       0000000+#define B50      0000001+#define B75      0000002+#define B110     0000003+#define B134     0000004+#define B150     0000005+#define B200     0000006+#define B300     0000007+#define B600     0000010+#define B1200    0000011+#define B1800    0000012+#define B2400    0000013+#define B4800    0000014+#define B9600    0000015+#define B19200   0000016+#define B38400   0000017++#define B57600   0010001+#define B115200  0010002+#define B230400  0010003+#define B460800  0010004+#define B500000  0010005+#define B576000  0010006+#define B921600  0010007+#define B1000000 0010010+#define B1152000 0010011+#define B1500000 0010012+#define B2000000 0010013+#define B2500000 0010014+#define B3000000 0010015+#define B3500000 0010016+#define B4000000 0010017++#define CSIZE  0000060+#define CS5    0000000+#define CS6    0000020+#define CS7    0000040+#define CS8    0000060+#define CSTOPB 0000100+#define CREAD  0000200+#define PARENB 0000400+#define PARODD 0001000+#define HUPCL  0002000+#define CLOCAL 0004000++#define ISIG   0000001+#define ICANON 0000002+#define ECHO   0000010+#define ECHOE  0000020+#define ECHOK  0000040+#define ECHONL 0000100+#define NOFLSH 0000200+#define TOSTOP 0000400+#define IEXTEN 0100000++#define TCOOFF 0+#define TCOON  1+#define TCIOFF 2+#define TCION  3++#define TCIFLUSH  0+#define TCOFLUSH  1+#define TCIOFLUSH 2++#define TCSANOW   0+#define TCSADRAIN 1+#define TCSAFLUSH 2++#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE)+#define EXTA    0000016+#define EXTB    0000017+#define CBAUD   0010017+#define CBAUDEX 0010000+#define CIBAUD  002003600000+#define CMSPAR  010000000000+#define CRTSCTS 020000000000++#define XCASE   0000004+#define ECHOCTL 0001000+#define ECHOPRT 0002000+#define ECHOKE  0004000+#define FLUSHO  0010000+#define PENDIN  0040000+#define EXTPROC 0200000++#define XTABS  0014000+#endif
+ musl-include/aarch64/bits/user.h view
@@ -0,0 +1,16 @@+struct user_regs_struct {+	unsigned long long regs[31];+	unsigned long long sp;+	unsigned long long pc;+	unsigned long long pstate;+};++struct user_fpsimd_struct {+	__uint128_t vregs[32];+	unsigned int fpsr;+	unsigned int fpcr;+};++#define ELF_NREG 34+typedef unsigned long elf_greg_t, elf_gregset_t[ELF_NREG];+typedef struct user_fpsimd_struct elf_fpregset_t;
+ musl-include/aarch64/bits/vt.h view
@@ -0,0 +1,1 @@+#include <linux/vt.h>
+ musl-include/aarch64/byteswap.h view
@@ -0,0 +1,26 @@+#ifndef _BYTESWAP_H+#define _BYTESWAP_H++#include <features.h>+#include <stdint.h>++static __inline uint16_t __bswap_16(uint16_t __x)+{+	return __x<<8 | __x>>8;+}++static __inline uint32_t __bswap_32(uint32_t __x)+{+	return __x>>24 | __x>>8&0xff00 | __x<<8&0xff0000 | __x<<24;+}++static __inline uint64_t __bswap_64(uint64_t __x)+{+	return __bswap_32(__x)+0ULL<<32 | __bswap_32(__x>>32);+}++#define bswap_16(x) __bswap_16(x)+#define bswap_32(x) __bswap_32(x)+#define bswap_64(x) __bswap_64(x)++#endif
+ musl-include/aarch64/complex.h view
@@ -0,0 +1,133 @@+#ifndef _COMPLEX_H+#define _COMPLEX_H++#ifdef __cplusplus+extern "C" {+#endif++#define complex _Complex+#ifdef __GNUC__+#define _Complex_I (__extension__ (0.0f+1.0fi))+#else+#define _Complex_I (0.0f+1.0fi)+#endif+#define I _Complex_I++double complex cacos(double complex);+float complex cacosf(float complex);+long double complex cacosl(long double complex);++double complex casin(double complex);+float complex casinf(float complex);+long double complex casinl(long double complex);++double complex catan(double complex);+float complex catanf(float complex);+long double complex catanl(long double complex);++double complex ccos(double complex);+float complex ccosf(float complex);+long double complex ccosl(long double complex);++double complex csin(double complex);+float complex csinf(float complex);+long double complex csinl(long double complex);++double complex ctan(double complex);+float complex ctanf(float complex);+long double complex ctanl(long double complex);++double complex cacosh(double complex);+float complex cacoshf(float complex);+long double complex cacoshl(long double complex);++double complex casinh(double complex);+float complex casinhf(float complex);+long double complex casinhl(long double complex);++double complex catanh(double complex);+float complex catanhf(float complex);+long double complex catanhl(long double complex);++double complex ccosh(double complex);+float complex ccoshf(float complex);+long double complex ccoshl(long double complex);++double complex csinh(double complex);+float complex csinhf(float complex);+long double complex csinhl(long double complex);++double complex ctanh(double complex);+float complex ctanhf(float complex);+long double complex ctanhl(long double complex);++double complex cexp(double complex);+float complex cexpf(float complex);+long double complex cexpl(long double complex);++double complex clog(double complex);+float complex clogf(float complex);+long double complex clogl(long double complex);++double cabs(double complex);+float cabsf(float complex);+long double cabsl(long double complex);++double complex cpow(double complex, double complex);+float complex cpowf(float complex, float complex);+long double complex cpowl(long double complex, long double complex);++double complex csqrt(double complex);+float complex csqrtf(float complex);+long double complex csqrtl(long double complex);++double carg(double complex);+float cargf(float complex);+long double cargl(long double complex);++double cimag(double complex);+float cimagf(float complex);+long double cimagl(long double complex);++double complex conj(double complex);+float complex conjf(float complex);+long double complex conjl(long double complex);++double complex cproj(double complex);+float complex cprojf(float complex);+long double complex cprojl(long double complex);++double creal(double complex);+float crealf(float complex);+long double creall(long double complex);++#ifndef __cplusplus+#define __CIMAG(x, t) \+	(+(union { _Complex t __z; t __xy[2]; }){(_Complex t)(x)}.__xy[1])++#define creal(x) ((double)(x))+#define crealf(x) ((float)(x))+#define creall(x) ((long double)(x))++#define cimag(x) __CIMAG(x, double)+#define cimagf(x) __CIMAG(x, float)+#define cimagl(x) __CIMAG(x, long double)+#endif++#if __STDC_VERSION__ >= 201112L+#if defined(_Imaginary_I)+#define __CMPLX(x, y, t) ((t)(x) + _Imaginary_I*(t)(y))+#elif defined(__clang__)+#define __CMPLX(x, y, t) (+(_Complex t){ (t)(x), (t)(y) })+#else+#define __CMPLX(x, y, t) (__builtin_complex((t)(x), (t)(y)))+#endif+#define CMPLX(x, y) __CMPLX(x, y, double)+#define CMPLXF(x, y) __CMPLX(x, y, float)+#define CMPLXL(x, y) __CMPLX(x, y, long double)+#endif++#ifdef __cplusplus+}+#endif+#endif
+ musl-include/aarch64/cpio.h view
@@ -0,0 +1,29 @@+#ifndef _CPIO_H+#define _CPIO_H++#define MAGIC "070707"++#define C_IRUSR  000400+#define C_IWUSR  000200+#define C_IXUSR  000100+#define C_IRGRP  000040+#define C_IWGRP  000020+#define C_IXGRP  000010+#define C_IROTH  000004+#define C_IWOTH  000002+#define C_IXOTH  000001++#define C_ISUID  004000+#define C_ISGID  002000+#define C_ISVTX  001000++#define C_ISBLK  060000+#define C_ISCHR  020000+#define C_ISDIR  040000+#define C_ISFIFO 010000+#define C_ISSOCK 0140000+#define C_ISLNK  0120000+#define C_ISCTG  0110000+#define C_ISREG  0100000++#endif
+ musl-include/aarch64/crypt.h view
@@ -0,0 +1,20 @@+#ifndef _CRYPT_H+#define _CRYPT_H++#ifdef __cplusplus+extern "C" {+#endif++struct crypt_data {+	int initialized;+	char __buf[256];+};++char *crypt(const char *, const char *);+char *crypt_r(const char *, const char *, struct crypt_data *);++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/aarch64/ctype.h view
@@ -0,0 +1,77 @@+#ifndef	_CTYPE_H+#define	_CTYPE_H++#ifdef __cplusplus+extern "C" {+#endif++#include <features.h>++int   isalnum(int);+int   isalpha(int);+int   isblank(int);+int   iscntrl(int);+int   isdigit(int);+int   isgraph(int);+int   islower(int);+int   isprint(int);+int   ispunct(int);+int   isspace(int);+int   isupper(int);+int   isxdigit(int);+int   tolower(int);+int   toupper(int);++#ifndef __cplusplus+static __inline int __isspace(int _c)+{+	return _c == ' ' || (unsigned)_c-'\t' < 5;+}++#define isalpha(a) (0 ? isalpha(a) : (((unsigned)(a)|32)-'a') < 26)+#define isdigit(a) (0 ? isdigit(a) : ((unsigned)(a)-'0') < 10)+#define islower(a) (0 ? islower(a) : ((unsigned)(a)-'a') < 26)+#define isupper(a) (0 ? isupper(a) : ((unsigned)(a)-'A') < 26)+#define isprint(a) (0 ? isprint(a) : ((unsigned)(a)-0x20) < 0x5f)+#define isgraph(a) (0 ? isgraph(a) : ((unsigned)(a)-0x21) < 0x5e)+#define isspace(a) __isspace(a)+#endif+++#if defined(_POSIX_SOURCE) || defined(_POSIX_C_SOURCE) \+ || defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) \+ || defined(_BSD_SOURCE)++#define __NEED_locale_t+#include <bits/alltypes.h>++int   isalnum_l(int, locale_t);+int   isalpha_l(int, locale_t);+int   isblank_l(int, locale_t);+int   iscntrl_l(int, locale_t);+int   isdigit_l(int, locale_t);+int   isgraph_l(int, locale_t);+int   islower_l(int, locale_t);+int   isprint_l(int, locale_t);+int   ispunct_l(int, locale_t);+int   isspace_l(int, locale_t);+int   isupper_l(int, locale_t);+int   isxdigit_l(int, locale_t);+int   tolower_l(int, locale_t);+int   toupper_l(int, locale_t);++int   isascii(int);+int   toascii(int);+#define _tolower(a) ((a)|0x20)+#define _toupper(a) ((a)&0x5f)+#ifndef __cplusplus+#define isascii(a) (0 ? isascii(a) : (unsigned)(a) < 128)+#endif++#endif++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/aarch64/dirent.h view
@@ -0,0 +1,75 @@+#ifndef	_DIRENT_H+#define	_DIRENT_H++#ifdef __cplusplus+extern "C" {+#endif++#include <features.h>++#define __NEED_ino_t+#define __NEED_off_t+#if defined(_BSD_SOURCE) || defined(_GNU_SOURCE)+#define __NEED_size_t+#endif++#include <bits/alltypes.h>++#include <bits/dirent.h>++typedef struct __dirstream DIR;++#define d_fileno d_ino++int            closedir(DIR *);+DIR           *fdopendir(int);+DIR           *opendir(const char *);+struct dirent *readdir(DIR *);+int            readdir_r(DIR *__restrict, struct dirent *__restrict, struct dirent **__restrict);+void           rewinddir(DIR *);+int            dirfd(DIR *);++int alphasort(const struct dirent **, const struct dirent **);+int scandir(const char *, struct dirent ***, int (*)(const struct dirent *), int (*)(const struct dirent **, const struct dirent **));++#if defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) || defined(_BSD_SOURCE)+void           seekdir(DIR *, long);+long           telldir(DIR *);+#endif++#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE)+#define DT_UNKNOWN 0+#define DT_FIFO 1+#define DT_CHR 2+#define DT_DIR 4+#define DT_BLK 6+#define DT_REG 8+#define DT_LNK 10+#define DT_SOCK 12+#define DT_WHT 14+#define IFTODT(x) ((x)>>12 & 017)+#define DTTOIF(x) ((x)<<12)+int getdents(int, struct dirent *, size_t);+#endif++#ifdef _GNU_SOURCE+int versionsort(const struct dirent **, const struct dirent **);+#endif++#if defined(_LARGEFILE64_SOURCE)+#define dirent64 dirent+#define readdir64 readdir+#define readdir64_r readdir_r+#define scandir64 scandir+#define alphasort64 alphasort+#define versionsort64 versionsort+#define off64_t off_t+#define ino64_t ino_t+#define getdents64 getdents+#endif++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/aarch64/dlfcn.h view
@@ -0,0 +1,46 @@+#ifndef	_DLFCN_H+#define	_DLFCN_H++#ifdef __cplusplus+extern "C" {+#endif++#include <features.h>++#define RTLD_LAZY   1+#define RTLD_NOW    2+#define RTLD_NOLOAD 4+#define RTLD_NODELETE 4096+#define RTLD_GLOBAL 256+#define RTLD_LOCAL  0++#define RTLD_NEXT    ((void *)-1)+#define RTLD_DEFAULT ((void *)0)++#define RTLD_DI_LINKMAP 2++int    dlclose(void *);+char  *dlerror(void);+void  *dlopen(const char *, int);+void  *dlsym(void *__restrict, const char *__restrict);++#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE)+typedef struct {+	const char *dli_fname;+	void *dli_fbase;+	const char *dli_sname;+	void *dli_saddr;+} Dl_info;+int dladdr(const void *, Dl_info *);+int dlinfo(void *, int, void *);+#endif++#if _REDIR_TIME64+__REDIR(dlsym, __dlsym_time64);+#endif++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/aarch64/elf.h view
@@ -0,0 +1,3414 @@+#ifndef _ELF_H+#define _ELF_H++#ifdef __cplusplus+extern "C" {+#endif++#include <stdint.h>++typedef uint16_t Elf32_Half;+typedef uint16_t Elf64_Half;++typedef uint32_t Elf32_Word;+typedef	int32_t  Elf32_Sword;+typedef uint32_t Elf64_Word;+typedef	int32_t  Elf64_Sword;++typedef uint64_t Elf32_Xword;+typedef	int64_t  Elf32_Sxword;+typedef uint64_t Elf64_Xword;+typedef	int64_t  Elf64_Sxword;++typedef uint32_t Elf32_Addr;+typedef uint64_t Elf64_Addr;++typedef uint32_t Elf32_Off;+typedef uint64_t Elf64_Off;++typedef uint16_t Elf32_Section;+typedef uint16_t Elf64_Section;++typedef Elf32_Half Elf32_Versym;+typedef Elf64_Half Elf64_Versym;++#define EI_NIDENT (16)++typedef struct {+  unsigned char	e_ident[EI_NIDENT];+  Elf32_Half	e_type;+  Elf32_Half	e_machine;+  Elf32_Word	e_version;+  Elf32_Addr	e_entry;+  Elf32_Off	e_phoff;+  Elf32_Off	e_shoff;+  Elf32_Word	e_flags;+  Elf32_Half	e_ehsize;+  Elf32_Half	e_phentsize;+  Elf32_Half	e_phnum;+  Elf32_Half	e_shentsize;+  Elf32_Half	e_shnum;+  Elf32_Half	e_shstrndx;+} Elf32_Ehdr;++typedef struct {+  unsigned char	e_ident[EI_NIDENT];+  Elf64_Half	e_type;+  Elf64_Half	e_machine;+  Elf64_Word	e_version;+  Elf64_Addr	e_entry;+  Elf64_Off	e_phoff;+  Elf64_Off	e_shoff;+  Elf64_Word	e_flags;+  Elf64_Half	e_ehsize;+  Elf64_Half	e_phentsize;+  Elf64_Half	e_phnum;+  Elf64_Half	e_shentsize;+  Elf64_Half	e_shnum;+  Elf64_Half	e_shstrndx;+} Elf64_Ehdr;++#define EI_MAG0		0+#define ELFMAG0		0x7f++#define EI_MAG1		1+#define ELFMAG1		'E'++#define EI_MAG2		2+#define ELFMAG2		'L'++#define EI_MAG3		3+#define ELFMAG3		'F'+++#define	ELFMAG		"\177ELF"+#define	SELFMAG		4++#define EI_CLASS	4+#define ELFCLASSNONE	0+#define ELFCLASS32	1+#define ELFCLASS64	2+#define ELFCLASSNUM	3++#define EI_DATA		5+#define ELFDATANONE	0+#define ELFDATA2LSB	1+#define ELFDATA2MSB	2+#define ELFDATANUM	3++#define EI_VERSION	6+++#define EI_OSABI	7+#define ELFOSABI_NONE		0+#define ELFOSABI_SYSV		0+#define ELFOSABI_HPUX		1+#define ELFOSABI_NETBSD		2+#define ELFOSABI_LINUX		3+#define ELFOSABI_GNU		3+#define ELFOSABI_SOLARIS	6+#define ELFOSABI_AIX		7+#define ELFOSABI_IRIX		8+#define ELFOSABI_FREEBSD	9+#define ELFOSABI_TRU64		10+#define ELFOSABI_MODESTO	11+#define ELFOSABI_OPENBSD	12+#define ELFOSABI_ARM		97+#define ELFOSABI_STANDALONE	255++#define EI_ABIVERSION	8++#define EI_PAD		9++++#define ET_NONE		0+#define ET_REL		1+#define ET_EXEC		2+#define ET_DYN		3+#define ET_CORE		4+#define	ET_NUM		5+#define ET_LOOS		0xfe00+#define ET_HIOS		0xfeff+#define ET_LOPROC	0xff00+#define ET_HIPROC	0xffff++++#define EM_NONE		 0+#define EM_M32		 1+#define EM_SPARC	 2+#define EM_386		 3+#define EM_68K		 4+#define EM_88K		 5+#define EM_860		 7+#define EM_MIPS		 8+#define EM_S370		 9+#define EM_MIPS_RS3_LE	10++#define EM_PARISC	15+#define EM_VPP500	17+#define EM_SPARC32PLUS	18+#define EM_960		19+#define EM_PPC		20+#define EM_PPC64	21+#define EM_S390		22++#define EM_V800		36+#define EM_FR20		37+#define EM_RH32		38+#define EM_RCE		39+#define EM_ARM		40+#define EM_FAKE_ALPHA	41+#define EM_SH		42+#define EM_SPARCV9	43+#define EM_TRICORE	44+#define EM_ARC		45+#define EM_H8_300	46+#define EM_H8_300H	47+#define EM_H8S		48+#define EM_H8_500	49+#define EM_IA_64	50+#define EM_MIPS_X	51+#define EM_COLDFIRE	52+#define EM_68HC12	53+#define EM_MMA		54+#define EM_PCP		55+#define EM_NCPU		56+#define EM_NDR1		57+#define EM_STARCORE	58+#define EM_ME16		59+#define EM_ST100	60+#define EM_TINYJ	61+#define EM_X86_64	62+#define EM_PDSP		63++#define EM_FX66		66+#define EM_ST9PLUS	67+#define EM_ST7		68+#define EM_68HC16	69+#define EM_68HC11	70+#define EM_68HC08	71+#define EM_68HC05	72+#define EM_SVX		73+#define EM_ST19		74+#define EM_VAX		75+#define EM_CRIS		76+#define EM_JAVELIN	77+#define EM_FIREPATH	78+#define EM_ZSP		79+#define EM_MMIX		80+#define EM_HUANY	81+#define EM_PRISM	82+#define EM_AVR		83+#define EM_FR30		84+#define EM_D10V		85+#define EM_D30V		86+#define EM_V850		87+#define EM_M32R		88+#define EM_MN10300	89+#define EM_MN10200	90+#define EM_PJ		91+#define EM_OR1K		92+#define EM_OPENRISC	92+#define EM_ARC_A5	93+#define EM_ARC_COMPACT	93+#define EM_XTENSA	94+#define EM_VIDEOCORE	95+#define EM_TMM_GPP	96+#define EM_NS32K	97+#define EM_TPC		98+#define EM_SNP1K	99+#define EM_ST200	100+#define EM_IP2K		101+#define EM_MAX		102+#define EM_CR		103+#define EM_F2MC16	104+#define EM_MSP430	105+#define EM_BLACKFIN	106+#define EM_SE_C33	107+#define EM_SEP		108+#define EM_ARCA		109+#define EM_UNICORE	110+#define EM_EXCESS	111+#define EM_DXP		112+#define EM_ALTERA_NIOS2 113+#define EM_CRX		114+#define EM_XGATE	115+#define EM_C166		116+#define EM_M16C		117+#define EM_DSPIC30F	118+#define EM_CE		119+#define EM_M32C		120+#define EM_TSK3000	131+#define EM_RS08		132+#define EM_SHARC	133+#define EM_ECOG2	134+#define EM_SCORE7	135+#define EM_DSP24	136+#define EM_VIDEOCORE3	137+#define EM_LATTICEMICO32 138+#define EM_SE_C17	139+#define EM_TI_C6000	140+#define EM_TI_C2000	141+#define EM_TI_C5500	142+#define EM_TI_ARP32	143+#define EM_TI_PRU	144+#define EM_MMDSP_PLUS	160+#define EM_CYPRESS_M8C	161+#define EM_R32C		162+#define EM_TRIMEDIA	163+#define EM_QDSP6	164+#define EM_8051		165+#define EM_STXP7X	166+#define EM_NDS32	167+#define EM_ECOG1X	168+#define EM_MAXQ30	169+#define EM_XIMO16	170+#define EM_MANIK	171+#define EM_CRAYNV2	172+#define EM_RX		173+#define EM_METAG	174+#define EM_MCST_ELBRUS	175+#define EM_ECOG16	176+#define EM_CR16		177+#define EM_ETPU		178+#define EM_SLE9X	179+#define EM_L10M		180+#define EM_K10M		181+#define EM_AARCH64	183+#define EM_AVR32	185+#define EM_STM8		186+#define EM_TILE64	187+#define EM_TILEPRO	188+#define EM_MICROBLAZE	189+#define EM_CUDA		190+#define EM_TILEGX	191+#define EM_CLOUDSHIELD	192+#define EM_COREA_1ST	193+#define EM_COREA_2ND	194+#define EM_ARC_COMPACT2	195+#define EM_OPEN8	196+#define EM_RL78		197+#define EM_VIDEOCORE5	198+#define EM_78KOR	199+#define EM_56800EX	200+#define EM_BA1		201+#define EM_BA2		202+#define EM_XCORE	203+#define EM_MCHP_PIC	204+#define EM_KM32		210+#define EM_KMX32	211+#define EM_EMX16	212+#define EM_EMX8		213+#define EM_KVARC	214+#define EM_CDP		215+#define EM_COGE		216+#define EM_COOL		217+#define EM_NORC		218+#define EM_CSR_KALIMBA	219+#define EM_Z80		220+#define EM_VISIUM	221+#define EM_FT32		222+#define EM_MOXIE	223+#define EM_AMDGPU	224+#define EM_RISCV	243+#define EM_BPF		247+#define EM_CSKY		252+#define EM_LOONGARCH	258+#define EM_NUM		259++#define EM_ALPHA	0x9026++#define EV_NONE		0+#define EV_CURRENT	1+#define EV_NUM		2++typedef struct {+  Elf32_Word	sh_name;+  Elf32_Word	sh_type;+  Elf32_Word	sh_flags;+  Elf32_Addr	sh_addr;+  Elf32_Off	sh_offset;+  Elf32_Word	sh_size;+  Elf32_Word	sh_link;+  Elf32_Word	sh_info;+  Elf32_Word	sh_addralign;+  Elf32_Word	sh_entsize;+} Elf32_Shdr;++typedef struct {+  Elf64_Word	sh_name;+  Elf64_Word	sh_type;+  Elf64_Xword	sh_flags;+  Elf64_Addr	sh_addr;+  Elf64_Off	sh_offset;+  Elf64_Xword	sh_size;+  Elf64_Word	sh_link;+  Elf64_Word	sh_info;+  Elf64_Xword	sh_addralign;+  Elf64_Xword	sh_entsize;+} Elf64_Shdr;++++#define SHN_UNDEF	0+#define SHN_LORESERVE	0xff00+#define SHN_LOPROC	0xff00+#define SHN_BEFORE	0xff00++#define SHN_AFTER	0xff01++#define SHN_HIPROC	0xff1f+#define SHN_LOOS	0xff20+#define SHN_HIOS	0xff3f+#define SHN_ABS		0xfff1+#define SHN_COMMON	0xfff2+#define SHN_XINDEX	0xffff+#define SHN_HIRESERVE	0xffff++++#define SHT_NULL	  0+#define SHT_PROGBITS	  1+#define SHT_SYMTAB	  2+#define SHT_STRTAB	  3+#define SHT_RELA	  4+#define SHT_HASH	  5+#define SHT_DYNAMIC	  6+#define SHT_NOTE	  7+#define SHT_NOBITS	  8+#define SHT_REL		  9+#define SHT_SHLIB	  10+#define SHT_DYNSYM	  11+#define SHT_INIT_ARRAY	  14+#define SHT_FINI_ARRAY	  15+#define SHT_PREINIT_ARRAY 16+#define SHT_GROUP	  17+#define SHT_SYMTAB_SHNDX  18+#define SHT_RELR	  19+#define	SHT_NUM		  20+#define SHT_LOOS	  0x60000000+#define SHT_GNU_ATTRIBUTES 0x6ffffff5+#define SHT_GNU_HASH	  0x6ffffff6+#define SHT_GNU_LIBLIST	  0x6ffffff7+#define SHT_CHECKSUM	  0x6ffffff8+#define SHT_LOSUNW	  0x6ffffffa+#define SHT_SUNW_move	  0x6ffffffa+#define SHT_SUNW_COMDAT   0x6ffffffb+#define SHT_SUNW_syminfo  0x6ffffffc+#define SHT_GNU_verdef	  0x6ffffffd+#define SHT_GNU_verneed	  0x6ffffffe+#define SHT_GNU_versym	  0x6fffffff+#define SHT_HISUNW	  0x6fffffff+#define SHT_HIOS	  0x6fffffff+#define SHT_LOPROC	  0x70000000+#define SHT_HIPROC	  0x7fffffff+#define SHT_LOUSER	  0x80000000+#define SHT_HIUSER	  0x8fffffff++#define SHF_WRITE	     (1 << 0)+#define SHF_ALLOC	     (1 << 1)+#define SHF_EXECINSTR	     (1 << 2)+#define SHF_MERGE	     (1 << 4)+#define SHF_STRINGS	     (1 << 5)+#define SHF_INFO_LINK	     (1 << 6)+#define SHF_LINK_ORDER	     (1 << 7)+#define SHF_OS_NONCONFORMING (1 << 8)++#define SHF_GROUP	     (1 << 9)+#define SHF_TLS		     (1 << 10)+#define SHF_COMPRESSED	     (1 << 11)+#define SHF_MASKOS	     0x0ff00000+#define SHF_MASKPROC	     0xf0000000+#define SHF_ORDERED	     (1 << 30)+#define SHF_EXCLUDE	     (1U << 31)++typedef struct {+  Elf32_Word	ch_type;+  Elf32_Word	ch_size;+  Elf32_Word	ch_addralign;+} Elf32_Chdr;++typedef struct {+  Elf64_Word	ch_type;+  Elf64_Word	ch_reserved;+  Elf64_Xword	ch_size;+  Elf64_Xword	ch_addralign;+} Elf64_Chdr;++#define ELFCOMPRESS_ZLIB	1+#define ELFCOMPRESS_ZSTD	2+#define ELFCOMPRESS_LOOS	0x60000000+#define ELFCOMPRESS_HIOS	0x6fffffff+#define ELFCOMPRESS_LOPROC	0x70000000+#define ELFCOMPRESS_HIPROC	0x7fffffff+++#define GRP_COMDAT	0x1++typedef struct {+  Elf32_Word	st_name;+  Elf32_Addr	st_value;+  Elf32_Word	st_size;+  unsigned char	st_info;+  unsigned char	st_other;+  Elf32_Section	st_shndx;+} Elf32_Sym;++typedef struct {+  Elf64_Word	st_name;+  unsigned char	st_info;+  unsigned char st_other;+  Elf64_Section	st_shndx;+  Elf64_Addr	st_value;+  Elf64_Xword	st_size;+} Elf64_Sym;++typedef struct {+  Elf32_Half si_boundto;+  Elf32_Half si_flags;+} Elf32_Syminfo;++typedef struct {+  Elf64_Half si_boundto;+  Elf64_Half si_flags;+} Elf64_Syminfo;++#define SYMINFO_BT_SELF		0xffff+#define SYMINFO_BT_PARENT	0xfffe+#define SYMINFO_BT_LOWRESERVE	0xff00++#define SYMINFO_FLG_DIRECT	0x0001+#define SYMINFO_FLG_PASSTHRU	0x0002+#define SYMINFO_FLG_COPY	0x0004+#define SYMINFO_FLG_LAZYLOAD	0x0008++#define SYMINFO_NONE		0+#define SYMINFO_CURRENT		1+#define SYMINFO_NUM		2++#define ELF32_ST_BIND(val)		(((unsigned char) (val)) >> 4)+#define ELF32_ST_TYPE(val)		((val) & 0xf)+#define ELF32_ST_INFO(bind, type)	(((bind) << 4) + ((type) & 0xf))++#define ELF64_ST_BIND(val)		ELF32_ST_BIND (val)+#define ELF64_ST_TYPE(val)		ELF32_ST_TYPE (val)+#define ELF64_ST_INFO(bind, type)	ELF32_ST_INFO ((bind), (type))++#define STB_LOCAL	0+#define STB_GLOBAL	1+#define STB_WEAK	2+#define	STB_NUM		3+#define STB_LOOS	10+#define STB_GNU_UNIQUE	10+#define STB_HIOS	12+#define STB_LOPROC	13+#define STB_HIPROC	15++#define STT_NOTYPE	0+#define STT_OBJECT	1+#define STT_FUNC	2+#define STT_SECTION	3+#define STT_FILE	4+#define STT_COMMON	5+#define STT_TLS		6+#define	STT_NUM		7+#define STT_LOOS	10+#define STT_GNU_IFUNC	10+#define STT_HIOS	12+#define STT_LOPROC	13+#define STT_HIPROC	15++#define STN_UNDEF	0++#define ELF32_ST_VISIBILITY(o)	((o) & 0x03)+#define ELF64_ST_VISIBILITY(o)	ELF32_ST_VISIBILITY (o)++#define STV_DEFAULT	0+#define STV_INTERNAL	1+#define STV_HIDDEN	2+#define STV_PROTECTED	3+++++typedef struct {+  Elf32_Addr	r_offset;+  Elf32_Word	r_info;+} Elf32_Rel;++typedef struct {+  Elf64_Addr	r_offset;+  Elf64_Xword	r_info;+} Elf64_Rel;++++typedef struct {+  Elf32_Addr	r_offset;+  Elf32_Word	r_info;+  Elf32_Sword	r_addend;+} Elf32_Rela;++typedef struct {+  Elf64_Addr	r_offset;+  Elf64_Xword	r_info;+  Elf64_Sxword	r_addend;+} Elf64_Rela;++++typedef Elf32_Word Elf32_Relr;+typedef Elf64_Xword Elf64_Relr;++++#define ELF32_R_SYM(val)		((val) >> 8)+#define ELF32_R_TYPE(val)		((val) & 0xff)+#define ELF32_R_INFO(sym, type)		(((sym) << 8) + ((type) & 0xff))++#define ELF64_R_SYM(i)			((i) >> 32)+#define ELF64_R_TYPE(i)			((i) & 0xffffffff)+#define ELF64_R_INFO(sym,type)		((((Elf64_Xword) (sym)) << 32) + (type))++++typedef struct {+  Elf32_Word	p_type;+  Elf32_Off	p_offset;+  Elf32_Addr	p_vaddr;+  Elf32_Addr	p_paddr;+  Elf32_Word	p_filesz;+  Elf32_Word	p_memsz;+  Elf32_Word	p_flags;+  Elf32_Word	p_align;+} Elf32_Phdr;++typedef struct {+  Elf64_Word	p_type;+  Elf64_Word	p_flags;+  Elf64_Off	p_offset;+  Elf64_Addr	p_vaddr;+  Elf64_Addr	p_paddr;+  Elf64_Xword	p_filesz;+  Elf64_Xword	p_memsz;+  Elf64_Xword	p_align;+} Elf64_Phdr;++++#define	PT_NULL		0+#define PT_LOAD		1+#define PT_DYNAMIC	2+#define PT_INTERP	3+#define PT_NOTE		4+#define PT_SHLIB	5+#define PT_PHDR		6+#define PT_TLS		7+#define	PT_NUM		8+#define PT_LOOS		0x60000000+#define PT_GNU_EH_FRAME	0x6474e550+#define PT_GNU_STACK	0x6474e551+#define PT_GNU_RELRO	0x6474e552+#define PT_GNU_PROPERTY	0x6474e553+#define PT_LOSUNW	0x6ffffffa+#define PT_SUNWBSS	0x6ffffffa+#define PT_SUNWSTACK	0x6ffffffb+#define PT_HISUNW	0x6fffffff+#define PT_HIOS		0x6fffffff+#define PT_LOPROC	0x70000000+#define PT_HIPROC	0x7fffffff+++#define PN_XNUM 0xffff+++#define PF_X		(1 << 0)+#define PF_W		(1 << 1)+#define PF_R		(1 << 2)+#define PF_MASKOS	0x0ff00000+#define PF_MASKPROC	0xf0000000++++#define NT_PRSTATUS	1+#define NT_PRFPREG	2+#define NT_FPREGSET	2+#define NT_PRPSINFO	3+#define NT_PRXREG	4+#define NT_TASKSTRUCT	4+#define NT_PLATFORM	5+#define NT_AUXV		6+#define NT_GWINDOWS	7+#define NT_ASRS		8+#define NT_PSTATUS	10+#define NT_PSINFO	13+#define NT_PRCRED	14+#define NT_UTSNAME	15+#define NT_LWPSTATUS	16+#define NT_LWPSINFO	17+#define NT_PRFPXREG	20+#define NT_SIGINFO	0x53494749+#define NT_FILE		0x46494c45+#define NT_PRXFPREG	0x46e62b7f+#define NT_PPC_VMX	0x100+#define NT_PPC_SPE	0x101+#define NT_PPC_VSX	0x102+#define NT_PPC_TAR	0x103+#define NT_PPC_PPR	0x104+#define NT_PPC_DSCR	0x105+#define NT_PPC_EBB	0x106+#define NT_PPC_PMU	0x107+#define NT_PPC_TM_CGPR	0x108+#define NT_PPC_TM_CFPR	0x109+#define NT_PPC_TM_CVMX	0x10a+#define NT_PPC_TM_CVSX	0x10b+#define NT_PPC_TM_SPR	0x10c+#define NT_PPC_TM_CTAR	0x10d+#define NT_PPC_TM_CPPR	0x10e+#define NT_PPC_TM_CDSCR	0x10f+#define NT_386_TLS	0x200+#define NT_386_IOPERM	0x201+#define NT_X86_XSTATE	0x202+#define NT_S390_HIGH_GPRS	0x300+#define NT_S390_TIMER	0x301+#define NT_S390_TODCMP	0x302+#define NT_S390_TODPREG	0x303+#define NT_S390_CTRS	0x304+#define NT_S390_PREFIX	0x305+#define NT_S390_LAST_BREAK	0x306+#define NT_S390_SYSTEM_CALL	0x307+#define NT_S390_TDB	0x308+#define NT_S390_VXRS_LOW	0x309+#define NT_S390_VXRS_HIGH	0x30a+#define NT_S390_GS_CB	0x30b+#define NT_S390_GS_BC	0x30c+#define NT_S390_RI_CB	0x30d+#define NT_ARM_VFP	0x400+#define NT_ARM_TLS	0x401+#define NT_ARM_HW_BREAK	0x402+#define NT_ARM_HW_WATCH	0x403+#define NT_ARM_SYSTEM_CALL	0x404+#define NT_ARM_SVE	0x405+#define NT_ARM_PAC_MASK	0x406+#define NT_ARM_PACA_KEYS	0x407+#define NT_ARM_PACG_KEYS	0x408+#define NT_ARM_TAGGED_ADDR_CTRL	0x409+#define NT_ARM_PAC_ENABLED_KEYS	0x40a+#define NT_METAG_CBUF	0x500+#define NT_METAG_RPIPE	0x501+#define NT_METAG_TLS	0x502+#define NT_ARC_V2	0x600+#define NT_VMCOREDD	0x700+#define NT_MIPS_DSP	0x800+#define NT_MIPS_FP_MODE	0x801+#define NT_MIPS_MSA	0x802+#define NT_RISCV_CSR	0x900+#define NT_RISCV_VECTOR	0x901+#define NT_VERSION	1+#define NT_LOONGARCH_CPUCFG	0xa00+#define NT_LOONGARCH_CSR	0xa01+#define NT_LOONGARCH_LSX	0xa02+#define NT_LOONGARCH_LASX	0xa03+#define NT_LOONGARCH_LBT	0xa04+++++typedef struct {+  Elf32_Sword d_tag;+  union {+      Elf32_Word d_val;+      Elf32_Addr d_ptr;+  } d_un;+} Elf32_Dyn;++typedef struct {+  Elf64_Sxword d_tag;+  union {+      Elf64_Xword d_val;+      Elf64_Addr d_ptr;+  } d_un;+} Elf64_Dyn;++++#define DT_NULL		0+#define DT_NEEDED	1+#define DT_PLTRELSZ	2+#define DT_PLTGOT	3+#define DT_HASH		4+#define DT_STRTAB	5+#define DT_SYMTAB	6+#define DT_RELA		7+#define DT_RELASZ	8+#define DT_RELAENT	9+#define DT_STRSZ	10+#define DT_SYMENT	11+#define DT_INIT		12+#define DT_FINI		13+#define DT_SONAME	14+#define DT_RPATH	15+#define DT_SYMBOLIC	16+#define DT_REL		17+#define DT_RELSZ	18+#define DT_RELENT	19+#define DT_PLTREL	20+#define DT_DEBUG	21+#define DT_TEXTREL	22+#define DT_JMPREL	23+#define	DT_BIND_NOW	24+#define	DT_INIT_ARRAY	25+#define	DT_FINI_ARRAY	26+#define	DT_INIT_ARRAYSZ	27+#define	DT_FINI_ARRAYSZ	28+#define DT_RUNPATH	29+#define DT_FLAGS	30+#define DT_ENCODING	32+#define DT_PREINIT_ARRAY 32+#define DT_PREINIT_ARRAYSZ 33+#define DT_SYMTAB_SHNDX	34+#define DT_RELRSZ	35+#define DT_RELR		36+#define DT_RELRENT	37+#define	DT_NUM		38+#define DT_LOOS		0x6000000d+#define DT_HIOS		0x6ffff000+#define DT_LOPROC	0x70000000+#define DT_HIPROC	0x7fffffff+#define	DT_PROCNUM	DT_MIPS_NUM++#define DT_VALRNGLO	0x6ffffd00+#define DT_GNU_PRELINKED 0x6ffffdf5+#define DT_GNU_CONFLICTSZ 0x6ffffdf6+#define DT_GNU_LIBLISTSZ 0x6ffffdf7+#define DT_CHECKSUM	0x6ffffdf8+#define DT_PLTPADSZ	0x6ffffdf9+#define DT_MOVEENT	0x6ffffdfa+#define DT_MOVESZ	0x6ffffdfb+#define DT_FEATURE_1	0x6ffffdfc+#define DT_POSFLAG_1	0x6ffffdfd++#define DT_SYMINSZ	0x6ffffdfe+#define DT_SYMINENT	0x6ffffdff+#define DT_VALRNGHI	0x6ffffdff+#define DT_VALTAGIDX(tag)	(DT_VALRNGHI - (tag))+#define DT_VALNUM 12++#define DT_ADDRRNGLO	0x6ffffe00+#define DT_GNU_HASH	0x6ffffef5+#define DT_TLSDESC_PLT	0x6ffffef6+#define DT_TLSDESC_GOT	0x6ffffef7+#define DT_GNU_CONFLICT	0x6ffffef8+#define DT_GNU_LIBLIST	0x6ffffef9+#define DT_CONFIG	0x6ffffefa+#define DT_DEPAUDIT	0x6ffffefb+#define DT_AUDIT	0x6ffffefc+#define	DT_PLTPAD	0x6ffffefd+#define	DT_MOVETAB	0x6ffffefe+#define DT_SYMINFO	0x6ffffeff+#define DT_ADDRRNGHI	0x6ffffeff+#define DT_ADDRTAGIDX(tag)	(DT_ADDRRNGHI - (tag))+#define DT_ADDRNUM 11++++#define DT_VERSYM	0x6ffffff0++#define DT_RELACOUNT	0x6ffffff9+#define DT_RELCOUNT	0x6ffffffa+++#define DT_FLAGS_1	0x6ffffffb+#define	DT_VERDEF	0x6ffffffc++#define	DT_VERDEFNUM	0x6ffffffd+#define	DT_VERNEED	0x6ffffffe++#define	DT_VERNEEDNUM	0x6fffffff+#define DT_VERSIONTAGIDX(tag)	(DT_VERNEEDNUM - (tag))+#define DT_VERSIONTAGNUM 16++++#define DT_AUXILIARY    0x7ffffffd+#define DT_FILTER       0x7fffffff+#define DT_EXTRATAGIDX(tag)	((Elf32_Word)-((Elf32_Sword) (tag) <<1>>1)-1)+#define DT_EXTRANUM	3+++#define DF_ORIGIN	0x00000001+#define DF_SYMBOLIC	0x00000002+#define DF_TEXTREL	0x00000004+#define DF_BIND_NOW	0x00000008+#define DF_STATIC_TLS	0x00000010++++#define DF_1_NOW	0x00000001+#define DF_1_GLOBAL	0x00000002+#define DF_1_GROUP	0x00000004+#define DF_1_NODELETE	0x00000008+#define DF_1_LOADFLTR	0x00000010+#define DF_1_INITFIRST	0x00000020+#define DF_1_NOOPEN	0x00000040+#define DF_1_ORIGIN	0x00000080+#define DF_1_DIRECT	0x00000100+#define DF_1_TRANS	0x00000200+#define DF_1_INTERPOSE	0x00000400+#define DF_1_NODEFLIB	0x00000800+#define DF_1_NODUMP	0x00001000+#define DF_1_CONFALT	0x00002000+#define DF_1_ENDFILTEE	0x00004000+#define	DF_1_DISPRELDNE	0x00008000+#define	DF_1_DISPRELPND	0x00010000+#define	DF_1_NODIRECT	0x00020000+#define	DF_1_IGNMULDEF	0x00040000+#define	DF_1_NOKSYMS	0x00080000+#define	DF_1_NOHDR	0x00100000+#define	DF_1_EDITED	0x00200000+#define	DF_1_NORELOC	0x00400000+#define	DF_1_SYMINTPOSE	0x00800000+#define	DF_1_GLOBAUDIT	0x01000000+#define	DF_1_SINGLETON	0x02000000+#define	DF_1_STUB	0x04000000+#define	DF_1_PIE	0x08000000++#define DTF_1_PARINIT	0x00000001+#define DTF_1_CONFEXP	0x00000002+++#define DF_P1_LAZYLOAD	0x00000001+#define DF_P1_GROUPPERM	0x00000002+++++typedef struct {+  Elf32_Half	vd_version;+  Elf32_Half	vd_flags;+  Elf32_Half	vd_ndx;+  Elf32_Half	vd_cnt;+  Elf32_Word	vd_hash;+  Elf32_Word	vd_aux;+  Elf32_Word	vd_next;+} Elf32_Verdef;++typedef struct {+  Elf64_Half	vd_version;+  Elf64_Half	vd_flags;+  Elf64_Half	vd_ndx;+  Elf64_Half	vd_cnt;+  Elf64_Word	vd_hash;+  Elf64_Word	vd_aux;+  Elf64_Word	vd_next;+} Elf64_Verdef;++++#define VER_DEF_NONE	0+#define VER_DEF_CURRENT	1+#define VER_DEF_NUM	2+++#define VER_FLG_BASE	0x1+#define VER_FLG_WEAK	0x2+++#define	VER_NDX_LOCAL		0+#define	VER_NDX_GLOBAL		1+#define	VER_NDX_LORESERVE	0xff00+#define	VER_NDX_ELIMINATE	0xff01++++typedef struct {+  Elf32_Word	vda_name;+  Elf32_Word	vda_next;+} Elf32_Verdaux;++typedef struct {+  Elf64_Word	vda_name;+  Elf64_Word	vda_next;+} Elf64_Verdaux;+++++typedef struct {+  Elf32_Half	vn_version;+  Elf32_Half	vn_cnt;+  Elf32_Word	vn_file;+  Elf32_Word	vn_aux;+  Elf32_Word	vn_next;+} Elf32_Verneed;++typedef struct {+  Elf64_Half	vn_version;+  Elf64_Half	vn_cnt;+  Elf64_Word	vn_file;+  Elf64_Word	vn_aux;+  Elf64_Word	vn_next;+} Elf64_Verneed;++++#define VER_NEED_NONE	 0+#define VER_NEED_CURRENT 1+#define VER_NEED_NUM	 2++++typedef struct {+  Elf32_Word	vna_hash;+  Elf32_Half	vna_flags;+  Elf32_Half	vna_other;+  Elf32_Word	vna_name;+  Elf32_Word	vna_next;+} Elf32_Vernaux;++typedef struct {+  Elf64_Word	vna_hash;+  Elf64_Half	vna_flags;+  Elf64_Half	vna_other;+  Elf64_Word	vna_name;+  Elf64_Word	vna_next;+} Elf64_Vernaux;++++#define VER_FLG_WEAK	0x2++++typedef struct {+  uint32_t a_type;+  union {+      uint32_t a_val;+  } a_un;+} Elf32_auxv_t;++typedef struct {+  uint64_t a_type;+  union {+      uint64_t a_val;+  } a_un;+} Elf64_auxv_t;++++#define AT_NULL		0+#define AT_IGNORE	1+#define AT_EXECFD	2+#define AT_PHDR		3+#define AT_PHENT	4+#define AT_PHNUM	5+#define AT_PAGESZ	6+#define AT_BASE		7+#define AT_FLAGS	8+#define AT_ENTRY	9+#define AT_NOTELF	10+#define AT_UID		11+#define AT_EUID		12+#define AT_GID		13+#define AT_EGID		14+#define AT_CLKTCK	17+++#define AT_PLATFORM	15+#define AT_HWCAP	16+++++#define AT_FPUCW	18+++#define AT_DCACHEBSIZE	19+#define AT_ICACHEBSIZE	20+#define AT_UCACHEBSIZE	21++++#define AT_IGNOREPPC	22++#define	AT_SECURE	23++#define AT_BASE_PLATFORM 24++#define AT_RANDOM	25++#define AT_HWCAP2	26++#define AT_EXECFN	31++++#define AT_SYSINFO	32+#define AT_SYSINFO_EHDR	33++++#define AT_L1I_CACHESHAPE	34+#define AT_L1D_CACHESHAPE	35+#define AT_L2_CACHESHAPE	36+#define AT_L3_CACHESHAPE	37++#define AT_L1I_CACHESIZE	40+#define AT_L1I_CACHEGEOMETRY	41+#define AT_L1D_CACHESIZE	42+#define AT_L1D_CACHEGEOMETRY	43+#define AT_L2_CACHESIZE		44+#define AT_L2_CACHEGEOMETRY	45+#define AT_L3_CACHESIZE		46+#define AT_L3_CACHEGEOMETRY	47++#define AT_MINSIGSTKSZ		51+++typedef struct {+  Elf32_Word n_namesz;+  Elf32_Word n_descsz;+  Elf32_Word n_type;+} Elf32_Nhdr;++typedef struct {+  Elf64_Word n_namesz;+  Elf64_Word n_descsz;+  Elf64_Word n_type;+} Elf64_Nhdr;+++++#define ELF_NOTE_SOLARIS	"SUNW Solaris"+++#define ELF_NOTE_GNU		"GNU"++++++#define ELF_NOTE_PAGESIZE_HINT	1+++#define NT_GNU_ABI_TAG	1+#define ELF_NOTE_ABI	NT_GNU_ABI_TAG++++#define ELF_NOTE_OS_LINUX	0+#define ELF_NOTE_OS_GNU		1+#define ELF_NOTE_OS_SOLARIS2	2+#define ELF_NOTE_OS_FREEBSD	3++#define NT_GNU_BUILD_ID	3+#define NT_GNU_GOLD_VERSION	4+#define NT_GNU_PROPERTY_TYPE_0	5++++typedef struct {+  Elf32_Xword m_value;+  Elf32_Word m_info;+  Elf32_Word m_poffset;+  Elf32_Half m_repeat;+  Elf32_Half m_stride;+} Elf32_Move;++typedef struct {+  Elf64_Xword m_value;+  Elf64_Xword m_info;+  Elf64_Xword m_poffset;+  Elf64_Half m_repeat;+  Elf64_Half m_stride;+} Elf64_Move;+++#define ELF32_M_SYM(info)	((info) >> 8)+#define ELF32_M_SIZE(info)	((unsigned char) (info))+#define ELF32_M_INFO(sym, size)	(((sym) << 8) + (unsigned char) (size))++#define ELF64_M_SYM(info)	ELF32_M_SYM (info)+#define ELF64_M_SIZE(info)	ELF32_M_SIZE (info)+#define ELF64_M_INFO(sym, size)	ELF32_M_INFO (sym, size)++#define EF_CPU32	0x00810000++#define R_68K_NONE	0+#define R_68K_32	1+#define R_68K_16	2+#define R_68K_8		3+#define R_68K_PC32	4+#define R_68K_PC16	5+#define R_68K_PC8	6+#define R_68K_GOT32	7+#define R_68K_GOT16	8+#define R_68K_GOT8	9+#define R_68K_GOT32O	10+#define R_68K_GOT16O	11+#define R_68K_GOT8O	12+#define R_68K_PLT32	13+#define R_68K_PLT16	14+#define R_68K_PLT8	15+#define R_68K_PLT32O	16+#define R_68K_PLT16O	17+#define R_68K_PLT8O	18+#define R_68K_COPY	19+#define R_68K_GLOB_DAT	20+#define R_68K_JMP_SLOT	21+#define R_68K_RELATIVE	22+#define R_68K_TLS_GD32	25+#define R_68K_TLS_GD16	26+#define R_68K_TLS_GD8	27+#define R_68K_TLS_LDM32	28+#define R_68K_TLS_LDM16	29+#define R_68K_TLS_LDM8	30+#define R_68K_TLS_LDO32	31+#define R_68K_TLS_LDO16	32+#define R_68K_TLS_LDO8	33+#define R_68K_TLS_IE32	34+#define R_68K_TLS_IE16	35+#define R_68K_TLS_IE8	36+#define R_68K_TLS_LE32	37+#define R_68K_TLS_LE16	38+#define R_68K_TLS_LE8	39+#define R_68K_TLS_DTPMOD32	40+#define R_68K_TLS_DTPREL32	41+#define R_68K_TLS_TPREL32	42+#define R_68K_NUM	43++#define R_386_NONE	   0+#define R_386_32	   1+#define R_386_PC32	   2+#define R_386_GOT32	   3+#define R_386_PLT32	   4+#define R_386_COPY	   5+#define R_386_GLOB_DAT	   6+#define R_386_JMP_SLOT	   7+#define R_386_RELATIVE	   8+#define R_386_GOTOFF	   9+#define R_386_GOTPC	   10+#define R_386_32PLT	   11+#define R_386_TLS_TPOFF	   14+#define R_386_TLS_IE	   15+#define R_386_TLS_GOTIE	   16+#define R_386_TLS_LE	   17+#define R_386_TLS_GD	   18+#define R_386_TLS_LDM	   19+#define R_386_16	   20+#define R_386_PC16	   21+#define R_386_8		   22+#define R_386_PC8	   23+#define R_386_TLS_GD_32	   24+#define R_386_TLS_GD_PUSH  25+#define R_386_TLS_GD_CALL  26+#define R_386_TLS_GD_POP   27+#define R_386_TLS_LDM_32   28+#define R_386_TLS_LDM_PUSH 29+#define R_386_TLS_LDM_CALL 30+#define R_386_TLS_LDM_POP  31+#define R_386_TLS_LDO_32   32+#define R_386_TLS_IE_32	   33+#define R_386_TLS_LE_32	   34+#define R_386_TLS_DTPMOD32 35+#define R_386_TLS_DTPOFF32 36+#define R_386_TLS_TPOFF32  37+#define R_386_SIZE32       38+#define R_386_TLS_GOTDESC  39+#define R_386_TLS_DESC_CALL 40+#define R_386_TLS_DESC     41+#define R_386_IRELATIVE	   42+#define R_386_GOT32X	   43+#define R_386_NUM	   44++++++#define STT_SPARC_REGISTER	13++++#define EF_SPARCV9_MM		3+#define EF_SPARCV9_TSO		0+#define EF_SPARCV9_PSO		1+#define EF_SPARCV9_RMO		2+#define EF_SPARC_LEDATA		0x800000+#define EF_SPARC_EXT_MASK	0xFFFF00+#define EF_SPARC_32PLUS		0x000100+#define EF_SPARC_SUN_US1	0x000200+#define EF_SPARC_HAL_R1		0x000400+#define EF_SPARC_SUN_US3	0x000800++++#define R_SPARC_NONE		0+#define R_SPARC_8		1+#define R_SPARC_16		2+#define R_SPARC_32		3+#define R_SPARC_DISP8		4+#define R_SPARC_DISP16		5+#define R_SPARC_DISP32		6+#define R_SPARC_WDISP30		7+#define R_SPARC_WDISP22		8+#define R_SPARC_HI22		9+#define R_SPARC_22		10+#define R_SPARC_13		11+#define R_SPARC_LO10		12+#define R_SPARC_GOT10		13+#define R_SPARC_GOT13		14+#define R_SPARC_GOT22		15+#define R_SPARC_PC10		16+#define R_SPARC_PC22		17+#define R_SPARC_WPLT30		18+#define R_SPARC_COPY		19+#define R_SPARC_GLOB_DAT	20+#define R_SPARC_JMP_SLOT	21+#define R_SPARC_RELATIVE	22+#define R_SPARC_UA32		23++++#define R_SPARC_PLT32		24+#define R_SPARC_HIPLT22		25+#define R_SPARC_LOPLT10		26+#define R_SPARC_PCPLT32		27+#define R_SPARC_PCPLT22		28+#define R_SPARC_PCPLT10		29+#define R_SPARC_10		30+#define R_SPARC_11		31+#define R_SPARC_64		32+#define R_SPARC_OLO10		33+#define R_SPARC_HH22		34+#define R_SPARC_HM10		35+#define R_SPARC_LM22		36+#define R_SPARC_PC_HH22		37+#define R_SPARC_PC_HM10		38+#define R_SPARC_PC_LM22		39+#define R_SPARC_WDISP16		40+#define R_SPARC_WDISP19		41+#define R_SPARC_GLOB_JMP	42+#define R_SPARC_7		43+#define R_SPARC_5		44+#define R_SPARC_6		45+#define R_SPARC_DISP64		46+#define R_SPARC_PLT64		47+#define R_SPARC_HIX22		48+#define R_SPARC_LOX10		49+#define R_SPARC_H44		50+#define R_SPARC_M44		51+#define R_SPARC_L44		52+#define R_SPARC_REGISTER	53+#define R_SPARC_UA64		54+#define R_SPARC_UA16		55+#define R_SPARC_TLS_GD_HI22	56+#define R_SPARC_TLS_GD_LO10	57+#define R_SPARC_TLS_GD_ADD	58+#define R_SPARC_TLS_GD_CALL	59+#define R_SPARC_TLS_LDM_HI22	60+#define R_SPARC_TLS_LDM_LO10	61+#define R_SPARC_TLS_LDM_ADD	62+#define R_SPARC_TLS_LDM_CALL	63+#define R_SPARC_TLS_LDO_HIX22	64+#define R_SPARC_TLS_LDO_LOX10	65+#define R_SPARC_TLS_LDO_ADD	66+#define R_SPARC_TLS_IE_HI22	67+#define R_SPARC_TLS_IE_LO10	68+#define R_SPARC_TLS_IE_LD	69+#define R_SPARC_TLS_IE_LDX	70+#define R_SPARC_TLS_IE_ADD	71+#define R_SPARC_TLS_LE_HIX22	72+#define R_SPARC_TLS_LE_LOX10	73+#define R_SPARC_TLS_DTPMOD32	74+#define R_SPARC_TLS_DTPMOD64	75+#define R_SPARC_TLS_DTPOFF32	76+#define R_SPARC_TLS_DTPOFF64	77+#define R_SPARC_TLS_TPOFF32	78+#define R_SPARC_TLS_TPOFF64	79+#define R_SPARC_GOTDATA_HIX22	80+#define R_SPARC_GOTDATA_LOX10	81+#define R_SPARC_GOTDATA_OP_HIX22	82+#define R_SPARC_GOTDATA_OP_LOX10	83+#define R_SPARC_GOTDATA_OP	84+#define R_SPARC_H34		85+#define R_SPARC_SIZE32		86+#define R_SPARC_SIZE64		87+#define R_SPARC_GNU_VTINHERIT	250+#define R_SPARC_GNU_VTENTRY	251+#define R_SPARC_REV32		252++#define R_SPARC_NUM		253++++#define DT_SPARC_REGISTER 0x70000001+#define DT_SPARC_NUM	2+++#define EF_MIPS_NOREORDER   1+#define EF_MIPS_PIC	    2+#define EF_MIPS_CPIC	    4+#define EF_MIPS_XGOT	    8+#define EF_MIPS_64BIT_WHIRL 16+#define EF_MIPS_ABI2	    32+#define EF_MIPS_ABI_ON32    64+#define EF_MIPS_FP64	    512+#define EF_MIPS_NAN2008     1024+#define EF_MIPS_ARCH	    0xf0000000++++#define EF_MIPS_ARCH_1	    0x00000000+#define EF_MIPS_ARCH_2	    0x10000000+#define EF_MIPS_ARCH_3	    0x20000000+#define EF_MIPS_ARCH_4	    0x30000000+#define EF_MIPS_ARCH_5	    0x40000000+#define EF_MIPS_ARCH_32     0x50000000+#define EF_MIPS_ARCH_64     0x60000000+#define EF_MIPS_ARCH_32R2   0x70000000+#define EF_MIPS_ARCH_64R2   0x80000000+++#define E_MIPS_ARCH_1	  0x00000000+#define E_MIPS_ARCH_2	  0x10000000+#define E_MIPS_ARCH_3	  0x20000000+#define E_MIPS_ARCH_4	  0x30000000+#define E_MIPS_ARCH_5	  0x40000000+#define E_MIPS_ARCH_32	  0x50000000+#define E_MIPS_ARCH_64	  0x60000000++++#define SHN_MIPS_ACOMMON    0xff00+#define SHN_MIPS_TEXT	    0xff01+#define SHN_MIPS_DATA	    0xff02+#define SHN_MIPS_SCOMMON    0xff03+#define SHN_MIPS_SUNDEFINED 0xff04++++#define SHT_MIPS_LIBLIST       0x70000000+#define SHT_MIPS_MSYM	       0x70000001+#define SHT_MIPS_CONFLICT      0x70000002+#define SHT_MIPS_GPTAB	       0x70000003+#define SHT_MIPS_UCODE	       0x70000004+#define SHT_MIPS_DEBUG	       0x70000005+#define SHT_MIPS_REGINFO       0x70000006+#define SHT_MIPS_PACKAGE       0x70000007+#define SHT_MIPS_PACKSYM       0x70000008+#define SHT_MIPS_RELD	       0x70000009+#define SHT_MIPS_IFACE         0x7000000b+#define SHT_MIPS_CONTENT       0x7000000c+#define SHT_MIPS_OPTIONS       0x7000000d+#define SHT_MIPS_SHDR	       0x70000010+#define SHT_MIPS_FDESC	       0x70000011+#define SHT_MIPS_EXTSYM	       0x70000012+#define SHT_MIPS_DENSE	       0x70000013+#define SHT_MIPS_PDESC	       0x70000014+#define SHT_MIPS_LOCSYM	       0x70000015+#define SHT_MIPS_AUXSYM	       0x70000016+#define SHT_MIPS_OPTSYM	       0x70000017+#define SHT_MIPS_LOCSTR	       0x70000018+#define SHT_MIPS_LINE	       0x70000019+#define SHT_MIPS_RFDESC	       0x7000001a+#define SHT_MIPS_DELTASYM      0x7000001b+#define SHT_MIPS_DELTAINST     0x7000001c+#define SHT_MIPS_DELTACLASS    0x7000001d+#define SHT_MIPS_DWARF         0x7000001e+#define SHT_MIPS_DELTADECL     0x7000001f+#define SHT_MIPS_SYMBOL_LIB    0x70000020+#define SHT_MIPS_EVENTS	       0x70000021+#define SHT_MIPS_TRANSLATE     0x70000022+#define SHT_MIPS_PIXIE	       0x70000023+#define SHT_MIPS_XLATE	       0x70000024+#define SHT_MIPS_XLATE_DEBUG   0x70000025+#define SHT_MIPS_WHIRL	       0x70000026+#define SHT_MIPS_EH_REGION     0x70000027+#define SHT_MIPS_XLATE_OLD     0x70000028+#define SHT_MIPS_PDR_EXCEPTION 0x70000029++++#define SHF_MIPS_GPREL	 0x10000000+#define SHF_MIPS_MERGE	 0x20000000+#define SHF_MIPS_ADDR	 0x40000000+#define SHF_MIPS_STRINGS 0x80000000+#define SHF_MIPS_NOSTRIP 0x08000000+#define SHF_MIPS_LOCAL	 0x04000000+#define SHF_MIPS_NAMES	 0x02000000+#define SHF_MIPS_NODUPE	 0x01000000++++++#define STO_MIPS_DEFAULT		0x0+#define STO_MIPS_INTERNAL		0x1+#define STO_MIPS_HIDDEN			0x2+#define STO_MIPS_PROTECTED		0x3+#define STO_MIPS_PLT			0x8+#define STO_MIPS_SC_ALIGN_UNUSED	0xff+++#define STB_MIPS_SPLIT_COMMON		13++++typedef union {+  struct {+      Elf32_Word gt_current_g_value;+      Elf32_Word gt_unused;+  } gt_header;+  struct {+      Elf32_Word gt_g_value;+      Elf32_Word gt_bytes;+  } gt_entry;+} Elf32_gptab;++++typedef struct {+  Elf32_Word	ri_gprmask;+  Elf32_Word	ri_cprmask[4];+  Elf32_Sword	ri_gp_value;+} Elf32_RegInfo;++++typedef struct {+  unsigned char kind;++  unsigned char size;+  Elf32_Section section;++  Elf32_Word info;+} Elf_Options;++++#define ODK_NULL	0+#define ODK_REGINFO	1+#define ODK_EXCEPTIONS	2+#define ODK_PAD		3+#define ODK_HWPATCH	4+#define ODK_FILL	5+#define ODK_TAGS	6+#define ODK_HWAND	7+#define ODK_HWOR	8++++#define OEX_FPU_MIN	0x1f+#define OEX_FPU_MAX	0x1f00+#define OEX_PAGE0	0x10000+#define OEX_SMM		0x20000+#define OEX_FPDBUG	0x40000+#define OEX_PRECISEFP	OEX_FPDBUG+#define OEX_DISMISS	0x80000++#define OEX_FPU_INVAL	0x10+#define OEX_FPU_DIV0	0x08+#define OEX_FPU_OFLO	0x04+#define OEX_FPU_UFLO	0x02+#define OEX_FPU_INEX	0x01++++#define OHW_R4KEOP	0x1+#define OHW_R8KPFETCH	0x2+#define OHW_R5KEOP	0x4+#define OHW_R5KCVTL	0x8++#define OPAD_PREFIX	0x1+#define OPAD_POSTFIX	0x2+#define OPAD_SYMBOL	0x4++++typedef struct {+  Elf32_Word hwp_flags1;+  Elf32_Word hwp_flags2;+} Elf_Options_Hw;++++#define OHWA0_R4KEOP_CHECKED	0x00000001+#define OHWA1_R4KEOP_CLEAN	0x00000002++++#define R_MIPS_NONE		0+#define R_MIPS_16		1+#define R_MIPS_32		2+#define R_MIPS_REL32		3+#define R_MIPS_26		4+#define R_MIPS_HI16		5+#define R_MIPS_LO16		6+#define R_MIPS_GPREL16		7+#define R_MIPS_LITERAL		8+#define R_MIPS_GOT16		9+#define R_MIPS_PC16		10+#define R_MIPS_CALL16		11+#define R_MIPS_GPREL32		12++#define R_MIPS_SHIFT5		16+#define R_MIPS_SHIFT6		17+#define R_MIPS_64		18+#define R_MIPS_GOT_DISP		19+#define R_MIPS_GOT_PAGE		20+#define R_MIPS_GOT_OFST		21+#define R_MIPS_GOT_HI16		22+#define R_MIPS_GOT_LO16		23+#define R_MIPS_SUB		24+#define R_MIPS_INSERT_A		25+#define R_MIPS_INSERT_B		26+#define R_MIPS_DELETE		27+#define R_MIPS_HIGHER		28+#define R_MIPS_HIGHEST		29+#define R_MIPS_CALL_HI16	30+#define R_MIPS_CALL_LO16	31+#define R_MIPS_SCN_DISP		32+#define R_MIPS_REL16		33+#define R_MIPS_ADD_IMMEDIATE	34+#define R_MIPS_PJUMP		35+#define R_MIPS_RELGOT		36+#define R_MIPS_JALR		37+#define R_MIPS_TLS_DTPMOD32	38+#define R_MIPS_TLS_DTPREL32	39+#define R_MIPS_TLS_DTPMOD64	40+#define R_MIPS_TLS_DTPREL64	41+#define R_MIPS_TLS_GD		42+#define R_MIPS_TLS_LDM		43+#define R_MIPS_TLS_DTPREL_HI16	44+#define R_MIPS_TLS_DTPREL_LO16	45+#define R_MIPS_TLS_GOTTPREL	46+#define R_MIPS_TLS_TPREL32	47+#define R_MIPS_TLS_TPREL64	48+#define R_MIPS_TLS_TPREL_HI16	49+#define R_MIPS_TLS_TPREL_LO16	50+#define R_MIPS_GLOB_DAT		51+#define R_MIPS_COPY		126+#define R_MIPS_JUMP_SLOT        127++#define R_MIPS_NUM		128++++#define PT_MIPS_REGINFO	0x70000000+#define PT_MIPS_RTPROC  0x70000001+#define PT_MIPS_OPTIONS 0x70000002+#define PT_MIPS_ABIFLAGS 0x70000003++++#define PF_MIPS_LOCAL	0x10000000++++#define DT_MIPS_RLD_VERSION  0x70000001+#define DT_MIPS_TIME_STAMP   0x70000002+#define DT_MIPS_ICHECKSUM    0x70000003+#define DT_MIPS_IVERSION     0x70000004+#define DT_MIPS_FLAGS	     0x70000005+#define DT_MIPS_BASE_ADDRESS 0x70000006+#define DT_MIPS_MSYM	     0x70000007+#define DT_MIPS_CONFLICT     0x70000008+#define DT_MIPS_LIBLIST	     0x70000009+#define DT_MIPS_LOCAL_GOTNO  0x7000000a+#define DT_MIPS_CONFLICTNO   0x7000000b+#define DT_MIPS_LIBLISTNO    0x70000010+#define DT_MIPS_SYMTABNO     0x70000011+#define DT_MIPS_UNREFEXTNO   0x70000012+#define DT_MIPS_GOTSYM	     0x70000013+#define DT_MIPS_HIPAGENO     0x70000014+#define DT_MIPS_RLD_MAP	     0x70000016+#define DT_MIPS_DELTA_CLASS  0x70000017+#define DT_MIPS_DELTA_CLASS_NO    0x70000018++#define DT_MIPS_DELTA_INSTANCE    0x70000019+#define DT_MIPS_DELTA_INSTANCE_NO 0x7000001a++#define DT_MIPS_DELTA_RELOC  0x7000001b+#define DT_MIPS_DELTA_RELOC_NO 0x7000001c++#define DT_MIPS_DELTA_SYM    0x7000001d++#define DT_MIPS_DELTA_SYM_NO 0x7000001e++#define DT_MIPS_DELTA_CLASSSYM 0x70000020++#define DT_MIPS_DELTA_CLASSSYM_NO 0x70000021++#define DT_MIPS_CXX_FLAGS    0x70000022+#define DT_MIPS_PIXIE_INIT   0x70000023+#define DT_MIPS_SYMBOL_LIB   0x70000024+#define DT_MIPS_LOCALPAGE_GOTIDX 0x70000025+#define DT_MIPS_LOCAL_GOTIDX 0x70000026+#define DT_MIPS_HIDDEN_GOTIDX 0x70000027+#define DT_MIPS_PROTECTED_GOTIDX 0x70000028+#define DT_MIPS_OPTIONS	     0x70000029+#define DT_MIPS_INTERFACE    0x7000002a+#define DT_MIPS_DYNSTR_ALIGN 0x7000002b+#define DT_MIPS_INTERFACE_SIZE 0x7000002c+#define DT_MIPS_RLD_TEXT_RESOLVE_ADDR 0x7000002d++#define DT_MIPS_PERF_SUFFIX  0x7000002e++#define DT_MIPS_COMPACT_SIZE 0x7000002f+#define DT_MIPS_GP_VALUE     0x70000030+#define DT_MIPS_AUX_DYNAMIC  0x70000031++#define DT_MIPS_PLTGOT	     0x70000032++#define DT_MIPS_RWPLT        0x70000034+#define DT_MIPS_RLD_MAP_REL  0x70000035+#define DT_MIPS_NUM	     0x36++++#define RHF_NONE		   0+#define RHF_QUICKSTART		   (1 << 0)+#define RHF_NOTPOT		   (1 << 1)+#define RHF_NO_LIBRARY_REPLACEMENT (1 << 2)+#define RHF_NO_MOVE		   (1 << 3)+#define RHF_SGI_ONLY		   (1 << 4)+#define RHF_GUARANTEE_INIT	   (1 << 5)+#define RHF_DELTA_C_PLUS_PLUS	   (1 << 6)+#define RHF_GUARANTEE_START_INIT   (1 << 7)+#define RHF_PIXIE		   (1 << 8)+#define RHF_DEFAULT_DELAY_LOAD	   (1 << 9)+#define RHF_REQUICKSTART	   (1 << 10)+#define RHF_REQUICKSTARTED	   (1 << 11)+#define RHF_CORD		   (1 << 12)+#define RHF_NO_UNRES_UNDEF	   (1 << 13)+#define RHF_RLD_ORDER_SAFE	   (1 << 14)++++typedef struct {+  Elf32_Word l_name;+  Elf32_Word l_time_stamp;+  Elf32_Word l_checksum;+  Elf32_Word l_version;+  Elf32_Word l_flags;+} Elf32_Lib;++typedef struct {+  Elf64_Word l_name;+  Elf64_Word l_time_stamp;+  Elf64_Word l_checksum;+  Elf64_Word l_version;+  Elf64_Word l_flags;+} Elf64_Lib;+++++#define LL_NONE		  0+#define LL_EXACT_MATCH	  (1 << 0)+#define LL_IGNORE_INT_VER (1 << 1)+#define LL_REQUIRE_MINOR  (1 << 2)+#define LL_EXPORTS	  (1 << 3)+#define LL_DELAY_LOAD	  (1 << 4)+#define LL_DELTA	  (1 << 5)++++typedef Elf32_Addr Elf32_Conflict;++typedef struct {+  Elf32_Half version;+  unsigned char isa_level;+  unsigned char isa_rev;+  unsigned char gpr_size;+  unsigned char cpr1_size;+  unsigned char cpr2_size;+  unsigned char fp_abi;+  Elf32_Word isa_ext;+  Elf32_Word ases;+  Elf32_Word flags1;+  Elf32_Word flags2;+} Elf_MIPS_ABIFlags_v0;++#define MIPS_AFL_REG_NONE	0x00+#define MIPS_AFL_REG_32		0x01+#define MIPS_AFL_REG_64		0x02+#define MIPS_AFL_REG_128	0x03++#define MIPS_AFL_ASE_DSP	0x00000001+#define MIPS_AFL_ASE_DSPR2	0x00000002+#define MIPS_AFL_ASE_EVA	0x00000004+#define MIPS_AFL_ASE_MCU	0x00000008+#define MIPS_AFL_ASE_MDMX	0x00000010+#define MIPS_AFL_ASE_MIPS3D	0x00000020+#define MIPS_AFL_ASE_MT		0x00000040+#define MIPS_AFL_ASE_SMARTMIPS	0x00000080+#define MIPS_AFL_ASE_VIRT	0x00000100+#define MIPS_AFL_ASE_MSA	0x00000200+#define MIPS_AFL_ASE_MIPS16	0x00000400+#define MIPS_AFL_ASE_MICROMIPS	0x00000800+#define MIPS_AFL_ASE_XPA	0x00001000+#define MIPS_AFL_ASE_MASK	0x00001fff++#define MIPS_AFL_EXT_XLR	  1+#define MIPS_AFL_EXT_OCTEON2	  2+#define MIPS_AFL_EXT_OCTEONP	  3+#define MIPS_AFL_EXT_LOONGSON_3A  4+#define MIPS_AFL_EXT_OCTEON	  5+#define MIPS_AFL_EXT_5900	  6+#define MIPS_AFL_EXT_4650	  7+#define MIPS_AFL_EXT_4010	  8+#define MIPS_AFL_EXT_4100	  9+#define MIPS_AFL_EXT_3900	  10+#define MIPS_AFL_EXT_10000	  11+#define MIPS_AFL_EXT_SB1	  12+#define MIPS_AFL_EXT_4111	  13+#define MIPS_AFL_EXT_4120	  14+#define MIPS_AFL_EXT_5400	  15+#define MIPS_AFL_EXT_5500	  16+#define MIPS_AFL_EXT_LOONGSON_2E  17+#define MIPS_AFL_EXT_LOONGSON_2F  18++#define MIPS_AFL_FLAGS1_ODDSPREG  1++enum+{+  Val_GNU_MIPS_ABI_FP_ANY = 0,+  Val_GNU_MIPS_ABI_FP_DOUBLE = 1,+  Val_GNU_MIPS_ABI_FP_SINGLE = 2,+  Val_GNU_MIPS_ABI_FP_SOFT = 3,+  Val_GNU_MIPS_ABI_FP_OLD_64 = 4,+  Val_GNU_MIPS_ABI_FP_XX = 5,+  Val_GNU_MIPS_ABI_FP_64 = 6,+  Val_GNU_MIPS_ABI_FP_64A = 7,+  Val_GNU_MIPS_ABI_FP_MAX = 7+};+++++#define EF_PARISC_TRAPNIL	0x00010000+#define EF_PARISC_EXT		0x00020000+#define EF_PARISC_LSB		0x00040000+#define EF_PARISC_WIDE		0x00080000+#define EF_PARISC_NO_KABP	0x00100000++#define EF_PARISC_LAZYSWAP	0x00400000+#define EF_PARISC_ARCH		0x0000ffff++++#define EFA_PARISC_1_0		    0x020b+#define EFA_PARISC_1_1		    0x0210+#define EFA_PARISC_2_0		    0x0214++++#define SHN_PARISC_ANSI_COMMON	0xff00++#define SHN_PARISC_HUGE_COMMON	0xff01++++#define SHT_PARISC_EXT		0x70000000+#define SHT_PARISC_UNWIND	0x70000001+#define SHT_PARISC_DOC		0x70000002++++#define SHF_PARISC_SHORT	0x20000000+#define SHF_PARISC_HUGE		0x40000000+#define SHF_PARISC_SBP		0x80000000++++#define STT_PARISC_MILLICODE	13++#define STT_HP_OPAQUE		(STT_LOOS + 0x1)+#define STT_HP_STUB		(STT_LOOS + 0x2)++++#define R_PARISC_NONE		0+#define R_PARISC_DIR32		1+#define R_PARISC_DIR21L		2+#define R_PARISC_DIR17R		3+#define R_PARISC_DIR17F		4+#define R_PARISC_DIR14R		6+#define R_PARISC_PCREL32	9+#define R_PARISC_PCREL21L	10+#define R_PARISC_PCREL17R	11+#define R_PARISC_PCREL17F	12+#define R_PARISC_PCREL14R	14+#define R_PARISC_DPREL21L	18+#define R_PARISC_DPREL14R	22+#define R_PARISC_GPREL21L	26+#define R_PARISC_GPREL14R	30+#define R_PARISC_LTOFF21L	34+#define R_PARISC_LTOFF14R	38+#define R_PARISC_SECREL32	41+#define R_PARISC_SEGBASE	48+#define R_PARISC_SEGREL32	49+#define R_PARISC_PLTOFF21L	50+#define R_PARISC_PLTOFF14R	54+#define R_PARISC_LTOFF_FPTR32	57+#define R_PARISC_LTOFF_FPTR21L	58+#define R_PARISC_LTOFF_FPTR14R	62+#define R_PARISC_FPTR64		64+#define R_PARISC_PLABEL32	65+#define R_PARISC_PLABEL21L	66+#define R_PARISC_PLABEL14R	70+#define R_PARISC_PCREL64	72+#define R_PARISC_PCREL22F	74+#define R_PARISC_PCREL14WR	75+#define R_PARISC_PCREL14DR	76+#define R_PARISC_PCREL16F	77+#define R_PARISC_PCREL16WF	78+#define R_PARISC_PCREL16DF	79+#define R_PARISC_DIR64		80+#define R_PARISC_DIR14WR	83+#define R_PARISC_DIR14DR	84+#define R_PARISC_DIR16F		85+#define R_PARISC_DIR16WF	86+#define R_PARISC_DIR16DF	87+#define R_PARISC_GPREL64	88+#define R_PARISC_GPREL14WR	91+#define R_PARISC_GPREL14DR	92+#define R_PARISC_GPREL16F	93+#define R_PARISC_GPREL16WF	94+#define R_PARISC_GPREL16DF	95+#define R_PARISC_LTOFF64	96+#define R_PARISC_LTOFF14WR	99+#define R_PARISC_LTOFF14DR	100+#define R_PARISC_LTOFF16F	101+#define R_PARISC_LTOFF16WF	102+#define R_PARISC_LTOFF16DF	103+#define R_PARISC_SECREL64	104+#define R_PARISC_SEGREL64	112+#define R_PARISC_PLTOFF14WR	115+#define R_PARISC_PLTOFF14DR	116+#define R_PARISC_PLTOFF16F	117+#define R_PARISC_PLTOFF16WF	118+#define R_PARISC_PLTOFF16DF	119+#define R_PARISC_LTOFF_FPTR64	120+#define R_PARISC_LTOFF_FPTR14WR	123+#define R_PARISC_LTOFF_FPTR14DR	124+#define R_PARISC_LTOFF_FPTR16F	125+#define R_PARISC_LTOFF_FPTR16WF	126+#define R_PARISC_LTOFF_FPTR16DF	127+#define R_PARISC_LORESERVE	128+#define R_PARISC_COPY		128+#define R_PARISC_IPLT		129+#define R_PARISC_EPLT		130+#define R_PARISC_TPREL32	153+#define R_PARISC_TPREL21L	154+#define R_PARISC_TPREL14R	158+#define R_PARISC_LTOFF_TP21L	162+#define R_PARISC_LTOFF_TP14R	166+#define R_PARISC_LTOFF_TP14F	167+#define R_PARISC_TPREL64	216+#define R_PARISC_TPREL14WR	219+#define R_PARISC_TPREL14DR	220+#define R_PARISC_TPREL16F	221+#define R_PARISC_TPREL16WF	222+#define R_PARISC_TPREL16DF	223+#define R_PARISC_LTOFF_TP64	224+#define R_PARISC_LTOFF_TP14WR	227+#define R_PARISC_LTOFF_TP14DR	228+#define R_PARISC_LTOFF_TP16F	229+#define R_PARISC_LTOFF_TP16WF	230+#define R_PARISC_LTOFF_TP16DF	231+#define R_PARISC_GNU_VTENTRY	232+#define R_PARISC_GNU_VTINHERIT	233+#define R_PARISC_TLS_GD21L	234+#define R_PARISC_TLS_GD14R	235+#define R_PARISC_TLS_GDCALL	236+#define R_PARISC_TLS_LDM21L	237+#define R_PARISC_TLS_LDM14R	238+#define R_PARISC_TLS_LDMCALL	239+#define R_PARISC_TLS_LDO21L	240+#define R_PARISC_TLS_LDO14R	241+#define R_PARISC_TLS_DTPMOD32	242+#define R_PARISC_TLS_DTPMOD64	243+#define R_PARISC_TLS_DTPOFF32	244+#define R_PARISC_TLS_DTPOFF64	245+#define R_PARISC_TLS_LE21L	R_PARISC_TPREL21L+#define R_PARISC_TLS_LE14R	R_PARISC_TPREL14R+#define R_PARISC_TLS_IE21L	R_PARISC_LTOFF_TP21L+#define R_PARISC_TLS_IE14R	R_PARISC_LTOFF_TP14R+#define R_PARISC_TLS_TPREL32	R_PARISC_TPREL32+#define R_PARISC_TLS_TPREL64	R_PARISC_TPREL64+#define R_PARISC_HIRESERVE	255++++#define PT_HP_TLS		(PT_LOOS + 0x0)+#define PT_HP_CORE_NONE		(PT_LOOS + 0x1)+#define PT_HP_CORE_VERSION	(PT_LOOS + 0x2)+#define PT_HP_CORE_KERNEL	(PT_LOOS + 0x3)+#define PT_HP_CORE_COMM		(PT_LOOS + 0x4)+#define PT_HP_CORE_PROC		(PT_LOOS + 0x5)+#define PT_HP_CORE_LOADABLE	(PT_LOOS + 0x6)+#define PT_HP_CORE_STACK	(PT_LOOS + 0x7)+#define PT_HP_CORE_SHM		(PT_LOOS + 0x8)+#define PT_HP_CORE_MMF		(PT_LOOS + 0x9)+#define PT_HP_PARALLEL		(PT_LOOS + 0x10)+#define PT_HP_FASTBIND		(PT_LOOS + 0x11)+#define PT_HP_OPT_ANNOT		(PT_LOOS + 0x12)+#define PT_HP_HSL_ANNOT		(PT_LOOS + 0x13)+#define PT_HP_STACK		(PT_LOOS + 0x14)++#define PT_PARISC_ARCHEXT	0x70000000+#define PT_PARISC_UNWIND	0x70000001++++#define PF_PARISC_SBP		0x08000000++#define PF_HP_PAGE_SIZE		0x00100000+#define PF_HP_FAR_SHARED	0x00200000+#define PF_HP_NEAR_SHARED	0x00400000+#define PF_HP_CODE		0x01000000+#define PF_HP_MODIFY		0x02000000+#define PF_HP_LAZYSWAP		0x04000000+#define PF_HP_SBP		0x08000000+++++++#define EF_ALPHA_32BIT		1+#define EF_ALPHA_CANRELAX	2+++++#define SHT_ALPHA_DEBUG		0x70000001+#define SHT_ALPHA_REGINFO	0x70000002++++#define SHF_ALPHA_GPREL		0x10000000+++#define STO_ALPHA_NOPV		0x80+#define STO_ALPHA_STD_GPLOAD	0x88++++#define R_ALPHA_NONE		0+#define R_ALPHA_REFLONG		1+#define R_ALPHA_REFQUAD		2+#define R_ALPHA_GPREL32		3+#define R_ALPHA_LITERAL		4+#define R_ALPHA_LITUSE		5+#define R_ALPHA_GPDISP		6+#define R_ALPHA_BRADDR		7+#define R_ALPHA_HINT		8+#define R_ALPHA_SREL16		9+#define R_ALPHA_SREL32		10+#define R_ALPHA_SREL64		11+#define R_ALPHA_GPRELHIGH	17+#define R_ALPHA_GPRELLOW	18+#define R_ALPHA_GPREL16		19+#define R_ALPHA_COPY		24+#define R_ALPHA_GLOB_DAT	25+#define R_ALPHA_JMP_SLOT	26+#define R_ALPHA_RELATIVE	27+#define R_ALPHA_TLS_GD_HI	28+#define R_ALPHA_TLSGD		29+#define R_ALPHA_TLS_LDM		30+#define R_ALPHA_DTPMOD64	31+#define R_ALPHA_GOTDTPREL	32+#define R_ALPHA_DTPREL64	33+#define R_ALPHA_DTPRELHI	34+#define R_ALPHA_DTPRELLO	35+#define R_ALPHA_DTPREL16	36+#define R_ALPHA_GOTTPREL	37+#define R_ALPHA_TPREL64		38+#define R_ALPHA_TPRELHI		39+#define R_ALPHA_TPRELLO		40+#define R_ALPHA_TPREL16		41++#define R_ALPHA_NUM		46+++#define LITUSE_ALPHA_ADDR	0+#define LITUSE_ALPHA_BASE	1+#define LITUSE_ALPHA_BYTOFF	2+#define LITUSE_ALPHA_JSR	3+#define LITUSE_ALPHA_TLS_GD	4+#define LITUSE_ALPHA_TLS_LDM	5+++#define DT_ALPHA_PLTRO		(DT_LOPROC + 0)+#define DT_ALPHA_NUM		1+++++#define EF_PPC_EMB		0x80000000+++#define EF_PPC_RELOCATABLE	0x00010000+#define EF_PPC_RELOCATABLE_LIB	0x00008000++++#define R_PPC_NONE		0+#define R_PPC_ADDR32		1+#define R_PPC_ADDR24		2+#define R_PPC_ADDR16		3+#define R_PPC_ADDR16_LO		4+#define R_PPC_ADDR16_HI		5+#define R_PPC_ADDR16_HA		6+#define R_PPC_ADDR14		7+#define R_PPC_ADDR14_BRTAKEN	8+#define R_PPC_ADDR14_BRNTAKEN	9+#define R_PPC_REL24		10+#define R_PPC_REL14		11+#define R_PPC_REL14_BRTAKEN	12+#define R_PPC_REL14_BRNTAKEN	13+#define R_PPC_GOT16		14+#define R_PPC_GOT16_LO		15+#define R_PPC_GOT16_HI		16+#define R_PPC_GOT16_HA		17+#define R_PPC_PLTREL24		18+#define R_PPC_COPY		19+#define R_PPC_GLOB_DAT		20+#define R_PPC_JMP_SLOT		21+#define R_PPC_RELATIVE		22+#define R_PPC_LOCAL24PC		23+#define R_PPC_UADDR32		24+#define R_PPC_UADDR16		25+#define R_PPC_REL32		26+#define R_PPC_PLT32		27+#define R_PPC_PLTREL32		28+#define R_PPC_PLT16_LO		29+#define R_PPC_PLT16_HI		30+#define R_PPC_PLT16_HA		31+#define R_PPC_SDAREL16		32+#define R_PPC_SECTOFF		33+#define R_PPC_SECTOFF_LO	34+#define R_PPC_SECTOFF_HI	35+#define R_PPC_SECTOFF_HA	36+++#define R_PPC_TLS		67+#define R_PPC_DTPMOD32		68+#define R_PPC_TPREL16		69+#define R_PPC_TPREL16_LO	70+#define R_PPC_TPREL16_HI	71+#define R_PPC_TPREL16_HA	72+#define R_PPC_TPREL32		73+#define R_PPC_DTPREL16		74+#define R_PPC_DTPREL16_LO	75+#define R_PPC_DTPREL16_HI	76+#define R_PPC_DTPREL16_HA	77+#define R_PPC_DTPREL32		78+#define R_PPC_GOT_TLSGD16	79+#define R_PPC_GOT_TLSGD16_LO	80+#define R_PPC_GOT_TLSGD16_HI	81+#define R_PPC_GOT_TLSGD16_HA	82+#define R_PPC_GOT_TLSLD16	83+#define R_PPC_GOT_TLSLD16_LO	84+#define R_PPC_GOT_TLSLD16_HI	85+#define R_PPC_GOT_TLSLD16_HA	86+#define R_PPC_GOT_TPREL16	87+#define R_PPC_GOT_TPREL16_LO	88+#define R_PPC_GOT_TPREL16_HI	89+#define R_PPC_GOT_TPREL16_HA	90+#define R_PPC_GOT_DTPREL16	91+#define R_PPC_GOT_DTPREL16_LO	92+#define R_PPC_GOT_DTPREL16_HI	93+#define R_PPC_GOT_DTPREL16_HA	94+#define R_PPC_TLSGD		95+#define R_PPC_TLSLD		96+++#define R_PPC_EMB_NADDR32	101+#define R_PPC_EMB_NADDR16	102+#define R_PPC_EMB_NADDR16_LO	103+#define R_PPC_EMB_NADDR16_HI	104+#define R_PPC_EMB_NADDR16_HA	105+#define R_PPC_EMB_SDAI16	106+#define R_PPC_EMB_SDA2I16	107+#define R_PPC_EMB_SDA2REL	108+#define R_PPC_EMB_SDA21		109+#define R_PPC_EMB_MRKREF	110+#define R_PPC_EMB_RELSEC16	111+#define R_PPC_EMB_RELST_LO	112+#define R_PPC_EMB_RELST_HI	113+#define R_PPC_EMB_RELST_HA	114+#define R_PPC_EMB_BIT_FLD	115+#define R_PPC_EMB_RELSDA	116+++#define R_PPC_DIAB_SDA21_LO	180+#define R_PPC_DIAB_SDA21_HI	181+#define R_PPC_DIAB_SDA21_HA	182+#define R_PPC_DIAB_RELSDA_LO	183+#define R_PPC_DIAB_RELSDA_HI	184+#define R_PPC_DIAB_RELSDA_HA	185+++#define R_PPC_IRELATIVE		248+++#define R_PPC_REL16		249+#define R_PPC_REL16_LO		250+#define R_PPC_REL16_HI		251+#define R_PPC_REL16_HA		252++++#define R_PPC_TOC16		255+++#define DT_PPC_GOT		(DT_LOPROC + 0)+#define DT_PPC_OPT		(DT_LOPROC + 1)+#define DT_PPC_NUM		2++#define PPC_OPT_TLS		1+++#define R_PPC64_NONE		R_PPC_NONE+#define R_PPC64_ADDR32		R_PPC_ADDR32+#define R_PPC64_ADDR24		R_PPC_ADDR24+#define R_PPC64_ADDR16		R_PPC_ADDR16+#define R_PPC64_ADDR16_LO	R_PPC_ADDR16_LO+#define R_PPC64_ADDR16_HI	R_PPC_ADDR16_HI+#define R_PPC64_ADDR16_HA	R_PPC_ADDR16_HA+#define R_PPC64_ADDR14		R_PPC_ADDR14+#define R_PPC64_ADDR14_BRTAKEN	R_PPC_ADDR14_BRTAKEN+#define R_PPC64_ADDR14_BRNTAKEN	R_PPC_ADDR14_BRNTAKEN+#define R_PPC64_REL24		R_PPC_REL24+#define R_PPC64_REL14		R_PPC_REL14+#define R_PPC64_REL14_BRTAKEN	R_PPC_REL14_BRTAKEN+#define R_PPC64_REL14_BRNTAKEN	R_PPC_REL14_BRNTAKEN+#define R_PPC64_GOT16		R_PPC_GOT16+#define R_PPC64_GOT16_LO	R_PPC_GOT16_LO+#define R_PPC64_GOT16_HI	R_PPC_GOT16_HI+#define R_PPC64_GOT16_HA	R_PPC_GOT16_HA++#define R_PPC64_COPY		R_PPC_COPY+#define R_PPC64_GLOB_DAT	R_PPC_GLOB_DAT+#define R_PPC64_JMP_SLOT	R_PPC_JMP_SLOT+#define R_PPC64_RELATIVE	R_PPC_RELATIVE++#define R_PPC64_UADDR32		R_PPC_UADDR32+#define R_PPC64_UADDR16		R_PPC_UADDR16+#define R_PPC64_REL32		R_PPC_REL32+#define R_PPC64_PLT32		R_PPC_PLT32+#define R_PPC64_PLTREL32	R_PPC_PLTREL32+#define R_PPC64_PLT16_LO	R_PPC_PLT16_LO+#define R_PPC64_PLT16_HI	R_PPC_PLT16_HI+#define R_PPC64_PLT16_HA	R_PPC_PLT16_HA++#define R_PPC64_SECTOFF		R_PPC_SECTOFF+#define R_PPC64_SECTOFF_LO	R_PPC_SECTOFF_LO+#define R_PPC64_SECTOFF_HI	R_PPC_SECTOFF_HI+#define R_PPC64_SECTOFF_HA	R_PPC_SECTOFF_HA+#define R_PPC64_ADDR30		37+#define R_PPC64_ADDR64		38+#define R_PPC64_ADDR16_HIGHER	39+#define R_PPC64_ADDR16_HIGHERA	40+#define R_PPC64_ADDR16_HIGHEST	41+#define R_PPC64_ADDR16_HIGHESTA	42+#define R_PPC64_UADDR64		43+#define R_PPC64_REL64		44+#define R_PPC64_PLT64		45+#define R_PPC64_PLTREL64	46+#define R_PPC64_TOC16		47+#define R_PPC64_TOC16_LO	48+#define R_PPC64_TOC16_HI	49+#define R_PPC64_TOC16_HA	50+#define R_PPC64_TOC		51+#define R_PPC64_PLTGOT16	52+#define R_PPC64_PLTGOT16_LO	53+#define R_PPC64_PLTGOT16_HI	54+#define R_PPC64_PLTGOT16_HA	55++#define R_PPC64_ADDR16_DS	56+#define R_PPC64_ADDR16_LO_DS	57+#define R_PPC64_GOT16_DS	58+#define R_PPC64_GOT16_LO_DS	59+#define R_PPC64_PLT16_LO_DS	60+#define R_PPC64_SECTOFF_DS	61+#define R_PPC64_SECTOFF_LO_DS	62+#define R_PPC64_TOC16_DS	63+#define R_PPC64_TOC16_LO_DS	64+#define R_PPC64_PLTGOT16_DS	65+#define R_PPC64_PLTGOT16_LO_DS	66+++#define R_PPC64_TLS		67+#define R_PPC64_DTPMOD64	68+#define R_PPC64_TPREL16		69+#define R_PPC64_TPREL16_LO	70+#define R_PPC64_TPREL16_HI	71+#define R_PPC64_TPREL16_HA	72+#define R_PPC64_TPREL64		73+#define R_PPC64_DTPREL16	74+#define R_PPC64_DTPREL16_LO	75+#define R_PPC64_DTPREL16_HI	76+#define R_PPC64_DTPREL16_HA	77+#define R_PPC64_DTPREL64	78+#define R_PPC64_GOT_TLSGD16	79+#define R_PPC64_GOT_TLSGD16_LO	80+#define R_PPC64_GOT_TLSGD16_HI	81+#define R_PPC64_GOT_TLSGD16_HA	82+#define R_PPC64_GOT_TLSLD16	83+#define R_PPC64_GOT_TLSLD16_LO	84+#define R_PPC64_GOT_TLSLD16_HI	85+#define R_PPC64_GOT_TLSLD16_HA	86+#define R_PPC64_GOT_TPREL16_DS	87+#define R_PPC64_GOT_TPREL16_LO_DS 88+#define R_PPC64_GOT_TPREL16_HI	89+#define R_PPC64_GOT_TPREL16_HA	90+#define R_PPC64_GOT_DTPREL16_DS	91+#define R_PPC64_GOT_DTPREL16_LO_DS 92+#define R_PPC64_GOT_DTPREL16_HI	93+#define R_PPC64_GOT_DTPREL16_HA	94+#define R_PPC64_TPREL16_DS	95+#define R_PPC64_TPREL16_LO_DS	96+#define R_PPC64_TPREL16_HIGHER	97+#define R_PPC64_TPREL16_HIGHERA	98+#define R_PPC64_TPREL16_HIGHEST	99+#define R_PPC64_TPREL16_HIGHESTA 100+#define R_PPC64_DTPREL16_DS	101+#define R_PPC64_DTPREL16_LO_DS	102+#define R_PPC64_DTPREL16_HIGHER	103+#define R_PPC64_DTPREL16_HIGHERA 104+#define R_PPC64_DTPREL16_HIGHEST 105+#define R_PPC64_DTPREL16_HIGHESTA 106+#define R_PPC64_TLSGD		107+#define R_PPC64_TLSLD		108+#define R_PPC64_TOCSAVE		109+#define R_PPC64_ADDR16_HIGH	110+#define R_PPC64_ADDR16_HIGHA	111+#define R_PPC64_TPREL16_HIGH	112+#define R_PPC64_TPREL16_HIGHA	113+#define R_PPC64_DTPREL16_HIGH	114+#define R_PPC64_DTPREL16_HIGHA	115+++#define R_PPC64_JMP_IREL	247+#define R_PPC64_IRELATIVE	248+#define R_PPC64_REL16		249+#define R_PPC64_REL16_LO	250+#define R_PPC64_REL16_HI	251+#define R_PPC64_REL16_HA	252++#define EF_PPC64_ABI	3++#define DT_PPC64_GLINK  (DT_LOPROC + 0)+#define DT_PPC64_OPD	(DT_LOPROC + 1)+#define DT_PPC64_OPDSZ	(DT_LOPROC + 2)+#define DT_PPC64_OPT	(DT_LOPROC + 3)+#define DT_PPC64_NUM	4++#define PPC64_OPT_TLS		1+#define PPC64_OPT_MULTI_TOC	2+#define PPC64_OPT_LOCALENTRY	4++#define STO_PPC64_LOCAL_BIT	5+#define STO_PPC64_LOCAL_MASK	0xe0+#define PPC64_LOCAL_ENTRY_OFFSET(x) (1 << (((x)&0xe0)>>5) & 0xfc)+++#define EF_ARM_RELEXEC		0x01+#define EF_ARM_HASENTRY		0x02+#define EF_ARM_INTERWORK	0x04+#define EF_ARM_APCS_26		0x08+#define EF_ARM_APCS_FLOAT	0x10+#define EF_ARM_PIC		0x20+#define EF_ARM_ALIGN8		0x40+#define EF_ARM_NEW_ABI		0x80+#define EF_ARM_OLD_ABI		0x100+#define EF_ARM_SOFT_FLOAT	0x200+#define EF_ARM_VFP_FLOAT	0x400+#define EF_ARM_MAVERICK_FLOAT	0x800++#define EF_ARM_ABI_FLOAT_SOFT	0x200+#define EF_ARM_ABI_FLOAT_HARD	0x400+++#define EF_ARM_SYMSARESORTED	0x04+#define EF_ARM_DYNSYMSUSESEGIDX	0x08+#define EF_ARM_MAPSYMSFIRST	0x10+#define EF_ARM_EABIMASK		0XFF000000+++#define EF_ARM_BE8	    0x00800000+#define EF_ARM_LE8	    0x00400000++#define EF_ARM_EABI_VERSION(flags)	((flags) & EF_ARM_EABIMASK)+#define EF_ARM_EABI_UNKNOWN	0x00000000+#define EF_ARM_EABI_VER1	0x01000000+#define EF_ARM_EABI_VER2	0x02000000+#define EF_ARM_EABI_VER3	0x03000000+#define EF_ARM_EABI_VER4	0x04000000+#define EF_ARM_EABI_VER5	0x05000000+++#define STT_ARM_TFUNC		STT_LOPROC+#define STT_ARM_16BIT		STT_HIPROC+++#define SHF_ARM_ENTRYSECT	0x10000000+#define SHF_ARM_COMDEF		0x80000000++++#define PF_ARM_SB		0x10000000++#define PF_ARM_PI		0x20000000+#define PF_ARM_ABS		0x40000000+++#define PT_ARM_EXIDX		(PT_LOPROC + 1)+++#define SHT_ARM_EXIDX		(SHT_LOPROC + 1)+#define SHT_ARM_PREEMPTMAP	(SHT_LOPROC + 2)+#define SHT_ARM_ATTRIBUTES	(SHT_LOPROC + 3)++#define R_AARCH64_NONE            0+#define R_AARCH64_P32_ABS32	1+#define R_AARCH64_P32_COPY	180+#define R_AARCH64_P32_GLOB_DAT	181+#define R_AARCH64_P32_JUMP_SLOT	182+#define R_AARCH64_P32_RELATIVE	183+#define R_AARCH64_P32_TLS_DTPMOD 184+#define R_AARCH64_P32_TLS_DTPREL 185+#define R_AARCH64_P32_TLS_TPREL	186+#define R_AARCH64_P32_TLSDESC	187+#define R_AARCH64_P32_IRELATIVE	188+#define R_AARCH64_ABS64         257+#define R_AARCH64_ABS32         258+#define R_AARCH64_ABS16		259+#define R_AARCH64_PREL64	260+#define R_AARCH64_PREL32	261+#define R_AARCH64_PREL16	262+#define R_AARCH64_MOVW_UABS_G0	263+#define R_AARCH64_MOVW_UABS_G0_NC 264+#define R_AARCH64_MOVW_UABS_G1	265+#define R_AARCH64_MOVW_UABS_G1_NC 266+#define R_AARCH64_MOVW_UABS_G2	267+#define R_AARCH64_MOVW_UABS_G2_NC 268+#define R_AARCH64_MOVW_UABS_G3	269+#define R_AARCH64_MOVW_SABS_G0	270+#define R_AARCH64_MOVW_SABS_G1	271+#define R_AARCH64_MOVW_SABS_G2	272+#define R_AARCH64_LD_PREL_LO19	273+#define R_AARCH64_ADR_PREL_LO21	274+#define R_AARCH64_ADR_PREL_PG_HI21 275+#define R_AARCH64_ADR_PREL_PG_HI21_NC 276+#define R_AARCH64_ADD_ABS_LO12_NC 277+#define R_AARCH64_LDST8_ABS_LO12_NC 278+#define R_AARCH64_TSTBR14	279+#define R_AARCH64_CONDBR19	280+#define R_AARCH64_JUMP26	282+#define R_AARCH64_CALL26	283+#define R_AARCH64_LDST16_ABS_LO12_NC 284+#define R_AARCH64_LDST32_ABS_LO12_NC 285+#define R_AARCH64_LDST64_ABS_LO12_NC 286+#define R_AARCH64_MOVW_PREL_G0	287+#define R_AARCH64_MOVW_PREL_G0_NC 288+#define R_AARCH64_MOVW_PREL_G1	289+#define R_AARCH64_MOVW_PREL_G1_NC 290+#define R_AARCH64_MOVW_PREL_G2	291+#define R_AARCH64_MOVW_PREL_G2_NC 292+#define R_AARCH64_MOVW_PREL_G3	293+#define R_AARCH64_LDST128_ABS_LO12_NC 299+#define R_AARCH64_MOVW_GOTOFF_G0 300+#define R_AARCH64_MOVW_GOTOFF_G0_NC 301+#define R_AARCH64_MOVW_GOTOFF_G1 302+#define R_AARCH64_MOVW_GOTOFF_G1_NC 303+#define R_AARCH64_MOVW_GOTOFF_G2 304+#define R_AARCH64_MOVW_GOTOFF_G2_NC 305+#define R_AARCH64_MOVW_GOTOFF_G3 306+#define R_AARCH64_GOTREL64	307+#define R_AARCH64_GOTREL32	308+#define R_AARCH64_GOT_LD_PREL19	309+#define R_AARCH64_LD64_GOTOFF_LO15 310+#define R_AARCH64_ADR_GOT_PAGE	311+#define R_AARCH64_LD64_GOT_LO12_NC 312+#define R_AARCH64_LD64_GOTPAGE_LO15 313+#define R_AARCH64_TLSGD_ADR_PREL21 512+#define R_AARCH64_TLSGD_ADR_PAGE21 513+#define R_AARCH64_TLSGD_ADD_LO12_NC 514+#define R_AARCH64_TLSGD_MOVW_G1	515+#define R_AARCH64_TLSGD_MOVW_G0_NC 516+#define R_AARCH64_TLSLD_ADR_PREL21 517+#define R_AARCH64_TLSLD_ADR_PAGE21 518+#define R_AARCH64_TLSLD_ADD_LO12_NC 519+#define R_AARCH64_TLSLD_MOVW_G1	520+#define R_AARCH64_TLSLD_MOVW_G0_NC 521+#define R_AARCH64_TLSLD_LD_PREL19 522+#define R_AARCH64_TLSLD_MOVW_DTPREL_G2 523+#define R_AARCH64_TLSLD_MOVW_DTPREL_G1 524+#define R_AARCH64_TLSLD_MOVW_DTPREL_G1_NC 525+#define R_AARCH64_TLSLD_MOVW_DTPREL_G0 526+#define R_AARCH64_TLSLD_MOVW_DTPREL_G0_NC 527+#define R_AARCH64_TLSLD_ADD_DTPREL_HI12 528+#define R_AARCH64_TLSLD_ADD_DTPREL_LO12 529+#define R_AARCH64_TLSLD_ADD_DTPREL_LO12_NC 530+#define R_AARCH64_TLSLD_LDST8_DTPREL_LO12 531+#define R_AARCH64_TLSLD_LDST8_DTPREL_LO12_NC 532+#define R_AARCH64_TLSLD_LDST16_DTPREL_LO12 533+#define R_AARCH64_TLSLD_LDST16_DTPREL_LO12_NC 534+#define R_AARCH64_TLSLD_LDST32_DTPREL_LO12 535+#define R_AARCH64_TLSLD_LDST32_DTPREL_LO12_NC 536+#define R_AARCH64_TLSLD_LDST64_DTPREL_LO12 537+#define R_AARCH64_TLSLD_LDST64_DTPREL_LO12_NC 538+#define R_AARCH64_TLSIE_MOVW_GOTTPREL_G1 539+#define R_AARCH64_TLSIE_MOVW_GOTTPREL_G0_NC 540+#define R_AARCH64_TLSIE_ADR_GOTTPREL_PAGE21 541+#define R_AARCH64_TLSIE_LD64_GOTTPREL_LO12_NC 542+#define R_AARCH64_TLSIE_LD_GOTTPREL_PREL19 543+#define R_AARCH64_TLSLE_MOVW_TPREL_G2 544+#define R_AARCH64_TLSLE_MOVW_TPREL_G1 545+#define R_AARCH64_TLSLE_MOVW_TPREL_G1_NC 546+#define R_AARCH64_TLSLE_MOVW_TPREL_G0 547+#define R_AARCH64_TLSLE_MOVW_TPREL_G0_NC 548+#define R_AARCH64_TLSLE_ADD_TPREL_HI12 549+#define R_AARCH64_TLSLE_ADD_TPREL_LO12 550+#define R_AARCH64_TLSLE_ADD_TPREL_LO12_NC 551+#define R_AARCH64_TLSLE_LDST8_TPREL_LO12 552+#define R_AARCH64_TLSLE_LDST8_TPREL_LO12_NC 553+#define R_AARCH64_TLSLE_LDST16_TPREL_LO12 554+#define R_AARCH64_TLSLE_LDST16_TPREL_LO12_NC 555+#define R_AARCH64_TLSLE_LDST32_TPREL_LO12 556+#define R_AARCH64_TLSLE_LDST32_TPREL_LO12_NC 557+#define R_AARCH64_TLSLE_LDST64_TPREL_LO12 558+#define R_AARCH64_TLSLE_LDST64_TPREL_LO12_NC 559+#define R_AARCH64_TLSDESC_LD_PREL19 560+#define R_AARCH64_TLSDESC_ADR_PREL21 561+#define R_AARCH64_TLSDESC_ADR_PAGE21 562+#define R_AARCH64_TLSDESC_LD64_LO12 563+#define R_AARCH64_TLSDESC_ADD_LO12 564+#define R_AARCH64_TLSDESC_OFF_G1 565+#define R_AARCH64_TLSDESC_OFF_G0_NC 566+#define R_AARCH64_TLSDESC_LDR	567+#define R_AARCH64_TLSDESC_ADD	568+#define R_AARCH64_TLSDESC_CALL	569+#define R_AARCH64_TLSLE_LDST128_TPREL_LO12 570+#define R_AARCH64_TLSLE_LDST128_TPREL_LO12_NC 571+#define R_AARCH64_TLSLD_LDST128_DTPREL_LO12 572+#define R_AARCH64_TLSLD_LDST128_DTPREL_LO12_NC 573+#define R_AARCH64_COPY         1024+#define R_AARCH64_GLOB_DAT     1025+#define R_AARCH64_JUMP_SLOT    1026+#define R_AARCH64_RELATIVE     1027+#define R_AARCH64_TLS_DTPMOD   1028+#define R_AARCH64_TLS_DTPMOD64 1028+#define R_AARCH64_TLS_DTPREL   1029+#define R_AARCH64_TLS_DTPREL64 1029+#define R_AARCH64_TLS_TPREL    1030+#define R_AARCH64_TLS_TPREL64  1030+#define R_AARCH64_TLSDESC      1031+++#define R_ARM_NONE		0+#define R_ARM_PC24		1+#define R_ARM_ABS32		2+#define R_ARM_REL32		3+#define R_ARM_PC13		4+#define R_ARM_ABS16		5+#define R_ARM_ABS12		6+#define R_ARM_THM_ABS5		7+#define R_ARM_ABS8		8+#define R_ARM_SBREL32		9+#define R_ARM_THM_PC22		10+#define R_ARM_THM_PC8		11+#define R_ARM_AMP_VCALL9	12+#define R_ARM_TLS_DESC		13+#define R_ARM_THM_SWI8		14+#define R_ARM_XPC25		15+#define R_ARM_THM_XPC22		16+#define R_ARM_TLS_DTPMOD32	17+#define R_ARM_TLS_DTPOFF32	18+#define R_ARM_TLS_TPOFF32	19+#define R_ARM_COPY		20+#define R_ARM_GLOB_DAT		21+#define R_ARM_JUMP_SLOT		22+#define R_ARM_RELATIVE		23+#define R_ARM_GOTOFF		24+#define R_ARM_GOTPC		25+#define R_ARM_GOT32		26+#define R_ARM_PLT32		27+#define R_ARM_CALL		28+#define R_ARM_JUMP24		29+#define R_ARM_THM_JUMP24	30+#define R_ARM_BASE_ABS		31+#define R_ARM_ALU_PCREL_7_0	32+#define R_ARM_ALU_PCREL_15_8	33+#define R_ARM_ALU_PCREL_23_15	34+#define R_ARM_LDR_SBREL_11_0	35+#define R_ARM_ALU_SBREL_19_12	36+#define R_ARM_ALU_SBREL_27_20	37+#define R_ARM_TARGET1		38+#define R_ARM_SBREL31		39+#define R_ARM_V4BX		40+#define R_ARM_TARGET2		41+#define R_ARM_PREL31		42+#define R_ARM_MOVW_ABS_NC	43+#define R_ARM_MOVT_ABS		44+#define R_ARM_MOVW_PREL_NC	45+#define R_ARM_MOVT_PREL		46+#define R_ARM_THM_MOVW_ABS_NC	47+#define R_ARM_THM_MOVT_ABS	48+#define R_ARM_THM_MOVW_PREL_NC	49+#define R_ARM_THM_MOVT_PREL	50+#define R_ARM_THM_JUMP19	51+#define R_ARM_THM_JUMP6		52+#define R_ARM_THM_ALU_PREL_11_0	53+#define R_ARM_THM_PC12		54+#define R_ARM_ABS32_NOI		55+#define R_ARM_REL32_NOI		56+#define R_ARM_ALU_PC_G0_NC	57+#define R_ARM_ALU_PC_G0		58+#define R_ARM_ALU_PC_G1_NC	59+#define R_ARM_ALU_PC_G1		60+#define R_ARM_ALU_PC_G2		61+#define R_ARM_LDR_PC_G1		62+#define R_ARM_LDR_PC_G2		63+#define R_ARM_LDRS_PC_G0	64+#define R_ARM_LDRS_PC_G1	65+#define R_ARM_LDRS_PC_G2	66+#define R_ARM_LDC_PC_G0		67+#define R_ARM_LDC_PC_G1		68+#define R_ARM_LDC_PC_G2		69+#define R_ARM_ALU_SB_G0_NC	70+#define R_ARM_ALU_SB_G0		71+#define R_ARM_ALU_SB_G1_NC	72+#define R_ARM_ALU_SB_G1		73+#define R_ARM_ALU_SB_G2		74+#define R_ARM_LDR_SB_G0		75+#define R_ARM_LDR_SB_G1		76+#define R_ARM_LDR_SB_G2		77+#define R_ARM_LDRS_SB_G0	78+#define R_ARM_LDRS_SB_G1	79+#define R_ARM_LDRS_SB_G2	80+#define R_ARM_LDC_SB_G0		81+#define R_ARM_LDC_SB_G1		82+#define R_ARM_LDC_SB_G2		83+#define R_ARM_MOVW_BREL_NC	84+#define R_ARM_MOVT_BREL		85+#define R_ARM_MOVW_BREL		86+#define R_ARM_THM_MOVW_BREL_NC	87+#define R_ARM_THM_MOVT_BREL	88+#define R_ARM_THM_MOVW_BREL	89+#define R_ARM_TLS_GOTDESC	90+#define R_ARM_TLS_CALL		91+#define R_ARM_TLS_DESCSEQ	92+#define R_ARM_THM_TLS_CALL	93+#define R_ARM_PLT32_ABS		94+#define R_ARM_GOT_ABS		95+#define R_ARM_GOT_PREL		96+#define R_ARM_GOT_BREL12	97+#define R_ARM_GOTOFF12		98+#define R_ARM_GOTRELAX		99+#define R_ARM_GNU_VTENTRY	100+#define R_ARM_GNU_VTINHERIT	101+#define R_ARM_THM_PC11		102+#define R_ARM_THM_PC9		103+#define R_ARM_TLS_GD32		104++#define R_ARM_TLS_LDM32		105++#define R_ARM_TLS_LDO32		106++#define R_ARM_TLS_IE32		107++#define R_ARM_TLS_LE32		108+#define R_ARM_TLS_LDO12		109+#define R_ARM_TLS_LE12		110+#define R_ARM_TLS_IE12GP	111+#define R_ARM_ME_TOO		128+#define R_ARM_THM_TLS_DESCSEQ	129+#define R_ARM_THM_TLS_DESCSEQ16	129+#define R_ARM_THM_TLS_DESCSEQ32	130+#define R_ARM_THM_GOT_BREL12	131+#define R_ARM_IRELATIVE		160+#define R_ARM_RXPC25		249+#define R_ARM_RSBREL32		250+#define R_ARM_THM_RPC22		251+#define R_ARM_RREL32		252+#define R_ARM_RABS22		253+#define R_ARM_RPC24		254+#define R_ARM_RBASE		255++#define R_ARM_NUM		256+++#define R_CKCORE_NONE               0+#define R_CKCORE_ADDR32             1+#define R_CKCORE_PCRELIMM8BY4       2+#define R_CKCORE_PCRELIMM11BY2      3+#define R_CKCORE_PCREL32            5+#define R_CKCORE_PCRELJSR_IMM11BY2  6+#define R_CKCORE_RELATIVE           9+#define R_CKCORE_COPY               10+#define R_CKCORE_GLOB_DAT           11+#define R_CKCORE_JUMP_SLOT          12+#define R_CKCORE_GOTOFF             13+#define R_CKCORE_GOTPC              14+#define R_CKCORE_GOT32              15+#define R_CKCORE_PLT32              16+#define R_CKCORE_ADDRGOT            17+#define R_CKCORE_ADDRPLT            18+#define R_CKCORE_PCREL_IMM26BY2     19+#define R_CKCORE_PCREL_IMM16BY2     20+#define R_CKCORE_PCREL_IMM16BY4     21+#define R_CKCORE_PCREL_IMM10BY2     22+#define R_CKCORE_PCREL_IMM10BY4     23+#define R_CKCORE_ADDR_HI16          24+#define R_CKCORE_ADDR_LO16          25+#define R_CKCORE_GOTPC_HI16         26+#define R_CKCORE_GOTPC_LO16         27+#define R_CKCORE_GOTOFF_HI16        28+#define R_CKCORE_GOTOFF_LO16        29+#define R_CKCORE_GOT12              30+#define R_CKCORE_GOT_HI16           31+#define R_CKCORE_GOT_LO16           32+#define R_CKCORE_PLT12              33+#define R_CKCORE_PLT_HI16           34+#define R_CKCORE_PLT_LO16           35+#define R_CKCORE_ADDRGOT_HI16       36+#define R_CKCORE_ADDRGOT_LO16       37+#define R_CKCORE_ADDRPLT_HI16       38+#define R_CKCORE_ADDRPLT_LO16       39+#define R_CKCORE_PCREL_JSR_IMM26BY2 40+#define R_CKCORE_TOFFSET_LO16       41+#define R_CKCORE_DOFFSET_LO16       42+#define R_CKCORE_PCREL_IMM18BY2     43+#define R_CKCORE_DOFFSET_IMM18      44+#define R_CKCORE_DOFFSET_IMM18BY2   45+#define R_CKCORE_DOFFSET_IMM18BY4   46+#define R_CKCORE_GOT_IMM18BY4       48+#define R_CKCORE_PLT_IMM18BY4       49+#define R_CKCORE_PCREL_IMM7BY4      50+#define R_CKCORE_TLS_LE32           51+#define R_CKCORE_TLS_IE32           52+#define R_CKCORE_TLS_GD32           53+#define R_CKCORE_TLS_LDM32          54+#define R_CKCORE_TLS_LDO32          55+#define R_CKCORE_TLS_DTPMOD32       56+#define R_CKCORE_TLS_DTPOFF32       57+#define R_CKCORE_TLS_TPOFF32        58+++#define EF_IA_64_MASKOS		0x0000000f+#define EF_IA_64_ABI64		0x00000010+#define EF_IA_64_ARCH		0xff000000+++#define PT_IA_64_ARCHEXT	(PT_LOPROC + 0)+#define PT_IA_64_UNWIND		(PT_LOPROC + 1)+#define PT_IA_64_HP_OPT_ANOT	(PT_LOOS + 0x12)+#define PT_IA_64_HP_HSL_ANOT	(PT_LOOS + 0x13)+#define PT_IA_64_HP_STACK	(PT_LOOS + 0x14)+++#define PF_IA_64_NORECOV	0x80000000+++#define SHT_IA_64_EXT		(SHT_LOPROC + 0)+#define SHT_IA_64_UNWIND	(SHT_LOPROC + 1)+++#define SHF_IA_64_SHORT		0x10000000+#define SHF_IA_64_NORECOV	0x20000000+++#define DT_IA_64_PLT_RESERVE	(DT_LOPROC + 0)+#define DT_IA_64_NUM		1+++#define R_IA64_NONE		0x00+#define R_IA64_IMM14		0x21+#define R_IA64_IMM22		0x22+#define R_IA64_IMM64		0x23+#define R_IA64_DIR32MSB		0x24+#define R_IA64_DIR32LSB		0x25+#define R_IA64_DIR64MSB		0x26+#define R_IA64_DIR64LSB		0x27+#define R_IA64_GPREL22		0x2a+#define R_IA64_GPREL64I		0x2b+#define R_IA64_GPREL32MSB	0x2c+#define R_IA64_GPREL32LSB	0x2d+#define R_IA64_GPREL64MSB	0x2e+#define R_IA64_GPREL64LSB	0x2f+#define R_IA64_LTOFF22		0x32+#define R_IA64_LTOFF64I		0x33+#define R_IA64_PLTOFF22		0x3a+#define R_IA64_PLTOFF64I	0x3b+#define R_IA64_PLTOFF64MSB	0x3e+#define R_IA64_PLTOFF64LSB	0x3f+#define R_IA64_FPTR64I		0x43+#define R_IA64_FPTR32MSB	0x44+#define R_IA64_FPTR32LSB	0x45+#define R_IA64_FPTR64MSB	0x46+#define R_IA64_FPTR64LSB	0x47+#define R_IA64_PCREL60B		0x48+#define R_IA64_PCREL21B		0x49+#define R_IA64_PCREL21M		0x4a+#define R_IA64_PCREL21F		0x4b+#define R_IA64_PCREL32MSB	0x4c+#define R_IA64_PCREL32LSB	0x4d+#define R_IA64_PCREL64MSB	0x4e+#define R_IA64_PCREL64LSB	0x4f+#define R_IA64_LTOFF_FPTR22	0x52+#define R_IA64_LTOFF_FPTR64I	0x53+#define R_IA64_LTOFF_FPTR32MSB	0x54+#define R_IA64_LTOFF_FPTR32LSB	0x55+#define R_IA64_LTOFF_FPTR64MSB	0x56+#define R_IA64_LTOFF_FPTR64LSB	0x57+#define R_IA64_SEGREL32MSB	0x5c+#define R_IA64_SEGREL32LSB	0x5d+#define R_IA64_SEGREL64MSB	0x5e+#define R_IA64_SEGREL64LSB	0x5f+#define R_IA64_SECREL32MSB	0x64+#define R_IA64_SECREL32LSB	0x65+#define R_IA64_SECREL64MSB	0x66+#define R_IA64_SECREL64LSB	0x67+#define R_IA64_REL32MSB		0x6c+#define R_IA64_REL32LSB		0x6d+#define R_IA64_REL64MSB		0x6e+#define R_IA64_REL64LSB		0x6f+#define R_IA64_LTV32MSB		0x74+#define R_IA64_LTV32LSB		0x75+#define R_IA64_LTV64MSB		0x76+#define R_IA64_LTV64LSB		0x77+#define R_IA64_PCREL21BI	0x79+#define R_IA64_PCREL22		0x7a+#define R_IA64_PCREL64I		0x7b+#define R_IA64_IPLTMSB		0x80+#define R_IA64_IPLTLSB		0x81+#define R_IA64_COPY		0x84+#define R_IA64_SUB		0x85+#define R_IA64_LTOFF22X		0x86+#define R_IA64_LDXMOV		0x87+#define R_IA64_TPREL14		0x91+#define R_IA64_TPREL22		0x92+#define R_IA64_TPREL64I		0x93+#define R_IA64_TPREL64MSB	0x96+#define R_IA64_TPREL64LSB	0x97+#define R_IA64_LTOFF_TPREL22	0x9a+#define R_IA64_DTPMOD64MSB	0xa6+#define R_IA64_DTPMOD64LSB	0xa7+#define R_IA64_LTOFF_DTPMOD22	0xaa+#define R_IA64_DTPREL14		0xb1+#define R_IA64_DTPREL22		0xb2+#define R_IA64_DTPREL64I	0xb3+#define R_IA64_DTPREL32MSB	0xb4+#define R_IA64_DTPREL32LSB	0xb5+#define R_IA64_DTPREL64MSB	0xb6+#define R_IA64_DTPREL64LSB	0xb7+#define R_IA64_LTOFF_DTPREL22	0xba+++#define EF_SH_MACH_MASK		0x1f+#define EF_SH_UNKNOWN		0x0+#define EF_SH1			0x1+#define EF_SH2			0x2+#define EF_SH3			0x3+#define EF_SH_DSP		0x4+#define EF_SH3_DSP		0x5+#define EF_SH4AL_DSP		0x6+#define EF_SH3E			0x8+#define EF_SH4			0x9+#define EF_SH2E			0xb+#define EF_SH4A			0xc+#define EF_SH2A			0xd+#define EF_SH4_NOFPU		0x10+#define EF_SH4A_NOFPU		0x11+#define EF_SH4_NOMMU_NOFPU	0x12+#define EF_SH2A_NOFPU		0x13+#define EF_SH3_NOMMU		0x14+#define EF_SH2A_SH4_NOFPU	0x15+#define EF_SH2A_SH3_NOFPU	0x16+#define EF_SH2A_SH4		0x17+#define EF_SH2A_SH3E		0x18++#define	R_SH_NONE		0+#define	R_SH_DIR32		1+#define	R_SH_REL32		2+#define	R_SH_DIR8WPN		3+#define	R_SH_IND12W		4+#define	R_SH_DIR8WPL		5+#define	R_SH_DIR8WPZ		6+#define	R_SH_DIR8BP		7+#define	R_SH_DIR8W		8+#define	R_SH_DIR8L		9+#define	R_SH_SWITCH16		25+#define	R_SH_SWITCH32		26+#define	R_SH_USES		27+#define	R_SH_COUNT		28+#define	R_SH_ALIGN		29+#define	R_SH_CODE		30+#define	R_SH_DATA		31+#define	R_SH_LABEL		32+#define	R_SH_SWITCH8		33+#define	R_SH_GNU_VTINHERIT	34+#define	R_SH_GNU_VTENTRY	35+#define	R_SH_TLS_GD_32		144+#define	R_SH_TLS_LD_32		145+#define	R_SH_TLS_LDO_32		146+#define	R_SH_TLS_IE_32		147+#define	R_SH_TLS_LE_32		148+#define	R_SH_TLS_DTPMOD32	149+#define	R_SH_TLS_DTPOFF32	150+#define	R_SH_TLS_TPOFF32	151+#define	R_SH_GOT32		160+#define	R_SH_PLT32		161+#define	R_SH_COPY		162+#define	R_SH_GLOB_DAT		163+#define	R_SH_JMP_SLOT		164+#define	R_SH_RELATIVE		165+#define	R_SH_GOTOFF		166+#define	R_SH_GOTPC		167+#define	R_SH_GOT20		201+#define	R_SH_GOTOFF20		202+#define	R_SH_GOTFUNCDESC	203+#define	R_SH_GOTFUNCDEST20	204+#define	R_SH_GOTOFFFUNCDESC	205+#define	R_SH_GOTOFFFUNCDEST20	206+#define	R_SH_FUNCDESC		207+#define	R_SH_FUNCDESC_VALUE	208++#define	R_SH_NUM		256++++#define R_390_NONE		0+#define R_390_8			1+#define R_390_12		2+#define R_390_16		3+#define R_390_32		4+#define R_390_PC32		5+#define R_390_GOT12		6+#define R_390_GOT32		7+#define R_390_PLT32		8+#define R_390_COPY		9+#define R_390_GLOB_DAT		10+#define R_390_JMP_SLOT		11+#define R_390_RELATIVE		12+#define R_390_GOTOFF32		13+#define R_390_GOTPC		14+#define R_390_GOT16		15+#define R_390_PC16		16+#define R_390_PC16DBL		17+#define R_390_PLT16DBL		18+#define R_390_PC32DBL		19+#define R_390_PLT32DBL		20+#define R_390_GOTPCDBL		21+#define R_390_64		22+#define R_390_PC64		23+#define R_390_GOT64		24+#define R_390_PLT64		25+#define R_390_GOTENT		26+#define R_390_GOTOFF16		27+#define R_390_GOTOFF64		28+#define R_390_GOTPLT12		29+#define R_390_GOTPLT16		30+#define R_390_GOTPLT32		31+#define R_390_GOTPLT64		32+#define R_390_GOTPLTENT		33+#define R_390_PLTOFF16		34+#define R_390_PLTOFF32		35+#define R_390_PLTOFF64		36+#define R_390_TLS_LOAD		37+#define R_390_TLS_GDCALL	38++#define R_390_TLS_LDCALL	39++#define R_390_TLS_GD32		40++#define R_390_TLS_GD64		41++#define R_390_TLS_GOTIE12	42++#define R_390_TLS_GOTIE32	43++#define R_390_TLS_GOTIE64	44++#define R_390_TLS_LDM32		45++#define R_390_TLS_LDM64		46++#define R_390_TLS_IE32		47++#define R_390_TLS_IE64		48++#define R_390_TLS_IEENT		49++#define R_390_TLS_LE32		50++#define R_390_TLS_LE64		51++#define R_390_TLS_LDO32		52++#define R_390_TLS_LDO64		53++#define R_390_TLS_DTPMOD	54+#define R_390_TLS_DTPOFF	55+#define R_390_TLS_TPOFF		56++#define R_390_20		57+#define R_390_GOT20		58+#define R_390_GOTPLT20		59+#define R_390_TLS_GOTIE20	60+++#define R_390_NUM		61++++#define R_CRIS_NONE		0+#define R_CRIS_8		1+#define R_CRIS_16		2+#define R_CRIS_32		3+#define R_CRIS_8_PCREL		4+#define R_CRIS_16_PCREL		5+#define R_CRIS_32_PCREL		6+#define R_CRIS_GNU_VTINHERIT	7+#define R_CRIS_GNU_VTENTRY	8+#define R_CRIS_COPY		9+#define R_CRIS_GLOB_DAT		10+#define R_CRIS_JUMP_SLOT	11+#define R_CRIS_RELATIVE		12+#define R_CRIS_16_GOT		13+#define R_CRIS_32_GOT		14+#define R_CRIS_16_GOTPLT	15+#define R_CRIS_32_GOTPLT	16+#define R_CRIS_32_GOTREL	17+#define R_CRIS_32_PLT_GOTREL	18+#define R_CRIS_32_PLT_PCREL	19++#define R_CRIS_NUM		20++++#define R_X86_64_NONE		0+#define R_X86_64_64		1+#define R_X86_64_PC32		2+#define R_X86_64_GOT32		3+#define R_X86_64_PLT32		4+#define R_X86_64_COPY		5+#define R_X86_64_GLOB_DAT	6+#define R_X86_64_JUMP_SLOT	7+#define R_X86_64_RELATIVE	8+#define R_X86_64_GOTPCREL	9++#define R_X86_64_32		10+#define R_X86_64_32S		11+#define R_X86_64_16		12+#define R_X86_64_PC16		13+#define R_X86_64_8		14+#define R_X86_64_PC8		15+#define R_X86_64_DTPMOD64	16+#define R_X86_64_DTPOFF64	17+#define R_X86_64_TPOFF64	18+#define R_X86_64_TLSGD		19++#define R_X86_64_TLSLD		20++#define R_X86_64_DTPOFF32	21+#define R_X86_64_GOTTPOFF	22++#define R_X86_64_TPOFF32	23+#define R_X86_64_PC64		24+#define R_X86_64_GOTOFF64	25+#define R_X86_64_GOTPC32	26+#define R_X86_64_GOT64		27+#define R_X86_64_GOTPCREL64	28+#define R_X86_64_GOTPC64	29+#define R_X86_64_GOTPLT64	30+#define R_X86_64_PLTOFF64	31+#define R_X86_64_SIZE32		32+#define R_X86_64_SIZE64		33++#define R_X86_64_GOTPC32_TLSDESC 34+#define R_X86_64_TLSDESC_CALL   35++#define R_X86_64_TLSDESC        36+#define R_X86_64_IRELATIVE	37+#define R_X86_64_RELATIVE64	38+#define R_X86_64_GOTPCRELX	41+#define R_X86_64_REX_GOTPCRELX	42+#define R_X86_64_NUM		43++++#define R_MN10300_NONE		0+#define R_MN10300_32		1+#define R_MN10300_16		2+#define R_MN10300_8		3+#define R_MN10300_PCREL32	4+#define R_MN10300_PCREL16	5+#define R_MN10300_PCREL8	6+#define R_MN10300_GNU_VTINHERIT	7+#define R_MN10300_GNU_VTENTRY	8+#define R_MN10300_24		9+#define R_MN10300_GOTPC32	10+#define R_MN10300_GOTPC16	11+#define R_MN10300_GOTOFF32	12+#define R_MN10300_GOTOFF24	13+#define R_MN10300_GOTOFF16	14+#define R_MN10300_PLT32		15+#define R_MN10300_PLT16		16+#define R_MN10300_GOT32		17+#define R_MN10300_GOT24		18+#define R_MN10300_GOT16		19+#define R_MN10300_COPY		20+#define R_MN10300_GLOB_DAT	21+#define R_MN10300_JMP_SLOT	22+#define R_MN10300_RELATIVE	23++#define R_MN10300_NUM		24++++#define R_M32R_NONE		0+#define R_M32R_16		1+#define R_M32R_32		2+#define R_M32R_24		3+#define R_M32R_10_PCREL		4+#define R_M32R_18_PCREL		5+#define R_M32R_26_PCREL		6+#define R_M32R_HI16_ULO		7+#define R_M32R_HI16_SLO		8+#define R_M32R_LO16		9+#define R_M32R_SDA16		10+#define R_M32R_GNU_VTINHERIT	11+#define R_M32R_GNU_VTENTRY	12++#define R_M32R_16_RELA		33+#define R_M32R_32_RELA		34+#define R_M32R_24_RELA		35+#define R_M32R_10_PCREL_RELA	36+#define R_M32R_18_PCREL_RELA	37+#define R_M32R_26_PCREL_RELA	38+#define R_M32R_HI16_ULO_RELA	39+#define R_M32R_HI16_SLO_RELA	40+#define R_M32R_LO16_RELA	41+#define R_M32R_SDA16_RELA	42+#define R_M32R_RELA_GNU_VTINHERIT	43+#define R_M32R_RELA_GNU_VTENTRY	44+#define R_M32R_REL32		45++#define R_M32R_GOT24		48+#define R_M32R_26_PLTREL	49+#define R_M32R_COPY		50+#define R_M32R_GLOB_DAT		51+#define R_M32R_JMP_SLOT		52+#define R_M32R_RELATIVE		53+#define R_M32R_GOTOFF		54+#define R_M32R_GOTPC24		55+#define R_M32R_GOT16_HI_ULO	56++#define R_M32R_GOT16_HI_SLO	57++#define R_M32R_GOT16_LO		58+#define R_M32R_GOTPC_HI_ULO	59++#define R_M32R_GOTPC_HI_SLO	60++#define R_M32R_GOTPC_LO		61++#define R_M32R_GOTOFF_HI_ULO	62++#define R_M32R_GOTOFF_HI_SLO	63++#define R_M32R_GOTOFF_LO	64+#define R_M32R_NUM		256++#define R_MICROBLAZE_NONE 0+#define R_MICROBLAZE_32 1+#define R_MICROBLAZE_32_PCREL 2+#define R_MICROBLAZE_64_PCREL 3+#define R_MICROBLAZE_32_PCREL_LO 4+#define R_MICROBLAZE_64 5+#define R_MICROBLAZE_32_LO 6+#define R_MICROBLAZE_SRO32 7+#define R_MICROBLAZE_SRW32 8+#define R_MICROBLAZE_64_NONE 9+#define R_MICROBLAZE_32_SYM_OP_SYM 10+#define R_MICROBLAZE_GNU_VTINHERIT 11+#define R_MICROBLAZE_GNU_VTENTRY 12+#define R_MICROBLAZE_GOTPC_64 13+#define R_MICROBLAZE_GOT_64 14+#define R_MICROBLAZE_PLT_64 15+#define R_MICROBLAZE_REL 16+#define R_MICROBLAZE_JUMP_SLOT 17+#define R_MICROBLAZE_GLOB_DAT 18+#define R_MICROBLAZE_GOTOFF_64 19+#define R_MICROBLAZE_GOTOFF_32 20+#define R_MICROBLAZE_COPY 21+#define R_MICROBLAZE_TLS 22+#define R_MICROBLAZE_TLSGD 23+#define R_MICROBLAZE_TLSLD 24+#define R_MICROBLAZE_TLSDTPMOD32 25+#define R_MICROBLAZE_TLSDTPREL32 26+#define R_MICROBLAZE_TLSDTPREL64 27+#define R_MICROBLAZE_TLSGOTTPREL32 28+#define R_MICROBLAZE_TLSTPREL32	 29++#define DT_NIOS2_GP             0x70000002++#define R_NIOS2_NONE		0+#define R_NIOS2_S16		1+#define R_NIOS2_U16		2+#define R_NIOS2_PCREL16		3+#define R_NIOS2_CALL26		4+#define R_NIOS2_IMM5		5+#define R_NIOS2_CACHE_OPX	6+#define R_NIOS2_IMM6		7+#define R_NIOS2_IMM8		8+#define R_NIOS2_HI16		9+#define R_NIOS2_LO16		10+#define R_NIOS2_HIADJ16		11+#define R_NIOS2_BFD_RELOC_32	12+#define R_NIOS2_BFD_RELOC_16	13+#define R_NIOS2_BFD_RELOC_8	14+#define R_NIOS2_GPREL		15+#define R_NIOS2_GNU_VTINHERIT	16+#define R_NIOS2_GNU_VTENTRY	17+#define R_NIOS2_UJMP		18+#define R_NIOS2_CJMP		19+#define R_NIOS2_CALLR		20+#define R_NIOS2_ALIGN		21+#define R_NIOS2_GOT16		22+#define R_NIOS2_CALL16		23+#define R_NIOS2_GOTOFF_LO	24+#define R_NIOS2_GOTOFF_HA	25+#define R_NIOS2_PCREL_LO	26+#define R_NIOS2_PCREL_HA	27+#define R_NIOS2_TLS_GD16	28+#define R_NIOS2_TLS_LDM16	29+#define R_NIOS2_TLS_LDO16	30+#define R_NIOS2_TLS_IE16	31+#define R_NIOS2_TLS_LE16	32+#define R_NIOS2_TLS_DTPMOD	33+#define R_NIOS2_TLS_DTPREL	34+#define R_NIOS2_TLS_TPREL	35+#define R_NIOS2_COPY		36+#define R_NIOS2_GLOB_DAT	37+#define R_NIOS2_JUMP_SLOT	38+#define R_NIOS2_RELATIVE	39+#define R_NIOS2_GOTOFF		40+#define R_NIOS2_CALL26_NOAT	41+#define R_NIOS2_GOT_LO		42+#define R_NIOS2_GOT_HA		43+#define R_NIOS2_CALL_LO		44+#define R_NIOS2_CALL_HA		45++#define R_OR1K_NONE		0+#define R_OR1K_32		1+#define R_OR1K_16		2+#define R_OR1K_8		3+#define R_OR1K_LO_16_IN_INSN	4+#define R_OR1K_HI_16_IN_INSN	5+#define R_OR1K_INSN_REL_26	6+#define R_OR1K_GNU_VTENTRY	7+#define R_OR1K_GNU_VTINHERIT	8+#define R_OR1K_32_PCREL		9+#define R_OR1K_16_PCREL		10+#define R_OR1K_8_PCREL		11+#define R_OR1K_GOTPC_HI16	12+#define R_OR1K_GOTPC_LO16	13+#define R_OR1K_GOT16		14+#define R_OR1K_PLT26		15+#define R_OR1K_GOTOFF_HI16	16+#define R_OR1K_GOTOFF_LO16	17+#define R_OR1K_COPY		18+#define R_OR1K_GLOB_DAT		19+#define R_OR1K_JMP_SLOT		20+#define R_OR1K_RELATIVE		21+#define R_OR1K_TLS_GD_HI16	22+#define R_OR1K_TLS_GD_LO16	23+#define R_OR1K_TLS_LDM_HI16	24+#define R_OR1K_TLS_LDM_LO16	25+#define R_OR1K_TLS_LDO_HI16	26+#define R_OR1K_TLS_LDO_LO16	27+#define R_OR1K_TLS_IE_HI16	28+#define R_OR1K_TLS_IE_LO16	29+#define R_OR1K_TLS_LE_HI16	30+#define R_OR1K_TLS_LE_LO16	31+#define R_OR1K_TLS_TPOFF	32+#define R_OR1K_TLS_DTPOFF	33+#define R_OR1K_TLS_DTPMOD	34++#define R_BPF_NONE		0+#define R_BPF_MAP_FD		1++#define R_RISCV_NONE            0+#define R_RISCV_32              1+#define R_RISCV_64              2+#define R_RISCV_RELATIVE        3+#define R_RISCV_COPY            4+#define R_RISCV_JUMP_SLOT       5+#define R_RISCV_TLS_DTPMOD32    6+#define R_RISCV_TLS_DTPMOD64    7+#define R_RISCV_TLS_DTPREL32    8+#define R_RISCV_TLS_DTPREL64    9+#define R_RISCV_TLS_TPREL32     10+#define R_RISCV_TLS_TPREL64     11+#define R_RISCV_TLSDESC         12++#define R_RISCV_BRANCH          16+#define R_RISCV_JAL             17+#define R_RISCV_CALL            18+#define R_RISCV_CALL_PLT        19+#define R_RISCV_GOT_HI20        20+#define R_RISCV_TLS_GOT_HI20    21+#define R_RISCV_TLS_GD_HI20     22+#define R_RISCV_PCREL_HI20      23+#define R_RISCV_PCREL_LO12_I    24+#define R_RISCV_PCREL_LO12_S    25+#define R_RISCV_HI20            26+#define R_RISCV_LO12_I          27+#define R_RISCV_LO12_S          28+#define R_RISCV_TPREL_HI20      29+#define R_RISCV_TPREL_LO12_I    30+#define R_RISCV_TPREL_LO12_S    31+#define R_RISCV_TPREL_ADD       32+#define R_RISCV_ADD8            33+#define R_RISCV_ADD16           34+#define R_RISCV_ADD32           35+#define R_RISCV_ADD64           36+#define R_RISCV_SUB8            37+#define R_RISCV_SUB16           38+#define R_RISCV_SUB32           39+#define R_RISCV_SUB64           40+#define R_RISCV_GOT32_PCREL     41+#define R_RISCV_ALIGN           43+#define R_RISCV_RVC_BRANCH      44+#define R_RISCV_RVC_JUMP        45+#define R_RISCV_RVC_LUI         46+#define R_RISCV_RELAX           51+#define R_RISCV_SUB6            52+#define R_RISCV_SET6            53+#define R_RISCV_SET8            54+#define R_RISCV_SET16           55+#define R_RISCV_SET32           56+#define R_RISCV_32_PCREL        57+#define R_RISCV_IRELATIVE       58+#define R_RISCV_PLT32           59+#define R_RISCV_SET_ULEB128     60+#define R_RISCV_SUB_ULEB128     61+#define R_RISCV_TLSDESC_HI20    62+#define R_RISCV_TLSDESC_LOAD_LO12 63+#define R_RISCV_TLSDESC_ADD_LO12  64+#define R_RISCV_TLSDESC_CALL    65++#define EF_LARCH_ABI_MODIFIER_MASK    0x07+#define EF_LARCH_ABI_SOFT_FLOAT       0x01+#define EF_LARCH_ABI_SINGLE_FLOAT     0x02+#define EF_LARCH_ABI_DOUBLE_FLOAT     0x03+#define EF_LARCH_OBJABI_V1            0x40++#define R_LARCH_NONE                        0+#define R_LARCH_32                          1+#define R_LARCH_64                          2+#define R_LARCH_RELATIVE                    3+#define R_LARCH_COPY                        4+#define R_LARCH_JUMP_SLOT                   5+#define R_LARCH_TLS_DTPMOD32                6+#define R_LARCH_TLS_DTPMOD64                7+#define R_LARCH_TLS_DTPREL32                8+#define R_LARCH_TLS_DTPREL64                9+#define R_LARCH_TLS_TPREL32                 10+#define R_LARCH_TLS_TPREL64                 11+#define R_LARCH_IRELATIVE                   12+#define R_LARCH_MARK_LA                     20+#define R_LARCH_MARK_PCREL                  21+#define R_LARCH_SOP_PUSH_PCREL              22+#define R_LARCH_SOP_PUSH_ABSOLUTE           23+#define R_LARCH_SOP_PUSH_DUP                24+#define R_LARCH_SOP_PUSH_GPREL              25+#define R_LARCH_SOP_PUSH_TLS_TPREL          26+#define R_LARCH_SOP_PUSH_TLS_GOT            27+#define R_LARCH_SOP_PUSH_TLS_GD             28+#define R_LARCH_SOP_PUSH_PLT_PCREL          29+#define R_LARCH_SOP_ASSERT                  30+#define R_LARCH_SOP_NOT                     31+#define R_LARCH_SOP_SUB                     32+#define R_LARCH_SOP_SL                      33+#define R_LARCH_SOP_SR                      34+#define R_LARCH_SOP_ADD                     35+#define R_LARCH_SOP_AND                     36+#define R_LARCH_SOP_IF_ELSE                 37+#define R_LARCH_SOP_POP_32_S_10_5           38+#define R_LARCH_SOP_POP_32_U_10_12          39+#define R_LARCH_SOP_POP_32_S_10_12          40+#define R_LARCH_SOP_POP_32_S_10_16          41+#define R_LARCH_SOP_POP_32_S_10_16_S2       42+#define R_LARCH_SOP_POP_32_S_5_20           43+#define R_LARCH_SOP_POP_32_S_0_5_10_16_S2   44+#define R_LARCH_SOP_POP_32_S_0_10_10_16_S2  45+#define R_LARCH_SOP_POP_32_U                46+#define R_LARCH_ADD8                        47+#define R_LARCH_ADD16                       48+#define R_LARCH_ADD24                       49+#define R_LARCH_ADD32                       50+#define R_LARCH_ADD64                       51+#define R_LARCH_SUB8                        52+#define R_LARCH_SUB16                       53+#define R_LARCH_SUB24                       54+#define R_LARCH_SUB32                       55+#define R_LARCH_SUB64                       56+#define R_LARCH_GNU_VTINHERIT               57+#define R_LARCH_GNU_VTENTRY                 58+#define R_LARCH_B16                         64+#define R_LARCH_B21                         65+#define R_LARCH_B26                         66+#define R_LARCH_ABS_HI20                    67+#define R_LARCH_ABS_LO12                    68+#define R_LARCH_ABS64_LO20                  69+#define R_LARCH_ABS64_HI12                  70+#define R_LARCH_PCALA_HI20                  71+#define R_LARCH_PCALA_LO12                  72+#define R_LARCH_PCALA64_LO20                73+#define R_LARCH_PCALA64_HI12                74+#define R_LARCH_GOT_PC_HI20                 75+#define R_LARCH_GOT_PC_LO12                 76+#define R_LARCH_GOT64_PC_LO20               77+#define R_LARCH_GOT64_PC_HI12               78+#define R_LARCH_GOT_HI20                    79+#define R_LARCH_GOT_LO12                    80+#define R_LARCH_GOT64_LO20                  81+#define R_LARCH_GOT64_HI12                  82+#define R_LARCH_TLS_LE_HI20                 83+#define R_LARCH_TLS_LE_LO12                 84+#define R_LARCH_TLS_LE64_LO20               85+#define R_LARCH_TLS_LE64_HI12               86+#define R_LARCH_TLS_IE_PC_HI20              87+#define R_LARCH_TLS_IE_PC_LO12              88+#define R_LARCH_TLS_IE64_PC_LO20            89+#define R_LARCH_TLS_IE64_PC_HI12            90+#define R_LARCH_TLS_IE_HI20                 91+#define R_LARCH_TLS_IE_LO12                 92+#define R_LARCH_TLS_IE64_LO20               93+#define R_LARCH_TLS_IE64_HI12               94+#define R_LARCH_TLS_LD_PC_HI20              95+#define R_LARCH_TLS_LD_HI20                 96+#define R_LARCH_TLS_GD_PC_HI20              97+#define R_LARCH_TLS_GD_HI20                 98+#define R_LARCH_32_PCREL                    99+#define R_LARCH_RELAX                       100++#ifdef __cplusplus+}+#endif+++#endif
+ musl-include/aarch64/endian.h view
@@ -0,0 +1,80 @@+#ifndef _ENDIAN_H+#define _ENDIAN_H++#include <features.h>++#define __NEED_uint16_t+#define __NEED_uint32_t+#define __NEED_uint64_t++#include <bits/alltypes.h>++#define __PDP_ENDIAN 3412++#define BIG_ENDIAN __BIG_ENDIAN+#define LITTLE_ENDIAN __LITTLE_ENDIAN+#define PDP_ENDIAN __PDP_ENDIAN+#define BYTE_ORDER __BYTE_ORDER++static __inline uint16_t __bswap16(uint16_t __x)+{+	return __x<<8 | __x>>8;+}++static __inline uint32_t __bswap32(uint32_t __x)+{+	return __x>>24 | __x>>8&0xff00 | __x<<8&0xff0000 | __x<<24;+}++static __inline uint64_t __bswap64(uint64_t __x)+{+	return __bswap32(__x)+0ULL<<32 | __bswap32(__x>>32);+}++#if __BYTE_ORDER == __LITTLE_ENDIAN+#define htobe16(x) __bswap16(x)+#define be16toh(x) __bswap16(x)+#define htobe32(x) __bswap32(x)+#define be32toh(x) __bswap32(x)+#define htobe64(x) __bswap64(x)+#define be64toh(x) __bswap64(x)+#define htole16(x) (uint16_t)(x)+#define le16toh(x) (uint16_t)(x)+#define htole32(x) (uint32_t)(x)+#define le32toh(x) (uint32_t)(x)+#define htole64(x) (uint64_t)(x)+#define le64toh(x) (uint64_t)(x)+#else+#define htobe16(x) (uint16_t)(x)+#define be16toh(x) (uint16_t)(x)+#define htobe32(x) (uint32_t)(x)+#define be32toh(x) (uint32_t)(x)+#define htobe64(x) (uint64_t)(x)+#define be64toh(x) (uint64_t)(x)+#define htole16(x) __bswap16(x)+#define le16toh(x) __bswap16(x)+#define htole32(x) __bswap32(x)+#define le32toh(x) __bswap32(x)+#define htole64(x) __bswap64(x)+#define le64toh(x) __bswap64(x)+#endif++#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE)+#if __BYTE_ORDER == __LITTLE_ENDIAN+#define betoh16(x) __bswap16(x)+#define betoh32(x) __bswap32(x)+#define betoh64(x) __bswap64(x)+#define letoh16(x) (uint16_t)(x)+#define letoh32(x) (uint32_t)(x)+#define letoh64(x) (uint64_t)(x)+#else+#define betoh16(x) (uint16_t)(x)+#define betoh32(x) (uint32_t)(x)+#define betoh64(x) (uint64_t)(x)+#define letoh16(x) __bswap16(x)+#define letoh32(x) __bswap32(x)+#define letoh64(x) __bswap64(x)+#endif+#endif++#endif
+ musl-include/aarch64/err.h view
@@ -0,0 +1,25 @@+#ifndef _ERR_H+#define _ERR_H++#include <features.h>+#include <stdarg.h>++#ifdef __cplusplus+extern "C" {+#endif++void warn(const char *, ...);+void vwarn(const char *, va_list);+void warnx(const char *, ...);+void vwarnx(const char *, va_list);++_Noreturn void err(int, const char *, ...);+_Noreturn void verr(int, const char *, va_list);+_Noreturn void errx(int, const char *, ...);+_Noreturn void verrx(int, const char *, va_list);++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/aarch64/errno.h view
@@ -0,0 +1,27 @@+#ifndef	_ERRNO_H+#define _ERRNO_H++#ifdef __cplusplus+extern "C" {+#endif++#include <features.h>++#include <bits/errno.h>++#ifdef __GNUC__+__attribute__((const))+#endif+int *__errno_location(void);+#define errno (*__errno_location())++#ifdef _GNU_SOURCE+extern char *program_invocation_short_name, *program_invocation_name;+#endif++#ifdef __cplusplus+}+#endif++#endif+
+ musl-include/aarch64/fcntl.h view
@@ -0,0 +1,218 @@+#ifndef	_FCNTL_H+#define	_FCNTL_H++#ifdef __cplusplus+extern "C" {+#endif++#include <features.h>++#define __NEED_off_t+#define __NEED_pid_t+#define __NEED_mode_t++#ifdef _GNU_SOURCE+#define __NEED_size_t+#define __NEED_ssize_t+#define __NEED_struct_iovec+#endif++#include <bits/alltypes.h>++#include <bits/fcntl.h>++struct flock {+	short l_type;+	short l_whence;+	off_t l_start;+	off_t l_len;+	pid_t l_pid;+};++int creat(const char *, mode_t);+int fcntl(int, int, ...);+int open(const char *, int, ...);+int openat(int, const char *, int, ...);+int posix_fadvise(int, off_t, off_t, int);+int posix_fallocate(int, off_t, off_t);++#define O_SEARCH   O_PATH+#define O_EXEC     O_PATH+#define O_TTY_INIT 0++#define O_ACCMODE (03|O_SEARCH)+#define O_RDONLY  00+#define O_WRONLY  01+#define O_RDWR    02++#define F_OFD_GETLK 36+#define F_OFD_SETLK 37+#define F_OFD_SETLKW 38++#define F_DUPFD_CLOEXEC 1030++#define F_RDLCK 0+#define F_WRLCK 1+#define F_UNLCK 2++#define FD_CLOEXEC 1++#define AT_FDCWD (-100)+#define AT_SYMLINK_NOFOLLOW 0x100+#define AT_REMOVEDIR 0x200+#define AT_SYMLINK_FOLLOW 0x400+#define AT_EACCESS 0x200++#define POSIX_FADV_NORMAL     0+#define POSIX_FADV_RANDOM     1+#define POSIX_FADV_SEQUENTIAL 2+#define POSIX_FADV_WILLNEED   3+#ifndef POSIX_FADV_DONTNEED+#define POSIX_FADV_DONTNEED   4+#define POSIX_FADV_NOREUSE    5+#endif++#undef SEEK_SET+#undef SEEK_CUR+#undef SEEK_END+#define SEEK_SET 0+#define SEEK_CUR 1+#define SEEK_END 2++#ifndef S_IRUSR+#define S_ISUID 04000+#define S_ISGID 02000+#define S_ISVTX 01000+#define S_IRUSR 0400+#define S_IWUSR 0200+#define S_IXUSR 0100+#define S_IRWXU 0700+#define S_IRGRP 0040+#define S_IWGRP 0020+#define S_IXGRP 0010+#define S_IRWXG 0070+#define S_IROTH 0004+#define S_IWOTH 0002+#define S_IXOTH 0001+#define S_IRWXO 0007+#endif++#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE)+#define AT_NO_AUTOMOUNT 0x800+#define AT_EMPTY_PATH 0x1000+#define AT_STATX_SYNC_TYPE 0x6000+#define AT_STATX_SYNC_AS_STAT 0x0000+#define AT_STATX_FORCE_SYNC 0x2000+#define AT_STATX_DONT_SYNC 0x4000+#define AT_RECURSIVE 0x8000++#define FAPPEND O_APPEND+#define FFSYNC O_SYNC+#define FASYNC O_ASYNC+#define FNONBLOCK O_NONBLOCK+#define FNDELAY O_NDELAY++#define F_OK 0+#define R_OK 4+#define W_OK 2+#define X_OK 1+#define F_ULOCK 0+#define F_LOCK  1+#define F_TLOCK 2+#define F_TEST  3++#define F_SETLEASE	1024+#define F_GETLEASE	1025+#define F_NOTIFY	1026+#define F_CANCELLK	1029+#define F_SETPIPE_SZ	1031+#define F_GETPIPE_SZ	1032+#define F_ADD_SEALS	1033+#define F_GET_SEALS	1034++#define F_SEAL_SEAL	0x0001+#define F_SEAL_SHRINK	0x0002+#define F_SEAL_GROW	0x0004+#define F_SEAL_WRITE	0x0008+#define F_SEAL_FUTURE_WRITE	0x0010++#define F_GET_RW_HINT		1035+#define F_SET_RW_HINT		1036+#define F_GET_FILE_RW_HINT	1037+#define F_SET_FILE_RW_HINT	1038++#define RWF_WRITE_LIFE_NOT_SET	0+#define RWH_WRITE_LIFE_NONE	1+#define RWH_WRITE_LIFE_SHORT	2+#define RWH_WRITE_LIFE_MEDIUM	3+#define RWH_WRITE_LIFE_LONG	4+#define RWH_WRITE_LIFE_EXTREME	5++#define DN_ACCESS	0x00000001+#define DN_MODIFY	0x00000002+#define DN_CREATE	0x00000004+#define DN_DELETE	0x00000008+#define DN_RENAME	0x00000010+#define DN_ATTRIB	0x00000020+#define DN_MULTISHOT	0x80000000++int lockf(int, int, off_t);+#endif++#if defined(_GNU_SOURCE)+#define F_OWNER_TID 0+#define F_OWNER_PID 1+#define F_OWNER_PGRP 2+#define F_OWNER_GID 2+struct file_handle {+	unsigned handle_bytes;+	int handle_type;+	unsigned char f_handle[];+};+struct f_owner_ex {+	int type;+	pid_t pid;+};+#define FALLOC_FL_KEEP_SIZE 1+#define FALLOC_FL_PUNCH_HOLE 2+#define MAX_HANDLE_SZ 128+#define SYNC_FILE_RANGE_WAIT_BEFORE 1+#define SYNC_FILE_RANGE_WRITE 2+#define SYNC_FILE_RANGE_WAIT_AFTER 4+#define SPLICE_F_MOVE 1+#define SPLICE_F_NONBLOCK 2+#define SPLICE_F_MORE 4+#define SPLICE_F_GIFT 8+int fallocate(int, int, off_t, off_t);+int name_to_handle_at(int, const char *, struct file_handle *, int *, int);+int open_by_handle_at(int, struct file_handle *, int);+ssize_t readahead(int, off_t, size_t);+int sync_file_range(int, off_t, off_t, unsigned);+ssize_t vmsplice(int, const struct iovec *, size_t, unsigned);+ssize_t splice(int, off_t *, int, off_t *, size_t, unsigned);+ssize_t tee(int, int, size_t, unsigned);+#define loff_t off_t+#endif++#if defined(_LARGEFILE64_SOURCE)+#define F_GETLK64 F_GETLK+#define F_SETLK64 F_SETLK+#define F_SETLKW64 F_SETLKW+#define flock64 flock+#define open64 open+#define openat64 openat+#define creat64 creat+#define lockf64 lockf+#define posix_fadvise64 posix_fadvise+#define posix_fallocate64 posix_fallocate+#define off64_t off_t+#if defined(_GNU_SOURCE)+#define fallocate64 fallocate+#endif+#endif++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/aarch64/features.h view
@@ -0,0 +1,40 @@+#ifndef _FEATURES_H+#define _FEATURES_H++#if defined(_ALL_SOURCE) && !defined(_GNU_SOURCE)+#define _GNU_SOURCE 1+#endif++#if defined(_DEFAULT_SOURCE) && !defined(_BSD_SOURCE)+#define _BSD_SOURCE 1+#endif++#if !defined(_POSIX_SOURCE) && !defined(_POSIX_C_SOURCE) \+ && !defined(_XOPEN_SOURCE) && !defined(_GNU_SOURCE) \+ && !defined(_BSD_SOURCE) && !defined(__STRICT_ANSI__)+#define _BSD_SOURCE 1+#define _XOPEN_SOURCE 700+#endif++#if __STDC_VERSION__ >= 199901L+#define __restrict restrict+#elif !defined(__GNUC__)+#define __restrict+#endif++#if __STDC_VERSION__ >= 199901L || defined(__cplusplus)+#define __inline inline+#elif !defined(__GNUC__)+#define __inline+#endif++#if __STDC_VERSION__ >= 201112L+#elif defined(__GNUC__)+#define _Noreturn __attribute__((__noreturn__))+#else+#define _Noreturn+#endif++#define __REDIR(x,y) __typeof__(x) x __asm__(#y)++#endif
+ musl-include/aarch64/fenv.h view
@@ -0,0 +1,28 @@+#ifndef _FENV_H+#define _FENV_H++#ifdef __cplusplus+extern "C" {+#endif++#include <bits/fenv.h>++int feclearexcept(int);+int fegetexceptflag(fexcept_t *, int);+int feraiseexcept(int);+int fesetexceptflag(const fexcept_t *, int);+int fetestexcept(int);++int fegetround(void);+int fesetround(int);++int fegetenv(fenv_t *);+int feholdexcept(fenv_t *);+int fesetenv(const fenv_t *);+int feupdateenv(const fenv_t *);++#ifdef __cplusplus+}+#endif+#endif+
+ musl-include/aarch64/float.h view
@@ -0,0 +1,52 @@+#ifndef _FLOAT_H+#define _FLOAT_H++#ifdef __cplusplus+extern "C" {+#endif++int __flt_rounds(void);+#define FLT_ROUNDS (__flt_rounds())++#define FLT_RADIX 2++#define FLT_TRUE_MIN 1.40129846432481707092e-45F+#define FLT_MIN 1.17549435082228750797e-38F+#define FLT_MAX 3.40282346638528859812e+38F+#define FLT_EPSILON 1.1920928955078125e-07F++#define FLT_MANT_DIG 24+#define FLT_MIN_EXP (-125)+#define FLT_MAX_EXP 128+#define FLT_HAS_SUBNORM 1++#define FLT_DIG 6+#define FLT_DECIMAL_DIG 9+#define FLT_MIN_10_EXP (-37)+#define FLT_MAX_10_EXP 38++#define DBL_TRUE_MIN 4.94065645841246544177e-324+#define DBL_MIN 2.22507385850720138309e-308+#define DBL_MAX 1.79769313486231570815e+308+#define DBL_EPSILON 2.22044604925031308085e-16++#define DBL_MANT_DIG 53+#define DBL_MIN_EXP (-1021)+#define DBL_MAX_EXP 1024+#define DBL_HAS_SUBNORM 1++#define DBL_DIG 15+#define DBL_DECIMAL_DIG 17+#define DBL_MIN_10_EXP (-307)+#define DBL_MAX_10_EXP 308++#define LDBL_HAS_SUBNORM 1+#define LDBL_DECIMAL_DIG DECIMAL_DIG++#include <bits/float.h>++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/aarch64/fmtmsg.h view
@@ -0,0 +1,47 @@+#ifndef _FMTMSG_H+#define _FMTMSG_H++#ifdef __cplusplus+extern "C" {+#endif++#define MM_HARD		1+#define MM_SOFT		2+#define MM_FIRM		4++#define MM_APPL		8+#define MM_UTIL		16+#define MM_OPSYS	32++#define MM_RECOVER	64+#define MM_NRECOV	128++#define MM_PRINT	256+#define MM_CONSOLE	512++#define MM_NULLMC	0L++#define MM_HALT		1+#define MM_ERROR	2+#define MM_WARNING	3+#define MM_INFO		4+#define MM_NOSEV	0++#define MM_OK		0+#define MM_NOTOK	(-1)+#define MM_NOMSG	1+#define MM_NOCON	4++#define MM_NULLLBL	((char*)0)+#define MM_NULLTXT	((char*)0)+#define MM_NULLACT	((char*)0)+#define MM_NULLTAG	((char*)0)+#define MM_NULLSEV	0++int fmtmsg(long, const char *, int, const char *, const char *, const char *);++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/aarch64/fnmatch.h view
@@ -0,0 +1,24 @@+#ifndef	_FNMATCH_H+#define	_FNMATCH_H++#ifdef __cplusplus+extern "C" {+#endif++#define	FNM_PATHNAME 0x1+#define	FNM_NOESCAPE 0x2+#define	FNM_PERIOD   0x4+#define	FNM_LEADING_DIR	0x8           +#define	FNM_CASEFOLD	0x10+#define	FNM_FILE_NAME	FNM_PATHNAME++#define	FNM_NOMATCH 1+#define FNM_NOSYS   (-1)++int fnmatch(const char *, const char *, int);++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/aarch64/ftw.h view
@@ -0,0 +1,41 @@+#ifndef _FTW_H+#define	_FTW_H++#ifdef __cplusplus+extern "C" {+#endif++#include <features.h>+#include <sys/stat.h>++#define FTW_F   1+#define FTW_D   2+#define FTW_DNR 3+#define FTW_NS  4+#define FTW_SL  5+#define FTW_DP  6+#define FTW_SLN 7++#define FTW_PHYS  1+#define FTW_MOUNT 2+#define FTW_CHDIR 4+#define FTW_DEPTH 8++struct FTW {+	int base;+	int level;+};++int ftw(const char *, int (*)(const char *, const struct stat *, int), int);+int nftw(const char *, int (*)(const char *, const struct stat *, int, struct FTW *), int, int);++#if defined(_LARGEFILE64_SOURCE)+#define ftw64 ftw+#define nftw64 nftw+#endif++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/aarch64/getopt.h view
@@ -0,0 +1,30 @@+#ifndef _GETOPT_H+#define _GETOPT_H++#ifdef __cplusplus+extern "C" {+#endif++int getopt(int, char * const [], const char *);+extern char *optarg;+extern int optind, opterr, optopt, optreset;++struct option {+	const char *name;+	int has_arg;+	int *flag;+	int val;+};++int getopt_long(int, char *const *, const char *, const struct option *, int *);+int getopt_long_only(int, char *const *, const char *, const struct option *, int *);++#define no_argument        0+#define required_argument  1+#define optional_argument  2++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/aarch64/glob.h view
@@ -0,0 +1,52 @@+#ifndef	_GLOB_H+#define	_GLOB_H++#ifdef __cplusplus+extern "C" {+#endif++#include <features.h>++#define __NEED_size_t++#include <bits/alltypes.h>++typedef struct {+	size_t gl_pathc;+	char **gl_pathv;+	size_t gl_offs;+	int __dummy1;+	void *__dummy2[5];+} glob_t;++int  glob(const char *__restrict, int, int (*)(const char *, int), glob_t *__restrict);+void globfree(glob_t *);++#define GLOB_ERR      0x01+#define GLOB_MARK     0x02+#define GLOB_NOSORT   0x04+#define GLOB_DOOFFS   0x08+#define GLOB_NOCHECK  0x10+#define GLOB_APPEND   0x20+#define GLOB_NOESCAPE 0x40+#define	GLOB_PERIOD   0x80++#define GLOB_TILDE       0x1000+#define GLOB_TILDE_CHECK 0x4000++#define GLOB_NOSPACE 1+#define GLOB_ABORTED 2+#define GLOB_NOMATCH 3+#define GLOB_NOSYS   4++#if defined(_LARGEFILE64_SOURCE)+#define glob64 glob+#define globfree64 globfree+#define glob64_t glob_t+#endif++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/aarch64/grp.h view
@@ -0,0 +1,53 @@+#ifndef	_GRP_H+#define	_GRP_H++#ifdef __cplusplus+extern "C" {+#endif++#include <features.h>++#define __NEED_size_t+#define __NEED_gid_t++#ifdef _GNU_SOURCE+#define __NEED_FILE+#endif++#include <bits/alltypes.h>++struct group {+	char *gr_name;+	char *gr_passwd;+	gid_t gr_gid;+	char **gr_mem;+};++struct group  *getgrgid(gid_t);+struct group  *getgrnam(const char *);++int getgrgid_r(gid_t, struct group *, char *, size_t, struct group **);+int getgrnam_r(const char *, struct group *, char *, size_t, struct group **);++#if defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) || defined(_BSD_SOURCE)+struct group  *getgrent(void);+void           endgrent(void);+void           setgrent(void);+#endif++#ifdef _GNU_SOURCE+struct group  *fgetgrent(FILE *);+int putgrent(const struct group *, FILE *);+#endif++#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE)+int getgrouplist(const char *, gid_t, gid_t *, int *);+int setgroups(size_t, const gid_t *);+int initgroups(const char *, gid_t);+#endif++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/aarch64/iconv.h view
@@ -0,0 +1,24 @@+#ifndef _ICONV_H+#define _ICONV_H++#ifdef __cplusplus+extern "C" {+#endif++#include <features.h>++#define __NEED_size_t++#include <bits/alltypes.h>++typedef void *iconv_t;++iconv_t iconv_open(const char *, const char *);+size_t iconv(iconv_t, char **__restrict, size_t *__restrict, char **__restrict, size_t *__restrict);+int iconv_close(iconv_t);++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/aarch64/ifaddrs.h view
@@ -0,0 +1,35 @@+#ifndef _IFADDRS_H+#define _IFADDRS_H++#ifdef __cplusplus+extern "C" {+#endif++#include <features.h>+#include <netinet/in.h>+#include <sys/socket.h>++struct ifaddrs {+	struct ifaddrs *ifa_next;+	char *ifa_name;+	unsigned ifa_flags;+	struct sockaddr *ifa_addr;+	struct sockaddr *ifa_netmask;+	union {+		struct sockaddr *ifu_broadaddr;+		struct sockaddr *ifu_dstaddr;+	} ifa_ifu;+	void *ifa_data;+};+#define ifa_broadaddr ifa_ifu.ifu_broadaddr+#define ifa_dstaddr ifa_ifu.ifu_dstaddr++void freeifaddrs(struct ifaddrs *);+int getifaddrs(struct ifaddrs **);++#ifdef __cplusplus+}+#endif++#endif+
+ musl-include/aarch64/inttypes.h view
@@ -0,0 +1,229 @@+#ifndef _INTTYPES_H+#define _INTTYPES_H++#ifdef __cplusplus+extern "C" {+#endif++#include <features.h>+#include <stdint.h>++#define __NEED_wchar_t+#include <bits/alltypes.h>++typedef struct { intmax_t quot, rem; } imaxdiv_t;++intmax_t imaxabs(intmax_t);+imaxdiv_t imaxdiv(intmax_t, intmax_t);++intmax_t strtoimax(const char *__restrict, char **__restrict, int);+uintmax_t strtoumax(const char *__restrict, char **__restrict, int);++intmax_t wcstoimax(const wchar_t *__restrict, wchar_t **__restrict, int);+uintmax_t wcstoumax(const wchar_t *__restrict, wchar_t **__restrict, int);++#if UINTPTR_MAX == UINT64_MAX+#define __PRI64  "l"+#define __PRIPTR "l"+#else+#define __PRI64  "ll"+#define __PRIPTR ""+#endif++#define PRId8  "d"+#define PRId16 "d"+#define PRId32 "d"+#define PRId64 __PRI64 "d"++#define PRIdLEAST8  "d"+#define PRIdLEAST16 "d"+#define PRIdLEAST32 "d"+#define PRIdLEAST64 __PRI64 "d"++#define PRIdFAST8  "d"+#define PRIdFAST16 "d"+#define PRIdFAST32 "d"+#define PRIdFAST64 __PRI64 "d"++#define PRIi8  "i"+#define PRIi16 "i"+#define PRIi32 "i"+#define PRIi64 __PRI64 "i"++#define PRIiLEAST8  "i"+#define PRIiLEAST16 "i"+#define PRIiLEAST32 "i"+#define PRIiLEAST64 __PRI64 "i"++#define PRIiFAST8  "i"+#define PRIiFAST16 "i"+#define PRIiFAST32 "i"+#define PRIiFAST64 __PRI64 "i"++#define PRIo8  "o"+#define PRIo16 "o"+#define PRIo32 "o"+#define PRIo64 __PRI64 "o"++#define PRIoLEAST8  "o"+#define PRIoLEAST16 "o"+#define PRIoLEAST32 "o"+#define PRIoLEAST64 __PRI64 "o"++#define PRIoFAST8  "o"+#define PRIoFAST16 "o"+#define PRIoFAST32 "o"+#define PRIoFAST64 __PRI64 "o"++#define PRIu8  "u"+#define PRIu16 "u"+#define PRIu32 "u"+#define PRIu64 __PRI64 "u"++#define PRIuLEAST8  "u"+#define PRIuLEAST16 "u"+#define PRIuLEAST32 "u"+#define PRIuLEAST64 __PRI64 "u"++#define PRIuFAST8  "u"+#define PRIuFAST16 "u"+#define PRIuFAST32 "u"+#define PRIuFAST64 __PRI64 "u"++#define PRIx8  "x"+#define PRIx16 "x"+#define PRIx32 "x"+#define PRIx64 __PRI64 "x"++#define PRIxLEAST8  "x"+#define PRIxLEAST16 "x"+#define PRIxLEAST32 "x"+#define PRIxLEAST64 __PRI64 "x"++#define PRIxFAST8  "x"+#define PRIxFAST16 "x"+#define PRIxFAST32 "x"+#define PRIxFAST64 __PRI64 "x"++#define PRIX8  "X"+#define PRIX16 "X"+#define PRIX32 "X"+#define PRIX64 __PRI64 "X"++#define PRIXLEAST8  "X"+#define PRIXLEAST16 "X"+#define PRIXLEAST32 "X"+#define PRIXLEAST64 __PRI64 "X"++#define PRIXFAST8  "X"+#define PRIXFAST16 "X"+#define PRIXFAST32 "X"+#define PRIXFAST64 __PRI64 "X"++#define PRIdMAX __PRI64 "d"+#define PRIiMAX __PRI64 "i"+#define PRIoMAX __PRI64 "o"+#define PRIuMAX __PRI64 "u"+#define PRIxMAX __PRI64 "x"+#define PRIXMAX __PRI64 "X"++#define PRIdPTR __PRIPTR "d"+#define PRIiPTR __PRIPTR "i"+#define PRIoPTR __PRIPTR "o"+#define PRIuPTR __PRIPTR "u"+#define PRIxPTR __PRIPTR "x"+#define PRIXPTR __PRIPTR "X"++#define SCNd8   "hhd"+#define SCNd16  "hd"+#define SCNd32  "d"+#define SCNd64  __PRI64 "d"++#define SCNdLEAST8  "hhd"+#define SCNdLEAST16 "hd"+#define SCNdLEAST32 "d"+#define SCNdLEAST64 __PRI64 "d"++#define SCNdFAST8  "hhd"+#define SCNdFAST16 "d"+#define SCNdFAST32 "d"+#define SCNdFAST64 __PRI64 "d"++#define SCNi8   "hhi"+#define SCNi16  "hi"+#define SCNi32  "i"+#define SCNi64  __PRI64 "i"++#define SCNiLEAST8  "hhi"+#define SCNiLEAST16 "hi"+#define SCNiLEAST32 "i"+#define SCNiLEAST64 __PRI64 "i"++#define SCNiFAST8  "hhi"+#define SCNiFAST16 "i"+#define SCNiFAST32 "i"+#define SCNiFAST64 __PRI64 "i"++#define SCNu8   "hhu"+#define SCNu16  "hu"+#define SCNu32  "u"+#define SCNu64  __PRI64 "u"++#define SCNuLEAST8  "hhu"+#define SCNuLEAST16 "hu"+#define SCNuLEAST32 "u"+#define SCNuLEAST64 __PRI64 "u"++#define SCNuFAST8 "hhu"+#define SCNuFAST16 "u"+#define SCNuFAST32 "u"+#define SCNuFAST64 __PRI64 "u"++#define SCNo8   "hho"+#define SCNo16  "ho"+#define SCNo32  "o"+#define SCNo64  __PRI64 "o"++#define SCNoLEAST8  "hho"+#define SCNoLEAST16 "ho"+#define SCNoLEAST32 "o"+#define SCNoLEAST64 __PRI64 "o"++#define SCNoFAST8  "hho"+#define SCNoFAST16 "o"+#define SCNoFAST32 "o"+#define SCNoFAST64 __PRI64 "o"++#define SCNx8   "hhx"+#define SCNx16  "hx"+#define SCNx32  "x"+#define SCNx64  __PRI64 "x"++#define SCNxLEAST8  "hhx"+#define SCNxLEAST16 "hx"+#define SCNxLEAST32 "x"+#define SCNxLEAST64 __PRI64 "x"++#define SCNxFAST8  "hhx"+#define SCNxFAST16 "x"+#define SCNxFAST32 "x"+#define SCNxFAST64 __PRI64 "x"++#define SCNdMAX __PRI64 "d"+#define SCNiMAX __PRI64 "i"+#define SCNoMAX __PRI64 "o"+#define SCNuMAX __PRI64 "u"+#define SCNxMAX __PRI64 "x"++#define SCNdPTR __PRIPTR "d"+#define SCNiPTR __PRIPTR "i"+#define SCNoPTR __PRIPTR "o"+#define SCNuPTR __PRIPTR "u"+#define SCNxPTR __PRIPTR "x"++#ifdef __cplusplus+}+#endif++#endif+
+ musl-include/aarch64/iso646.h view
@@ -0,0 +1,20 @@+#ifndef _ISO646_H+#define _ISO646_H++#ifndef __cplusplus++#define and    &&+#define and_eq &=+#define bitand &+#define bitor  |+#define compl  ~+#define not    !+#define not_eq !=+#define or     ||+#define or_eq  |=+#define xor    ^+#define xor_eq ^=++#endif++#endif
+ musl-include/aarch64/langinfo.h view
@@ -0,0 +1,98 @@+#ifndef _LANGINFO_H+#define _LANGINFO_H++#ifdef __cplusplus+extern "C" {+#endif++#include <features.h>+#include <nl_types.h>++#define __NEED_locale_t++#include <bits/alltypes.h>++#define ABDAY_1 0x20000+#define ABDAY_2 0x20001+#define ABDAY_3 0x20002+#define ABDAY_4 0x20003+#define ABDAY_5 0x20004+#define ABDAY_6 0x20005+#define ABDAY_7 0x20006++#define DAY_1 0x20007+#define DAY_2 0x20008+#define DAY_3 0x20009+#define DAY_4 0x2000A+#define DAY_5 0x2000B+#define DAY_6 0x2000C+#define DAY_7 0x2000D++#define ABMON_1 0x2000E+#define ABMON_2 0x2000F+#define ABMON_3 0x20010+#define ABMON_4 0x20011+#define ABMON_5 0x20012+#define ABMON_6 0x20013+#define ABMON_7 0x20014+#define ABMON_8 0x20015+#define ABMON_9 0x20016+#define ABMON_10 0x20017+#define ABMON_11 0x20018+#define ABMON_12 0x20019++#define MON_1 0x2001A+#define MON_2 0x2001B+#define MON_3 0x2001C+#define MON_4 0x2001D+#define MON_5 0x2001E+#define MON_6 0x2001F+#define MON_7 0x20020+#define MON_8 0x20021+#define MON_9 0x20022+#define MON_10 0x20023+#define MON_11 0x20024+#define MON_12 0x20025++#define AM_STR 0x20026+#define PM_STR 0x20027++#define D_T_FMT 0x20028+#define D_FMT 0x20029+#define T_FMT 0x2002A+#define T_FMT_AMPM 0x2002B++#define ERA 0x2002C+#define ERA_D_FMT 0x2002E+#define ALT_DIGITS 0x2002F+#define ERA_D_T_FMT 0x20030+#define ERA_T_FMT 0x20031++#define CODESET 14++#define CRNCYSTR 0x4000F++#define RADIXCHAR 0x10000+#define THOUSEP 0x10001+#define YESEXPR 0x50000+#define NOEXPR 0x50001++#define _NL_LOCALE_NAME(cat) (((cat)<<16) | 0xffff)++#if defined(_GNU_SOURCE)+#define NL_LOCALE_NAME(cat) _NL_LOCALE_NAME(cat)+#endif++#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE)+#define YESSTR 0x50002+#define NOSTR 0x50003+#endif++char *nl_langinfo(nl_item);+char *nl_langinfo_l(nl_item, locale_t);++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/aarch64/lastlog.h view
@@ -0,0 +1,1 @@+#include <utmp.h>
+ musl-include/aarch64/libgen.h view
@@ -0,0 +1,15 @@+#ifndef _LIBGEN_H+#define _LIBGEN_H++#ifdef __cplusplus+extern "C" {+#endif++char *dirname(char *);+char *basename(char *);++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/aarch64/libintl.h view
@@ -0,0 +1,33 @@+#ifndef _LIBINTL_H+#define _LIBINTL_H++#ifdef __cplusplus+extern "C" {+#endif++#define __USE_GNU_GETTEXT 1+#define __GNU_GETTEXT_SUPPORTED_REVISION(major) ((major) == 0 ? 1 : -1)++#if __GNUC__ >= 3+#define __fa(n) __attribute__ ((__format_arg__ (n)))+#else+#define __fa(n)+#endif++char *gettext(const char *) __fa(1);+char *dgettext(const char *, const char *) __fa(2);+char *dcgettext(const char *, const char *, int) __fa(2);+char *ngettext(const char *, const char *, unsigned long) __fa(1) __fa(2);+char *dngettext(const char *, const char *, const char *, unsigned long) __fa(2) __fa(3);+char *dcngettext(const char *, const char *, const char *, unsigned long, int) __fa(2) __fa(3);+char *textdomain(const char *);+char *bindtextdomain (const char *, const char *);+char *bind_textdomain_codeset(const char *, const char *);++#undef __fa++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/aarch64/limits.h view
@@ -0,0 +1,166 @@+#ifndef _LIMITS_H+#define _LIMITS_H++#include <features.h>++#include <bits/alltypes.h> /* __LONG_MAX */++/* Support signed or unsigned plain-char */++#if '\xff' > 0+#define CHAR_MIN 0+#define CHAR_MAX 255+#else+#define CHAR_MIN (-128)+#define CHAR_MAX 127+#endif++#define CHAR_BIT 8+#define SCHAR_MIN (-128)+#define SCHAR_MAX 127+#define UCHAR_MAX 255+#define SHRT_MIN  (-1-0x7fff)+#define SHRT_MAX  0x7fff+#define USHRT_MAX 0xffff+#define INT_MIN  (-1-0x7fffffff)+#define INT_MAX  0x7fffffff+#define UINT_MAX 0xffffffffU+#define LONG_MIN (-LONG_MAX-1)+#define LONG_MAX __LONG_MAX+#define ULONG_MAX (2UL*LONG_MAX+1)+#define LLONG_MIN (-LLONG_MAX-1)+#define LLONG_MAX  0x7fffffffffffffffLL+#define ULLONG_MAX (2ULL*LLONG_MAX+1)++#define MB_LEN_MAX 4++#if defined(_POSIX_SOURCE) || defined(_POSIX_C_SOURCE) \+ || defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) || defined(_BSD_SOURCE)++#include <bits/limits.h>++#define PIPE_BUF 4096+#define FILESIZEBITS 64+#ifndef NAME_MAX+#define NAME_MAX 255+#endif+#define PATH_MAX 4096+#define NGROUPS_MAX 32+#define ARG_MAX 131072+#define IOV_MAX 1024+#define SYMLOOP_MAX 40+#define WORD_BIT 32+#define SSIZE_MAX LONG_MAX+#define TZNAME_MAX 6+#define TTY_NAME_MAX 32+#define HOST_NAME_MAX 255++#if LONG_MAX == 0x7fffffffL+#define LONG_BIT 32+#else+#define LONG_BIT 64+#endif++/* Implementation choices... */++#define PTHREAD_KEYS_MAX 128+#define PTHREAD_STACK_MIN 2048+#define PTHREAD_DESTRUCTOR_ITERATIONS 4+#define SEM_VALUE_MAX 0x7fffffff+#define SEM_NSEMS_MAX 256+#define DELAYTIMER_MAX 0x7fffffff+#define MQ_PRIO_MAX 32768+#define LOGIN_NAME_MAX 256++/* Arbitrary numbers... */++#define BC_BASE_MAX 99+#define BC_DIM_MAX 2048+#define BC_SCALE_MAX 99+#define BC_STRING_MAX 1000+#define CHARCLASS_NAME_MAX 14+#define COLL_WEIGHTS_MAX 2+#define EXPR_NEST_MAX 32+#define LINE_MAX 4096+#define RE_DUP_MAX 255++#define NL_ARGMAX 9+#define NL_MSGMAX 32767+#define NL_SETMAX 255+#define NL_TEXTMAX 2048++#endif++#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE) || defined(_XOPEN_SOURCE)++#ifdef PAGESIZE+#define PAGE_SIZE PAGESIZE+#endif+#define NZERO 20+#define NL_LANGMAX 32++#endif++#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE) \+ || (defined(_XOPEN_SOURCE) && _XOPEN_SOURCE+0 < 700)++#define NL_NMAX 16++#endif++/* POSIX/SUS requirements follow. These numbers come directly+ * from SUS and have nothing to do with the host system. */++#define _POSIX_AIO_LISTIO_MAX   2+#define _POSIX_AIO_MAX          1+#define _POSIX_ARG_MAX          4096+#define _POSIX_CHILD_MAX        25+#define _POSIX_CLOCKRES_MIN     20000000+#define _POSIX_DELAYTIMER_MAX   32+#define _POSIX_HOST_NAME_MAX    255+#define _POSIX_LINK_MAX         8+#define _POSIX_LOGIN_NAME_MAX   9+#define _POSIX_MAX_CANON        255+#define _POSIX_MAX_INPUT        255+#define _POSIX_MQ_OPEN_MAX      8+#define _POSIX_MQ_PRIO_MAX      32+#define _POSIX_NAME_MAX         14+#define _POSIX_NGROUPS_MAX      8+#define _POSIX_OPEN_MAX         20+#define _POSIX_PATH_MAX         256+#define _POSIX_PIPE_BUF         512+#define _POSIX_RE_DUP_MAX       255+#define _POSIX_RTSIG_MAX        8+#define _POSIX_SEM_NSEMS_MAX    256+#define _POSIX_SEM_VALUE_MAX    32767+#define _POSIX_SIGQUEUE_MAX     32+#define _POSIX_SSIZE_MAX        32767+#define _POSIX_STREAM_MAX       8+#define _POSIX_SS_REPL_MAX      4+#define _POSIX_SYMLINK_MAX      255+#define _POSIX_SYMLOOP_MAX      8+#define _POSIX_THREAD_DESTRUCTOR_ITERATIONS 4+#define _POSIX_THREAD_KEYS_MAX  128+#define _POSIX_THREAD_THREADS_MAX 64+#define _POSIX_TIMER_MAX        32+#define _POSIX_TRACE_EVENT_NAME_MAX 30+#define _POSIX_TRACE_NAME_MAX   8+#define _POSIX_TRACE_SYS_MAX    8+#define _POSIX_TRACE_USER_EVENT_MAX 32+#define _POSIX_TTY_NAME_MAX     9+#define _POSIX_TZNAME_MAX       6+#define _POSIX2_BC_BASE_MAX     99+#define _POSIX2_BC_DIM_MAX      2048+#define _POSIX2_BC_SCALE_MAX    99+#define _POSIX2_BC_STRING_MAX   1000+#define _POSIX2_CHARCLASS_NAME_MAX 14+#define _POSIX2_COLL_WEIGHTS_MAX 2+#define _POSIX2_EXPR_NEST_MAX   32+#define _POSIX2_LINE_MAX        2048+#define _POSIX2_RE_DUP_MAX      255++#define _XOPEN_IOV_MAX          16+#define _XOPEN_NAME_MAX         255+#define _XOPEN_PATH_MAX         1024++#endif
+ musl-include/aarch64/link.h view
@@ -0,0 +1,53 @@+#ifndef _LINK_H+#define _LINK_H++#ifdef __cplusplus+extern "C" {+#endif++#include <elf.h>+#define __NEED_size_t+#define __NEED_uint32_t+#include <bits/alltypes.h>++#if UINTPTR_MAX > 0xffffffff+#define ElfW(type) Elf64_ ## type+#else+#define ElfW(type) Elf32_ ## type+#endif++#include <bits/link.h>++struct dl_phdr_info {+	ElfW(Addr) dlpi_addr;+	const char *dlpi_name;+	const ElfW(Phdr) *dlpi_phdr;+	ElfW(Half) dlpi_phnum;+	unsigned long long int dlpi_adds;+	unsigned long long int dlpi_subs;+	size_t dlpi_tls_modid;+	void *dlpi_tls_data;+};++struct link_map {+	ElfW(Addr) l_addr;+	char *l_name;+	ElfW(Dyn) *l_ld;+	struct link_map *l_next, *l_prev;+};++struct r_debug {+	int r_version;+	struct link_map *r_map;+	ElfW(Addr) r_brk;+	enum { RT_CONSISTENT, RT_ADD, RT_DELETE } r_state;+	ElfW(Addr) r_ldbase;+};++int dl_iterate_phdr(int (*)(struct dl_phdr_info *, size_t, void *), void *);++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/aarch64/locale.h view
@@ -0,0 +1,88 @@+#ifndef	_LOCALE_H+#define	_LOCALE_H++#ifdef __cplusplus+extern "C" {+#endif++#include <features.h>++#if __cplusplus >= 201103L+#define NULL nullptr+#elif defined(__cplusplus)+#define NULL 0L+#else+#define NULL ((void*)0)+#endif++#define LC_CTYPE    0+#define LC_NUMERIC  1+#define LC_TIME     2+#define LC_COLLATE  3+#define LC_MONETARY 4+#define LC_MESSAGES 5+#define LC_ALL      6++struct lconv {+	char *decimal_point;+	char *thousands_sep;+	char *grouping;++	char *int_curr_symbol;+	char *currency_symbol;+	char *mon_decimal_point;+	char *mon_thousands_sep;+	char *mon_grouping;+	char *positive_sign;+	char *negative_sign;+	char int_frac_digits;+	char frac_digits;+	char p_cs_precedes;+	char p_sep_by_space;+	char n_cs_precedes;+	char n_sep_by_space;+	char p_sign_posn;+	char n_sign_posn;+	char int_p_cs_precedes;+	char int_p_sep_by_space;+	char int_n_cs_precedes;+	char int_n_sep_by_space;+	char int_p_sign_posn;+	char int_n_sign_posn;+};+++char *setlocale (int, const char *);+struct lconv *localeconv(void);+++#if defined(_POSIX_SOURCE) || defined(_POSIX_C_SOURCE) \+ || defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) || defined(_BSD_SOURCE)++#define __NEED_locale_t++#include <bits/alltypes.h>++#define LC_GLOBAL_LOCALE ((locale_t)-1)++#define LC_CTYPE_MASK    (1<<LC_CTYPE)+#define LC_NUMERIC_MASK  (1<<LC_NUMERIC)+#define LC_TIME_MASK     (1<<LC_TIME)+#define LC_COLLATE_MASK  (1<<LC_COLLATE)+#define LC_MONETARY_MASK (1<<LC_MONETARY)+#define LC_MESSAGES_MASK (1<<LC_MESSAGES)+#define LC_ALL_MASK      0x7fffffff++locale_t duplocale(locale_t);+void freelocale(locale_t);+locale_t newlocale(int, const char *, locale_t);+locale_t uselocale(locale_t);++#endif+++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/aarch64/malloc.h view
@@ -0,0 +1,25 @@+#ifndef _MALLOC_H+#define _MALLOC_H++#ifdef __cplusplus+extern "C" {+#endif++#define __NEED_size_t++#include <bits/alltypes.h>++void *malloc (size_t);+void *calloc (size_t, size_t);+void *realloc (void *, size_t);+void free (void *);+void *valloc (size_t);+void *memalign(size_t, size_t);++size_t malloc_usable_size(void *);++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/aarch64/math.h view
@@ -0,0 +1,442 @@+#ifndef _MATH_H+#define _MATH_H++#ifdef __cplusplus+extern "C" {+#endif++#include <features.h>++#define __NEED_float_t+#define __NEED_double_t+#include <bits/alltypes.h>++#if 100*__GNUC__+__GNUC_MINOR__ >= 303+#define NAN       __builtin_nanf("")+#define INFINITY  __builtin_inff()+#else+#define NAN       (0.0f/0.0f)+#define INFINITY  1e5000f+#endif++#define HUGE_VALF INFINITY+#define HUGE_VAL  ((double)INFINITY)+#define HUGE_VALL ((long double)INFINITY)++#define MATH_ERRNO  1+#define MATH_ERREXCEPT 2+#define math_errhandling 2++#define FP_ILOGBNAN (-1-0x7fffffff)+#define FP_ILOGB0 FP_ILOGBNAN++#define FP_NAN       0+#define FP_INFINITE  1+#define FP_ZERO      2+#define FP_SUBNORMAL 3+#define FP_NORMAL    4++#ifdef __FP_FAST_FMA+#define FP_FAST_FMA 1+#endif++#ifdef __FP_FAST_FMAF+#define FP_FAST_FMAF 1+#endif++#ifdef __FP_FAST_FMAL+#define FP_FAST_FMAL 1+#endif++int __fpclassify(double);+int __fpclassifyf(float);+int __fpclassifyl(long double);++static __inline unsigned __FLOAT_BITS(float __f)+{+	union {float __f; unsigned __i;} __u;+	__u.__f = __f;+	return __u.__i;+}+static __inline unsigned long long __DOUBLE_BITS(double __f)+{+	union {double __f; unsigned long long __i;} __u;+	__u.__f = __f;+	return __u.__i;+}++#define fpclassify(x) ( \+	sizeof(x) == sizeof(float) ? __fpclassifyf(x) : \+	sizeof(x) == sizeof(double) ? __fpclassify(x) : \+	__fpclassifyl(x) )++#define isinf(x) ( \+	sizeof(x) == sizeof(float) ? (__FLOAT_BITS(x) & 0x7fffffff) == 0x7f800000 : \+	sizeof(x) == sizeof(double) ? (__DOUBLE_BITS(x) & -1ULL>>1) == 0x7ffULL<<52 : \+	__fpclassifyl(x) == FP_INFINITE)++#define isnan(x) ( \+	sizeof(x) == sizeof(float) ? (__FLOAT_BITS(x) & 0x7fffffff) > 0x7f800000 : \+	sizeof(x) == sizeof(double) ? (__DOUBLE_BITS(x) & -1ULL>>1) > 0x7ffULL<<52 : \+	__fpclassifyl(x) == FP_NAN)++#define isnormal(x) ( \+	sizeof(x) == sizeof(float) ? ((__FLOAT_BITS(x)+0x00800000) & 0x7fffffff) >= 0x01000000 : \+	sizeof(x) == sizeof(double) ? ((__DOUBLE_BITS(x)+(1ULL<<52)) & -1ULL>>1) >= 1ULL<<53 : \+	__fpclassifyl(x) == FP_NORMAL)++#define isfinite(x) ( \+	sizeof(x) == sizeof(float) ? (__FLOAT_BITS(x) & 0x7fffffff) < 0x7f800000 : \+	sizeof(x) == sizeof(double) ? (__DOUBLE_BITS(x) & -1ULL>>1) < 0x7ffULL<<52 : \+	__fpclassifyl(x) > FP_INFINITE)++int __signbit(double);+int __signbitf(float);+int __signbitl(long double);++#define signbit(x) ( \+	sizeof(x) == sizeof(float) ? (int)(__FLOAT_BITS(x)>>31) : \+	sizeof(x) == sizeof(double) ? (int)(__DOUBLE_BITS(x)>>63) : \+	__signbitl(x) )++#define isunordered(x,y) (isnan((x)) ? ((void)(y),1) : isnan((y)))++#define __ISREL_DEF(rel, op, type) \+static __inline int __is##rel(type __x, type __y) \+{ return !isunordered(__x,__y) && __x op __y; }++__ISREL_DEF(lessf, <, float_t)+__ISREL_DEF(less, <, double_t)+__ISREL_DEF(lessl, <, long double)+__ISREL_DEF(lessequalf, <=, float_t)+__ISREL_DEF(lessequal, <=, double_t)+__ISREL_DEF(lessequall, <=, long double)+__ISREL_DEF(lessgreaterf, !=, float_t)+__ISREL_DEF(lessgreater, !=, double_t)+__ISREL_DEF(lessgreaterl, !=, long double)+__ISREL_DEF(greaterf, >, float_t)+__ISREL_DEF(greater, >, double_t)+__ISREL_DEF(greaterl, >, long double)+__ISREL_DEF(greaterequalf, >=, float_t)+__ISREL_DEF(greaterequal, >=, double_t)+__ISREL_DEF(greaterequall, >=, long double)++#define __tg_pred_2(x, y, p) ( \+	sizeof((x)+(y)) == sizeof(float) ? p##f(x, y) : \+	sizeof((x)+(y)) == sizeof(double) ? p(x, y) : \+	p##l(x, y) )++#define isless(x, y)            __tg_pred_2(x, y, __isless)+#define islessequal(x, y)       __tg_pred_2(x, y, __islessequal)+#define islessgreater(x, y)     __tg_pred_2(x, y, __islessgreater)+#define isgreater(x, y)         __tg_pred_2(x, y, __isgreater)+#define isgreaterequal(x, y)    __tg_pred_2(x, y, __isgreaterequal)++double      acos(double);+float       acosf(float);+long double acosl(long double);++double      acosh(double);+float       acoshf(float);+long double acoshl(long double);++double      asin(double);+float       asinf(float);+long double asinl(long double);++double      asinh(double);+float       asinhf(float);+long double asinhl(long double);++double      atan(double);+float       atanf(float);+long double atanl(long double);++double      atan2(double, double);+float       atan2f(float, float);+long double atan2l(long double, long double);++double      atanh(double);+float       atanhf(float);+long double atanhl(long double);++double      cbrt(double);+float       cbrtf(float);+long double cbrtl(long double);++double      ceil(double);+float       ceilf(float);+long double ceill(long double);++double      copysign(double, double);+float       copysignf(float, float);+long double copysignl(long double, long double);++double      cos(double);+float       cosf(float);+long double cosl(long double);++double      cosh(double);+float       coshf(float);+long double coshl(long double);++double      erf(double);+float       erff(float);+long double erfl(long double);++double      erfc(double);+float       erfcf(float);+long double erfcl(long double);++double      exp(double);+float       expf(float);+long double expl(long double);++double      exp2(double);+float       exp2f(float);+long double exp2l(long double);++double      expm1(double);+float       expm1f(float);+long double expm1l(long double);++double      fabs(double);+float       fabsf(float);+long double fabsl(long double);++double      fdim(double, double);+float       fdimf(float, float);+long double fdiml(long double, long double);++double      floor(double);+float       floorf(float);+long double floorl(long double);++double      fma(double, double, double);+float       fmaf(float, float, float);+long double fmal(long double, long double, long double);++double      fmax(double, double);+float       fmaxf(float, float);+long double fmaxl(long double, long double);++double      fmin(double, double);+float       fminf(float, float);+long double fminl(long double, long double);++double      fmod(double, double);+float       fmodf(float, float);+long double fmodl(long double, long double);++double      frexp(double, int *);+float       frexpf(float, int *);+long double frexpl(long double, int *);++double      hypot(double, double);+float       hypotf(float, float);+long double hypotl(long double, long double);++int         ilogb(double);+int         ilogbf(float);+int         ilogbl(long double);++double      ldexp(double, int);+float       ldexpf(float, int);+long double ldexpl(long double, int);++double      lgamma(double);+float       lgammaf(float);+long double lgammal(long double);++long long   llrint(double);+long long   llrintf(float);+long long   llrintl(long double);++long long   llround(double);+long long   llroundf(float);+long long   llroundl(long double);++double      log(double);+float       logf(float);+long double logl(long double);++double      log10(double);+float       log10f(float);+long double log10l(long double);++double      log1p(double);+float       log1pf(float);+long double log1pl(long double);++double      log2(double);+float       log2f(float);+long double log2l(long double);++double      logb(double);+float       logbf(float);+long double logbl(long double);++long        lrint(double);+long        lrintf(float);+long        lrintl(long double);++long        lround(double);+long        lroundf(float);+long        lroundl(long double);++double      modf(double, double *);+float       modff(float, float *);+long double modfl(long double, long double *);++double      nan(const char *);+float       nanf(const char *);+long double nanl(const char *);++double      nearbyint(double);+float       nearbyintf(float);+long double nearbyintl(long double);++double      nextafter(double, double);+float       nextafterf(float, float);+long double nextafterl(long double, long double);++double      nexttoward(double, long double);+float       nexttowardf(float, long double);+long double nexttowardl(long double, long double);++double      pow(double, double);+float       powf(float, float);+long double powl(long double, long double);++double      remainder(double, double);+float       remainderf(float, float);+long double remainderl(long double, long double);++double      remquo(double, double, int *);+float       remquof(float, float, int *);+long double remquol(long double, long double, int *);++double      rint(double);+float       rintf(float);+long double rintl(long double);++double      round(double);+float       roundf(float);+long double roundl(long double);++double      scalbln(double, long);+float       scalblnf(float, long);+long double scalblnl(long double, long);++double      scalbn(double, int);+float       scalbnf(float, int);+long double scalbnl(long double, int);++double      sin(double);+float       sinf(float);+long double sinl(long double);++double      sinh(double);+float       sinhf(float);+long double sinhl(long double);++double      sqrt(double);+float       sqrtf(float);+long double sqrtl(long double);++double      tan(double);+float       tanf(float);+long double tanl(long double);++double      tanh(double);+float       tanhf(float);+long double tanhl(long double);++double      tgamma(double);+float       tgammaf(float);+long double tgammal(long double);++double      trunc(double);+float       truncf(float);+long double truncl(long double);+++#if defined(_XOPEN_SOURCE) || defined(_BSD_SOURCE)+#undef  MAXFLOAT+#define MAXFLOAT        3.40282346638528859812e+38F+#endif++#if defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) || defined(_BSD_SOURCE)+#define M_E             2.7182818284590452354   /* e */+#define M_LOG2E         1.4426950408889634074   /* log_2 e */+#define M_LOG10E        0.43429448190325182765  /* log_10 e */+#define M_LN2           0.69314718055994530942  /* log_e 2 */+#define M_LN10          2.30258509299404568402  /* log_e 10 */+#define M_PI            3.14159265358979323846  /* pi */+#define M_PI_2          1.57079632679489661923  /* pi/2 */+#define M_PI_4          0.78539816339744830962  /* pi/4 */+#define M_1_PI          0.31830988618379067154  /* 1/pi */+#define M_2_PI          0.63661977236758134308  /* 2/pi */+#define M_2_SQRTPI      1.12837916709551257390  /* 2/sqrt(pi) */+#define M_SQRT2         1.41421356237309504880  /* sqrt(2) */+#define M_SQRT1_2       0.70710678118654752440  /* 1/sqrt(2) */++extern int signgam;++double      j0(double);+double      j1(double);+double      jn(int, double);++double      y0(double);+double      y1(double);+double      yn(int, double);+#endif++#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE)+#define HUGE            3.40282346638528859812e+38F++double      drem(double, double);+float       dremf(float, float);++int         finite(double);+int         finitef(float);++double      scalb(double, double);+float       scalbf(float, float);++double      significand(double);+float       significandf(float);++double      lgamma_r(double, int*);+float       lgammaf_r(float, int*);++float       j0f(float);+float       j1f(float);+float       jnf(int, float);++float       y0f(float);+float       y1f(float);+float       ynf(int, float);+#endif++#ifdef _GNU_SOURCE+long double lgammal_r(long double, int*);++void        sincos(double, double*, double*);+void        sincosf(float, float*, float*);+void        sincosl(long double, long double*, long double*);++double      exp10(double);+float       exp10f(float);+long double exp10l(long double);++double      pow10(double);+float       pow10f(float);+long double pow10l(long double);+#endif++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/aarch64/memory.h view
@@ -0,0 +1,1 @@+#include <string.h>
+ musl-include/aarch64/mntent.h view
@@ -0,0 +1,43 @@+#ifndef _MNTENT_H+#define _MNTENT_H++#ifdef __cplusplus+extern "C" {+#endif++#define __NEED_FILE+#include <bits/alltypes.h>++#define MOUNTED "/etc/mtab"++#define MNTTYPE_IGNORE	"ignore"+#define MNTTYPE_NFS	"nfs"+#define MNTTYPE_SWAP	"swap"+#define MNTOPT_DEFAULTS	"defaults"+#define MNTOPT_RO	"ro"+#define MNTOPT_RW	"rw"+#define MNTOPT_SUID	"suid"+#define MNTOPT_NOSUID	"nosuid"+#define MNTOPT_NOAUTO	"noauto"++struct mntent {+	char *mnt_fsname;+	char *mnt_dir;+	char *mnt_type;+	char *mnt_opts;+	int mnt_freq;+	int mnt_passno;+};++FILE *setmntent(const char *, const char *);+int endmntent(FILE *);+struct mntent *getmntent(FILE *);+struct mntent *getmntent_r(FILE *, struct mntent *, char *, int);+int addmntent(FILE *, const struct mntent *);+char *hasmntopt(const struct mntent *, const char *);++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/aarch64/monetary.h view
@@ -0,0 +1,23 @@+#ifndef _MONETARY_H+#define _MONETARY_H++#ifdef __cplusplus+extern "C" {+#endif++#include <features.h>++#define __NEED_ssize_t+#define __NEED_size_t+#define __NEED_locale_t++#include <bits/alltypes.h>++ssize_t strfmon(char *__restrict, size_t, const char *__restrict, ...);+ssize_t strfmon_l(char *__restrict, size_t, locale_t, const char *__restrict, ...);++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/aarch64/mqueue.h view
@@ -0,0 +1,41 @@+#ifndef _MQUEUE_H+#define _MQUEUE_H+#ifdef __cplusplus+extern "C" {+#endif++#include <features.h>++#define __NEED_size_t+#define __NEED_ssize_t+#define __NEED_pthread_attr_t+#define __NEED_time_t+#define __NEED_struct_timespec+#include <bits/alltypes.h>++typedef int mqd_t;+struct mq_attr {+	long mq_flags, mq_maxmsg, mq_msgsize, mq_curmsgs, __unused[4];+};+struct sigevent;++int mq_close(mqd_t);+int mq_getattr(mqd_t, struct mq_attr *);+int mq_notify(mqd_t, const struct sigevent *);+mqd_t mq_open(const char *, int, ...);+ssize_t mq_receive(mqd_t, char *, size_t, unsigned *);+int mq_send(mqd_t, const char *, size_t, unsigned);+int mq_setattr(mqd_t, const struct mq_attr *__restrict, struct mq_attr *__restrict);+ssize_t mq_timedreceive(mqd_t, char *__restrict, size_t, unsigned *__restrict, const struct timespec *__restrict);+int mq_timedsend(mqd_t, const char *, size_t, unsigned, const struct timespec *);+int mq_unlink(const char *);++#if _REDIR_TIME64+__REDIR(mq_timedreceive, __mq_timedreceive_time64);+__REDIR(mq_timedsend, __mq_timedsend_time64);+#endif++#ifdef __cplusplus+}+#endif+#endif
+ musl-include/aarch64/net/ethernet.h view
@@ -0,0 +1,55 @@+#ifndef _NET_ETHERNET_H+#define _NET_ETHERNET_H++#ifdef __cplusplus+extern "C" {+#endif++#include <stdint.h>+#include <sys/types.h>+#include <netinet/if_ether.h>++struct ether_addr {+	uint8_t ether_addr_octet[ETH_ALEN];+};++struct ether_header {+	uint8_t  ether_dhost[ETH_ALEN];+	uint8_t  ether_shost[ETH_ALEN];+	uint16_t ether_type;+};++#define	ETHERTYPE_PUP		0x0200+#define ETHERTYPE_SPRITE	0x0500+#define	ETHERTYPE_IP		0x0800+#define	ETHERTYPE_ARP		0x0806+#define	ETHERTYPE_REVARP	0x8035+#define ETHERTYPE_AT		0x809B+#define ETHERTYPE_AARP		0x80F3+#define	ETHERTYPE_VLAN		0x8100+#define ETHERTYPE_IPX		0x8137+#define	ETHERTYPE_IPV6		0x86dd+#define ETHERTYPE_LOOPBACK	0x9000+++#define	ETHER_ADDR_LEN	ETH_ALEN+#define	ETHER_TYPE_LEN	2+#define	ETHER_CRC_LEN	4+#define	ETHER_HDR_LEN	ETH_HLEN+#define	ETHER_MIN_LEN	(ETH_ZLEN + ETHER_CRC_LEN)+#define	ETHER_MAX_LEN	(ETH_FRAME_LEN + ETHER_CRC_LEN)++#define	ETHER_IS_VALID_LEN(foo)	\+	((foo) >= ETHER_MIN_LEN && (foo) <= ETHER_MAX_LEN)++#define	ETHERTYPE_TRAIL		0x1000+#define	ETHERTYPE_NTRAILER	16++#define	ETHERMTU	ETH_DATA_LEN+#define	ETHERMIN	(ETHER_MIN_LEN - ETHER_HDR_LEN - ETHER_CRC_LEN)++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/aarch64/net/if.h view
@@ -0,0 +1,141 @@+#ifndef _NET_IF_H+#define _NET_IF_H++#ifdef __cplusplus+extern "C" {+#endif++#include <features.h>++#define IF_NAMESIZE 16++struct if_nameindex {+	unsigned int if_index;+	char *if_name;+};++unsigned int if_nametoindex (const char *);+char *if_indextoname (unsigned int, char *);+struct if_nameindex *if_nameindex (void);+void if_freenameindex (struct if_nameindex *);+++++#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE)++#include <sys/socket.h>++#define IFF_UP	0x1+#define IFF_BROADCAST 0x2+#define IFF_DEBUG 0x4+#define IFF_LOOPBACK 0x8+#define IFF_POINTOPOINT 0x10+#define IFF_NOTRAILERS 0x20+#define IFF_RUNNING 0x40+#define IFF_NOARP 0x80+#define IFF_PROMISC 0x100+#define IFF_ALLMULTI 0x200+#define IFF_MASTER 0x400+#define IFF_SLAVE 0x800+#define IFF_MULTICAST 0x1000+#define IFF_PORTSEL 0x2000+#define IFF_AUTOMEDIA 0x4000+#define IFF_DYNAMIC 0x8000+#define IFF_LOWER_UP 0x10000+#define IFF_DORMANT 0x20000+#define IFF_ECHO 0x40000+#define IFF_VOLATILE (IFF_LOOPBACK|IFF_POINTOPOINT|IFF_BROADCAST| \+        IFF_ECHO|IFF_MASTER|IFF_SLAVE|IFF_RUNNING|IFF_LOWER_UP|IFF_DORMANT)++struct ifaddr {+	struct sockaddr ifa_addr;+	union {+		struct sockaddr	ifu_broadaddr;+		struct sockaddr	ifu_dstaddr;+	} ifa_ifu;+	struct iface *ifa_ifp;+	struct ifaddr *ifa_next;+};++#define ifa_broadaddr	ifa_ifu.ifu_broadaddr+#define ifa_dstaddr	ifa_ifu.ifu_dstaddr++struct ifmap {+	unsigned long int mem_start;+	unsigned long int mem_end;+	unsigned short int base_addr;+	unsigned char irq;+	unsigned char dma;+	unsigned char port;+};++#define IFHWADDRLEN	6+#define IFNAMSIZ	IF_NAMESIZE++struct ifreq {+	union {+		char ifrn_name[IFNAMSIZ];+	} ifr_ifrn;+	union {+		struct sockaddr ifru_addr;+		struct sockaddr ifru_dstaddr;+		struct sockaddr ifru_broadaddr;+		struct sockaddr ifru_netmask;+		struct sockaddr ifru_hwaddr;+		short int ifru_flags;+		int ifru_ivalue;+		int ifru_mtu;+		struct ifmap ifru_map;+		char ifru_slave[IFNAMSIZ];+		char ifru_newname[IFNAMSIZ];+		char *ifru_data;+	} ifr_ifru;+};++#define ifr_name	ifr_ifrn.ifrn_name+#define ifr_hwaddr	ifr_ifru.ifru_hwaddr+#define ifr_addr	ifr_ifru.ifru_addr+#define ifr_dstaddr	ifr_ifru.ifru_dstaddr+#define ifr_broadaddr	ifr_ifru.ifru_broadaddr+#define ifr_netmask	ifr_ifru.ifru_netmask+#define ifr_flags	ifr_ifru.ifru_flags+#define ifr_metric	ifr_ifru.ifru_ivalue+#define ifr_mtu		ifr_ifru.ifru_mtu+#define ifr_map		ifr_ifru.ifru_map+#define ifr_slave	ifr_ifru.ifru_slave+#define ifr_data	ifr_ifru.ifru_data+#define ifr_ifindex	ifr_ifru.ifru_ivalue+#define ifr_bandwidth	ifr_ifru.ifru_ivalue+#define ifr_qlen	ifr_ifru.ifru_ivalue+#define ifr_newname	ifr_ifru.ifru_newname+#define _IOT_ifreq	_IOT(_IOTS(char),IFNAMSIZ,_IOTS(char),16,0,0)+#define _IOT_ifreq_short _IOT(_IOTS(char),IFNAMSIZ,_IOTS(short),1,0,0)+#define _IOT_ifreq_int	_IOT(_IOTS(char),IFNAMSIZ,_IOTS(int),1,0,0)++struct ifconf {+	int ifc_len;		+	union {+		char *ifcu_buf;+		struct ifreq *ifcu_req;+	} ifc_ifcu;+};++#define ifc_buf		ifc_ifcu.ifcu_buf+#define ifc_req		ifc_ifcu.ifcu_req+#define _IOT_ifconf _IOT(_IOTS(struct ifconf),1,0,0,0,0)++#define __UAPI_DEF_IF_IFCONF                                    0+#define __UAPI_DEF_IF_IFMAP                                     0+#define __UAPI_DEF_IF_IFNAMSIZ                                  0+#define __UAPI_DEF_IF_IFREQ                                     0+#define __UAPI_DEF_IF_NET_DEVICE_FLAGS                          0+#define __UAPI_DEF_IF_NET_DEVICE_FLAGS_LOWER_UP_DORMANT_ECHO    0++#endif++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/aarch64/net/if_arp.h view
@@ -0,0 +1,142 @@+/* Nonstandard header */+#ifndef _NET_IF_ARP_H+#define _NET_IF_ARP_H+#ifdef __cplusplus+extern "C" {+#endif++#include <inttypes.h>+#include <sys/types.h>+#include <sys/socket.h>++#define MAX_ADDR_LEN	7++#define	ARPOP_REQUEST	1+#define	ARPOP_REPLY	2+#define	ARPOP_RREQUEST	3+#define	ARPOP_RREPLY	4+#define	ARPOP_InREQUEST	8+#define	ARPOP_InREPLY	9+#define	ARPOP_NAK	10++struct arphdr {+	uint16_t ar_hrd;+	uint16_t ar_pro;+	uint8_t ar_hln;+	uint8_t ar_pln;+	uint16_t ar_op;+};+++#define ARPHRD_NETROM	0+#define ARPHRD_ETHER 	1+#define	ARPHRD_EETHER	2+#define	ARPHRD_AX25	3+#define	ARPHRD_PRONET	4+#define	ARPHRD_CHAOS	5+#define	ARPHRD_IEEE802	6+#define	ARPHRD_ARCNET	7+#define	ARPHRD_APPLETLK	8+#define	ARPHRD_DLCI	15+#define	ARPHRD_ATM	19+#define	ARPHRD_METRICOM	23+#define ARPHRD_IEEE1394	24+#define ARPHRD_EUI64		27+#define ARPHRD_INFINIBAND	32+#define ARPHRD_SLIP	256+#define ARPHRD_CSLIP	257+#define ARPHRD_SLIP6	258+#define ARPHRD_CSLIP6	259+#define ARPHRD_RSRVD	260+#define ARPHRD_ADAPT	264+#define ARPHRD_ROSE	270+#define ARPHRD_X25	271+#define ARPHRD_HWX25	272+#define ARPHRD_CAN	280+#define ARPHRD_PPP	512+#define ARPHRD_CISCO	513+#define ARPHRD_HDLC	ARPHRD_CISCO+#define ARPHRD_LAPB	516+#define ARPHRD_DDCMP	517+#define	ARPHRD_RAWHDLC	518+#define ARPHRD_RAWIP	519++#define ARPHRD_TUNNEL	768+#define ARPHRD_TUNNEL6	769+#define ARPHRD_FRAD	770+#define ARPHRD_SKIP	771+#define ARPHRD_LOOPBACK	772+#define ARPHRD_LOCALTLK 773+#define ARPHRD_FDDI	774+#define ARPHRD_BIF	775+#define ARPHRD_SIT	776+#define ARPHRD_IPDDP	777+#define ARPHRD_IPGRE	778+#define ARPHRD_PIMREG	779+#define ARPHRD_HIPPI	780+#define ARPHRD_ASH	781+#define ARPHRD_ECONET	782+#define ARPHRD_IRDA	783+#define ARPHRD_FCPP	784+#define ARPHRD_FCAL	785+#define ARPHRD_FCPL	786+#define ARPHRD_FCFABRIC 787+#define ARPHRD_IEEE802_TR 800+#define ARPHRD_IEEE80211 801+#define ARPHRD_IEEE80211_PRISM 802+#define ARPHRD_IEEE80211_RADIOTAP 803+#define ARPHRD_IEEE802154 804+#define ARPHRD_IEEE802154_MONITOR 805+#define ARPHRD_PHONET 820+#define ARPHRD_PHONET_PIPE 821+#define ARPHRD_CAIF 822+#define ARPHRD_IP6GRE 823+#define ARPHRD_NETLINK 824+#define ARPHRD_6LOWPAN 825+#define ARPHRD_VSOCKMON 826++#define ARPHRD_VOID	  0xFFFF+#define ARPHRD_NONE	  0xFFFE++struct arpreq {+	struct sockaddr arp_pa;+	struct sockaddr arp_ha;+	int arp_flags;+	struct sockaddr arp_netmask;+	char arp_dev[16];+};++struct arpreq_old {+	struct sockaddr arp_pa;+	struct sockaddr arp_ha;+	int arp_flags;+	struct sockaddr arp_netmask;+};++#define ATF_COM		0x02+#define	ATF_PERM	0x04+#define	ATF_PUBL	0x08+#define	ATF_USETRAILERS	0x10+#define ATF_NETMASK     0x20+#define ATF_DONTPUB	0x40+#define ATF_MAGIC	0x80++#define ARPD_UPDATE	0x01+#define ARPD_LOOKUP	0x02+#define ARPD_FLUSH	0x03++struct arpd_request {+	unsigned short req;+	uint32_t ip;+	unsigned long dev;+	unsigned long stamp;+	unsigned long updated;+	unsigned char ha[MAX_ADDR_LEN];+};++++#ifdef __cplusplus+}+#endif+#endif
+ musl-include/aarch64/net/route.h view
@@ -0,0 +1,124 @@+#ifndef _NET_ROUTE_H+#define _NET_ROUTE_H++#ifdef __cplusplus+extern "C" {+#endif++#include <stdint.h>+#include <sys/socket.h>+#include <sys/types.h>+#include <netinet/in.h>+++struct rtentry {+	unsigned long int rt_pad1;+	struct sockaddr rt_dst;+	struct sockaddr rt_gateway;+	struct sockaddr rt_genmask;+	unsigned short int rt_flags;+	short int rt_pad2;+	unsigned long int rt_pad3;+	unsigned char rt_tos;+	unsigned char rt_class;+	short int rt_pad4[sizeof(long)/2-1];+	short int rt_metric;+	char *rt_dev;+	unsigned long int rt_mtu;+	unsigned long int rt_window;+	unsigned short int rt_irtt;+};++#define rt_mss	rt_mtu+++struct in6_rtmsg {+	struct in6_addr rtmsg_dst;+	struct in6_addr rtmsg_src;+	struct in6_addr rtmsg_gateway;+	uint32_t rtmsg_type;+	uint16_t rtmsg_dst_len;+	uint16_t rtmsg_src_len;+	uint32_t rtmsg_metric;+	unsigned long int rtmsg_info;+	uint32_t rtmsg_flags;+	int rtmsg_ifindex;+};+++#define	RTF_UP		0x0001+#define	RTF_GATEWAY	0x0002++#define	RTF_HOST	0x0004+#define RTF_REINSTATE	0x0008+#define	RTF_DYNAMIC	0x0010+#define	RTF_MODIFIED	0x0020+#define RTF_MTU		0x0040+#define RTF_MSS		RTF_MTU+#define RTF_WINDOW	0x0080+#define RTF_IRTT	0x0100+#define RTF_REJECT	0x0200+#define	RTF_STATIC	0x0400+#define	RTF_XRESOLVE	0x0800+#define RTF_NOFORWARD   0x1000+#define RTF_THROW	0x2000+#define RTF_NOPMTUDISC  0x4000++#define RTF_DEFAULT	0x00010000+#define RTF_ALLONLINK	0x00020000+#define RTF_ADDRCONF	0x00040000++#define RTF_LINKRT	0x00100000+#define RTF_NONEXTHOP	0x00200000++#define RTF_CACHE	0x01000000+#define RTF_FLOW	0x02000000+#define RTF_POLICY	0x04000000++#define RTCF_VALVE	0x00200000+#define RTCF_MASQ	0x00400000+#define RTCF_NAT	0x00800000+#define RTCF_DOREDIRECT 0x01000000+#define RTCF_LOG	0x02000000+#define RTCF_DIRECTSRC	0x04000000++#define RTF_LOCAL	0x80000000+#define RTF_INTERFACE	0x40000000+#define RTF_MULTICAST	0x20000000+#define RTF_BROADCAST	0x10000000+#define RTF_NAT		0x08000000++#define RTF_ADDRCLASSMASK	0xF8000000+#define RT_ADDRCLASS(flags)	((uint32_t) flags >> 23)++#define RT_TOS(tos)		((tos) & IPTOS_TOS_MASK)++#define RT_LOCALADDR(flags)	((flags & RTF_ADDRCLASSMASK) \+				 == (RTF_LOCAL|RTF_INTERFACE))++#define RT_CLASS_UNSPEC		0+#define RT_CLASS_DEFAULT	253++#define RT_CLASS_MAIN		254+#define RT_CLASS_LOCAL		255+#define RT_CLASS_MAX		255+++#define RTMSG_ACK		NLMSG_ACK+#define RTMSG_OVERRUN		NLMSG_OVERRUN++#define RTMSG_NEWDEVICE		0x11+#define RTMSG_DELDEVICE		0x12+#define RTMSG_NEWROUTE		0x21+#define RTMSG_DELROUTE		0x22+#define RTMSG_NEWRULE		0x31+#define RTMSG_DELRULE		0x32+#define RTMSG_CONTROL		0x40++#define RTMSG_AR_FAILED		0x51++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/aarch64/netdb.h view
@@ -0,0 +1,157 @@+#ifndef	_NETDB_H+#define	_NETDB_H++#ifdef __cplusplus+extern "C" {+#endif++#include <features.h>+#include <netinet/in.h>++#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE)+#define __NEED_size_t+#include <bits/alltypes.h>+#endif++struct addrinfo {+	int ai_flags;+	int ai_family;+	int ai_socktype;+	int ai_protocol;+	socklen_t ai_addrlen;+	struct sockaddr *ai_addr;+	char *ai_canonname;+	struct addrinfo *ai_next;+};++#define AI_PASSIVE      0x01+#define AI_CANONNAME    0x02+#define AI_NUMERICHOST  0x04+#define AI_V4MAPPED     0x08+#define AI_ALL          0x10+#define AI_ADDRCONFIG   0x20+#define AI_NUMERICSERV  0x400+++#define NI_NUMERICHOST  0x01+#define NI_NUMERICSERV  0x02+#define NI_NOFQDN       0x04+#define NI_NAMEREQD     0x08+#define NI_DGRAM        0x10+#define NI_NUMERICSCOPE 0x100++#define EAI_BADFLAGS   -1+#define EAI_NONAME     -2+#define EAI_AGAIN      -3+#define EAI_FAIL       -4+#define EAI_NODATA     -5+#define EAI_FAMILY     -6+#define EAI_SOCKTYPE   -7+#define EAI_SERVICE    -8+#define EAI_MEMORY     -10+#define EAI_SYSTEM     -11+#define EAI_OVERFLOW   -12++int getaddrinfo (const char *__restrict, const char *__restrict, const struct addrinfo *__restrict, struct addrinfo **__restrict);+void freeaddrinfo (struct addrinfo *);+int getnameinfo (const struct sockaddr *__restrict, socklen_t, char *__restrict, socklen_t, char *__restrict, socklen_t, int);+const char *gai_strerror(int);+++/* Legacy functions follow (marked OBsolete in SUS) */++struct netent {+	char *n_name;+	char **n_aliases;+	int n_addrtype;+	uint32_t n_net;+};++struct hostent {+	char *h_name;+	char **h_aliases;+	int h_addrtype;+	int h_length;+	char **h_addr_list;+};+#define h_addr h_addr_list[0]++struct servent {+	char *s_name;+	char **s_aliases;+	int s_port;+	char *s_proto;+};++struct protoent {+	char *p_name;+	char **p_aliases;+	int p_proto;+};++void sethostent (int);+void endhostent (void);+struct hostent *gethostent (void);++void setnetent (int);+void endnetent (void);+struct netent *getnetent (void);+struct netent *getnetbyaddr (uint32_t, int);+struct netent *getnetbyname (const char *);++void setservent (int);+void endservent (void);+struct servent *getservent (void);+struct servent *getservbyname (const char *, const char *);+struct servent *getservbyport (int, const char *);++void setprotoent (int);+void endprotoent (void);+struct protoent *getprotoent (void);+struct protoent *getprotobyname (const char *);+struct protoent *getprotobynumber (int);++#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE) || defined(_POSIX_SOURCE) \+ || (defined(_POSIX_C_SOURCE) && _POSIX_C_SOURCE+0 < 200809L) \+ || (defined(_XOPEN_SOURCE) && _XOPEN_SOURCE+0 < 700)+struct hostent *gethostbyname (const char *);+struct hostent *gethostbyaddr (const void *, socklen_t, int);+#ifdef __GNUC__+__attribute__((const))+#endif+int *__h_errno_location(void);+#define h_errno (*__h_errno_location())+#define HOST_NOT_FOUND 1+#define TRY_AGAIN      2+#define NO_RECOVERY    3+#define NO_DATA        4+#define NO_ADDRESS     NO_DATA+#endif++#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE)+void herror(const char *);+const char *hstrerror(int);+int gethostbyname_r(const char *, struct hostent *, char *, size_t, struct hostent **, int *);+int gethostbyname2_r(const char *, int, struct hostent *, char *, size_t, struct hostent **, int *);+struct hostent *gethostbyname2(const char *, int);+int gethostbyaddr_r(const void *, socklen_t, int, struct hostent *, char *, size_t, struct hostent **, int *);+int getservbyport_r(int, const char *, struct servent *, char *, size_t, struct servent **);+int getservbyname_r(const char *, const char *, struct servent *, char *, size_t, struct servent **);+#define EAI_NODATA     -5+#define EAI_ADDRFAMILY -9+#define EAI_INPROGRESS -100+#define EAI_CANCELED   -101+#define EAI_NOTCANCELED -102+#define EAI_ALLDONE    -103+#define EAI_INTR       -104+#define EAI_IDN_ENCODE -105+#define NI_MAXHOST 255+#define NI_MAXSERV 32+#endif+++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/aarch64/netinet/ether.h view
@@ -0,0 +1,22 @@+#ifndef _NETINET_ETHER_H+#define _NETINET_ETHER_H++#ifdef __cplusplus+extern "C" {+#endif++#include <netinet/if_ether.h>++char *ether_ntoa (const struct ether_addr *);+struct ether_addr *ether_aton (const char *);+char *ether_ntoa_r (const struct ether_addr *, char *);+struct ether_addr *ether_aton_r (const char *, struct ether_addr *);+int ether_line(const char *, struct ether_addr *, char *);+int ether_ntohost(char *, const struct ether_addr *);+int ether_hostton(const char *, struct ether_addr *);++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/aarch64/netinet/icmp6.h view
@@ -0,0 +1,305 @@+#ifndef _NETINET_ICMP6_H+#define _NETINET_ICMP6_H++#ifdef __cplusplus+extern "C" {+#endif++#include <stdint.h>+#include <string.h>+#include <sys/types.h>+#include <netinet/in.h>++#define ICMP6_FILTER 1++#define ICMP6_FILTER_BLOCK		1+#define ICMP6_FILTER_PASS		2+#define ICMP6_FILTER_BLOCKOTHERS	3+#define ICMP6_FILTER_PASSONLY		4++struct icmp6_filter {+	uint32_t icmp6_filt[8];+};++struct icmp6_hdr {+	uint8_t     icmp6_type;+	uint8_t     icmp6_code;+	uint16_t    icmp6_cksum;+	union {+		uint32_t  icmp6_un_data32[1];+		uint16_t  icmp6_un_data16[2];+		uint8_t   icmp6_un_data8[4];+	} icmp6_dataun;+};++#define icmp6_data32    icmp6_dataun.icmp6_un_data32+#define icmp6_data16    icmp6_dataun.icmp6_un_data16+#define icmp6_data8     icmp6_dataun.icmp6_un_data8+#define icmp6_pptr      icmp6_data32[0]+#define icmp6_mtu       icmp6_data32[0]+#define icmp6_id        icmp6_data16[0]+#define icmp6_seq       icmp6_data16[1]+#define icmp6_maxdelay  icmp6_data16[0]++#define ICMP6_DST_UNREACH             1+#define ICMP6_PACKET_TOO_BIG          2+#define ICMP6_TIME_EXCEEDED           3+#define ICMP6_PARAM_PROB              4++#define ICMP6_INFOMSG_MASK  0x80++#define ICMP6_ECHO_REQUEST          128+#define ICMP6_ECHO_REPLY            129+#define MLD_LISTENER_QUERY          130+#define MLD_LISTENER_REPORT         131+#define MLD_LISTENER_REDUCTION      132++#define ICMP6_DST_UNREACH_NOROUTE     0+#define ICMP6_DST_UNREACH_ADMIN       1+#define ICMP6_DST_UNREACH_BEYONDSCOPE 2+#define ICMP6_DST_UNREACH_ADDR        3+#define ICMP6_DST_UNREACH_NOPORT      4++#define ICMP6_TIME_EXCEED_TRANSIT     0+#define ICMP6_TIME_EXCEED_REASSEMBLY  1++#define ICMP6_PARAMPROB_HEADER        0+#define ICMP6_PARAMPROB_NEXTHEADER    1+#define ICMP6_PARAMPROB_OPTION        2++#define ICMP6_FILTER_WILLPASS(type, filterp) \+	((((filterp)->icmp6_filt[(type) >> 5]) & (1 << ((type) & 31))) == 0)++#define ICMP6_FILTER_WILLBLOCK(type, filterp) \+	((((filterp)->icmp6_filt[(type) >> 5]) & (1 << ((type) & 31))) != 0)++#define ICMP6_FILTER_SETPASS(type, filterp) \+	((((filterp)->icmp6_filt[(type) >> 5]) &= ~(1 << ((type) & 31))))++#define ICMP6_FILTER_SETBLOCK(type, filterp) \+	((((filterp)->icmp6_filt[(type) >> 5]) |=  (1 << ((type) & 31))))++#define ICMP6_FILTER_SETPASSALL(filterp) \+	memset (filterp, 0, sizeof (struct icmp6_filter));++#define ICMP6_FILTER_SETBLOCKALL(filterp) \+	memset (filterp, 0xFF, sizeof (struct icmp6_filter));++#define ND_ROUTER_SOLICIT           133+#define ND_ROUTER_ADVERT            134+#define ND_NEIGHBOR_SOLICIT         135+#define ND_NEIGHBOR_ADVERT          136+#define ND_REDIRECT                 137++struct nd_router_solicit {+	struct icmp6_hdr  nd_rs_hdr;+};++#define nd_rs_type               nd_rs_hdr.icmp6_type+#define nd_rs_code               nd_rs_hdr.icmp6_code+#define nd_rs_cksum              nd_rs_hdr.icmp6_cksum+#define nd_rs_reserved           nd_rs_hdr.icmp6_data32[0]++struct nd_router_advert {+	struct icmp6_hdr  nd_ra_hdr;+	uint32_t   nd_ra_reachable;+	uint32_t   nd_ra_retransmit;+};++#define nd_ra_type               nd_ra_hdr.icmp6_type+#define nd_ra_code               nd_ra_hdr.icmp6_code+#define nd_ra_cksum              nd_ra_hdr.icmp6_cksum+#define nd_ra_curhoplimit        nd_ra_hdr.icmp6_data8[0]+#define nd_ra_flags_reserved     nd_ra_hdr.icmp6_data8[1]+#define ND_RA_FLAG_MANAGED       0x80+#define ND_RA_FLAG_OTHER         0x40+#define ND_RA_FLAG_HOME_AGENT    0x20+#define nd_ra_router_lifetime    nd_ra_hdr.icmp6_data16[1]++struct nd_neighbor_solicit {+	struct icmp6_hdr  nd_ns_hdr;+	struct in6_addr   nd_ns_target;+};++#define nd_ns_type               nd_ns_hdr.icmp6_type+#define nd_ns_code               nd_ns_hdr.icmp6_code+#define nd_ns_cksum              nd_ns_hdr.icmp6_cksum+#define nd_ns_reserved           nd_ns_hdr.icmp6_data32[0]++struct nd_neighbor_advert {+	struct icmp6_hdr  nd_na_hdr;+	struct in6_addr   nd_na_target;+};++#define nd_na_type               nd_na_hdr.icmp6_type+#define nd_na_code               nd_na_hdr.icmp6_code+#define nd_na_cksum              nd_na_hdr.icmp6_cksum+#define nd_na_flags_reserved     nd_na_hdr.icmp6_data32[0]+#if     __BYTE_ORDER == __BIG_ENDIAN+#define ND_NA_FLAG_ROUTER        0x80000000+#define ND_NA_FLAG_SOLICITED     0x40000000+#define ND_NA_FLAG_OVERRIDE      0x20000000+#else+#define ND_NA_FLAG_ROUTER        0x00000080+#define ND_NA_FLAG_SOLICITED     0x00000040+#define ND_NA_FLAG_OVERRIDE      0x00000020+#endif++struct nd_redirect {+	struct icmp6_hdr  nd_rd_hdr;+	struct in6_addr   nd_rd_target;+	struct in6_addr   nd_rd_dst;+};++#define nd_rd_type               nd_rd_hdr.icmp6_type+#define nd_rd_code               nd_rd_hdr.icmp6_code+#define nd_rd_cksum              nd_rd_hdr.icmp6_cksum+#define nd_rd_reserved           nd_rd_hdr.icmp6_data32[0]++struct nd_opt_hdr {+	uint8_t  nd_opt_type;+	uint8_t  nd_opt_len;+};++#define ND_OPT_SOURCE_LINKADDR		1+#define ND_OPT_TARGET_LINKADDR		2+#define ND_OPT_PREFIX_INFORMATION	3+#define ND_OPT_REDIRECTED_HEADER	4+#define ND_OPT_MTU			5+#define ND_OPT_RTR_ADV_INTERVAL		7+#define ND_OPT_HOME_AGENT_INFO		8++struct nd_opt_prefix_info {+	uint8_t   nd_opt_pi_type;+	uint8_t   nd_opt_pi_len;+	uint8_t   nd_opt_pi_prefix_len;+	uint8_t   nd_opt_pi_flags_reserved;+	uint32_t  nd_opt_pi_valid_time;+	uint32_t  nd_opt_pi_preferred_time;+	uint32_t  nd_opt_pi_reserved2;+	struct in6_addr  nd_opt_pi_prefix;+};++#define ND_OPT_PI_FLAG_ONLINK	0x80+#define ND_OPT_PI_FLAG_AUTO	0x40+#define ND_OPT_PI_FLAG_RADDR	0x20++struct nd_opt_rd_hdr {+	uint8_t   nd_opt_rh_type;+	uint8_t   nd_opt_rh_len;+	uint16_t  nd_opt_rh_reserved1;+	uint32_t  nd_opt_rh_reserved2;+};++struct nd_opt_mtu {+	uint8_t   nd_opt_mtu_type;+	uint8_t   nd_opt_mtu_len;+	uint16_t  nd_opt_mtu_reserved;+	uint32_t  nd_opt_mtu_mtu;+};++struct mld_hdr {+	struct icmp6_hdr    mld_icmp6_hdr;+	struct in6_addr     mld_addr;+};++#define mld_type        mld_icmp6_hdr.icmp6_type+#define mld_code        mld_icmp6_hdr.icmp6_code+#define mld_cksum       mld_icmp6_hdr.icmp6_cksum+#define mld_maxdelay    mld_icmp6_hdr.icmp6_data16[0]+#define mld_reserved    mld_icmp6_hdr.icmp6_data16[1]++#define ICMP6_ROUTER_RENUMBERING    138++struct icmp6_router_renum {+	struct icmp6_hdr    rr_hdr;+	uint8_t             rr_segnum;+	uint8_t             rr_flags;+	uint16_t            rr_maxdelay;+	uint32_t            rr_reserved;+};++#define rr_type		rr_hdr.icmp6_type+#define rr_code         rr_hdr.icmp6_code+#define rr_cksum        rr_hdr.icmp6_cksum+#define rr_seqnum       rr_hdr.icmp6_data32[0]++#define ICMP6_RR_FLAGS_TEST             0x80+#define ICMP6_RR_FLAGS_REQRESULT        0x40+#define ICMP6_RR_FLAGS_FORCEAPPLY       0x20+#define ICMP6_RR_FLAGS_SPECSITE         0x10+#define ICMP6_RR_FLAGS_PREVDONE         0x08++struct rr_pco_match {+	uint8_t             rpm_code;+	uint8_t             rpm_len;+	uint8_t             rpm_ordinal;+	uint8_t             rpm_matchlen;+	uint8_t             rpm_minlen;+	uint8_t             rpm_maxlen;+	uint16_t            rpm_reserved;+	struct in6_addr     rpm_prefix;+};++#define RPM_PCO_ADD             1+#define RPM_PCO_CHANGE          2+#define RPM_PCO_SETGLOBAL       3++struct rr_pco_use {+	uint8_t             rpu_uselen;+	uint8_t             rpu_keeplen;+	uint8_t             rpu_ramask;+	uint8_t             rpu_raflags;+	uint32_t            rpu_vltime;+	uint32_t            rpu_pltime;+	uint32_t            rpu_flags;+	struct in6_addr     rpu_prefix;+};++#define ICMP6_RR_PCOUSE_RAFLAGS_ONLINK  0x20+#define ICMP6_RR_PCOUSE_RAFLAGS_AUTO    0x10++#if __BYTE_ORDER == __BIG_ENDIAN+#define ICMP6_RR_PCOUSE_FLAGS_DECRVLTIME 0x80000000+#define ICMP6_RR_PCOUSE_FLAGS_DECRPLTIME 0x40000000+#else+#define ICMP6_RR_PCOUSE_FLAGS_DECRVLTIME 0x80+#define ICMP6_RR_PCOUSE_FLAGS_DECRPLTIME 0x40+#endif++struct rr_result {+	uint16_t            rrr_flags;+	uint8_t             rrr_ordinal;+	uint8_t             rrr_matchedlen;+	uint32_t            rrr_ifid;+	struct in6_addr     rrr_prefix;+};++#if __BYTE_ORDER == __BIG_ENDIAN+#define ICMP6_RR_RESULT_FLAGS_OOB       0x0002+#define ICMP6_RR_RESULT_FLAGS_FORBIDDEN 0x0001+#else+#define ICMP6_RR_RESULT_FLAGS_OOB       0x0200+#define ICMP6_RR_RESULT_FLAGS_FORBIDDEN 0x0100+#endif++struct nd_opt_adv_interval {+	uint8_t   nd_opt_adv_interval_type;+	uint8_t   nd_opt_adv_interval_len;+	uint16_t  nd_opt_adv_interval_reserved;+	uint32_t  nd_opt_adv_interval_ival;+};++struct nd_opt_home_agent_info {+	uint8_t   nd_opt_home_agent_info_type;+	uint8_t   nd_opt_home_agent_info_len;+	uint16_t  nd_opt_home_agent_info_reserved;+	uint16_t  nd_opt_home_agent_info_preference;+	uint16_t  nd_opt_home_agent_info_lifetime;+};++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/aarch64/netinet/if_ether.h view
@@ -0,0 +1,149 @@+#ifndef _NETINET_IF_ETHER_H+#define _NETINET_IF_ETHER_H++#include <stdint.h>+#include <sys/types.h>++#define ETH_ALEN	6+#define ETH_TLEN	2+#define ETH_HLEN	14+#define ETH_ZLEN	60+#define ETH_DATA_LEN	1500+#define ETH_FRAME_LEN	1514+#define ETH_FCS_LEN	4+#define ETH_MIN_MTU	68+#define ETH_MAX_MTU	0xFFFFU++#define ETH_P_LOOP	0x0060+#define ETH_P_PUP	0x0200+#define ETH_P_PUPAT	0x0201+#define ETH_P_TSN	0x22F0+#define ETH_P_ERSPAN2	0x22EB+#define ETH_P_IP	0x0800+#define ETH_P_X25	0x0805+#define ETH_P_ARP	0x0806+#define	ETH_P_BPQ	0x08FF+#define ETH_P_IEEEPUP	0x0a00+#define ETH_P_IEEEPUPAT	0x0a01+#define ETH_P_BATMAN	0x4305+#define ETH_P_DEC       0x6000+#define ETH_P_DNA_DL    0x6001+#define ETH_P_DNA_RC    0x6002+#define ETH_P_DNA_RT    0x6003+#define ETH_P_LAT       0x6004+#define ETH_P_DIAG      0x6005+#define ETH_P_CUST      0x6006+#define ETH_P_SCA       0x6007+#define ETH_P_TEB	0x6558+#define ETH_P_RARP      0x8035+#define ETH_P_ATALK	0x809B+#define ETH_P_AARP	0x80F3+#define ETH_P_8021Q	0x8100+#define ETH_P_IPX	0x8137+#define ETH_P_IPV6	0x86DD+#define ETH_P_PAUSE	0x8808+#define ETH_P_SLOW	0x8809+#define ETH_P_WCCP	0x883E+#define ETH_P_MPLS_UC	0x8847+#define ETH_P_MPLS_MC	0x8848+#define ETH_P_ATMMPOA	0x884c+#define ETH_P_PPP_DISC	0x8863+#define ETH_P_PPP_SES	0x8864+#define ETH_P_LINK_CTL	0x886c+#define ETH_P_ATMFATE	0x8884+#define ETH_P_PAE	0x888E+#define ETH_P_AOE	0x88A2+#define ETH_P_8021AD	0x88A8+#define ETH_P_802_EX1	0x88B5+#define ETH_P_ERSPAN	0x88BE+#define ETH_P_PREAUTH	0x88C7+#define ETH_P_TIPC	0x88CA+#define ETH_P_LLDP	0x88CC+#define ETH_P_MRP	0x88E3+#define ETH_P_MACSEC	0x88E5+#define ETH_P_8021AH	0x88E7+#define ETH_P_MVRP	0x88F5+#define ETH_P_1588	0x88F7+#define ETH_P_NCSI	0x88F8+#define ETH_P_PRP	0x88FB+#define ETH_P_CFM	0x8902+#define ETH_P_FCOE	0x8906+#define ETH_P_TDLS	0x890D+#define ETH_P_FIP	0x8914+#define ETH_P_IBOE	0x8915+#define ETH_P_80221	0x8917+#define ETH_P_HSR	0x892F+#define ETH_P_NSH	0x894F+#define ETH_P_LOOPBACK	0x9000+#define ETH_P_QINQ1	0x9100+#define ETH_P_QINQ2	0x9200+#define ETH_P_QINQ3	0x9300+#define ETH_P_EDSA	0xDADA+#define ETH_P_DSA_8021Q	0xDADB+#define ETH_P_IFE	0xED3E+#define ETH_P_AF_IUCV	0xFBFB++#define ETH_P_802_3_MIN	0x0600++#define ETH_P_802_3	0x0001+#define ETH_P_AX25	0x0002+#define ETH_P_ALL	0x0003+#define ETH_P_802_2	0x0004+#define ETH_P_SNAP	0x0005+#define ETH_P_DDCMP     0x0006+#define ETH_P_WAN_PPP   0x0007+#define ETH_P_PPP_MP    0x0008+#define ETH_P_LOCALTALK 0x0009+#define ETH_P_CAN	0x000C+#define ETH_P_CANFD	0x000D+#define ETH_P_PPPTALK	0x0010+#define ETH_P_TR_802_2	0x0011+#define ETH_P_MOBITEX	0x0015+#define ETH_P_CONTROL	0x0016+#define ETH_P_IRDA	0x0017+#define ETH_P_ECONET	0x0018+#define ETH_P_HDLC	0x0019+#define ETH_P_ARCNET	0x001A+#define ETH_P_DSA	0x001B+#define ETH_P_TRAILER	0x001C+#define ETH_P_PHONET	0x00F5+#define ETH_P_IEEE802154 0x00F6+#define ETH_P_CAIF	0x00F7+#define ETH_P_XDSA	0x00F8+#define ETH_P_MAP	0x00F9++struct ethhdr {+	uint8_t h_dest[ETH_ALEN];+	uint8_t h_source[ETH_ALEN];+	uint16_t h_proto;+};++#include <net/ethernet.h>+#include <net/if_arp.h>++struct	ether_arp {+	struct	arphdr ea_hdr;+	uint8_t arp_sha[ETH_ALEN];+	uint8_t arp_spa[4];+	uint8_t arp_tha[ETH_ALEN];+	uint8_t arp_tpa[4];+};+#define	arp_hrd	ea_hdr.ar_hrd+#define	arp_pro	ea_hdr.ar_pro+#define	arp_hln	ea_hdr.ar_hln+#define	arp_pln	ea_hdr.ar_pln+#define	arp_op	ea_hdr.ar_op++#define ETHER_MAP_IP_MULTICAST(ipaddr, enaddr) \+do { \+	(enaddr)[0] = 0x01; \+	(enaddr)[1] = 0x00; \+	(enaddr)[2] = 0x5e; \+	(enaddr)[3] = ((uint8_t *)ipaddr)[1] & 0x7f; \+	(enaddr)[4] = ((uint8_t *)ipaddr)[2]; \+	(enaddr)[5] = ((uint8_t *)ipaddr)[3]; \+} while(0)++#define __UAPI_DEF_ETHHDR       0++#endif
+ musl-include/aarch64/netinet/igmp.h view
@@ -0,0 +1,45 @@+#ifndef _NETINET_IGMP_H+#define _NETINET_IGMP_H++#include <stdint.h>+#include <netinet/in.h>++struct igmp {+	uint8_t igmp_type;+	uint8_t igmp_code;+	uint16_t igmp_cksum;+	struct in_addr igmp_group;+};++#define IGMP_MINLEN			8++#define IGMP_MEMBERSHIP_QUERY   	0x11+#define IGMP_V1_MEMBERSHIP_REPORT	0x12+#define IGMP_V2_MEMBERSHIP_REPORT	0x16+#define IGMP_V2_LEAVE_GROUP		0x17++#define IGMP_DVMRP			0x13+#define IGMP_PIM			0x14+#define IGMP_TRACE			0x15++#define IGMP_MTRACE_RESP		0x1e+#define IGMP_MTRACE			0x1f++#define IGMP_MAX_HOST_REPORT_DELAY	10+#define IGMP_TIMER_SCALE		10++#define IGMP_DELAYING_MEMBER	1+#define IGMP_IDLE_MEMBER	2+#define IGMP_LAZY_MEMBER	3+#define IGMP_SLEEPING_MEMBER	4+#define IGMP_AWAKENING_MEMBER	5++#define IGMP_v1_ROUTER		1+#define IGMP_v2_ROUTER		2++#define IGMP_HOST_MEMBERSHIP_QUERY	IGMP_MEMBERSHIP_QUERY+#define IGMP_HOST_MEMBERSHIP_REPORT	IGMP_V1_MEMBERSHIP_REPORT+#define IGMP_HOST_NEW_MEMBERSHIP_REPORT	IGMP_V2_MEMBERSHIP_REPORT+#define IGMP_HOST_LEAVE_MESSAGE		IGMP_V2_LEAVE_GROUP++#endif
+ musl-include/aarch64/netinet/in.h view
@@ -0,0 +1,417 @@+#ifndef	_NETINET_IN_H+#define	_NETINET_IN_H++#ifdef __cplusplus+extern "C" {+#endif++#include <features.h>+#include <inttypes.h>+#include <sys/socket.h>++typedef uint16_t in_port_t;+typedef uint32_t in_addr_t;+struct in_addr { in_addr_t s_addr; };++struct sockaddr_in {+	sa_family_t sin_family;+	in_port_t sin_port;+	struct in_addr sin_addr;+	uint8_t sin_zero[8];+};++struct in6_addr {+	union {+		uint8_t __s6_addr[16];+		uint16_t __s6_addr16[8];+		uint32_t __s6_addr32[4];+	} __in6_union;+};+#define s6_addr __in6_union.__s6_addr+#define s6_addr16 __in6_union.__s6_addr16+#define s6_addr32 __in6_union.__s6_addr32++struct sockaddr_in6 {+	sa_family_t     sin6_family;+	in_port_t       sin6_port;+	uint32_t        sin6_flowinfo;+	struct in6_addr sin6_addr;+	uint32_t        sin6_scope_id;+};++struct ipv6_mreq {+	struct in6_addr ipv6mr_multiaddr;+	unsigned        ipv6mr_interface;+};++#define INADDR_ANY        ((in_addr_t) 0x00000000)+#define INADDR_BROADCAST  ((in_addr_t) 0xffffffff)+#define INADDR_NONE       ((in_addr_t) 0xffffffff)+#define INADDR_LOOPBACK   ((in_addr_t) 0x7f000001)+#define INADDR_DUMMY      ((in_addr_t) 0xc0000008)++#define INADDR_UNSPEC_GROUP     ((in_addr_t) 0xe0000000)+#define INADDR_ALLHOSTS_GROUP   ((in_addr_t) 0xe0000001)+#define INADDR_ALLRTRS_GROUP    ((in_addr_t) 0xe0000002)+#define INADDR_ALLSNOOPERS_GROUP ((in_addr_t) 0xe000006a)+#define INADDR_MAX_LOCAL_GROUP  ((in_addr_t) 0xe00000ff)++#define IN6ADDR_ANY_INIT      { { { 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 } } }+#define IN6ADDR_LOOPBACK_INIT { { { 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1 } } }++extern const struct in6_addr in6addr_any, in6addr_loopback;++#define INET_ADDRSTRLEN  16+#define INET6_ADDRSTRLEN 46++uint32_t htonl(uint32_t);+uint16_t htons(uint16_t);+uint32_t ntohl(uint32_t);+uint16_t ntohs(uint16_t);++#define IPPORT_RESERVED 1024++#define IPPROTO_IP       0+#define IPPROTO_HOPOPTS  0+#define IPPROTO_ICMP     1+#define IPPROTO_IGMP     2+#define IPPROTO_IPIP     4+#define IPPROTO_TCP      6+#define IPPROTO_EGP      8+#define IPPROTO_PUP      12+#define IPPROTO_UDP      17+#define IPPROTO_IDP      22+#define IPPROTO_TP       29+#define IPPROTO_DCCP     33+#define IPPROTO_IPV6     41+#define IPPROTO_ROUTING  43+#define IPPROTO_FRAGMENT 44+#define IPPROTO_RSVP     46+#define IPPROTO_GRE      47+#define IPPROTO_ESP      50+#define IPPROTO_AH       51+#define IPPROTO_ICMPV6   58+#define IPPROTO_NONE     59+#define IPPROTO_DSTOPTS  60+#define IPPROTO_MTP      92+#define IPPROTO_BEETPH   94+#define IPPROTO_ENCAP    98+#define IPPROTO_PIM      103+#define IPPROTO_COMP     108+#define IPPROTO_SCTP     132+#define IPPROTO_MH       135+#define IPPROTO_UDPLITE  136+#define IPPROTO_MPLS     137+#define IPPROTO_ETHERNET 143+#define IPPROTO_RAW      255+#define IPPROTO_MPTCP    262+#define IPPROTO_MAX      263++#define IN6_IS_ADDR_UNSPECIFIED(a) \+        (((uint32_t *) (a))[0] == 0 && ((uint32_t *) (a))[1] == 0 && \+         ((uint32_t *) (a))[2] == 0 && ((uint32_t *) (a))[3] == 0)++#define IN6_IS_ADDR_LOOPBACK(a) \+        (((uint32_t *) (a))[0] == 0 && ((uint32_t *) (a))[1] == 0 && \+         ((uint32_t *) (a))[2] == 0 && \+         ((uint8_t *) (a))[12] == 0 && ((uint8_t *) (a))[13] == 0 && \+         ((uint8_t *) (a))[14] == 0 && ((uint8_t *) (a))[15] == 1 )++#define IN6_IS_ADDR_MULTICAST(a) (((uint8_t *) (a))[0] == 0xff)++#define IN6_IS_ADDR_LINKLOCAL(a) \+        ((((uint8_t *) (a))[0]) == 0xfe && (((uint8_t *) (a))[1] & 0xc0) == 0x80)++#define IN6_IS_ADDR_SITELOCAL(a) \+        ((((uint8_t *) (a))[0]) == 0xfe && (((uint8_t *) (a))[1] & 0xc0) == 0xc0)++#define IN6_IS_ADDR_V4MAPPED(a) \+        (((uint32_t *) (a))[0] == 0 && ((uint32_t *) (a))[1] == 0 && \+         ((uint8_t *) (a))[8] == 0 && ((uint8_t *) (a))[9] == 0 && \+         ((uint8_t *) (a))[10] == 0xff && ((uint8_t *) (a))[11] == 0xff)++#define IN6_IS_ADDR_V4COMPAT(a) \+        (((uint32_t *) (a))[0] == 0 && ((uint32_t *) (a))[1] == 0 && \+         ((uint32_t *) (a))[2] == 0 && ((uint8_t *) (a))[15] > 1)++#define IN6_IS_ADDR_MC_NODELOCAL(a) \+        (IN6_IS_ADDR_MULTICAST(a) && ((((uint8_t *) (a))[1] & 0xf) == 0x1))++#define IN6_IS_ADDR_MC_LINKLOCAL(a) \+        (IN6_IS_ADDR_MULTICAST(a) && ((((uint8_t *) (a))[1] & 0xf) == 0x2))++#define IN6_IS_ADDR_MC_SITELOCAL(a) \+        (IN6_IS_ADDR_MULTICAST(a) && ((((uint8_t *) (a))[1] & 0xf) == 0x5))++#define IN6_IS_ADDR_MC_ORGLOCAL(a) \+        (IN6_IS_ADDR_MULTICAST(a) && ((((uint8_t *) (a))[1] & 0xf) == 0x8))++#define IN6_IS_ADDR_MC_GLOBAL(a) \+        (IN6_IS_ADDR_MULTICAST(a) && ((((uint8_t *) (a))[1] & 0xf) == 0xe))++#define __ARE_4_EQUAL(a,b) \+	(!( (0[a]-0[b]) | (1[a]-1[b]) | (2[a]-2[b]) | (3[a]-3[b]) ))+#define IN6_ARE_ADDR_EQUAL(a,b) \+	__ARE_4_EQUAL((const uint32_t *)(a), (const uint32_t *)(b))++#define	IN_CLASSA(a)		((((in_addr_t)(a)) & 0x80000000) == 0)+#define	IN_CLASSA_NET		0xff000000+#define	IN_CLASSA_NSHIFT	24+#define	IN_CLASSA_HOST		(0xffffffff & ~IN_CLASSA_NET)+#define	IN_CLASSA_MAX		128+#define	IN_CLASSB(a)		((((in_addr_t)(a)) & 0xc0000000) == 0x80000000)+#define	IN_CLASSB_NET		0xffff0000+#define	IN_CLASSB_NSHIFT	16+#define	IN_CLASSB_HOST		(0xffffffff & ~IN_CLASSB_NET)+#define	IN_CLASSB_MAX		65536+#define	IN_CLASSC(a)		((((in_addr_t)(a)) & 0xe0000000) == 0xc0000000)+#define	IN_CLASSC_NET		0xffffff00+#define	IN_CLASSC_NSHIFT	8+#define	IN_CLASSC_HOST		(0xffffffff & ~IN_CLASSC_NET)+#define	IN_CLASSD(a)		((((in_addr_t)(a)) & 0xf0000000) == 0xe0000000)+#define	IN_MULTICAST(a)		IN_CLASSD(a)+#define	IN_EXPERIMENTAL(a)	((((in_addr_t)(a)) & 0xe0000000) == 0xe0000000)+#define	IN_BADCLASS(a)		((((in_addr_t)(a)) & 0xf0000000) == 0xf0000000)++#define IN_LOOPBACKNET 127+++#define IP_TOS             1+#define IP_TTL             2+#define IP_HDRINCL         3+#define IP_OPTIONS         4+#define IP_ROUTER_ALERT    5+#define IP_RECVOPTS        6+#define IP_RETOPTS         7+#define IP_PKTINFO         8+#define IP_PKTOPTIONS      9+#define IP_PMTUDISC        10+#define IP_MTU_DISCOVER    10+#define IP_RECVERR         11+#define IP_RECVTTL         12+#define IP_RECVTOS         13+#define IP_MTU             14+#define IP_FREEBIND        15+#define IP_IPSEC_POLICY    16+#define IP_XFRM_POLICY     17+#define IP_PASSSEC         18+#define IP_TRANSPARENT     19+#define IP_ORIGDSTADDR     20+#define IP_RECVORIGDSTADDR IP_ORIGDSTADDR+#define IP_MINTTL          21+#define IP_NODEFRAG        22+#define IP_CHECKSUM        23+#define IP_BIND_ADDRESS_NO_PORT 24+#define IP_RECVFRAGSIZE    25+#define IP_RECVERR_RFC4884 26+#define IP_MULTICAST_IF    32+#define IP_MULTICAST_TTL   33+#define IP_MULTICAST_LOOP  34+#define IP_ADD_MEMBERSHIP  35+#define IP_DROP_MEMBERSHIP 36+#define IP_UNBLOCK_SOURCE  37+#define IP_BLOCK_SOURCE    38+#define IP_ADD_SOURCE_MEMBERSHIP  39+#define IP_DROP_SOURCE_MEMBERSHIP 40+#define IP_MSFILTER        41+#define IP_MULTICAST_ALL   49+#define IP_UNICAST_IF      50++#define IP_RECVRETOPTS IP_RETOPTS++#define IP_PMTUDISC_DONT   0+#define IP_PMTUDISC_WANT   1+#define IP_PMTUDISC_DO     2+#define IP_PMTUDISC_PROBE  3+#define IP_PMTUDISC_INTERFACE 4+#define IP_PMTUDISC_OMIT   5++#define IP_DEFAULT_MULTICAST_TTL        1+#define IP_DEFAULT_MULTICAST_LOOP       1+#define IP_MAX_MEMBERSHIPS              20++struct ip_opts {+	struct in_addr ip_dst;+	char ip_opts[40];+};++#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE)++#define MCAST_JOIN_GROUP   42+#define MCAST_BLOCK_SOURCE 43+#define MCAST_UNBLOCK_SOURCE      44+#define MCAST_LEAVE_GROUP  45+#define MCAST_JOIN_SOURCE_GROUP   46+#define MCAST_LEAVE_SOURCE_GROUP  47+#define MCAST_MSFILTER     48++#define MCAST_EXCLUDE 0+#define MCAST_INCLUDE 1++struct ip_mreq {+	struct in_addr imr_multiaddr;+	struct in_addr imr_interface;+};++struct ip_mreqn {+	struct in_addr imr_multiaddr;+	struct in_addr imr_address;+	int imr_ifindex;+};++struct ip_mreq_source {+	struct in_addr imr_multiaddr;+	struct in_addr imr_interface;+	struct in_addr imr_sourceaddr;+};++struct ip_msfilter {+	struct in_addr imsf_multiaddr;+	struct in_addr imsf_interface;+	uint32_t imsf_fmode;+	uint32_t imsf_numsrc;+	struct in_addr imsf_slist[1];+};+#define IP_MSFILTER_SIZE(numsrc) \+	(sizeof(struct ip_msfilter) - sizeof(struct in_addr) \+	+ (numsrc) * sizeof(struct in_addr))++struct group_req {+	uint32_t gr_interface;+	struct sockaddr_storage gr_group;+};++struct group_source_req {+	uint32_t gsr_interface;+	struct sockaddr_storage gsr_group;+	struct sockaddr_storage gsr_source;+};++struct group_filter {+	uint32_t gf_interface;+	struct sockaddr_storage gf_group;+	uint32_t gf_fmode;+	uint32_t gf_numsrc;+	struct sockaddr_storage gf_slist[1];+};+#define GROUP_FILTER_SIZE(numsrc) \+	(sizeof(struct group_filter) - sizeof(struct sockaddr_storage) \+	+ (numsrc) * sizeof(struct sockaddr_storage))++struct in_pktinfo {+	int ipi_ifindex;+	struct in_addr ipi_spec_dst;+	struct in_addr ipi_addr;+};++struct in6_pktinfo {+	struct in6_addr ipi6_addr;+	unsigned ipi6_ifindex;+};++struct ip6_mtuinfo {+	struct sockaddr_in6 ip6m_addr;+	uint32_t ip6m_mtu;+};+#endif++#define IPV6_ADDRFORM           1+#define IPV6_2292PKTINFO        2+#define IPV6_2292HOPOPTS        3+#define IPV6_2292DSTOPTS        4+#define IPV6_2292RTHDR          5+#define IPV6_2292PKTOPTIONS     6+#define IPV6_CHECKSUM           7+#define IPV6_2292HOPLIMIT       8+#define IPV6_NEXTHOP            9+#define IPV6_AUTHHDR            10+#define IPV6_UNICAST_HOPS       16+#define IPV6_MULTICAST_IF       17+#define IPV6_MULTICAST_HOPS     18+#define IPV6_MULTICAST_LOOP     19+#define IPV6_JOIN_GROUP         20+#define IPV6_LEAVE_GROUP        21+#define IPV6_ROUTER_ALERT       22+#define IPV6_MTU_DISCOVER       23+#define IPV6_MTU                24+#define IPV6_RECVERR            25+#define IPV6_V6ONLY             26+#define IPV6_JOIN_ANYCAST       27+#define IPV6_LEAVE_ANYCAST      28+#define IPV6_MULTICAST_ALL      29+#define IPV6_ROUTER_ALERT_ISOLATE 30+#define IPV6_IPSEC_POLICY       34+#define IPV6_XFRM_POLICY        35+#define IPV6_HDRINCL            36++#define IPV6_RECVPKTINFO        49+#define IPV6_PKTINFO            50+#define IPV6_RECVHOPLIMIT       51+#define IPV6_HOPLIMIT           52+#define IPV6_RECVHOPOPTS        53+#define IPV6_HOPOPTS            54+#define IPV6_RTHDRDSTOPTS       55+#define IPV6_RECVRTHDR          56+#define IPV6_RTHDR              57+#define IPV6_RECVDSTOPTS        58+#define IPV6_DSTOPTS            59+#define IPV6_RECVPATHMTU        60+#define IPV6_PATHMTU            61+#define IPV6_DONTFRAG           62+#define IPV6_RECVTCLASS         66+#define IPV6_TCLASS             67+#define IPV6_AUTOFLOWLABEL      70+#define IPV6_ADDR_PREFERENCES   72+#define IPV6_MINHOPCOUNT        73+#define IPV6_ORIGDSTADDR        74+#define IPV6_RECVORIGDSTADDR    IPV6_ORIGDSTADDR+#define IPV6_TRANSPARENT        75+#define IPV6_UNICAST_IF         76+#define IPV6_RECVFRAGSIZE       77+#define IPV6_FREEBIND           78++#define IPV6_ADD_MEMBERSHIP     IPV6_JOIN_GROUP+#define IPV6_DROP_MEMBERSHIP    IPV6_LEAVE_GROUP+#define IPV6_RXHOPOPTS          IPV6_HOPOPTS+#define IPV6_RXDSTOPTS          IPV6_DSTOPTS++#define IPV6_PMTUDISC_DONT      0+#define IPV6_PMTUDISC_WANT      1+#define IPV6_PMTUDISC_DO        2+#define IPV6_PMTUDISC_PROBE     3+#define IPV6_PMTUDISC_INTERFACE 4+#define IPV6_PMTUDISC_OMIT      5++#define IPV6_PREFER_SRC_TMP            0x0001+#define IPV6_PREFER_SRC_PUBLIC         0x0002+#define IPV6_PREFER_SRC_PUBTMP_DEFAULT 0x0100+#define IPV6_PREFER_SRC_COA            0x0004+#define IPV6_PREFER_SRC_HOME           0x0400+#define IPV6_PREFER_SRC_CGA            0x0008+#define IPV6_PREFER_SRC_NONCGA         0x0800++#define IPV6_RTHDR_LOOSE        0+#define IPV6_RTHDR_STRICT       1++#define IPV6_RTHDR_TYPE_0       0++#define __UAPI_DEF_IN_ADDR      0+#define __UAPI_DEF_IN_IPPROTO   0+#define __UAPI_DEF_IN_PKTINFO   0+#define __UAPI_DEF_IP_MREQ      0+#define __UAPI_DEF_SOCKADDR_IN  0+#define __UAPI_DEF_IN_CLASS     0+#define __UAPI_DEF_IN6_ADDR     0+#define __UAPI_DEF_IN6_ADDR_ALT 0+#define __UAPI_DEF_SOCKADDR_IN6 0+#define __UAPI_DEF_IPV6_MREQ    0+#define __UAPI_DEF_IPPROTO_V6   0+#define __UAPI_DEF_IPV6_OPTIONS 0+#define __UAPI_DEF_IN6_PKTINFO  0+#define __UAPI_DEF_IP6_MTUINFO  0++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/aarch64/netinet/in_systm.h view
@@ -0,0 +1,9 @@+#ifndef _NETINET_IN_SYSTM_H+#define _NETINET_IN_SYSTM_H++#include <stdint.h>++typedef uint16_t n_short;+typedef uint32_t n_long, n_time;++#endif
+ musl-include/aarch64/netinet/ip.h view
@@ -0,0 +1,199 @@+#ifndef _NETINET_IP_H+#define _NETINET_IP_H++#ifdef __cplusplus+extern "C" {+#endif++#include <stdint.h>+#include <netinet/in.h>++struct timestamp {+	uint8_t len;+	uint8_t ptr;+#if __BYTE_ORDER == __LITTLE_ENDIAN+	unsigned int flags:4;+	unsigned int overflow:4;+#else+	unsigned int overflow:4;+	unsigned int flags:4;+#endif+	uint32_t data[9];+  };++struct iphdr {+#if __BYTE_ORDER == __LITTLE_ENDIAN+	unsigned int ihl:4;+	unsigned int version:4;+#else+	unsigned int version:4;+	unsigned int ihl:4;+#endif+	uint8_t tos;+	uint16_t tot_len;+	uint16_t id;+	uint16_t frag_off;+	uint8_t ttl;+	uint8_t protocol;+	uint16_t check;+	uint32_t saddr;+	uint32_t daddr;+};++struct ip {+#if __BYTE_ORDER == __LITTLE_ENDIAN+	unsigned int ip_hl:4;+	unsigned int ip_v:4;+#else+	unsigned int ip_v:4;+	unsigned int ip_hl:4;+#endif+	uint8_t ip_tos;+	uint16_t ip_len;+	uint16_t ip_id;+	uint16_t ip_off;+	uint8_t ip_ttl;+	uint8_t ip_p;+	uint16_t ip_sum;+	struct in_addr ip_src, ip_dst;+};++#define	IP_RF 0x8000+#define	IP_DF 0x4000+#define	IP_MF 0x2000+#define	IP_OFFMASK 0x1fff++struct ip_timestamp {+	uint8_t ipt_code;+	uint8_t ipt_len;+	uint8_t ipt_ptr;+#if __BYTE_ORDER == __LITTLE_ENDIAN+	unsigned int ipt_flg:4;+	unsigned int ipt_oflw:4;+#else+	unsigned int ipt_oflw:4;+	unsigned int ipt_flg:4;+#endif+	uint32_t data[9];+};++#define	IPVERSION	4+#define	IP_MAXPACKET	65535++#define	IPTOS_ECN_MASK		0x03+#define	IPTOS_ECN(x)		((x) & IPTOS_ECN_MASK)+#define	IPTOS_ECN_NOT_ECT	0x00+#define	IPTOS_ECN_ECT1		0x01+#define	IPTOS_ECN_ECT0		0x02+#define	IPTOS_ECN_CE		0x03++#define	IPTOS_DSCP_MASK		0xfc+#define	IPTOS_DSCP(x)		((x) & IPTOS_DSCP_MASK)+#define	IPTOS_DSCP_AF11		0x28+#define	IPTOS_DSCP_AF12		0x30+#define	IPTOS_DSCP_AF13		0x38+#define	IPTOS_DSCP_AF21		0x48+#define	IPTOS_DSCP_AF22		0x50+#define	IPTOS_DSCP_AF23		0x58+#define	IPTOS_DSCP_AF31		0x68+#define	IPTOS_DSCP_AF32		0x70+#define	IPTOS_DSCP_AF33		0x78+#define	IPTOS_DSCP_AF41		0x88+#define	IPTOS_DSCP_AF42		0x90+#define	IPTOS_DSCP_AF43		0x98+#define	IPTOS_DSCP_EF		0xb8++#define	IPTOS_CLASS_MASK	0xe0+#define	IPTOS_CLASS(x)		((x) & IPTOS_CLASS_MASK)+#define	IPTOS_CLASS_CS0		0x00+#define	IPTOS_CLASS_CS1		0x20+#define	IPTOS_CLASS_CS2		0x40+#define	IPTOS_CLASS_CS3		0x60+#define	IPTOS_CLASS_CS4		0x80+#define	IPTOS_CLASS_CS5		0xa0+#define	IPTOS_CLASS_CS6		0xc0+#define	IPTOS_CLASS_CS7		0xe0+#define	IPTOS_CLASS_DEFAULT	IPTOS_CLASS_CS0++#define	IPTOS_TOS_MASK		0x1E+#define	IPTOS_TOS(tos)		((tos) & IPTOS_TOS_MASK)+#define	IPTOS_LOWDELAY		0x10+#define	IPTOS_THROUGHPUT	0x08+#define	IPTOS_RELIABILITY	0x04+#define	IPTOS_LOWCOST		0x02+#define	IPTOS_MINCOST		IPTOS_LOWCOST++#define	IPTOS_PREC_MASK			0xe0+#define	IPTOS_PREC(tos)                ((tos) & IPTOS_PREC_MASK)+#define	IPTOS_PREC_NETCONTROL		0xe0+#define	IPTOS_PREC_INTERNETCONTROL	0xc0+#define	IPTOS_PREC_CRITIC_ECP		0xa0+#define	IPTOS_PREC_FLASHOVERRIDE	0x80+#define	IPTOS_PREC_FLASH		0x60+#define	IPTOS_PREC_IMMEDIATE		0x40+#define	IPTOS_PREC_PRIORITY		0x20+#define	IPTOS_PREC_ROUTINE		0x00++#define	IPOPT_COPY		0x80+#define	IPOPT_CLASS_MASK	0x60+#define	IPOPT_NUMBER_MASK	0x1f++#define	IPOPT_COPIED(o)		((o) & IPOPT_COPY)+#define	IPOPT_CLASS(o)		((o) & IPOPT_CLASS_MASK)+#define	IPOPT_NUMBER(o)		((o) & IPOPT_NUMBER_MASK)++#define	IPOPT_CONTROL		0x00+#define	IPOPT_RESERVED1		0x20+#define	IPOPT_DEBMEAS		0x40+#define	IPOPT_MEASUREMENT       IPOPT_DEBMEAS+#define	IPOPT_RESERVED2		0x60++#define	IPOPT_EOL		0+#define	IPOPT_END		IPOPT_EOL+#define	IPOPT_NOP		1+#define	IPOPT_NOOP		IPOPT_NOP++#define	IPOPT_RR		7+#define	IPOPT_TS		68+#define	IPOPT_TIMESTAMP		IPOPT_TS+#define	IPOPT_SECURITY		130+#define	IPOPT_SEC		IPOPT_SECURITY+#define	IPOPT_LSRR		131+#define	IPOPT_SATID		136+#define	IPOPT_SID		IPOPT_SATID+#define	IPOPT_SSRR		137+#define	IPOPT_RA		148++#define	IPOPT_OPTVAL		0+#define	IPOPT_OLEN		1+#define	IPOPT_OFFSET		2+#define	IPOPT_MINOFF		4++#define	MAX_IPOPTLEN		40++#define	IPOPT_TS_TSONLY		0+#define	IPOPT_TS_TSANDADDR	1+#define	IPOPT_TS_PRESPEC	3++#define	IPOPT_SECUR_UNCLASS	0x0000+#define	IPOPT_SECUR_CONFID	0xf135+#define	IPOPT_SECUR_EFTO	0x789a+#define	IPOPT_SECUR_MMMM	0xbc4d+#define	IPOPT_SECUR_RESTR	0xaf13+#define	IPOPT_SECUR_SECRET	0xd788+#define	IPOPT_SECUR_TOPSECRET	0x6bc5++#define	MAXTTL		255+#define	IPDEFTTL	64+#define	IPFRAGTTL	60+#define	IPTTLDEC	1++#define	IP_MSS		576++#define __UAPI_DEF_IPHDR	0++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/aarch64/netinet/ip6.h view
@@ -0,0 +1,141 @@+#ifndef _NETINET_IP6_H+#define _NETINET_IP6_H++#ifdef __cplusplus+extern "C" {+#endif++#include <stdint.h>+#include <netinet/in.h>++struct ip6_hdr {+	union {+		struct ip6_hdrctl {+			uint32_t ip6_un1_flow;+			uint16_t ip6_un1_plen;+			uint8_t  ip6_un1_nxt;+			uint8_t  ip6_un1_hlim;+		} ip6_un1;+		uint8_t ip6_un2_vfc;+	} ip6_ctlun;+	struct in6_addr ip6_src;+	struct in6_addr ip6_dst;+};++#define ip6_vfc   ip6_ctlun.ip6_un2_vfc+#define ip6_flow  ip6_ctlun.ip6_un1.ip6_un1_flow+#define ip6_plen  ip6_ctlun.ip6_un1.ip6_un1_plen+#define ip6_nxt   ip6_ctlun.ip6_un1.ip6_un1_nxt+#define ip6_hlim  ip6_ctlun.ip6_un1.ip6_un1_hlim+#define ip6_hops  ip6_ctlun.ip6_un1.ip6_un1_hlim++struct ip6_ext {+	uint8_t  ip6e_nxt;+	uint8_t  ip6e_len;+};++struct ip6_hbh {+	uint8_t  ip6h_nxt;+	uint8_t  ip6h_len;+};++struct ip6_dest {+	uint8_t  ip6d_nxt;+	uint8_t  ip6d_len;+};++struct ip6_rthdr {+	uint8_t  ip6r_nxt;+	uint8_t  ip6r_len;+	uint8_t  ip6r_type;+	uint8_t  ip6r_segleft;+};++struct ip6_rthdr0 {+	uint8_t  ip6r0_nxt;+	uint8_t  ip6r0_len;+	uint8_t  ip6r0_type;+	uint8_t  ip6r0_segleft;+	uint8_t  ip6r0_reserved;+	uint8_t  ip6r0_slmap[3];+	struct in6_addr ip6r0_addr[];+};++struct ip6_frag {+	uint8_t   ip6f_nxt;+	uint8_t   ip6f_reserved;+	uint16_t  ip6f_offlg;+	uint32_t  ip6f_ident;+};++#if __BYTE_ORDER == __BIG_ENDIAN+#define IP6F_OFF_MASK       0xfff8+#define IP6F_RESERVED_MASK  0x0006+#define IP6F_MORE_FRAG      0x0001+#else+#define IP6F_OFF_MASK       0xf8ff+#define IP6F_RESERVED_MASK  0x0600+#define IP6F_MORE_FRAG      0x0100+#endif++struct ip6_opt {+	uint8_t  ip6o_type;+	uint8_t  ip6o_len;+};++#define IP6OPT_TYPE(o)		((o) & 0xc0)+#define IP6OPT_TYPE_SKIP	0x00+#define IP6OPT_TYPE_DISCARD	0x40+#define IP6OPT_TYPE_FORCEICMP	0x80+#define IP6OPT_TYPE_ICMP	0xc0+#define IP6OPT_TYPE_MUTABLE	0x20++#define IP6OPT_PAD1	0+#define IP6OPT_PADN	1++#define IP6OPT_JUMBO		0xc2+#define IP6OPT_NSAP_ADDR	0xc3+#define IP6OPT_TUNNEL_LIMIT	0x04+#define IP6OPT_ROUTER_ALERT	0x05++struct ip6_opt_jumbo {+	uint8_t  ip6oj_type;+	uint8_t  ip6oj_len;+	uint8_t  ip6oj_jumbo_len[4];+};+#define IP6OPT_JUMBO_LEN	6++struct ip6_opt_nsap {+	uint8_t  ip6on_type;+	uint8_t  ip6on_len;+	uint8_t  ip6on_src_nsap_len;+	uint8_t  ip6on_dst_nsap_len;+};++struct ip6_opt_tunnel {+	uint8_t  ip6ot_type;+	uint8_t  ip6ot_len;+	uint8_t  ip6ot_encap_limit;+};++struct ip6_opt_router {+	uint8_t  ip6or_type;+	uint8_t  ip6or_len;+	uint8_t  ip6or_value[2];+};++#if __BYTE_ORDER == __BIG_ENDIAN+#define IP6_ALERT_MLD	0x0000+#define IP6_ALERT_RSVP	0x0001+#define IP6_ALERT_AN	0x0002+#else+#define IP6_ALERT_MLD	0x0000+#define IP6_ALERT_RSVP	0x0100+#define IP6_ALERT_AN	0x0200+#endif++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/aarch64/netinet/ip_icmp.h view
@@ -0,0 +1,193 @@+#ifndef _NETINET_IP_ICMP_H+#define _NETINET_IP_ICMP_H++#include <stdint.h>+#include <netinet/in.h>+#include <netinet/ip.h>++#ifdef __cplusplus+extern "C" {+#endif++struct icmphdr {+	uint8_t type;+	uint8_t code;+	uint16_t checksum;+	union {+		struct {+			uint16_t id;+			uint16_t sequence;+		} echo;+		uint32_t gateway;+		struct {+			uint16_t __unused;+			uint16_t mtu;+		} frag;+		uint8_t reserved[4];+	} un;+};++#define ICMP_ECHOREPLY		0+#define ICMP_DEST_UNREACH	3+#define ICMP_SOURCE_QUENCH	4+#define ICMP_REDIRECT		5+#define ICMP_ECHO		8+#define ICMP_TIME_EXCEEDED	11+#define ICMP_PARAMETERPROB	12+#define ICMP_TIMESTAMP		13+#define ICMP_TIMESTAMPREPLY	14+#define ICMP_INFO_REQUEST	15+#define ICMP_INFO_REPLY		16+#define ICMP_ADDRESS		17+#define ICMP_ADDRESSREPLY	18+#define NR_ICMP_TYPES		18+++#define ICMP_NET_UNREACH	0+#define ICMP_HOST_UNREACH	1+#define ICMP_PROT_UNREACH	2+#define ICMP_PORT_UNREACH	3+#define ICMP_FRAG_NEEDED	4+#define ICMP_SR_FAILED		5+#define ICMP_NET_UNKNOWN	6+#define ICMP_HOST_UNKNOWN	7+#define ICMP_HOST_ISOLATED	8+#define ICMP_NET_ANO		9+#define ICMP_HOST_ANO		10+#define ICMP_NET_UNR_TOS	11+#define ICMP_HOST_UNR_TOS	12+#define ICMP_PKT_FILTERED	13+#define ICMP_PREC_VIOLATION	14+#define ICMP_PREC_CUTOFF	15+#define NR_ICMP_UNREACH		15++#define ICMP_REDIR_NET		0+#define ICMP_REDIR_HOST		1+#define ICMP_REDIR_NETTOS	2+#define ICMP_REDIR_HOSTTOS	3++#define ICMP_EXC_TTL		0+#define ICMP_EXC_FRAGTIME	1+++struct icmp_ra_addr {+	uint32_t ira_addr;+	uint32_t ira_preference;+};++struct icmp {+	uint8_t  icmp_type;+	uint8_t  icmp_code;+	uint16_t icmp_cksum;+	union {+		uint8_t ih_pptr;+		struct in_addr ih_gwaddr;+		struct ih_idseq {+			uint16_t icd_id;+			uint16_t icd_seq;+		} ih_idseq;+		uint32_t ih_void;++		struct ih_pmtu {+			uint16_t ipm_void;+			uint16_t ipm_nextmtu;+		} ih_pmtu;++		struct ih_rtradv {+			uint8_t irt_num_addrs;+			uint8_t irt_wpa;+			uint16_t irt_lifetime;+		} ih_rtradv;+	} icmp_hun;+	union {+		struct {+			uint32_t its_otime;+			uint32_t its_rtime;+			uint32_t its_ttime;+		} id_ts;+		struct {+			struct ip idi_ip;+		} id_ip;+		struct icmp_ra_addr id_radv;+		uint32_t   id_mask;+		uint8_t    id_data[1];+	} icmp_dun;+};++#define	icmp_pptr	icmp_hun.ih_pptr+#define	icmp_gwaddr	icmp_hun.ih_gwaddr+#define	icmp_id		icmp_hun.ih_idseq.icd_id+#define	icmp_seq	icmp_hun.ih_idseq.icd_seq+#define	icmp_void	icmp_hun.ih_void+#define	icmp_pmvoid	icmp_hun.ih_pmtu.ipm_void+#define	icmp_nextmtu	icmp_hun.ih_pmtu.ipm_nextmtu+#define	icmp_num_addrs	icmp_hun.ih_rtradv.irt_num_addrs+#define	icmp_wpa	icmp_hun.ih_rtradv.irt_wpa+#define	icmp_lifetime	icmp_hun.ih_rtradv.irt_lifetime+#define	icmp_otime	icmp_dun.id_ts.its_otime+#define	icmp_rtime	icmp_dun.id_ts.its_rtime+#define	icmp_ttime	icmp_dun.id_ts.its_ttime+#define	icmp_ip		icmp_dun.id_ip.idi_ip+#define	icmp_radv	icmp_dun.id_radv+#define	icmp_mask	icmp_dun.id_mask+#define	icmp_data	icmp_dun.id_data++#define	ICMP_MINLEN	8+#define	ICMP_TSLEN	(8 + 3 * sizeof (n_time))+#define	ICMP_MASKLEN	12+#define	ICMP_ADVLENMIN	(8 + sizeof (struct ip) + 8)+#define	ICMP_ADVLEN(p)	(8 + ((p)->icmp_ip.ip_hl << 2) + 8)++#define	ICMP_UNREACH		3+#define	ICMP_SOURCEQUENCH	4+#define	ICMP_ROUTERADVERT	9+#define	ICMP_ROUTERSOLICIT	10+#define	ICMP_TIMXCEED		11+#define	ICMP_PARAMPROB		12+#define	ICMP_TSTAMP		13+#define	ICMP_TSTAMPREPLY	14+#define	ICMP_IREQ		15+#define	ICMP_IREQREPLY		16+#define	ICMP_MASKREQ		17+#define	ICMP_MASKREPLY		18+#define	ICMP_MAXTYPE		18++#define	ICMP_UNREACH_NET	        0+#define	ICMP_UNREACH_HOST	        1+#define	ICMP_UNREACH_PROTOCOL	        2+#define	ICMP_UNREACH_PORT	        3+#define	ICMP_UNREACH_NEEDFRAG	        4+#define	ICMP_UNREACH_SRCFAIL	        5+#define	ICMP_UNREACH_NET_UNKNOWN        6+#define	ICMP_UNREACH_HOST_UNKNOWN       7+#define	ICMP_UNREACH_ISOLATED	        8+#define	ICMP_UNREACH_NET_PROHIB	        9+#define	ICMP_UNREACH_HOST_PROHIB        10+#define	ICMP_UNREACH_TOSNET	        11+#define	ICMP_UNREACH_TOSHOST	        12+#define	ICMP_UNREACH_FILTER_PROHIB      13+#define	ICMP_UNREACH_HOST_PRECEDENCE    14+#define	ICMP_UNREACH_PRECEDENCE_CUTOFF  15++#define	ICMP_REDIRECT_NET	0+#define	ICMP_REDIRECT_HOST	1+#define	ICMP_REDIRECT_TOSNET	2+#define	ICMP_REDIRECT_TOSHOST	3++#define	ICMP_TIMXCEED_INTRANS	0+#define	ICMP_TIMXCEED_REASS	1++#define	ICMP_PARAMPROB_OPTABSENT 1++#define	ICMP_INFOTYPE(type) \+	((type) == ICMP_ECHOREPLY || (type) == ICMP_ECHO || \+	(type) == ICMP_ROUTERADVERT || (type) == ICMP_ROUTERSOLICIT || \+	(type) == ICMP_TSTAMP || (type) == ICMP_TSTAMPREPLY || \+	(type) == ICMP_IREQ || (type) == ICMP_IREQREPLY || \+	(type) == ICMP_MASKREQ || (type) == ICMP_MASKREPLY)++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/aarch64/netinet/tcp.h view
@@ -0,0 +1,305 @@+#ifndef _NETINET_TCP_H+#define _NETINET_TCP_H++#include <features.h>++#define TCP_NODELAY 1+#define TCP_MAXSEG	 2+#define TCP_CORK	 3+#define TCP_KEEPIDLE	 4+#define TCP_KEEPINTVL	 5+#define TCP_KEEPCNT	 6+#define TCP_SYNCNT	 7+#define TCP_LINGER2	 8+#define TCP_DEFER_ACCEPT 9+#define TCP_WINDOW_CLAMP 10+#define TCP_INFO	 11+#define	TCP_QUICKACK	 12+#define TCP_CONGESTION	 13+#define TCP_MD5SIG	 14+#define TCP_THIN_LINEAR_TIMEOUTS 16+#define TCP_THIN_DUPACK  17+#define TCP_USER_TIMEOUT 18+#define TCP_REPAIR       19+#define TCP_REPAIR_QUEUE 20+#define TCP_QUEUE_SEQ    21+#define TCP_REPAIR_OPTIONS 22+#define TCP_FASTOPEN     23+#define TCP_TIMESTAMP    24+#define TCP_NOTSENT_LOWAT 25+#define TCP_CC_INFO      26+#define TCP_SAVE_SYN     27+#define TCP_SAVED_SYN    28+#define TCP_REPAIR_WINDOW 29+#define TCP_FASTOPEN_CONNECT 30+#define TCP_ULP          31+#define TCP_MD5SIG_EXT   32+#define TCP_FASTOPEN_KEY 33+#define TCP_FASTOPEN_NO_COOKIE 34+#define TCP_ZEROCOPY_RECEIVE   35+#define TCP_INQ          36+#define TCP_TX_DELAY     37++#define TCP_CM_INQ TCP_INQ++#define TCP_ESTABLISHED  1+#define TCP_SYN_SENT     2+#define TCP_SYN_RECV     3+#define TCP_FIN_WAIT1    4+#define TCP_FIN_WAIT2    5+#define TCP_TIME_WAIT    6+#define TCP_CLOSE        7+#define TCP_CLOSE_WAIT   8+#define TCP_LAST_ACK     9+#define TCP_LISTEN       10+#define TCP_CLOSING      11++enum {+	TCP_NLA_PAD,+	TCP_NLA_BUSY,+	TCP_NLA_RWND_LIMITED,+	TCP_NLA_SNDBUF_LIMITED,+	TCP_NLA_DATA_SEGS_OUT,+	TCP_NLA_TOTAL_RETRANS,+	TCP_NLA_PACING_RATE,+	TCP_NLA_DELIVERY_RATE,+	TCP_NLA_SND_CWND,+	TCP_NLA_REORDERING,+	TCP_NLA_MIN_RTT,+	TCP_NLA_RECUR_RETRANS,+	TCP_NLA_DELIVERY_RATE_APP_LMT,+	TCP_NLA_SNDQ_SIZE,+	TCP_NLA_CA_STATE,+	TCP_NLA_SND_SSTHRESH,+	TCP_NLA_DELIVERED,+	TCP_NLA_DELIVERED_CE,+	TCP_NLA_BYTES_SENT,+	TCP_NLA_BYTES_RETRANS,+	TCP_NLA_DSACK_DUPS,+	TCP_NLA_REORD_SEEN,+	TCP_NLA_SRTT,+	TCP_NLA_TIMEOUT_REHASH,+	TCP_NLA_BYTES_NOTSENT,+	TCP_NLA_EDT,+	TCP_NLA_TTL,+};++#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE)+#define TCPOPT_EOL              0+#define TCPOPT_NOP              1+#define TCPOPT_MAXSEG           2+#define TCPOPT_WINDOW           3+#define TCPOPT_SACK_PERMITTED   4+#define TCPOPT_SACK             5+#define TCPOPT_TIMESTAMP        8+#define TCPOLEN_SACK_PERMITTED  2+#define TCPOLEN_WINDOW          3+#define TCPOLEN_MAXSEG          4+#define TCPOLEN_TIMESTAMP       10++#define SOL_TCP 6++#include <sys/types.h>+#include <sys/socket.h>+#include <stdint.h>++typedef uint32_t tcp_seq;++#define TH_FIN 0x01+#define TH_SYN 0x02+#define TH_RST 0x04+#define TH_PUSH 0x08+#define TH_ACK 0x10+#define TH_URG 0x20++struct tcphdr {+#ifdef _GNU_SOURCE+#ifdef __GNUC__+	__extension__+#endif+	union { struct {++	uint16_t source;+	uint16_t dest;+	uint32_t seq;+	uint32_t ack_seq;+#if __BYTE_ORDER == __LITTLE_ENDIAN+	uint16_t res1:4;+	uint16_t doff:4;+	uint16_t fin:1;+	uint16_t syn:1;+	uint16_t rst:1;+	uint16_t psh:1;+	uint16_t ack:1;+	uint16_t urg:1;+	uint16_t res2:2;+#else+	uint16_t doff:4;+	uint16_t res1:4;+	uint16_t res2:2;+	uint16_t urg:1;+	uint16_t ack:1;+	uint16_t psh:1;+	uint16_t rst:1;+	uint16_t syn:1;+	uint16_t fin:1;+#endif+	uint16_t window;+	uint16_t check;+	uint16_t urg_ptr;++	}; struct {+#endif++	uint16_t th_sport;+	uint16_t th_dport;+	uint32_t th_seq;+	uint32_t th_ack;+#if __BYTE_ORDER == __LITTLE_ENDIAN+	uint8_t th_x2:4;+	uint8_t th_off:4;+#else+	uint8_t th_off:4;+	uint8_t th_x2:4;+#endif+	uint8_t th_flags;+	uint16_t th_win;+	uint16_t th_sum;+	uint16_t th_urp;++#ifdef _GNU_SOURCE+	}; };+#endif+};+#endif++#ifdef _GNU_SOURCE+#define TCPI_OPT_TIMESTAMPS	1+#define TCPI_OPT_SACK		2+#define TCPI_OPT_WSCALE		4+#define TCPI_OPT_ECN		8++#define TCP_CA_Open		0+#define TCP_CA_Disorder		1+#define TCP_CA_CWR		2+#define TCP_CA_Recovery		3+#define TCP_CA_Loss		4++enum tcp_fastopen_client_fail {+	TFO_STATUS_UNSPEC,+	TFO_COOKIE_UNAVAILABLE,+	TFO_DATA_NOT_ACKED,+	TFO_SYN_RETRANSMITTED,+};++struct tcp_info {+	uint8_t tcpi_state;+	uint8_t tcpi_ca_state;+	uint8_t tcpi_retransmits;+	uint8_t tcpi_probes;+	uint8_t tcpi_backoff;+	uint8_t tcpi_options;+	uint8_t tcpi_snd_wscale : 4, tcpi_rcv_wscale : 4;+	uint8_t tcpi_delivery_rate_app_limited : 1, tcpi_fastopen_client_fail : 2;+	uint32_t tcpi_rto;+	uint32_t tcpi_ato;+	uint32_t tcpi_snd_mss;+	uint32_t tcpi_rcv_mss;+	uint32_t tcpi_unacked;+	uint32_t tcpi_sacked;+	uint32_t tcpi_lost;+	uint32_t tcpi_retrans;+	uint32_t tcpi_fackets;+	uint32_t tcpi_last_data_sent;+	uint32_t tcpi_last_ack_sent;+	uint32_t tcpi_last_data_recv;+	uint32_t tcpi_last_ack_recv;+	uint32_t tcpi_pmtu;+	uint32_t tcpi_rcv_ssthresh;+	uint32_t tcpi_rtt;+	uint32_t tcpi_rttvar;+	uint32_t tcpi_snd_ssthresh;+	uint32_t tcpi_snd_cwnd;+	uint32_t tcpi_advmss;+	uint32_t tcpi_reordering;+	uint32_t tcpi_rcv_rtt;+	uint32_t tcpi_rcv_space;+	uint32_t tcpi_total_retrans;+	uint64_t tcpi_pacing_rate;+	uint64_t tcpi_max_pacing_rate;+	uint64_t tcpi_bytes_acked;+	uint64_t tcpi_bytes_received;+	uint32_t tcpi_segs_out;+	uint32_t tcpi_segs_in;+	uint32_t tcpi_notsent_bytes;+	uint32_t tcpi_min_rtt;+	uint32_t tcpi_data_segs_in;+	uint32_t tcpi_data_segs_out;+	uint64_t tcpi_delivery_rate;+	uint64_t tcpi_busy_time;+	uint64_t tcpi_rwnd_limited;+	uint64_t tcpi_sndbuf_limited;+	uint32_t tcpi_delivered;+	uint32_t tcpi_delivered_ce;+	uint64_t tcpi_bytes_sent;+	uint64_t tcpi_bytes_retrans;+	uint32_t tcpi_dsack_dups;+	uint32_t tcpi_reord_seen;+	uint32_t tcpi_rcv_ooopack;+	uint32_t tcpi_snd_wnd;+};++#define TCP_MD5SIG_MAXKEYLEN    80++#define TCP_MD5SIG_FLAG_PREFIX  0x1+#define TCP_MD5SIG_FLAG_IFINDEX 0x2++struct tcp_md5sig {+	struct sockaddr_storage tcpm_addr;+	uint8_t tcpm_flags;+	uint8_t tcpm_prefixlen;+	uint16_t tcpm_keylen;+	int tcpm_ifindex;+	uint8_t tcpm_key[TCP_MD5SIG_MAXKEYLEN];+};++struct tcp_diag_md5sig {+	uint8_t tcpm_family;+	uint8_t tcpm_prefixlen;+	uint16_t tcpm_keylen;+	uint32_t tcpm_addr[4];+	uint8_t tcpm_key[TCP_MD5SIG_MAXKEYLEN];+};++#define TCP_REPAIR_ON		1+#define TCP_REPAIR_OFF		0+#define TCP_REPAIR_OFF_NO_WP	-1++struct tcp_repair_window {+	uint32_t snd_wl1;+	uint32_t snd_wnd;+	uint32_t max_window;+	uint32_t rcv_wnd;+	uint32_t rcv_wup;+};++#define TCP_RECEIVE_ZEROCOPY_FLAG_TLB_CLEAN_HINT 0x1++struct tcp_zerocopy_receive {+	uint64_t address;+	uint32_t length;+	uint32_t recv_skip_hint;+	uint32_t inq;+	int32_t err;+	uint64_t copybuf_address;+	int32_t copybuf_len;+	uint32_t flags;+	uint64_t msg_control;+	uint64_t msg_controllen;+	uint32_t msg_flags;+	uint32_t reserved;+};++#endif++#endif
+ musl-include/aarch64/netinet/udp.h view
@@ -0,0 +1,46 @@+#ifndef _NETINET_UDP_H+#define _NETINET_UDP_H++#ifdef __cplusplus+extern "C" {+#endif++#include <features.h>+#include <stdint.h>++#ifdef _GNU_SOURCE+#define uh_sport source+#define uh_dport dest+#define uh_ulen len+#define uh_sum check+#endif++struct udphdr {+	uint16_t uh_sport;+	uint16_t uh_dport;+	uint16_t uh_ulen;+	uint16_t uh_sum;+};++#define UDP_CORK	1+#define UDP_ENCAP	100+#define UDP_NO_CHECK6_TX 101+#define UDP_NO_CHECK6_RX 102+#define UDP_SEGMENT	103+#define UDP_GRO		104++#define UDP_ENCAP_ESPINUDP_NON_IKE 1+#define UDP_ENCAP_ESPINUDP	2+#define UDP_ENCAP_L2TPINUDP	3+#define UDP_ENCAP_GTP0		4+#define UDP_ENCAP_GTP1U		5+#define UDP_ENCAP_RXRPC		6+#define TCP_ENCAP_ESPINTCP	7++#define SOL_UDP            17++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/aarch64/netpacket/packet.h view
@@ -0,0 +1,62 @@+#ifndef _NETPACKET_PACKET_H+#define _NETPACKET_PACKET_H++#ifdef __cplusplus+extern "C" {+#endif++struct sockaddr_ll {+	unsigned short sll_family, sll_protocol;+	int sll_ifindex;+	unsigned short sll_hatype;+	unsigned char sll_pkttype, sll_halen;+	unsigned char sll_addr[8];+};++struct packet_mreq {+	int mr_ifindex;+	unsigned short int mr_type,  mr_alen;+	unsigned char mr_address[8];+};++#define PACKET_HOST		0+#define PACKET_BROADCAST	1+#define PACKET_MULTICAST	2+#define PACKET_OTHERHOST	3+#define PACKET_OUTGOING		4+#define PACKET_LOOPBACK		5+#define PACKET_FASTROUTE	6++#define PACKET_ADD_MEMBERSHIP		1+#define PACKET_DROP_MEMBERSHIP		2+#define	PACKET_RECV_OUTPUT		3+#define	PACKET_RX_RING			5+#define	PACKET_STATISTICS		6+#define PACKET_COPY_THRESH		7+#define PACKET_AUXDATA			8+#define PACKET_ORIGDEV			9+#define PACKET_VERSION			10+#define PACKET_HDRLEN			11+#define PACKET_RESERVE			12+#define PACKET_TX_RING			13+#define PACKET_LOSS			14+#define PACKET_VNET_HDR			15+#define PACKET_TX_TIMESTAMP		16+#define PACKET_TIMESTAMP		17+#define PACKET_FANOUT			18+#define PACKET_TX_HAS_OFF		19+#define PACKET_QDISC_BYPASS		20+#define PACKET_ROLLOVER_STATS		21+#define PACKET_FANOUT_DATA		22+#define PACKET_IGNORE_OUTGOING		23++#define PACKET_MR_MULTICAST	0+#define PACKET_MR_PROMISC	1+#define PACKET_MR_ALLMULTI	2+#define PACKET_MR_UNICAST	3++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/aarch64/nl_types.h view
@@ -0,0 +1,22 @@+#ifndef _NL_TYPES_H+#define _NL_TYPES_H++#ifdef __cplusplus+extern "C" {+#endif++#define NL_SETD 1+#define NL_CAT_LOCALE 1++typedef int nl_item;+typedef void *nl_catd;++nl_catd catopen (const char *, int);+char *catgets (nl_catd, int, int, const char *);+int catclose (nl_catd);++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/aarch64/paths.h view
@@ -0,0 +1,31 @@+#ifndef _PATHS_H+#define _PATHS_H++#define	_PATH_DEFPATH "/usr/local/bin:/bin:/usr/bin"+#define	_PATH_STDPATH "/bin:/usr/bin:/sbin:/usr/sbin"++#define	_PATH_BSHELL	"/bin/sh"+#define	_PATH_CONSOLE	"/dev/console"+#define	_PATH_DEVNULL	"/dev/null"+#define	_PATH_KLOG	"/proc/kmsg"+#define	_PATH_LASTLOG	"/var/log/lastlog"+#define	_PATH_MAILDIR	"/var/mail"+#define	_PATH_MAN	"/usr/share/man"+#define	_PATH_MNTTAB	"/etc/fstab"+#define	_PATH_MOUNTED	"/etc/mtab"+#define	_PATH_NOLOGIN	"/etc/nologin"+#define	_PATH_SENDMAIL	"/usr/sbin/sendmail"+#define	_PATH_SHADOW	"/etc/shadow"+#define	_PATH_SHELLS	"/etc/shells"+#define	_PATH_TTY	"/dev/tty"+#define _PATH_UTMP	"/dev/null/utmp"+#define	_PATH_VI	"/usr/bin/vi"+#define _PATH_WTMP	"/dev/null/wtmp"++#define	_PATH_DEV	"/dev/"+#define	_PATH_TMP	"/tmp/"+#define	_PATH_VARDB	"/var/lib/misc/"+#define	_PATH_VARRUN	"/var/run/"+#define	_PATH_VARTMP	"/var/tmp/"++#endif
+ musl-include/aarch64/poll.h view
@@ -0,0 +1,57 @@+#ifndef	_POLL_H+#define	_POLL_H++#ifdef __cplusplus+extern "C" {+#endif++#include <features.h>++#include <bits/poll.h>++#define POLLIN     0x001+#define POLLPRI    0x002+#define POLLOUT    0x004+#define POLLERR    0x008+#define POLLHUP    0x010+#define POLLNVAL   0x020+#define POLLRDNORM 0x040+#define POLLRDBAND 0x080+#ifndef POLLWRNORM+#define POLLWRNORM 0x100+#define POLLWRBAND 0x200+#endif+#ifndef POLLMSG+#define POLLMSG    0x400+#define POLLRDHUP  0x2000+#endif++typedef unsigned long nfds_t;++struct pollfd {+	int fd;+	short events;+	short revents;+};++int poll (struct pollfd *, nfds_t, int);++#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE)+#define __NEED_time_t+#define __NEED_struct_timespec+#define __NEED_sigset_t+#include <bits/alltypes.h>+int ppoll(struct pollfd *, nfds_t, const struct timespec *, const sigset_t *);+#endif++#if _REDIR_TIME64+#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE)+__REDIR(ppoll, __ppoll_time64);+#endif+#endif++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/aarch64/pthread.h view
@@ -0,0 +1,244 @@+#ifndef _PTHREAD_H+#define _PTHREAD_H+#ifdef __cplusplus+extern "C" {+#endif++#include <features.h>++#define __NEED_time_t+#define __NEED_clockid_t+#define __NEED_struct_timespec+#define __NEED_sigset_t+#define __NEED_pthread_t+#define __NEED_pthread_attr_t+#define __NEED_pthread_mutexattr_t+#define __NEED_pthread_condattr_t+#define __NEED_pthread_rwlockattr_t+#define __NEED_pthread_barrierattr_t+#define __NEED_pthread_mutex_t+#define __NEED_pthread_cond_t+#define __NEED_pthread_rwlock_t+#define __NEED_pthread_barrier_t+#define __NEED_pthread_spinlock_t+#define __NEED_pthread_key_t+#define __NEED_pthread_once_t+#define __NEED_size_t++#include <bits/alltypes.h>++#include <sched.h>+#include <time.h>++#define PTHREAD_CREATE_JOINABLE 0+#define PTHREAD_CREATE_DETACHED 1++#define PTHREAD_MUTEX_NORMAL 0+#define PTHREAD_MUTEX_DEFAULT 0+#define PTHREAD_MUTEX_RECURSIVE 1+#define PTHREAD_MUTEX_ERRORCHECK 2++#define PTHREAD_MUTEX_STALLED 0+#define PTHREAD_MUTEX_ROBUST 1++#define PTHREAD_PRIO_NONE 0+#define PTHREAD_PRIO_INHERIT 1+#define PTHREAD_PRIO_PROTECT 2++#define PTHREAD_INHERIT_SCHED 0+#define PTHREAD_EXPLICIT_SCHED 1++#define PTHREAD_SCOPE_SYSTEM 0+#define PTHREAD_SCOPE_PROCESS 1++#define PTHREAD_PROCESS_PRIVATE 0+#define PTHREAD_PROCESS_SHARED 1+++#define PTHREAD_MUTEX_INITIALIZER {{{0}}}+#define PTHREAD_RWLOCK_INITIALIZER {{{0}}}+#define PTHREAD_COND_INITIALIZER {{{0}}}+#define PTHREAD_ONCE_INIT 0+++#define PTHREAD_CANCEL_ENABLE 0+#define PTHREAD_CANCEL_DISABLE 1+#define PTHREAD_CANCEL_MASKED 2++#define PTHREAD_CANCEL_DEFERRED 0+#define PTHREAD_CANCEL_ASYNCHRONOUS 1++#define PTHREAD_CANCELED ((void *)-1)+++#define PTHREAD_BARRIER_SERIAL_THREAD (-1)+++#define PTHREAD_NULL ((pthread_t)0)+++int pthread_create(pthread_t *__restrict, const pthread_attr_t *__restrict, void *(*)(void *), void *__restrict);+int pthread_detach(pthread_t);+_Noreturn void pthread_exit(void *);+int pthread_join(pthread_t, void **);++#ifdef __GNUC__+__attribute__((const))+#endif+pthread_t pthread_self(void);++int pthread_equal(pthread_t, pthread_t);+#ifndef __cplusplus+#define pthread_equal(x,y) ((x)==(y))+#endif++int pthread_setcancelstate(int, int *);+int pthread_setcanceltype(int, int *);+void pthread_testcancel(void);+int pthread_cancel(pthread_t);++int pthread_getschedparam(pthread_t, int *__restrict, struct sched_param *__restrict);+int pthread_setschedparam(pthread_t, int, const struct sched_param *);+int pthread_setschedprio(pthread_t, int);++int pthread_once(pthread_once_t *, void (*)(void));++int pthread_mutex_init(pthread_mutex_t *__restrict, const pthread_mutexattr_t *__restrict);+int pthread_mutex_lock(pthread_mutex_t *);+int pthread_mutex_unlock(pthread_mutex_t *);+int pthread_mutex_trylock(pthread_mutex_t *);+int pthread_mutex_timedlock(pthread_mutex_t *__restrict, const struct timespec *__restrict);+int pthread_mutex_destroy(pthread_mutex_t *);+int pthread_mutex_consistent(pthread_mutex_t *);++int pthread_mutex_getprioceiling(const pthread_mutex_t *__restrict, int *__restrict);+int pthread_mutex_setprioceiling(pthread_mutex_t *__restrict, int, int *__restrict);++int pthread_cond_init(pthread_cond_t *__restrict, const pthread_condattr_t *__restrict);+int pthread_cond_destroy(pthread_cond_t *);+int pthread_cond_wait(pthread_cond_t *__restrict, pthread_mutex_t *__restrict);+int pthread_cond_timedwait(pthread_cond_t *__restrict, pthread_mutex_t *__restrict, const struct timespec *__restrict);+int pthread_cond_broadcast(pthread_cond_t *);+int pthread_cond_signal(pthread_cond_t *);++int pthread_rwlock_init(pthread_rwlock_t *__restrict, const pthread_rwlockattr_t *__restrict);+int pthread_rwlock_destroy(pthread_rwlock_t *);+int pthread_rwlock_rdlock(pthread_rwlock_t *);+int pthread_rwlock_tryrdlock(pthread_rwlock_t *);+int pthread_rwlock_timedrdlock(pthread_rwlock_t *__restrict, const struct timespec *__restrict);+int pthread_rwlock_wrlock(pthread_rwlock_t *);+int pthread_rwlock_trywrlock(pthread_rwlock_t *);+int pthread_rwlock_timedwrlock(pthread_rwlock_t *__restrict, const struct timespec *__restrict);+int pthread_rwlock_unlock(pthread_rwlock_t *);++int pthread_spin_init(pthread_spinlock_t *, int);+int pthread_spin_destroy(pthread_spinlock_t *);+int pthread_spin_lock(pthread_spinlock_t *);+int pthread_spin_trylock(pthread_spinlock_t *);+int pthread_spin_unlock(pthread_spinlock_t *);++int pthread_barrier_init(pthread_barrier_t *__restrict, const pthread_barrierattr_t *__restrict, unsigned);+int pthread_barrier_destroy(pthread_barrier_t *);+int pthread_barrier_wait(pthread_barrier_t *);++int pthread_key_create(pthread_key_t *, void (*)(void *));+int pthread_key_delete(pthread_key_t);+void *pthread_getspecific(pthread_key_t);+int pthread_setspecific(pthread_key_t, const void *);++int pthread_attr_init(pthread_attr_t *);+int pthread_attr_destroy(pthread_attr_t *);++int pthread_attr_getguardsize(const pthread_attr_t *__restrict, size_t *__restrict);+int pthread_attr_setguardsize(pthread_attr_t *, size_t);+int pthread_attr_getstacksize(const pthread_attr_t *__restrict, size_t *__restrict);+int pthread_attr_setstacksize(pthread_attr_t *, size_t);+int pthread_attr_getdetachstate(const pthread_attr_t *, int *);+int pthread_attr_setdetachstate(pthread_attr_t *, int);+int pthread_attr_getstack(const pthread_attr_t *__restrict, void **__restrict, size_t *__restrict);+int pthread_attr_setstack(pthread_attr_t *, void *, size_t);+int pthread_attr_getscope(const pthread_attr_t *__restrict, int *__restrict);+int pthread_attr_setscope(pthread_attr_t *, int);+int pthread_attr_getschedpolicy(const pthread_attr_t *__restrict, int *__restrict);+int pthread_attr_setschedpolicy(pthread_attr_t *, int);+int pthread_attr_getschedparam(const pthread_attr_t *__restrict, struct sched_param *__restrict);+int pthread_attr_setschedparam(pthread_attr_t *__restrict, const struct sched_param *__restrict);+int pthread_attr_getinheritsched(const pthread_attr_t *__restrict, int *__restrict);+int pthread_attr_setinheritsched(pthread_attr_t *, int);++int pthread_mutexattr_destroy(pthread_mutexattr_t *);+int pthread_mutexattr_getprioceiling(const pthread_mutexattr_t *__restrict, int *__restrict);+int pthread_mutexattr_getprotocol(const pthread_mutexattr_t *__restrict, int *__restrict);+int pthread_mutexattr_getpshared(const pthread_mutexattr_t *__restrict, int *__restrict);+int pthread_mutexattr_getrobust(const pthread_mutexattr_t *__restrict, int *__restrict);+int pthread_mutexattr_gettype(const pthread_mutexattr_t *__restrict, int *__restrict);+int pthread_mutexattr_init(pthread_mutexattr_t *);+int pthread_mutexattr_setprioceiling(pthread_mutexattr_t *, int);+int pthread_mutexattr_setprotocol(pthread_mutexattr_t *, int);+int pthread_mutexattr_setpshared(pthread_mutexattr_t *, int);+int pthread_mutexattr_setrobust(pthread_mutexattr_t *, int);+int pthread_mutexattr_settype(pthread_mutexattr_t *, int);++int pthread_condattr_init(pthread_condattr_t *);+int pthread_condattr_destroy(pthread_condattr_t *);+int pthread_condattr_setclock(pthread_condattr_t *, clockid_t);+int pthread_condattr_setpshared(pthread_condattr_t *, int);+int pthread_condattr_getclock(const pthread_condattr_t *__restrict, clockid_t *__restrict);+int pthread_condattr_getpshared(const pthread_condattr_t *__restrict, int *__restrict);++int pthread_rwlockattr_init(pthread_rwlockattr_t *);+int pthread_rwlockattr_destroy(pthread_rwlockattr_t *);+int pthread_rwlockattr_setpshared(pthread_rwlockattr_t *, int);+int pthread_rwlockattr_getpshared(const pthread_rwlockattr_t *__restrict, int *__restrict);++int pthread_barrierattr_destroy(pthread_barrierattr_t *);+int pthread_barrierattr_getpshared(const pthread_barrierattr_t *__restrict, int *__restrict);+int pthread_barrierattr_init(pthread_barrierattr_t *);+int pthread_barrierattr_setpshared(pthread_barrierattr_t *, int);++int pthread_atfork(void (*)(void), void (*)(void), void (*)(void));++int pthread_getconcurrency(void);+int pthread_setconcurrency(int);++int pthread_getcpuclockid(pthread_t, clockid_t *);++struct __ptcb {+	void (*__f)(void *);+	void *__x;+	struct __ptcb *__next;+};++void _pthread_cleanup_push(struct __ptcb *, void (*)(void *), void *);+void _pthread_cleanup_pop(struct __ptcb *, int);++#define pthread_cleanup_push(f, x) do { struct __ptcb __cb; _pthread_cleanup_push(&__cb, f, x);+#define pthread_cleanup_pop(r) _pthread_cleanup_pop(&__cb, (r)); } while(0)++#ifdef _GNU_SOURCE+struct cpu_set_t;+int pthread_getaffinity_np(pthread_t, size_t, struct cpu_set_t *);+int pthread_setaffinity_np(pthread_t, size_t, const struct cpu_set_t *);+int pthread_getattr_np(pthread_t, pthread_attr_t *);+int pthread_setname_np(pthread_t, const char *);+int pthread_getname_np(pthread_t, char *, size_t);+int pthread_getattr_default_np(pthread_attr_t *);+int pthread_setattr_default_np(const pthread_attr_t *);+int pthread_tryjoin_np(pthread_t, void **);+int pthread_timedjoin_np(pthread_t, void **, const struct timespec *);+#endif++#if _REDIR_TIME64+__REDIR(pthread_mutex_timedlock, __pthread_mutex_timedlock_time64);+__REDIR(pthread_cond_timedwait, __pthread_cond_timedwait_time64);+__REDIR(pthread_rwlock_timedrdlock, __pthread_rwlock_timedrdlock_time64);+__REDIR(pthread_rwlock_timedwrlock, __pthread_rwlock_timedwrlock_time64);+#ifdef _GNU_SOURCE+__REDIR(pthread_timedjoin_np, __pthread_timedjoin_np_time64);+#endif+#endif++#ifdef __cplusplus+}+#endif+#endif
+ musl-include/aarch64/pty.h view
@@ -0,0 +1,18 @@+#ifndef	_PTY_H+#define	_PTY_H++#ifdef __cplusplus+extern "C" {+#endif++#include <termios.h>+#include <sys/ioctl.h>++int openpty(int *, int *, char *, const struct termios *, const struct winsize *);+int forkpty(int *, char *, const struct termios *, const struct winsize *);++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/aarch64/pwd.h view
@@ -0,0 +1,50 @@+#ifndef _PWD_H+#define _PWD_H++#ifdef __cplusplus+extern "C" {+#endif++#include <features.h>++#define __NEED_size_t+#define __NEED_uid_t+#define __NEED_gid_t++#ifdef _GNU_SOURCE+#define __NEED_FILE+#endif++#include <bits/alltypes.h>++struct passwd {+	char *pw_name;+	char *pw_passwd;+	uid_t pw_uid;+	gid_t pw_gid;+	char *pw_gecos;+	char *pw_dir;+	char *pw_shell;+};++#if defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) || defined(_BSD_SOURCE)+void setpwent (void);+void endpwent (void);+struct passwd *getpwent (void);+#endif++struct passwd *getpwuid (uid_t);+struct passwd *getpwnam (const char *);+int getpwuid_r (uid_t, struct passwd *, char *, size_t, struct passwd **);+int getpwnam_r (const char *, struct passwd *, char *, size_t, struct passwd **);++#ifdef _GNU_SOURCE+struct passwd *fgetpwent(FILE *);+int putpwent(const struct passwd *, FILE *);+#endif++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/aarch64/regex.h view
@@ -0,0 +1,62 @@+#ifndef _REGEX_H+#define _REGEX_H++#ifdef __cplusplus+extern "C" {+#endif++#include <features.h>++#define __NEED_regoff_t+#define __NEED_size_t++#include <bits/alltypes.h>++typedef struct re_pattern_buffer {+	size_t re_nsub;+	void *__opaque, *__padding[4];+	size_t __nsub2;+	char __padding2;+} regex_t;++typedef struct {+	regoff_t rm_so;+	regoff_t rm_eo;+} regmatch_t;++#define REG_EXTENDED    1+#define REG_ICASE       2+#define REG_NEWLINE     4+#define REG_NOSUB       8++#define REG_NOTBOL      1+#define REG_NOTEOL      2++#define REG_OK          0+#define REG_NOMATCH     1+#define REG_BADPAT      2+#define REG_ECOLLATE    3+#define REG_ECTYPE      4+#define REG_EESCAPE     5+#define REG_ESUBREG     6+#define REG_EBRACK      7+#define REG_EPAREN      8+#define REG_EBRACE      9+#define REG_BADBR       10+#define REG_ERANGE      11+#define REG_ESPACE      12+#define REG_BADRPT      13++#define REG_ENOSYS      -1++int regcomp(regex_t *__restrict, const char *__restrict, int);+int regexec(const regex_t *__restrict, const char *__restrict, size_t, regmatch_t *__restrict, int);+void regfree(regex_t *);++size_t regerror(int, const regex_t *__restrict, char *__restrict, size_t);++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/aarch64/resolv.h view
@@ -0,0 +1,142 @@+#ifndef _RESOLV_H+#define _RESOLV_H++#include <stdint.h>+#include <arpa/nameser.h>+#include <netinet/in.h>++#ifdef __cplusplus+extern "C" {+#endif++#define MAXNS			3+#define MAXDFLSRCH		3+#define MAXDNSRCH		6+#define LOCALDOMAINPARTS	2++#define RES_TIMEOUT		5+#define MAXRESOLVSORT		10+#define RES_MAXNDOTS		15+#define RES_MAXRETRANS		30+#define RES_MAXRETRY		5+#define RES_DFLRETRY		2+#define RES_MAXTIME		65535++/* unused; purely for broken apps */+typedef struct __res_state {+	int retrans;+	int retry;+	unsigned long options;+	int nscount;+	struct sockaddr_in nsaddr_list[MAXNS];+# define nsaddr	nsaddr_list[0]+	unsigned short id;+	char *dnsrch[MAXDNSRCH+1];+	char defdname[256];+	unsigned long pfcode;+	unsigned ndots:4;+	unsigned nsort:4;+	unsigned ipv6_unavail:1;+	unsigned unused:23;+	struct {+		struct in_addr addr;+		uint32_t mask;+	} sort_list[MAXRESOLVSORT];+	void *qhook;+	void *rhook;+	int res_h_errno;+	int _vcsock;+	unsigned _flags;+	union {+		char pad[52];+		struct {+			uint16_t		nscount;+			uint16_t		nsmap[MAXNS];+			int			nssocks[MAXNS];+			uint16_t		nscount6;+			uint16_t		nsinit;+			struct sockaddr_in6	*nsaddrs[MAXNS];+			unsigned int		_initstamp[2];+		} _ext;+	} _u;+} *res_state;++#define	__RES	19960801++#ifndef _PATH_RESCONF+#define _PATH_RESCONF        "/etc/resolv.conf"+#endif++struct res_sym {+	int number;+	char *name;+	char *humanname;+};++#define	RES_F_VC	0x00000001+#define	RES_F_CONN	0x00000002+#define RES_F_EDNS0ERR	0x00000004++#define	RES_EXHAUSTIVE	0x00000001++#define RES_INIT	0x00000001+#define RES_DEBUG	0x00000002+#define RES_AAONLY	0x00000004+#define RES_USEVC	0x00000008+#define RES_PRIMARY	0x00000010+#define RES_IGNTC	0x00000020+#define RES_RECURSE	0x00000040+#define RES_DEFNAMES	0x00000080+#define RES_STAYOPEN	0x00000100+#define RES_DNSRCH	0x00000200+#define	RES_INSECURE1	0x00000400+#define	RES_INSECURE2	0x00000800+#define	RES_NOALIASES	0x00001000+#define	RES_USE_INET6	0x00002000+#define RES_ROTATE	0x00004000+#define	RES_NOCHECKNAME	0x00008000+#define	RES_KEEPTSIG	0x00010000+#define	RES_BLAST	0x00020000+#define RES_USEBSTRING	0x00040000+#define RES_NOIP6DOTINT	0x00080000+#define RES_USE_EDNS0	0x00100000+#define RES_SNGLKUP	0x00200000+#define RES_SNGLKUPREOP	0x00400000+#define RES_USE_DNSSEC	0x00800000++#define RES_DEFAULT	(RES_RECURSE|RES_DEFNAMES|RES_DNSRCH|RES_NOIP6DOTINT)++#define RES_PRF_STATS	0x00000001+#define RES_PRF_UPDATE	0x00000002+#define RES_PRF_CLASS   0x00000004+#define RES_PRF_CMD	0x00000008+#define RES_PRF_QUES	0x00000010+#define RES_PRF_ANS	0x00000020+#define RES_PRF_AUTH	0x00000040+#define RES_PRF_ADD	0x00000080+#define RES_PRF_HEAD1	0x00000100+#define RES_PRF_HEAD2	0x00000200+#define RES_PRF_TTLID	0x00000400+#define RES_PRF_HEADX	0x00000800+#define RES_PRF_QUERY	0x00001000+#define RES_PRF_REPLY	0x00002000+#define RES_PRF_INIT	0x00004000++struct __res_state *__res_state(void);+#define _res (*__res_state())++int res_init(void);+int res_query(const char *, int, int, unsigned char *, int);+int res_querydomain(const char *, const char *, int, int, unsigned char *, int);+int res_search(const char *, int, int, unsigned char *, int);+int res_mkquery(int, const char *, int, int, const unsigned char *, int, const unsigned char*, unsigned char *, int);+int res_send(const unsigned char *, int, unsigned char *, int);+int dn_comp(const char *, unsigned char *, int, unsigned char **, unsigned char **);+int dn_expand(const unsigned char *, const unsigned char *, const unsigned char *, char *, int);+int dn_skipname(const unsigned char *, const unsigned char *);++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/aarch64/sched.h view
@@ -0,0 +1,148 @@+#ifndef _SCHED_H+#define _SCHED_H+#ifdef __cplusplus+extern "C" {+#endif++#include <features.h>++#define __NEED_struct_timespec+#define __NEED_pid_t+#define __NEED_time_t++#ifdef _GNU_SOURCE+#define __NEED_size_t+#endif++#include <bits/alltypes.h>++struct sched_param {+	int sched_priority;+	int __reserved1;+#if _REDIR_TIME64+	long __reserved2[4];+#else+	struct {+		time_t __reserved1;+		long __reserved2;+	} __reserved2[2];+#endif+	int __reserved3;+};++int    sched_get_priority_max(int);+int    sched_get_priority_min(int);+int    sched_getparam(pid_t, struct sched_param *);+int    sched_getscheduler(pid_t);+int    sched_rr_get_interval(pid_t, struct timespec *);+int    sched_setparam(pid_t, const struct sched_param *);+int    sched_setscheduler(pid_t, int, const struct sched_param *);+int     sched_yield(void);++#define SCHED_OTHER 0+#define SCHED_FIFO 1+#define SCHED_RR 2+#define SCHED_BATCH 3+#define SCHED_IDLE 5+#define SCHED_DEADLINE 6+#define SCHED_RESET_ON_FORK 0x40000000++#ifdef _GNU_SOURCE+#define CSIGNAL		0x000000ff+#define CLONE_NEWTIME	0x00000080+#define CLONE_VM	0x00000100+#define CLONE_FS	0x00000200+#define CLONE_FILES	0x00000400+#define CLONE_SIGHAND	0x00000800+#define CLONE_PIDFD	0x00001000+#define CLONE_PTRACE	0x00002000+#define CLONE_VFORK	0x00004000+#define CLONE_PARENT	0x00008000+#define CLONE_THREAD	0x00010000+#define CLONE_NEWNS	0x00020000+#define CLONE_SYSVSEM	0x00040000+#define CLONE_SETTLS	0x00080000+#define CLONE_PARENT_SETTID	0x00100000+#define CLONE_CHILD_CLEARTID	0x00200000+#define CLONE_DETACHED	0x00400000+#define CLONE_UNTRACED	0x00800000+#define CLONE_CHILD_SETTID	0x01000000+#define CLONE_NEWCGROUP	0x02000000+#define CLONE_NEWUTS	0x04000000+#define CLONE_NEWIPC	0x08000000+#define CLONE_NEWUSER	0x10000000+#define CLONE_NEWPID	0x20000000+#define CLONE_NEWNET	0x40000000+#define CLONE_IO	0x80000000+int clone (int (*)(void *), void *, int, void *, ...);+int unshare(int);+int setns(int, int);++void *memcpy(void *__restrict, const void *__restrict, size_t);+int memcmp(const void *, const void *, size_t);+void *memset (void *, int, size_t);+void *calloc(size_t, size_t);+void free(void *);++typedef struct cpu_set_t { unsigned long __bits[128/sizeof(long)]; } cpu_set_t;+int __sched_cpucount(size_t, const cpu_set_t *);+int sched_getcpu(void);+int sched_getaffinity(pid_t, size_t, cpu_set_t *);+int sched_setaffinity(pid_t, size_t, const cpu_set_t *);++#define __CPU_op_S(i, size, set, op) ( (i)/8U >= (size) ? 0 : \+	(((unsigned long *)(set))[(i)/8/sizeof(long)] op (1UL<<((i)%(8*sizeof(long))))) )++#define CPU_SET_S(i, size, set) __CPU_op_S(i, size, set, |=)+#define CPU_CLR_S(i, size, set) __CPU_op_S(i, size, set, &=~)+#define CPU_ISSET_S(i, size, set) __CPU_op_S(i, size, set, &)++#define __CPU_op_func_S(func, op) \+static __inline void __CPU_##func##_S(size_t __size, cpu_set_t *__dest, \+	const cpu_set_t *__src1, const cpu_set_t *__src2) \+{ \+	size_t __i; \+	for (__i=0; __i<__size/sizeof(long); __i++) \+		((unsigned long *)__dest)[__i] = ((unsigned long *)__src1)[__i] \+			op ((unsigned long *)__src2)[__i] ; \+}++__CPU_op_func_S(AND, &)+__CPU_op_func_S(OR, |)+__CPU_op_func_S(XOR, ^)++#define CPU_AND_S(a,b,c,d) __CPU_AND_S(a,b,c,d)+#define CPU_OR_S(a,b,c,d) __CPU_OR_S(a,b,c,d)+#define CPU_XOR_S(a,b,c,d) __CPU_XOR_S(a,b,c,d)++#define CPU_COUNT_S(size,set) __sched_cpucount(size,set)+#define CPU_ZERO_S(size,set) memset(set,0,size)+#define CPU_EQUAL_S(size,set1,set2) (!memcmp(set1,set2,size))++#define CPU_ALLOC_SIZE(n) (sizeof(long) * ( (n)/(8*sizeof(long)) \+	+ ((n)%(8*sizeof(long)) + 8*sizeof(long)-1)/(8*sizeof(long)) ) )+#define CPU_ALLOC(n) ((cpu_set_t *)calloc(1,CPU_ALLOC_SIZE(n)))+#define CPU_FREE(set) free(set)++#define CPU_SETSIZE 1024++#define CPU_SET(i, set) CPU_SET_S(i,sizeof(cpu_set_t),set)+#define CPU_CLR(i, set) CPU_CLR_S(i,sizeof(cpu_set_t),set)+#define CPU_ISSET(i, set) CPU_ISSET_S(i,sizeof(cpu_set_t),set)+#define CPU_AND(d,s1,s2) CPU_AND_S(sizeof(cpu_set_t),d,s1,s2)+#define CPU_OR(d,s1,s2) CPU_OR_S(sizeof(cpu_set_t),d,s1,s2)+#define CPU_XOR(d,s1,s2) CPU_XOR_S(sizeof(cpu_set_t),d,s1,s2)+#define CPU_COUNT(set) CPU_COUNT_S(sizeof(cpu_set_t),set)+#define CPU_ZERO(set) CPU_ZERO_S(sizeof(cpu_set_t),set)+#define CPU_EQUAL(s1,s2) CPU_EQUAL_S(sizeof(cpu_set_t),s1,s2)++#endif++#if _REDIR_TIME64+__REDIR(sched_rr_get_interval, __sched_rr_get_interval_time64);+#endif++#ifdef __cplusplus+}+#endif+#endif
+ musl-include/aarch64/scsi/scsi.h view
@@ -0,0 +1,150 @@+#ifndef _SCSI_SCSI_H+#define _SCSI_SCSI_H++#define TEST_UNIT_READY 0x00+#define REZERO_UNIT 0x01+#define REQUEST_SENSE 0x03+#define FORMAT_UNIT 0x04+#define READ_BLOCK_LIMITS 0x05+#define REASSIGN_BLOCKS 0x07+#define READ_6 0x08+#define WRITE_6 0x0a+#define SEEK_6 0x0b+#define READ_REVERSE 0x0f+#define WRITE_FILEMARKS 0x10+#define SPACE 0x11+#define INQUIRY 0x12+#define RECOVER_BUFFERED_DATA 0x14+#define MODE_SELECT 0x15+#define RESERVE 0x16+#define RELEASE 0x17+#define COPY 0x18+#define ERASE 0x19+#define MODE_SENSE 0x1a+#define START_STOP 0x1b+#define RECEIVE_DIAGNOSTIC 0x1c+#define SEND_DIAGNOSTIC 0x1d+#define ALLOW_MEDIUM_REMOVAL 0x1e+#define SET_WINDOW 0x24+#define READ_CAPACITY 0x25+#define READ_10 0x28+#define WRITE_10 0x2a+#define SEEK_10 0x2b+#define WRITE_VERIFY 0x2e+#define VERIFY 0x2f+#define SEARCH_HIGH 0x30+#define SEARCH_EQUAL 0x31+#define SEARCH_LOW 0x32+#define SET_LIMITS 0x33+#define PRE_FETCH 0x34+#define READ_POSITION 0x34+#define SYNCHRONIZE_CACHE 0x35+#define LOCK_UNLOCK_CACHE 0x36+#define READ_DEFECT_DATA 0x37+#define MEDIUM_SCAN 0x38+#define COMPARE 0x39+#define COPY_VERIFY 0x3a+#define WRITE_BUFFER 0x3b+#define READ_BUFFER 0x3c+#define UPDATE_BLOCK 0x3d+#define READ_LONG 0x3e+#define WRITE_LONG 0x3f+#define CHANGE_DEFINITION 0x40+#define WRITE_SAME 0x41+#define READ_TOC 0x43+#define LOG_SELECT 0x4c+#define LOG_SENSE 0x4d+#define MODE_SELECT_10 0x55+#define RESERVE_10 0x56+#define RELEASE_10 0x57+#define MODE_SENSE_10 0x5a+#define PERSISTENT_RESERVE_IN 0x5e+#define PERSISTENT_RESERVE_OUT 0x5f+#define MOVE_MEDIUM 0xa5+#define READ_12 0xa8+#define WRITE_12 0xaa+#define WRITE_VERIFY_12 0xae+#define SEARCH_HIGH_12 0xb0+#define SEARCH_EQUAL_12 0xb1+#define SEARCH_LOW_12 0xb2+#define READ_ELEMENT_STATUS 0xb8+#define SEND_VOLUME_TAG 0xb6+#define WRITE_LONG_2 0xea+#define GOOD 0x00+#define CHECK_CONDITION 0x01+#define CONDITION_GOOD 0x02+#define BUSY 0x04+#define INTERMEDIATE_GOOD 0x08+#define INTERMEDIATE_C_GOOD 0x0a+#define RESERVATION_CONFLICT 0x0c+#define COMMAND_TERMINATED 0x11+#define QUEUE_FULL 0x14+#define STATUS_MASK 0x3e+#define NO_SENSE 0x00+#define RECOVERED_ERROR 0x01+#define NOT_READY 0x02+#define MEDIUM_ERROR 0x03+#define HARDWARE_ERROR 0x04+#define ILLEGAL_REQUEST 0x05+#define UNIT_ATTENTION 0x06+#define DATA_PROTECT 0x07+#define BLANK_CHECK 0x08+#define COPY_ABORTED 0x0a+#define ABORTED_COMMAND 0x0b+#define VOLUME_OVERFLOW 0x0d+#define MISCOMPARE 0x0e+#define TYPE_DISK 0x00+#define TYPE_TAPE 0x01+#define TYPE_PROCESSOR 0x03+#define TYPE_WORM 0x04+#define TYPE_ROM 0x05+#define TYPE_SCANNER 0x06+#define TYPE_MOD 0x07+#define TYPE_MEDIUM_CHANGER 0x08+#define TYPE_ENCLOSURE 0x0d+#define TYPE_NO_LUN 0x7f+#define COMMAND_COMPLETE 0x00+#define EXTENDED_MESSAGE 0x01+#define EXTENDED_MODIFY_DATA_POINTER 0x00+#define EXTENDED_SDTR 0x01+#define EXTENDED_EXTENDED_IDENTIFY 0x02+#define EXTENDED_WDTR 0x03+#define SAVE_POINTERS 0x02+#define RESTORE_POINTERS 0x03+#define DISCONNECT 0x04+#define INITIATOR_ERROR 0x05+#define ABORT 0x06+#define MESSAGE_REJECT 0x07+#define NOP 0x08+#define MSG_PARITY_ERROR 0x09+#define LINKED_CMD_COMPLETE 0x0a+#define LINKED_FLG_CMD_COMPLETE 0x0b+#define BUS_DEVICE_RESET 0x0c+#define INITIATE_RECOVERY 0x0f+#define RELEASE_RECOVERY 0x10+#define SIMPLE_QUEUE_TAG 0x20+#define HEAD_OF_QUEUE_TAG 0x21+#define ORDERED_QUEUE_TAG 0x22+#define SCSI_IOCTL_GET_IDLUN 0x5382+#define SCSI_IOCTL_TAGGED_ENABLE 0x5383+#define SCSI_IOCTL_TAGGED_DISABLE 0x5384+#define SCSI_IOCTL_PROBE_HOST 0x5385+#define SCSI_IOCTL_GET_BUS_NUMBER 0x5386++struct ccs_modesel_head {+	unsigned char _r1;+	unsigned char medium;+	unsigned char _r2;+	unsigned char block_desc_length;+	unsigned char density;+	unsigned char number_blocks_hi;+	unsigned char number_blocks_med;+	unsigned char number_blocks_lo;+	unsigned char _r3;+	unsigned char block_length_hi;+	unsigned char block_length_med;+	unsigned char block_length_lo;+};++#endif+
+ musl-include/aarch64/scsi/scsi_ioctl.h view
@@ -0,0 +1,11 @@+#ifndef _SCSI_IOCTL_H+#define _SCSI_IOCTL_H+#define SCSI_IOCTL_SEND_COMMAND 1+#define SCSI_IOCTL_TEST_UNIT_READY 2+#define SCSI_IOCTL_BENCHMARK_COMMAND 3+#define SCSI_IOCTL_SYNC 4+#define SCSI_IOCTL_START_UNIT 5+#define SCSI_IOCTL_STOP_UNIT 6+#define SCSI_IOCTL_DOORLOCK 0x5380+#define SCSI_IOCTL_DOORUNLOCK 0x5381+#endif
+ musl-include/aarch64/scsi/sg.h view
@@ -0,0 +1,129 @@+#ifndef _SCSI_SG_H+#define _SCSI_SG_H++#define SG_DXFER_NONE -1+#define SG_DXFER_TO_DEV -2+#define SG_DXFER_FROM_DEV -3+#define SG_DXFER_TO_FROM_DEV -4+#define SG_FLAG_DIRECT_IO 1+#define SG_FLAG_LUN_INHIBIT 2+#define SG_FLAG_NO_DXFER 0x10000+#define SG_INFO_OK_MASK 0x1+#define SG_INFO_OK 0x0+#define SG_INFO_CHECK 0x1+#define SG_INFO_DIRECT_IO_MASK 0x6+#define SG_INFO_INDIRECT_IO 0x0+#define SG_INFO_DIRECT_IO 0x2+#define SG_INFO_MIXED_IO 0x4+#define SG_EMULATED_HOST 0x2203+#define SG_SET_TRANSFORM 0x2204+#define SG_GET_TRANSFORM 0x2205+#define SG_SET_RESERVED_SIZE 0x2275+#define SG_GET_RESERVED_SIZE 0x2272+#define SG_GET_SCSI_ID 0x2276+#define SG_SET_FORCE_LOW_DMA 0x2279+#define SG_GET_LOW_DMA 0x227a+#define SG_SET_FORCE_PACK_ID 0x227b+#define SG_GET_PACK_ID 0x227c+#define SG_GET_NUM_WAITING 0x227d+#define SG_GET_SG_TABLESIZE 0x227F+#define SG_GET_VERSION_NUM 0x2282+#define SG_SCSI_RESET 0x2284+#define SG_SCSI_RESET_NOTHING 0+#define SG_SCSI_RESET_DEVICE 1+#define SG_SCSI_RESET_BUS 2+#define SG_SCSI_RESET_HOST 3+#define SG_IO 0x2285+#define SG_GET_REQUEST_TABLE 0x2286+#define SG_SET_KEEP_ORPHAN 0x2287+#define SG_GET_KEEP_ORPHAN 0x2288+#define SG_SCATTER_SZ (8 * 4096)+#define SG_DEFAULT_RETRIES 1+#define SG_DEF_FORCE_LOW_DMA 0+#define SG_DEF_FORCE_PACK_ID 0+#define SG_DEF_KEEP_ORPHAN 0+#define SG_DEF_RESERVED_SIZE SG_SCATTER_SZ+#define SG_MAX_QUEUE 16+#define SG_BIG_BUFF SG_DEF_RESERVED_SIZE+#define SG_MAX_SENSE 16+#define SG_SET_TIMEOUT 0x2201+#define SG_GET_TIMEOUT 0x2202+#define SG_GET_COMMAND_Q 0x2270+#define SG_SET_COMMAND_Q 0x2271+#define SG_SET_DEBUG 0x227e+#define SG_NEXT_CMD_LEN 0x2283+#define SG_DEFAULT_TIMEOUT (60*100) /* 60*HZ */+#define SG_DEF_COMMAND_Q 0+#define SG_DEF_UNDERRUN_FLAG 0++typedef struct sg_iovec {+	void *iov_base;+	unsigned long iov_len;+} sg_iovec_t;++typedef struct sg_io_hdr { +	int interface_id; +	int dxfer_direction; +	unsigned char cmd_len;+	unsigned char mx_sb_len;+	unsigned short iovec_count;+	unsigned dxfer_len;+	void *dxferp;+	unsigned char *cmdp;+	unsigned char *sbp;+	unsigned timeout;+	unsigned flags;+	int pack_id;+	void *usr_ptr;+	unsigned char status;+	unsigned char masked_status;+	unsigned char msg_status;+	unsigned char sb_len_wr;+	unsigned short host_status;+	unsigned short driver_status;+	int resid; +	unsigned int duration;+	unsigned int info;+} sg_io_hdr_t;++struct sg_scsi_id {+	int host_no;+	int channel;+	int scsi_id;+	int lun;+	int scsi_type;+	short h_cmd_per_lun;+	short d_queue_depth;+	int unused[2];+};++typedef struct sg_req_info {+	char req_state;+	char orphan;+	char sg_io_owned;+	char problem;+	int pack_id;+	void *usr_ptr;+	unsigned duration; +	int unused; +} sg_req_info_t;++typedef struct sg_io_hdr Sg_io_hdr;+typedef struct sg_io_vec Sg_io_vec;+typedef struct sg_scsi_id Sg_scsi_id;+typedef struct sg_req_info Sg_req_info;++struct sg_header {+	int pack_len;+	int reply_len;+	int pack_id;+	int result;+	unsigned twelve_byte:1;+	unsigned target_status:5;+	unsigned host_status:8;+	unsigned driver_status:8;+	unsigned other_flags:10;+	unsigned char sense_buffer[SG_MAX_SENSE];+};++#endif
+ musl-include/aarch64/search.h view
@@ -0,0 +1,63 @@+#ifndef _SEARCH_H+#define _SEARCH_H++#ifdef __cplusplus+extern "C" {+#endif++#include <features.h>++#define __NEED_size_t+#include <bits/alltypes.h>++typedef enum { FIND, ENTER } ACTION;+typedef enum { preorder, postorder, endorder, leaf } VISIT;++typedef struct entry {+	char *key;+	void *data;+} ENTRY;++int hcreate(size_t);+void hdestroy(void);+ENTRY *hsearch(ENTRY, ACTION);++#ifdef _GNU_SOURCE+struct hsearch_data {+	struct __tab *__tab;+	unsigned int __unused1;+	unsigned int __unused2;+};++int hcreate_r(size_t, struct hsearch_data *);+void hdestroy_r(struct hsearch_data *);+int hsearch_r(ENTRY, ACTION, ENTRY **, struct hsearch_data *);+#endif++void insque(void *, void *);+void remque(void *);++void *lsearch(const void *, void *, size_t *, size_t,+	int (*)(const void *, const void *));+void *lfind(const void *, const void *, size_t *, size_t,+	int (*)(const void *, const void *));++void *tdelete(const void *__restrict, void **__restrict, int(*)(const void *, const void *));+void *tfind(const void *, void *const *, int(*)(const void *, const void *));+void *tsearch(const void *, void **, int (*)(const void *, const void *));+void twalk(const void *, void (*)(const void *, VISIT, int));++#ifdef _GNU_SOURCE+struct qelem {+	struct qelem *q_forw, *q_back;+	char q_data[1];+};++void tdestroy(void *, void (*)(void *));+#endif++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/aarch64/semaphore.h view
@@ -0,0 +1,39 @@+#ifndef _SEMAPHORE_H+#define _SEMAPHORE_H+#ifdef __cplusplus+extern "C" {+#endif++#include <features.h>++#define __NEED_time_t+#define __NEED_struct_timespec+#include <bits/alltypes.h>++#include <fcntl.h>++#define SEM_FAILED ((sem_t *)0)++typedef struct {+	volatile int __val[4*sizeof(long)/sizeof(int)];+} sem_t;++int    sem_close(sem_t *);+int    sem_destroy(sem_t *);+int    sem_getvalue(sem_t *__restrict, int *__restrict);+int    sem_init(sem_t *, int, unsigned);+sem_t *sem_open(const char *, int, ...);+int    sem_post(sem_t *);+int    sem_timedwait(sem_t *__restrict, const struct timespec *__restrict);+int    sem_trywait(sem_t *);+int    sem_unlink(const char *);+int    sem_wait(sem_t *);++#if _REDIR_TIME64+__REDIR(sem_timedwait, __sem_timedwait_time64);+#endif++#ifdef __cplusplus+}+#endif+#endif
+ musl-include/aarch64/setjmp.h view
@@ -0,0 +1,49 @@+#ifndef	_SETJMP_H+#define	_SETJMP_H++#ifdef __cplusplus+extern "C" {+#endif++#include <features.h>++#include <bits/setjmp.h>++typedef struct __jmp_buf_tag {+	__jmp_buf __jb;+	unsigned long __fl;+	unsigned long __ss[128/sizeof(long)];+} jmp_buf[1];++#if __GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 1)+#define __setjmp_attr __attribute__((__returns_twice__))+#else+#define __setjmp_attr+#endif++#if defined(_POSIX_SOURCE) || defined(_POSIX_C_SOURCE) \+ || defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) \+ || defined(_BSD_SOURCE)+typedef jmp_buf sigjmp_buf;+int sigsetjmp (sigjmp_buf, int) __setjmp_attr;+_Noreturn void siglongjmp (sigjmp_buf, int);+#endif++#if defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) \+ || defined(_BSD_SOURCE)+int _setjmp (jmp_buf) __setjmp_attr;+_Noreturn void _longjmp (jmp_buf, int);+#endif++int setjmp (jmp_buf) __setjmp_attr;+_Noreturn void longjmp (jmp_buf, int);++#define setjmp setjmp++#undef __setjmp_attr++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/aarch64/shadow.h view
@@ -0,0 +1,44 @@+#ifndef _SHADOW_H+#define _SHADOW_H++#ifdef __cplusplus+extern "C" {+#endif++#define	__NEED_FILE+#define __NEED_size_t++#include <bits/alltypes.h>++#define	SHADOW "/etc/shadow"++struct spwd {+	char *sp_namp;+	char *sp_pwdp;+	long sp_lstchg;+	long sp_min;+	long sp_max;+	long sp_warn;+	long sp_inact;+	long sp_expire;+	unsigned long sp_flag;+};++void setspent(void);+void endspent(void);+struct spwd *getspent(void);+struct spwd *fgetspent(FILE *);+struct spwd *sgetspent(const char *);+int putspent(const struct spwd *, FILE *);++struct spwd *getspnam(const char *);+int getspnam_r(const char *, struct spwd *, char *, size_t, struct spwd **);++int lckpwdf(void);+int ulckpwdf(void);++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/aarch64/signal.h view
@@ -0,0 +1,304 @@+#ifndef _SIGNAL_H+#define _SIGNAL_H++#ifdef __cplusplus+extern "C" {+#endif++#include <features.h>++#if defined(_POSIX_SOURCE) || defined(_POSIX_C_SOURCE) \+ || defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) \+ || defined(_BSD_SOURCE)++#ifdef _GNU_SOURCE+#define __ucontext ucontext+#endif++#define __NEED_size_t+#define __NEED_pid_t+#define __NEED_uid_t+#define __NEED_struct_timespec+#define __NEED_pthread_t+#define __NEED_pthread_attr_t+#define __NEED_time_t+#define __NEED_clock_t+#define __NEED_sigset_t++#include <bits/alltypes.h>++#define SIG_BLOCK     0+#define SIG_UNBLOCK   1+#define SIG_SETMASK   2++#define SI_ASYNCNL (-60)+#define SI_TKILL (-6)+#define SI_SIGIO (-5)+#define SI_ASYNCIO (-4)+#define SI_MESGQ (-3)+#define SI_TIMER (-2)+#define SI_QUEUE (-1)+#define SI_USER 0+#define SI_KERNEL 128++typedef struct sigaltstack stack_t;++#endif++#include <bits/signal.h>++#if defined(_POSIX_SOURCE) || defined(_POSIX_C_SOURCE) \+ || defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) \+ || defined(_BSD_SOURCE)++#define SIG_HOLD ((void (*)(int)) 2)++#define FPE_INTDIV 1+#define FPE_INTOVF 2+#define FPE_FLTDIV 3+#define FPE_FLTOVF 4+#define FPE_FLTUND 5+#define FPE_FLTRES 6+#define FPE_FLTINV 7+#define FPE_FLTSUB 8++#define ILL_ILLOPC 1+#define ILL_ILLOPN 2+#define ILL_ILLADR 3+#define ILL_ILLTRP 4+#define ILL_PRVOPC 5+#define ILL_PRVREG 6+#define ILL_COPROC 7+#define ILL_BADSTK 8++#define SEGV_MAPERR 1+#define SEGV_ACCERR 2+#define SEGV_BNDERR 3+#define SEGV_PKUERR 4+#define SEGV_MTEAERR 8+#define SEGV_MTESERR 9++#define BUS_ADRALN 1+#define BUS_ADRERR 2+#define BUS_OBJERR 3+#define BUS_MCEERR_AR 4+#define BUS_MCEERR_AO 5++#define CLD_EXITED 1+#define CLD_KILLED 2+#define CLD_DUMPED 3+#define CLD_TRAPPED 4+#define CLD_STOPPED 5+#define CLD_CONTINUED 6++union sigval {+	int sival_int;+	void *sival_ptr;+};++typedef struct {+#ifdef __SI_SWAP_ERRNO_CODE+	int si_signo, si_code, si_errno;+#else+	int si_signo, si_errno, si_code;+#endif+	union {+		char __pad[128 - 2*sizeof(int) - sizeof(long)];+		struct {+			union {+				struct {+					pid_t si_pid;+					uid_t si_uid;+				} __piduid;+				struct {+					int si_timerid;+					int si_overrun;+				} __timer;+			} __first;+			union {+				union sigval si_value;+				struct {+					int si_status;+					clock_t si_utime, si_stime;+				} __sigchld;+			} __second;+		} __si_common;+		struct {+			void *si_addr;+			short si_addr_lsb;+			union {+				struct {+					void *si_lower;+					void *si_upper;+				} __addr_bnd;+				unsigned si_pkey;+			} __first;+		} __sigfault;+		struct {+			long si_band;+			int si_fd;+		} __sigpoll;+		struct {+			void *si_call_addr;+			int si_syscall;+			unsigned si_arch;+		} __sigsys;+	} __si_fields;+} siginfo_t;+#define si_pid     __si_fields.__si_common.__first.__piduid.si_pid+#define si_uid     __si_fields.__si_common.__first.__piduid.si_uid+#define si_status  __si_fields.__si_common.__second.__sigchld.si_status+#define si_utime   __si_fields.__si_common.__second.__sigchld.si_utime+#define si_stime   __si_fields.__si_common.__second.__sigchld.si_stime+#define si_value   __si_fields.__si_common.__second.si_value+#define si_addr    __si_fields.__sigfault.si_addr+#define si_addr_lsb __si_fields.__sigfault.si_addr_lsb+#define si_lower   __si_fields.__sigfault.__first.__addr_bnd.si_lower+#define si_upper   __si_fields.__sigfault.__first.__addr_bnd.si_upper+#define si_pkey    __si_fields.__sigfault.__first.si_pkey+#define si_band    __si_fields.__sigpoll.si_band+#define si_fd      __si_fields.__sigpoll.si_fd+#define si_timerid __si_fields.__si_common.__first.__timer.si_timerid+#define si_overrun __si_fields.__si_common.__first.__timer.si_overrun+#define si_ptr     si_value.sival_ptr+#define si_int     si_value.sival_int+#define si_call_addr __si_fields.__sigsys.si_call_addr+#define si_syscall __si_fields.__sigsys.si_syscall+#define si_arch    __si_fields.__sigsys.si_arch++struct sigaction {+	union {+		void (*sa_handler)(int);+		void (*sa_sigaction)(int, siginfo_t *, void *);+	} __sa_handler;+	sigset_t sa_mask;+	int sa_flags;+	void (*sa_restorer)(void);+};+#define sa_handler   __sa_handler.sa_handler+#define sa_sigaction __sa_handler.sa_sigaction++#define SA_UNSUPPORTED 0x00000400+#define SA_EXPOSE_TAGBITS 0x00000800++struct sigevent {+	union sigval sigev_value;+	int sigev_signo;+	int sigev_notify;+	union {+		char __pad[64 - 2*sizeof(int) - sizeof(union sigval)];+		pid_t sigev_notify_thread_id;+		struct {+			void (*sigev_notify_function)(union sigval);+			pthread_attr_t *sigev_notify_attributes;+		} __sev_thread;+	} __sev_fields;+};++#define sigev_notify_thread_id __sev_fields.sigev_notify_thread_id+#define sigev_notify_function __sev_fields.__sev_thread.sigev_notify_function+#define sigev_notify_attributes __sev_fields.__sev_thread.sigev_notify_attributes++#define SIGEV_SIGNAL 0+#define SIGEV_NONE 1+#define SIGEV_THREAD 2+#define SIGEV_THREAD_ID 4++int __libc_current_sigrtmin(void);+int __libc_current_sigrtmax(void);++#define SIGRTMIN  (__libc_current_sigrtmin())+#define SIGRTMAX  (__libc_current_sigrtmax())++int kill(pid_t, int);++int sigemptyset(sigset_t *);+int sigfillset(sigset_t *);+int sigaddset(sigset_t *, int);+int sigdelset(sigset_t *, int);+int sigismember(const sigset_t *, int);++int sigprocmask(int, const sigset_t *__restrict, sigset_t *__restrict);+int sigsuspend(const sigset_t *);+int sigaction(int, const struct sigaction *__restrict, struct sigaction *__restrict);+int sigpending(sigset_t *);+int sigwait(const sigset_t *__restrict, int *__restrict);+int sigwaitinfo(const sigset_t *__restrict, siginfo_t *__restrict);+int sigtimedwait(const sigset_t *__restrict, siginfo_t *__restrict, const struct timespec *__restrict);+int sigqueue(pid_t, int, union sigval);++int pthread_sigmask(int, const sigset_t *__restrict, sigset_t *__restrict);+int pthread_kill(pthread_t, int);++void psiginfo(const siginfo_t *, const char *);+void psignal(int, const char *);++#endif++#if defined(_XOPEN_SOURCE) || defined(_BSD_SOURCE) || defined(_GNU_SOURCE)+int killpg(pid_t, int);+int sigaltstack(const stack_t *__restrict, stack_t *__restrict);+int sighold(int);+int sigignore(int);+int siginterrupt(int, int);+int sigpause(int);+int sigrelse(int);+void (*sigset(int, void (*)(int)))(int);+#define TRAP_BRKPT 1+#define TRAP_TRACE 2+#define TRAP_BRANCH 3+#define TRAP_HWBKPT 4+#define TRAP_UNK 5+#define POLL_IN 1+#define POLL_OUT 2+#define POLL_MSG 3+#define POLL_ERR 4+#define POLL_PRI 5+#define POLL_HUP 6+#define SS_ONSTACK    1+#define SS_DISABLE    2+#define SS_AUTODISARM (1U << 31)+#define SS_FLAG_BITS SS_AUTODISARM+#endif++#if defined(_BSD_SOURCE) || defined(_GNU_SOURCE)+#define NSIG _NSIG+typedef void (*sig_t)(int);++#define SYS_SECCOMP 1+#define SYS_USER_DISPATCH 2+#endif++#ifdef _GNU_SOURCE+typedef void (*sighandler_t)(int);+void (*bsd_signal(int, void (*)(int)))(int);+int sigisemptyset(const sigset_t *);+int sigorset (sigset_t *, const sigset_t *, const sigset_t *);+int sigandset(sigset_t *, const sigset_t *, const sigset_t *);++#define SA_NOMASK SA_NODEFER+#define SA_ONESHOT SA_RESETHAND+#endif++#define SIG_ERR  ((void (*)(int))-1)+#define SIG_DFL  ((void (*)(int)) 0)+#define SIG_IGN  ((void (*)(int)) 1)++typedef int sig_atomic_t;++void (*signal(int, void (*)(int)))(int);+int raise(int);++#if _REDIR_TIME64+#if defined(_POSIX_SOURCE) || defined(_POSIX_C_SOURCE) \+ || defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) \+ || defined(_BSD_SOURCE)+__REDIR(sigtimedwait, __sigtimedwait_time64);+#endif+#endif++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/aarch64/spawn.h view
@@ -0,0 +1,83 @@+#ifndef _SPAWN_H+#define _SPAWN_H++#ifdef __cplusplus+extern "C" {+#endif++#include <features.h>++#define __NEED_mode_t+#define __NEED_pid_t+#define __NEED_sigset_t++#include <bits/alltypes.h>++struct sched_param;++#define POSIX_SPAWN_RESETIDS 1+#define POSIX_SPAWN_SETPGROUP 2+#define POSIX_SPAWN_SETSIGDEF 4+#define POSIX_SPAWN_SETSIGMASK 8+#define POSIX_SPAWN_SETSCHEDPARAM 16+#define POSIX_SPAWN_SETSCHEDULER 32+#define POSIX_SPAWN_USEVFORK 64+#define POSIX_SPAWN_SETSID 128++typedef struct {+	int __flags;+	pid_t __pgrp;+	sigset_t __def, __mask;+	int __prio, __pol;+	void *__fn;+	char __pad[64-sizeof(void *)];+} posix_spawnattr_t;++typedef struct {+	int __pad0[2];+	void *__actions;+	int __pad[16];+} posix_spawn_file_actions_t;++int posix_spawn(pid_t *__restrict, const char *__restrict, const posix_spawn_file_actions_t *,+	const posix_spawnattr_t *__restrict, char *const *__restrict, char *const *__restrict);+int posix_spawnp(pid_t *__restrict, const char *__restrict, const posix_spawn_file_actions_t *,+	const posix_spawnattr_t *__restrict, char *const *__restrict, char *const *__restrict);++int posix_spawnattr_init(posix_spawnattr_t *);+int posix_spawnattr_destroy(posix_spawnattr_t *);++int posix_spawnattr_setflags(posix_spawnattr_t *, short);+int posix_spawnattr_getflags(const posix_spawnattr_t *__restrict, short *__restrict);++int posix_spawnattr_setpgroup(posix_spawnattr_t *, pid_t);+int posix_spawnattr_getpgroup(const posix_spawnattr_t *__restrict, pid_t *__restrict);++int posix_spawnattr_setsigmask(posix_spawnattr_t *__restrict, const sigset_t *__restrict);+int posix_spawnattr_getsigmask(const posix_spawnattr_t *__restrict, sigset_t *__restrict);++int posix_spawnattr_setsigdefault(posix_spawnattr_t *__restrict, const sigset_t *__restrict);+int posix_spawnattr_getsigdefault(const posix_spawnattr_t *__restrict, sigset_t *__restrict);++int posix_spawnattr_setschedparam(posix_spawnattr_t *__restrict, const struct sched_param *__restrict);+int posix_spawnattr_getschedparam(const posix_spawnattr_t *__restrict, struct sched_param *__restrict);+int posix_spawnattr_setschedpolicy(posix_spawnattr_t *, int);+int posix_spawnattr_getschedpolicy(const posix_spawnattr_t *__restrict, int *__restrict);++int posix_spawn_file_actions_init(posix_spawn_file_actions_t *);+int posix_spawn_file_actions_destroy(posix_spawn_file_actions_t *);++int posix_spawn_file_actions_addopen(posix_spawn_file_actions_t *__restrict, int, const char *__restrict, int, mode_t);+int posix_spawn_file_actions_addclose(posix_spawn_file_actions_t *, int);+int posix_spawn_file_actions_adddup2(posix_spawn_file_actions_t *, int, int);++#if defined(_BSD_SOURCE) || defined(_GNU_SOURCE)+int posix_spawn_file_actions_addchdir_np(posix_spawn_file_actions_t *__restrict, const char *__restrict);+int posix_spawn_file_actions_addfchdir_np(posix_spawn_file_actions_t *, int);+#endif++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/aarch64/stdalign.h view
@@ -0,0 +1,20 @@+#ifndef _STDALIGN_H+#define _STDALIGN_H++#ifndef __cplusplus++/* this whole header only works in C11 or with compiler extensions */+#if __STDC_VERSION__ < 201112L && defined( __GNUC__)+#define _Alignas(t) __attribute__((__aligned__(t)))+#define _Alignof(t) __alignof__(t)+#endif++#define alignas _Alignas+#define alignof _Alignof++#endif++#define __alignas_is_defined 1+#define __alignof_is_defined 1++#endif
+ musl-include/aarch64/stdarg.h view
@@ -0,0 +1,21 @@+#ifndef _STDARG_H+#define _STDARG_H++#ifdef __cplusplus+extern "C" {+#endif++#define __NEED_va_list++#include <bits/alltypes.h>++#define va_start(v,l)   __builtin_va_start(v,l)+#define va_end(v)       __builtin_va_end(v)+#define va_arg(v,l)     __builtin_va_arg(v,l)+#define va_copy(d,s)    __builtin_va_copy(d,s)++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/aarch64/stdbool.h view
@@ -0,0 +1,14 @@+#ifndef _STDBOOL_H+#define _STDBOOL_H++#ifndef __cplusplus++#define true 1+#define false 0+#define bool _Bool++#endif++#define __bool_true_false_are_defined 1++#endif
+ musl-include/aarch64/stdc-predef.h view
@@ -0,0 +1,18 @@+#ifndef _STDC_PREDEF_H+#define _STDC_PREDEF_H++#define __STDC_ISO_10646__ 201206L++#if !defined(__GCC_IEC_559) || __GCC_IEC_559 > 0+#define __STDC_IEC_559__ 1+#endif++#if !defined(__STDC_UTF_16__)+#define __STDC_UTF_16__ 1+#endif++#if !defined(__STDC_UTF_32__)+#define __STDC_UTF_32__ 1+#endif++#endif
+ musl-include/aarch64/stddef.h view
@@ -0,0 +1,27 @@+#ifndef _STDDEF_H+#define _STDDEF_H++#if __cplusplus >= 201103L+#define NULL nullptr+#elif defined(__cplusplus)+#define NULL 0L+#else+#define NULL ((void*)0)+#endif++#define __NEED_ptrdiff_t+#define __NEED_size_t+#define __NEED_wchar_t+#if __STDC_VERSION__ >= 201112L || __cplusplus >= 201103L+#define __NEED_max_align_t+#endif++#include <bits/alltypes.h>++#if __GNUC__ > 3+#define offsetof(type, member) __builtin_offsetof(type, member)+#else+#define offsetof(type, member) ((size_t)( (char *)&(((type *)0)->member) - (char *)0 ))+#endif++#endif
+ musl-include/aarch64/stdint.h view
@@ -0,0 +1,117 @@+#ifndef _STDINT_H+#define _STDINT_H++#define __NEED_int8_t+#define __NEED_int16_t+#define __NEED_int32_t+#define __NEED_int64_t++#define __NEED_uint8_t+#define __NEED_uint16_t+#define __NEED_uint32_t+#define __NEED_uint64_t++#define __NEED_intptr_t+#define __NEED_uintptr_t++#define __NEED_intmax_t+#define __NEED_uintmax_t++#include <bits/alltypes.h>++typedef int8_t int_fast8_t;+typedef int64_t int_fast64_t;++typedef int8_t  int_least8_t;+typedef int16_t int_least16_t;+typedef int32_t int_least32_t;+typedef int64_t int_least64_t;++typedef uint8_t uint_fast8_t;+typedef uint64_t uint_fast64_t;++typedef uint8_t  uint_least8_t;+typedef uint16_t uint_least16_t;+typedef uint32_t uint_least32_t;+typedef uint64_t uint_least64_t;++#define INT8_MIN   (-1-0x7f)+#define INT16_MIN  (-1-0x7fff)+#define INT32_MIN  (-1-0x7fffffff)+#define INT64_MIN  (-1-0x7fffffffffffffff)++#define INT8_MAX   (0x7f)+#define INT16_MAX  (0x7fff)+#define INT32_MAX  (0x7fffffff)+#define INT64_MAX  (0x7fffffffffffffff)++#define UINT8_MAX  (0xff)+#define UINT16_MAX (0xffff)+#define UINT32_MAX (0xffffffffu)+#define UINT64_MAX (0xffffffffffffffffu)++#define INT_FAST8_MIN   INT8_MIN+#define INT_FAST64_MIN  INT64_MIN++#define INT_LEAST8_MIN   INT8_MIN+#define INT_LEAST16_MIN  INT16_MIN+#define INT_LEAST32_MIN  INT32_MIN+#define INT_LEAST64_MIN  INT64_MIN++#define INT_FAST8_MAX   INT8_MAX+#define INT_FAST64_MAX  INT64_MAX++#define INT_LEAST8_MAX   INT8_MAX+#define INT_LEAST16_MAX  INT16_MAX+#define INT_LEAST32_MAX  INT32_MAX+#define INT_LEAST64_MAX  INT64_MAX++#define UINT_FAST8_MAX  UINT8_MAX+#define UINT_FAST64_MAX UINT64_MAX++#define UINT_LEAST8_MAX  UINT8_MAX+#define UINT_LEAST16_MAX UINT16_MAX+#define UINT_LEAST32_MAX UINT32_MAX+#define UINT_LEAST64_MAX UINT64_MAX++#define INTMAX_MIN  INT64_MIN+#define INTMAX_MAX  INT64_MAX+#define UINTMAX_MAX UINT64_MAX++#define WINT_MIN 0U+#define WINT_MAX UINT32_MAX++#if L'\0'-1 > 0+#define WCHAR_MAX (0xffffffffu+L'\0')+#define WCHAR_MIN (0+L'\0')+#else+#define WCHAR_MAX (0x7fffffff+L'\0')+#define WCHAR_MIN (-1-0x7fffffff+L'\0')+#endif++#define SIG_ATOMIC_MIN  INT32_MIN+#define SIG_ATOMIC_MAX  INT32_MAX++#include <bits/stdint.h>++#define INT8_C(c)  c+#define INT16_C(c) c+#define INT32_C(c) c++#define UINT8_C(c)  c+#define UINT16_C(c) c+#define UINT32_C(c) c ## U++#if UINTPTR_MAX == UINT64_MAX+#define INT64_C(c) c ## L+#define UINT64_C(c) c ## UL+#define INTMAX_C(c)  c ## L+#define UINTMAX_C(c) c ## UL+#else+#define INT64_C(c) c ## LL+#define UINT64_C(c) c ## ULL+#define INTMAX_C(c)  c ## LL+#define UINTMAX_C(c) c ## ULL+#endif++#endif
+ musl-include/aarch64/stdio.h view
@@ -0,0 +1,224 @@+#ifndef _STDIO_H+#define _STDIO_H++#ifdef __cplusplus+extern "C" {+#endif++#include <features.h>++#define __NEED_FILE+#define __NEED___isoc_va_list+#define __NEED_size_t++#if __STDC_VERSION__ < 201112L+#define __NEED_struct__IO_FILE+#endif++#if defined(_POSIX_SOURCE) || defined(_POSIX_C_SOURCE) \+ || defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) \+ || defined(_BSD_SOURCE)+#define __NEED_ssize_t+#define __NEED_off_t+#define __NEED_va_list+#endif++#include <bits/alltypes.h>++#if __cplusplus >= 201103L+#define NULL nullptr+#elif defined(__cplusplus)+#define NULL 0L+#else+#define NULL ((void*)0)+#endif++#undef EOF+#define EOF (-1)++#undef SEEK_SET+#undef SEEK_CUR+#undef SEEK_END+#define SEEK_SET 0+#define SEEK_CUR 1+#define SEEK_END 2++#define _IOFBF 0+#define _IOLBF 1+#define _IONBF 2++#define BUFSIZ 1024+#define FILENAME_MAX 4096+#define FOPEN_MAX 1000+#define TMP_MAX 10000+#define L_tmpnam 20++typedef union _G_fpos64_t {+	char __opaque[16];+	long long __lldata;+	double __align;+} fpos_t;++extern FILE *const stdin;+extern FILE *const stdout;+extern FILE *const stderr;++#define stdin  (stdin)+#define stdout (stdout)+#define stderr (stderr)++FILE *fopen(const char *__restrict, const char *__restrict);+FILE *freopen(const char *__restrict, const char *__restrict, FILE *__restrict);+int fclose(FILE *);++int remove(const char *);+int rename(const char *, const char *);++int feof(FILE *);+int ferror(FILE *);+int fflush(FILE *);+void clearerr(FILE *);++int fseek(FILE *, long, int);+long ftell(FILE *);+void rewind(FILE *);++int fgetpos(FILE *__restrict, fpos_t *__restrict);+int fsetpos(FILE *, const fpos_t *);++size_t fread(void *__restrict, size_t, size_t, FILE *__restrict);+size_t fwrite(const void *__restrict, size_t, size_t, FILE *__restrict);++int fgetc(FILE *);+int getc(FILE *);+int getchar(void);+int ungetc(int, FILE *);++int fputc(int, FILE *);+int putc(int, FILE *);+int putchar(int);++char *fgets(char *__restrict, int, FILE *__restrict);+#if __STDC_VERSION__ < 201112L+char *gets(char *);+#endif++int fputs(const char *__restrict, FILE *__restrict);+int puts(const char *);++int printf(const char *__restrict, ...);+int fprintf(FILE *__restrict, const char *__restrict, ...);+int sprintf(char *__restrict, const char *__restrict, ...);+int snprintf(char *__restrict, size_t, const char *__restrict, ...);++int vprintf(const char *__restrict, __isoc_va_list);+int vfprintf(FILE *__restrict, const char *__restrict, __isoc_va_list);+int vsprintf(char *__restrict, const char *__restrict, __isoc_va_list);+int vsnprintf(char *__restrict, size_t, const char *__restrict, __isoc_va_list);++int scanf(const char *__restrict, ...);+int fscanf(FILE *__restrict, const char *__restrict, ...);+int sscanf(const char *__restrict, const char *__restrict, ...);+int vscanf(const char *__restrict, __isoc_va_list);+int vfscanf(FILE *__restrict, const char *__restrict, __isoc_va_list);+int vsscanf(const char *__restrict, const char *__restrict, __isoc_va_list);++void perror(const char *);++int setvbuf(FILE *__restrict, char *__restrict, int, size_t);+void setbuf(FILE *__restrict, char *__restrict);++char *tmpnam(char *);+FILE *tmpfile(void);++#if defined(_POSIX_SOURCE) || defined(_POSIX_C_SOURCE) \+ || defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) \+ || defined(_BSD_SOURCE)+FILE *fmemopen(void *__restrict, size_t, const char *__restrict);+FILE *open_memstream(char **, size_t *);+FILE *fdopen(int, const char *);+FILE *popen(const char *, const char *);+int pclose(FILE *);+int fileno(FILE *);+int fseeko(FILE *, off_t, int);+off_t ftello(FILE *);+int dprintf(int, const char *__restrict, ...);+int vdprintf(int, const char *__restrict, __isoc_va_list);+void flockfile(FILE *);+int ftrylockfile(FILE *);+void funlockfile(FILE *);+int getc_unlocked(FILE *);+int getchar_unlocked(void);+int putc_unlocked(int, FILE *);+int putchar_unlocked(int);+ssize_t getdelim(char **__restrict, size_t *__restrict, int, FILE *__restrict);+ssize_t getline(char **__restrict, size_t *__restrict, FILE *__restrict);+int renameat(int, const char *, int, const char *);+char *ctermid(char *);+#define L_ctermid 20+#endif+++#if defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) \+ || defined(_BSD_SOURCE)+#define P_tmpdir "/tmp"+char *tempnam(const char *, const char *);+#endif++#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE)+#define L_cuserid 20+char *cuserid(char *);+void setlinebuf(FILE *);+void setbuffer(FILE *, char *, size_t);+int fgetc_unlocked(FILE *);+int fputc_unlocked(int, FILE *);+int fflush_unlocked(FILE *);+size_t fread_unlocked(void *, size_t, size_t, FILE *);+size_t fwrite_unlocked(const void *, size_t, size_t, FILE *);+void clearerr_unlocked(FILE *);+int feof_unlocked(FILE *);+int ferror_unlocked(FILE *);+int fileno_unlocked(FILE *);+int getw(FILE *);+int putw(int, FILE *);+char *fgetln(FILE *, size_t *);+int asprintf(char **, const char *, ...);+int vasprintf(char **, const char *, __isoc_va_list);+#endif++#ifdef _GNU_SOURCE+char *fgets_unlocked(char *, int, FILE *);+int fputs_unlocked(const char *, FILE *);++typedef ssize_t (cookie_read_function_t)(void *, char *, size_t);+typedef ssize_t (cookie_write_function_t)(void *, const char *, size_t);+typedef int (cookie_seek_function_t)(void *, off_t *, int);+typedef int (cookie_close_function_t)(void *);++typedef struct _IO_cookie_io_functions_t {+	cookie_read_function_t *read;+	cookie_write_function_t *write;+	cookie_seek_function_t *seek;+	cookie_close_function_t *close;+} cookie_io_functions_t;++FILE *fopencookie(void *, const char *, cookie_io_functions_t);+#endif++#if defined(_LARGEFILE64_SOURCE)+#define tmpfile64 tmpfile+#define fopen64 fopen+#define freopen64 freopen+#define fseeko64 fseeko+#define ftello64 ftello+#define fgetpos64 fgetpos+#define fsetpos64 fsetpos+#define fpos64_t fpos_t+#define off64_t off_t+#endif++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/aarch64/stdio_ext.h view
@@ -0,0 +1,34 @@+#ifndef _STDIO_EXT_H+#define _STDIO_EXT_H++#ifdef __cplusplus+extern "C" {+#endif++#include <stdio.h>++#define FSETLOCKING_QUERY 0+#define FSETLOCKING_INTERNAL 1+#define FSETLOCKING_BYCALLER 2++void _flushlbf(void);+int __fsetlocking(FILE *, int);+int __fwriting(FILE *);+int __freading(FILE *);+int __freadable(FILE *);+int __fwritable(FILE *);+int __flbf(FILE *);+size_t __fbufsize(FILE *);+size_t __fpending(FILE *);+int __fpurge(FILE *);++size_t __freadahead(FILE *);+const char *__freadptr(FILE *, size_t *);+void __freadptrinc(FILE *, size_t);+void __fseterr(FILE *);++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/aarch64/stdlib.h view
@@ -0,0 +1,179 @@+#ifndef _STDLIB_H+#define _STDLIB_H++#ifdef __cplusplus+extern "C" {+#endif++#include <features.h>++#if __cplusplus >= 201103L+#define NULL nullptr+#elif defined(__cplusplus)+#define NULL 0L+#else+#define NULL ((void*)0)+#endif++#define __NEED_size_t+#define __NEED_wchar_t++#include <bits/alltypes.h>++int atoi (const char *);+long atol (const char *);+long long atoll (const char *);+double atof (const char *);++float strtof (const char *__restrict, char **__restrict);+double strtod (const char *__restrict, char **__restrict);+long double strtold (const char *__restrict, char **__restrict);++long strtol (const char *__restrict, char **__restrict, int);+unsigned long strtoul (const char *__restrict, char **__restrict, int);+long long strtoll (const char *__restrict, char **__restrict, int);+unsigned long long strtoull (const char *__restrict, char **__restrict, int);++int rand (void);+void srand (unsigned);++void *malloc (size_t);+void *calloc (size_t, size_t);+void *realloc (void *, size_t);+void free (void *);+void *aligned_alloc(size_t, size_t);++_Noreturn void abort (void);+int atexit (void (*) (void));+_Noreturn void exit (int);+_Noreturn void _Exit (int);+int at_quick_exit (void (*) (void));+_Noreturn void quick_exit (int);++char *getenv (const char *);++int system (const char *);++void *bsearch (const void *, const void *, size_t, size_t, int (*)(const void *, const void *));+void qsort (void *, size_t, size_t, int (*)(const void *, const void *));++int abs (int);+long labs (long);+long long llabs (long long);++typedef struct { int quot, rem; } div_t;+typedef struct { long quot, rem; } ldiv_t;+typedef struct { long long quot, rem; } lldiv_t;++div_t div (int, int);+ldiv_t ldiv (long, long);+lldiv_t lldiv (long long, long long);++int mblen (const char *, size_t);+int mbtowc (wchar_t *__restrict, const char *__restrict, size_t);+int wctomb (char *, wchar_t);+size_t mbstowcs (wchar_t *__restrict, const char *__restrict, size_t);+size_t wcstombs (char *__restrict, const wchar_t *__restrict, size_t);++#define EXIT_FAILURE 1+#define EXIT_SUCCESS 0++size_t __ctype_get_mb_cur_max(void);+#define MB_CUR_MAX (__ctype_get_mb_cur_max())++#define RAND_MAX (0x7fffffff)+++#if defined(_POSIX_SOURCE) || defined(_POSIX_C_SOURCE) \+ || defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) \+ || defined(_BSD_SOURCE)++#define WNOHANG    1+#define WUNTRACED  2++#define WEXITSTATUS(s) (((s) & 0xff00) >> 8)+#define WTERMSIG(s) ((s) & 0x7f)+#define WSTOPSIG(s) WEXITSTATUS(s)+#define WIFEXITED(s) (!WTERMSIG(s))+#define WIFSTOPPED(s) ((short)((((s)&0xffff)*0x10001U)>>8) > 0x7f00)+#define WIFSIGNALED(s) (((s)&0xffff)-1U < 0xffu)++int posix_memalign (void **, size_t, size_t);+int setenv (const char *, const char *, int);+int unsetenv (const char *);+int mkstemp (char *);+int mkostemp (char *, int);+char *mkdtemp (char *);+int getsubopt (char **, char *const *, char **);+int rand_r (unsigned *);++#endif+++#if defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) \+ || defined(_BSD_SOURCE)+char *realpath (const char *__restrict, char *__restrict);+long int random (void);+void srandom (unsigned int);+char *initstate (unsigned int, char *, size_t);+char *setstate (char *);+int putenv (char *);+int posix_openpt (int);+int grantpt (int);+int unlockpt (int);+char *ptsname (int);+char *l64a (long);+long a64l (const char *);+void setkey (const char *);+double drand48 (void);+double erand48 (unsigned short [3]);+long int lrand48 (void);+long int nrand48 (unsigned short [3]);+long mrand48 (void);+long jrand48 (unsigned short [3]);+void srand48 (long);+unsigned short *seed48 (unsigned short [3]);+void lcong48 (unsigned short [7]);+#endif++#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE)+#include <alloca.h>+char *mktemp (char *);+int mkstemps (char *, int);+int mkostemps (char *, int, int);+void *valloc (size_t);+void *memalign(size_t, size_t);+int getloadavg(double *, int);+int clearenv(void);+#define WCOREDUMP(s) ((s) & 0x80)+#define WIFCONTINUED(s) ((s) == 0xffff)+void *reallocarray (void *, size_t, size_t);+void qsort_r (void *, size_t, size_t, int (*)(const void *, const void *, void *), void *);+#endif++#ifdef _GNU_SOURCE+int ptsname_r(int, char *, size_t);+char *ecvt(double, int, int *, int *);+char *fcvt(double, int, int *, int *);+char *gcvt(double, int, char *);+char *secure_getenv(const char *);+struct __locale_struct;+float strtof_l(const char *__restrict, char **__restrict, struct __locale_struct *);+double strtod_l(const char *__restrict, char **__restrict, struct __locale_struct *);+long double strtold_l(const char *__restrict, char **__restrict, struct __locale_struct *);+#endif++#if defined(_LARGEFILE64_SOURCE)+#define mkstemp64 mkstemp+#define mkostemp64 mkostemp+#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE)+#define mkstemps64 mkstemps+#define mkostemps64 mkostemps+#endif+#endif++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/aarch64/stdnoreturn.h view
@@ -0,0 +1,7 @@+#ifndef _STDNORETURN_H+#define _STDNORETURN_H+#ifndef __cplusplus+#include <features.h>+#define noreturn _Noreturn+#endif+#endif
+ musl-include/aarch64/string.h view
@@ -0,0 +1,104 @@+#ifndef	_STRING_H+#define	_STRING_H++#ifdef __cplusplus+extern "C" {+#endif++#include <features.h>++#if __cplusplus >= 201103L+#define NULL nullptr+#elif defined(__cplusplus)+#define NULL 0L+#else+#define NULL ((void*)0)+#endif++#define __NEED_size_t+#if defined(_POSIX_SOURCE) || defined(_POSIX_C_SOURCE) \+ || defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) \+ || defined(_BSD_SOURCE)+#define __NEED_locale_t+#endif++#include <bits/alltypes.h>++void *memcpy (void *__restrict, const void *__restrict, size_t);+void *memmove (void *, const void *, size_t);+void *memset (void *, int, size_t);+int memcmp (const void *, const void *, size_t);+void *memchr (const void *, int, size_t);++char *strcpy (char *__restrict, const char *__restrict);+char *strncpy (char *__restrict, const char *__restrict, size_t);++char *strcat (char *__restrict, const char *__restrict);+char *strncat (char *__restrict, const char *__restrict, size_t);++int strcmp (const char *, const char *);+int strncmp (const char *, const char *, size_t);++int strcoll (const char *, const char *);+size_t strxfrm (char *__restrict, const char *__restrict, size_t);++char *strchr (const char *, int);+char *strrchr (const char *, int);++size_t strcspn (const char *, const char *);+size_t strspn (const char *, const char *);+char *strpbrk (const char *, const char *);+char *strstr (const char *, const char *);+char *strtok (char *__restrict, const char *__restrict);++size_t strlen (const char *);++char *strerror (int);++#if defined(_BSD_SOURCE) || defined(_GNU_SOURCE)+#include <strings.h>+#endif++#if defined(_POSIX_SOURCE) || defined(_POSIX_C_SOURCE) \+ || defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) \+ || defined(_BSD_SOURCE)+char *strtok_r (char *__restrict, const char *__restrict, char **__restrict);+int strerror_r (int, char *, size_t);+char *stpcpy(char *__restrict, const char *__restrict);+char *stpncpy(char *__restrict, const char *__restrict, size_t);+size_t strnlen (const char *, size_t);+char *strdup (const char *);+char *strndup (const char *, size_t);+char *strsignal(int);+char *strerror_l (int, locale_t);+int strcoll_l (const char *, const char *, locale_t);+size_t strxfrm_l (char *__restrict, const char *__restrict, size_t, locale_t);+void *memmem(const void *, size_t, const void *, size_t);+#endif++#if defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) \+ || defined(_BSD_SOURCE)+void *memccpy (void *__restrict, const void *__restrict, int, size_t);+#endif++#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE)+char *strsep(char **, const char *);+size_t strlcat (char *, const char *, size_t);+size_t strlcpy (char *, const char *, size_t);+void explicit_bzero (void *, size_t);+#endif++#ifdef _GNU_SOURCE+#define	strdupa(x)	strcpy(alloca(strlen(x)+1),x)+int strverscmp (const char *, const char *);+char *strchrnul(const char *, int);+char *strcasestr(const char *, const char *);+void *memrchr(const void *, int, size_t);+void *mempcpy(void *, const void *, size_t);+#endif++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/aarch64/strings.h view
@@ -0,0 +1,40 @@+#ifndef	_STRINGS_H+#define	_STRINGS_H++#ifdef __cplusplus+extern "C" {+#endif++#include <features.h>++#define __NEED_size_t+#define __NEED_locale_t+#include <bits/alltypes.h>++#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE) || defined(_POSIX_SOURCE) \+ || (defined(_POSIX_C_SOURCE) && _POSIX_C_SOURCE+0 < 200809L) \+ || (defined(_XOPEN_SOURCE) && _XOPEN_SOURCE+0 < 700)+int bcmp (const void *, const void *, size_t);+void bcopy (const void *, void *, size_t);+void bzero (void *, size_t);+char *index (const char *, int);+char *rindex (const char *, int);+#endif++#if defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE)  || defined(_BSD_SOURCE)+int ffs (int);+int ffsl (long);+int ffsll (long long);+#endif++int strcasecmp (const char *, const char *);+int strncasecmp (const char *, const char *, size_t);++int strcasecmp_l (const char *, const char *, locale_t);+int strncasecmp_l (const char *, const char *, size_t, locale_t);++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/aarch64/stropts.h view
@@ -0,0 +1,139 @@+#ifndef _STROPTS_H+#define _STROPTS_H++#ifdef __cplusplus+extern "C" {+#endif++#define __SID		('S' << 8)++#define I_NREAD		(__SID | 1)+#define I_PUSH		(__SID | 2)+#define I_POP		(__SID | 3)+#define I_LOOK		(__SID | 4)+#define I_FLUSH		(__SID | 5)+#define I_SRDOPT	(__SID | 6)+#define I_GRDOPT	(__SID | 7)+#define I_STR		(__SID | 8)+#define I_SETSIG	(__SID | 9)+#define I_GETSIG	(__SID |10)+#define I_FIND		(__SID |11)+#define I_LINK		(__SID |12)+#define I_UNLINK	(__SID |13)+#define I_PEEK		(__SID |15)+#define I_FDINSERT	(__SID |16)+#define I_SENDFD	(__SID |17)+#define I_RECVFD	(__SID |14)+#define I_SWROPT	(__SID |19)+#define I_GWROPT	(__SID |20)+#define I_LIST		(__SID |21)+#define I_PLINK		(__SID |22)+#define I_PUNLINK	(__SID |23)+#define I_FLUSHBAND	(__SID |28)+#define I_CKBAND	(__SID |29)+#define I_GETBAND	(__SID |30)+#define I_ATMARK	(__SID |31)+#define I_SETCLTIME	(__SID |32)+#define I_GETCLTIME	(__SID |33)+#define I_CANPUT	(__SID |34)++#define FMNAMESZ	8++#define FLUSHR		0x01+#define FLUSHW		0x02+#define FLUSHRW		0x03+#define FLUSHBAND	0x04++#define S_INPUT		0x0001+#define S_HIPRI		0x0002+#define S_OUTPUT	0x0004+#define S_MSG		0x0008+#define S_ERROR		0x0010+#define S_HANGUP	0x0020+#define S_RDNORM	0x0040+#define S_WRNORM	S_OUTPUT+#define S_RDBAND	0x0080+#define S_WRBAND	0x0100+#define S_BANDURG	0x0200++#define RS_HIPRI	0x01++#define RNORM		0x0000+#define RMSGD		0x0001+#define RMSGN		0x0002+#define RPROTDAT	0x0004+#define RPROTDIS	0x0008+#define RPROTNORM	0x0010+#define RPROTMASK	0x001C++#define SNDZERO		0x001+#define SNDPIPE		0x002++#define ANYMARK		0x01+#define LASTMARK	0x02++#define MUXID_ALL	(-1)++#define MSG_HIPRI	0x01+#define MSG_ANY		0x02+#define MSG_BAND	0x04++#define MORECTL		1+#define MOREDATA	2++struct bandinfo {+	unsigned char bi_pri;+	int bi_flag;+};++struct strbuf {+	int maxlen;+	int len;+	char *buf;+};++struct strpeek {+	struct strbuf ctlbuf;+	struct strbuf databuf;+	unsigned flags;+};++struct strfdinsert {+	struct strbuf ctlbuf;+	struct strbuf databuf;+	unsigned flags;+	int fildes;+	int offset;+};++struct strioctl {+	int ic_cmd;+	int ic_timout;+	int ic_len;+	char *ic_dp;+};++struct strrecvfd {+	int fd;+	int uid;+	int gid;+	char __fill[8];+};++struct str_mlist {+	char l_name[FMNAMESZ + 1];+};++struct str_list {+	int sl_nmods;+	struct str_mlist *sl_modlist;+};++int isastream(int);+int ioctl(int, int, ...);++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/aarch64/sys/acct.h view
@@ -0,0 +1,72 @@+#ifndef _SYS_ACCT_H+#define _SYS_ACCT_H++#ifdef __cplusplus+extern "C" {+#endif++#include <features.h>+#include <time.h>+#include <stdint.h>++#define ACCT_COMM 16++typedef uint16_t comp_t;++struct acct {+	char ac_flag;+	uint16_t ac_uid;+	uint16_t ac_gid;+	uint16_t ac_tty;+	uint32_t ac_btime;+	comp_t ac_utime;+	comp_t ac_stime;+	comp_t ac_etime;+	comp_t ac_mem;+	comp_t ac_io;+	comp_t ac_rw;+	comp_t ac_minflt;+	comp_t ac_majflt;+	comp_t ac_swaps;+	uint32_t ac_exitcode;+	char ac_comm[ACCT_COMM+1];+	char ac_pad[10];+};+++struct acct_v3 {+	char ac_flag;+	char ac_version;+	uint16_t ac_tty;+	uint32_t ac_exitcode;+	uint32_t ac_uid;+	uint32_t ac_gid;+	uint32_t ac_pid;+	uint32_t ac_ppid;+	uint32_t ac_btime;+	float ac_etime;+	comp_t ac_utime;+	comp_t ac_stime;+	comp_t ac_mem;+	comp_t ac_io;+	comp_t ac_rw;+	comp_t ac_minflt;+	comp_t ac_majflt;+	comp_t ac_swaps;+	char ac_comm[ACCT_COMM];+};++#define AFORK 1+#define ASU 2+#define ACORE 8+#define AXSIG 16+#define ACCT_BYTEORDER (128*(__BYTE_ORDER==__BIG_ENDIAN))+#define AHZ 100++int acct(const char *);++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/aarch64/sys/auxv.h view
@@ -0,0 +1,17 @@+#ifndef _SYS_AUXV_H+#define _SYS_AUXV_H++#ifdef __cplusplus+extern "C" {+#endif++#include <elf.h>+#include <bits/hwcap.h>++unsigned long getauxval(unsigned long);++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/aarch64/sys/cachectl.h view
@@ -0,0 +1,22 @@+#ifndef _SYS_CACHECTL_H+#define _SYS_CACHECTL_H++#ifdef __cplusplus+extern "C" {+#endif++#define ICACHE (1<<0)+#define DCACHE (1<<1)+#define BCACHE (ICACHE|DCACHE)+#define CACHEABLE 0+#define UNCACHEABLE 1+ +int cachectl(void *, int, int);+int cacheflush(void *, int, int);+int _flush_cache(void *, int, int);++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/aarch64/sys/dir.h view
@@ -0,0 +1,2 @@+#include <dirent.h>+#define direct dirent
+ musl-include/aarch64/sys/epoll.h view
@@ -0,0 +1,69 @@+#ifndef	_SYS_EPOLL_H+#define	_SYS_EPOLL_H++#ifdef __cplusplus+extern "C" {+#endif++#include <stdint.h>+#include <sys/types.h>+#include <fcntl.h>++#define __NEED_sigset_t++#include <bits/alltypes.h>++#define EPOLL_CLOEXEC O_CLOEXEC+#define EPOLL_NONBLOCK O_NONBLOCK++enum EPOLL_EVENTS { __EPOLL_DUMMY };+#define EPOLLIN 0x001+#define EPOLLPRI 0x002+#define EPOLLOUT 0x004+#define EPOLLRDNORM 0x040+#define EPOLLNVAL 0x020+#define EPOLLRDBAND 0x080+#define EPOLLWRNORM 0x100+#define EPOLLWRBAND 0x200+#define EPOLLMSG 0x400+#define EPOLLERR 0x008+#define EPOLLHUP 0x010+#define EPOLLRDHUP 0x2000+#define EPOLLEXCLUSIVE (1U<<28)+#define EPOLLWAKEUP (1U<<29)+#define EPOLLONESHOT (1U<<30)+#define EPOLLET (1U<<31)++#define EPOLL_CTL_ADD 1+#define EPOLL_CTL_DEL 2+#define EPOLL_CTL_MOD 3++typedef union epoll_data {+	void *ptr;+	int fd;+	uint32_t u32;+	uint64_t u64;+} epoll_data_t;++struct epoll_event {+	uint32_t events;+	epoll_data_t data;+}+#ifdef __x86_64__+__attribute__ ((__packed__))+#endif+;+++int epoll_create(int);+int epoll_create1(int);+int epoll_ctl(int, int, int, struct epoll_event *);+int epoll_wait(int, struct epoll_event *, int, int);+int epoll_pwait(int, struct epoll_event *, int, int, const sigset_t *);+++#ifdef __cplusplus+}+#endif++#endif /* sys/epoll.h */
+ musl-include/aarch64/sys/errno.h view
@@ -0,0 +1,2 @@+#warning redirecting incorrect #include <sys/errno.h> to <errno.h>+#include <errno.h>
+ musl-include/aarch64/sys/eventfd.h view
@@ -0,0 +1,26 @@+#ifndef _SYS_EVENTFD_H+#define _SYS_EVENTFD_H++#ifdef __cplusplus+extern "C" {+#endif++#include <stdint.h>+#include <fcntl.h>++typedef uint64_t eventfd_t;++#define EFD_SEMAPHORE 1+#define EFD_CLOEXEC O_CLOEXEC+#define EFD_NONBLOCK O_NONBLOCK++int eventfd(unsigned int, int);+int eventfd_read(int, eventfd_t *);+int eventfd_write(int, eventfd_t);+++#ifdef __cplusplus+}+#endif++#endif /* sys/eventfd.h */
+ musl-include/aarch64/sys/fanotify.h view
@@ -0,0 +1,111 @@+#ifndef _FANOTIFY_H+#define _FANOTIFY_H++#ifdef __cplusplus+extern "C" {+#endif++#include <sys/statfs.h>++struct fanotify_event_metadata {+	unsigned event_len;+	unsigned char vers;+	unsigned char reserved;+	unsigned short metadata_len;+	unsigned long long mask+#ifdef __GNUC__+	__attribute__((__aligned__(8)))+#endif+	;+	int fd;+	int pid;+};++struct fanotify_event_info_header {+	unsigned char info_type;+	unsigned char pad;+	unsigned short len;+};++struct fanotify_event_info_fid {+	struct fanotify_event_info_header hdr;+	fsid_t fsid;+	unsigned char handle[];+};++struct fanotify_response {+	int fd;+	unsigned response;+};++#define FAN_ACCESS 0x01+#define FAN_MODIFY 0x02+#define FAN_ATTRIB 0x04+#define FAN_CLOSE_WRITE 0x08+#define FAN_CLOSE_NOWRITE 0x10+#define FAN_OPEN 0x20+#define FAN_MOVED_FROM 0x40+#define FAN_MOVED_TO 0x80+#define FAN_CREATE 0x100+#define FAN_DELETE 0x200+#define FAN_DELETE_SELF 0x400+#define FAN_MOVE_SELF 0x800+#define FAN_OPEN_EXEC 0x1000+#define FAN_Q_OVERFLOW 0x4000+#define FAN_OPEN_PERM 0x10000+#define FAN_ACCESS_PERM 0x20000+#define FAN_OPEN_EXEC_PERM 0x40000+#define FAN_DIR_MODIFY 0x00080000+#define FAN_EVENT_ON_CHILD 0x08000000+#define FAN_ONDIR 0x40000000+#define FAN_CLOSE (FAN_CLOSE_WRITE | FAN_CLOSE_NOWRITE)+#define FAN_MOVE (FAN_MOVED_FROM | FAN_MOVED_TO)+#define FAN_CLOEXEC 0x01+#define FAN_NONBLOCK 0x02+#define FAN_CLASS_NOTIF 0+#define FAN_CLASS_CONTENT 0x04+#define FAN_CLASS_PRE_CONTENT 0x08+#define FAN_ALL_CLASS_BITS (FAN_CLASS_NOTIF | FAN_CLASS_CONTENT | FAN_CLASS_PRE_CONTENT)+#define FAN_UNLIMITED_QUEUE 0x10+#define FAN_UNLIMITED_MARKS 0x20+#define FAN_ENABLE_AUDIT 0x40+#define FAN_REPORT_TID 0x100+#define FAN_REPORT_FID 0x200+#define FAN_REPORT_DIR_FID 0x00000400+#define FAN_REPORT_NAME 0x00000800+#define FAN_REPORT_DFID_NAME (FAN_REPORT_DIR_FID | FAN_REPORT_NAME)+#define FAN_ALL_INIT_FLAGS (FAN_CLOEXEC | FAN_NONBLOCK | FAN_ALL_CLASS_BITS | FAN_UNLIMITED_QUEUE | FAN_UNLIMITED_MARKS)+#define FAN_MARK_ADD 0x01+#define FAN_MARK_REMOVE 0x02+#define FAN_MARK_DONT_FOLLOW 0x04+#define FAN_MARK_ONLYDIR 0x08+#define FAN_MARK_IGNORED_MASK 0x20+#define FAN_MARK_IGNORED_SURV_MODIFY 0x40+#define FAN_MARK_FLUSH 0x80+#define FAN_MARK_INODE 0x00+#define FAN_MARK_MOUNT 0x10+#define FAN_MARK_FILESYSTEM 0x100+#define FAN_MARK_TYPE_MASK (FAN_MARK_INODE | FAN_MARK_MOUNT | FAN_MARK_FILESYSTEM)+#define FAN_ALL_MARK_FLAGS (FAN_MARK_ADD | FAN_MARK_REMOVE | FAN_MARK_DONT_FOLLOW | FAN_MARK_ONLYDIR | FAN_MARK_MOUNT | FAN_MARK_IGNORED_MASK | FAN_MARK_IGNORED_SURV_MODIFY | FAN_MARK_FLUSH)+#define FAN_ALL_EVENTS (FAN_ACCESS | FAN_MODIFY | FAN_CLOSE | FAN_OPEN)+#define FAN_ALL_PERM_EVENTS (FAN_OPEN_PERM | FAN_ACCESS_PERM)+#define FAN_ALL_OUTGOING_EVENTS (FAN_ALL_EVENTS | FAN_ALL_PERM_EVENTS | FAN_Q_OVERFLOW)+#define FANOTIFY_METADATA_VERSION 3+#define FAN_EVENT_INFO_TYPE_FID 1+#define FAN_EVENT_INFO_TYPE_DFID_NAME 2+#define FAN_EVENT_INFO_TYPE_DFID 3+#define FAN_ALLOW 0x01+#define FAN_DENY 0x02+#define FAN_AUDIT 0x10+#define FAN_NOFD -1+#define FAN_EVENT_METADATA_LEN (sizeof(struct fanotify_event_metadata))+#define FAN_EVENT_NEXT(meta, len) ((len) -= (meta)->event_len, (struct fanotify_event_metadata*)(((char *)(meta)) + (meta)->event_len))+#define FAN_EVENT_OK(meta, len) ((long)(len) >= (long)FAN_EVENT_METADATA_LEN && (long)(meta)->event_len >= (long)FAN_EVENT_METADATA_LEN && (long)(meta)->event_len <= (long)(len))++int fanotify_init(unsigned, unsigned);+int fanotify_mark(int, unsigned, unsigned long long, int, const char *);++#ifdef __cplusplus+}+#endif+#endif
+ musl-include/aarch64/sys/fcntl.h view
@@ -0,0 +1,2 @@+#warning redirecting incorrect #include <sys/fcntl.h> to <fcntl.h>+#include <fcntl.h>
+ musl-include/aarch64/sys/file.h view
@@ -0,0 +1,21 @@+#ifndef _SYS_FILE_H+#define _SYS_FILE_H+#ifdef __cplusplus+extern "C" {+#endif++#define LOCK_SH	1+#define LOCK_EX	2+#define LOCK_NB	4+#define LOCK_UN	8++#define L_SET 0+#define L_INCR 1+#define L_XTND 2++int flock(int, int);++#ifdef __cplusplus+}+#endif+#endif
+ musl-include/aarch64/sys/fsuid.h view
@@ -0,0 +1,20 @@+#ifndef _SYS_FSUID_H+#define _SYS_FSUID_H++#ifdef __cplusplus+extern "C" {+#endif++#define __NEED_uid_t+#define __NEED_gid_t++#include <bits/alltypes.h>++int setfsuid(uid_t);+int setfsgid(gid_t);++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/aarch64/sys/inotify.h view
@@ -0,0 +1,58 @@+#ifndef _SYS_INOTIFY_H+#define _SYS_INOTIFY_H++#ifdef __cplusplus+extern "C" {+#endif++#include <stdint.h>+#include <fcntl.h>++struct inotify_event {+	int wd;+	uint32_t mask, cookie, len;+	char name[];+};++#define IN_CLOEXEC O_CLOEXEC+#define IN_NONBLOCK O_NONBLOCK++#define IN_ACCESS        0x00000001+#define IN_MODIFY        0x00000002+#define IN_ATTRIB        0x00000004+#define IN_CLOSE_WRITE   0x00000008+#define IN_CLOSE_NOWRITE 0x00000010+#define IN_CLOSE         (IN_CLOSE_WRITE | IN_CLOSE_NOWRITE)+#define IN_OPEN          0x00000020+#define IN_MOVED_FROM    0x00000040+#define IN_MOVED_TO      0x00000080+#define IN_MOVE          (IN_MOVED_FROM | IN_MOVED_TO)+#define IN_CREATE        0x00000100+#define IN_DELETE        0x00000200+#define IN_DELETE_SELF   0x00000400+#define IN_MOVE_SELF     0x00000800+#define IN_ALL_EVENTS    0x00000fff++#define IN_UNMOUNT       0x00002000+#define IN_Q_OVERFLOW    0x00004000+#define IN_IGNORED       0x00008000++#define IN_ONLYDIR       0x01000000+#define IN_DONT_FOLLOW   0x02000000+#define IN_EXCL_UNLINK   0x04000000+#define IN_MASK_CREATE   0x10000000+#define IN_MASK_ADD      0x20000000++#define IN_ISDIR         0x40000000+#define IN_ONESHOT       0x80000000++int inotify_init(void);+int inotify_init1(int);+int inotify_add_watch(int, const char *, uint32_t);+int inotify_rm_watch(int, int);++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/aarch64/sys/io.h view
@@ -0,0 +1,17 @@+#ifndef	_SYS_IO_H+#define	_SYS_IO_H+#ifdef __cplusplus+extern "C" {+#endif++#include <features.h>++#include <bits/io.h>++int iopl(int);+int ioperm(unsigned long, unsigned long, int);++#ifdef __cplusplus+}+#endif+#endif
+ musl-include/aarch64/sys/ioctl.h view
@@ -0,0 +1,120 @@+#ifndef	_SYS_IOCTL_H+#define	_SYS_IOCTL_H+#ifdef __cplusplus+extern "C" {+#endif++#define __NEED_struct_winsize++#include <bits/alltypes.h>+#include <bits/ioctl.h>++#define N_TTY           0+#define N_SLIP          1+#define N_MOUSE         2+#define N_PPP           3+#define N_STRIP         4+#define N_AX25          5+#define N_X25           6+#define N_6PACK         7+#define N_MASC          8+#define N_R3964         9+#define N_PROFIBUS_FDL  10+#define N_IRDA          11+#define N_SMSBLOCK      12+#define N_HDLC          13+#define N_SYNC_PPP      14+#define N_HCI           15+#define N_GIGASET_M101  16+#define N_SLCAN         17+#define N_PPS           18+#define N_V253          19+#define N_CAIF          20+#define N_GSM0710       21+#define N_TI_WL         22+#define N_TRACESINK     23+#define N_TRACEROUTER   24+#define N_NCI           25+#define N_SPEAKUP       26+#define N_NULL          27++#define TIOCPKT_DATA       0+#define TIOCPKT_FLUSHREAD  1+#define TIOCPKT_FLUSHWRITE 2+#define TIOCPKT_STOP       4+#define TIOCPKT_START      8+#define TIOCPKT_NOSTOP    16+#define TIOCPKT_DOSTOP    32+#define TIOCPKT_IOCTL     64++#define TIOCSER_TEMT 1++#define SIOCADDRT          0x890B+#define SIOCDELRT          0x890C+#define SIOCRTMSG          0x890D++#define SIOCGIFNAME        0x8910+#define SIOCSIFLINK        0x8911+#define SIOCGIFCONF        0x8912+#define SIOCGIFFLAGS       0x8913+#define SIOCSIFFLAGS       0x8914+#define SIOCGIFADDR        0x8915+#define SIOCSIFADDR        0x8916+#define SIOCGIFDSTADDR     0x8917+#define SIOCSIFDSTADDR     0x8918+#define SIOCGIFBRDADDR     0x8919+#define SIOCSIFBRDADDR     0x891a+#define SIOCGIFNETMASK     0x891b+#define SIOCSIFNETMASK     0x891c+#define SIOCGIFMETRIC      0x891d+#define SIOCSIFMETRIC      0x891e+#define SIOCGIFMEM         0x891f+#define SIOCSIFMEM         0x8920+#define SIOCGIFMTU         0x8921+#define SIOCSIFMTU         0x8922+#define SIOCSIFNAME        0x8923+#define SIOCSIFHWADDR      0x8924+#define SIOCGIFENCAP       0x8925+#define SIOCSIFENCAP       0x8926+#define SIOCGIFHWADDR      0x8927+#define SIOCGIFSLAVE       0x8929+#define SIOCSIFSLAVE       0x8930+#define SIOCADDMULTI       0x8931+#define SIOCDELMULTI       0x8932+#define SIOCGIFINDEX       0x8933+#define SIOGIFINDEX        SIOCGIFINDEX+#define SIOCSIFPFLAGS      0x8934+#define SIOCGIFPFLAGS      0x8935+#define SIOCDIFADDR        0x8936+#define SIOCSIFHWBROADCAST 0x8937+#define SIOCGIFCOUNT       0x8938++#define SIOCGIFBR          0x8940+#define SIOCSIFBR          0x8941++#define SIOCGIFTXQLEN      0x8942+#define SIOCSIFTXQLEN      0x8943++#define SIOCDARP           0x8953+#define SIOCGARP           0x8954+#define SIOCSARP           0x8955++#define SIOCDRARP          0x8960+#define SIOCGRARP          0x8961+#define SIOCSRARP          0x8962++#define SIOCGIFMAP         0x8970+#define SIOCSIFMAP         0x8971++#define SIOCADDDLCI        0x8980+#define SIOCDELDLCI        0x8981++#define SIOCDEVPRIVATE     0x89F0+#define SIOCPROTOPRIVATE   0x89E0++int ioctl (int, int, ...);++#ifdef __cplusplus+}+#endif+#endif
+ musl-include/aarch64/sys/ipc.h view
@@ -0,0 +1,42 @@+#ifndef _SYS_IPC_H+#define _SYS_IPC_H+#ifdef __cplusplus+extern "C" {+#endif++#include <features.h>++#define __NEED_uid_t+#define __NEED_gid_t+#define __NEED_mode_t+#define __NEED_key_t++#include <bits/alltypes.h>++#define __ipc_perm_key __key+#define __ipc_perm_seq __seq++#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE)+#define __key key+#define __seq seq+#endif++#include <bits/ipc.h>+#include <bits/ipcstat.h>++#define IPC_CREAT  01000+#define IPC_EXCL   02000+#define IPC_NOWAIT 04000++#define IPC_RMID 0+#define IPC_SET  1+#define IPC_INFO 3++#define IPC_PRIVATE ((key_t) 0)++key_t ftok (const char *, int);++#ifdef __cplusplus+}+#endif+#endif
+ musl-include/aarch64/sys/kd.h view
@@ -0,0 +1,1 @@+#include <bits/kd.h>
+ musl-include/aarch64/sys/klog.h view
@@ -0,0 +1,14 @@+#ifndef	_SYS_KLOG_H+#define	_SYS_KLOG_H++#ifdef __cplusplus+extern "C" {+#endif++int klogctl (int, char *, int);++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/aarch64/sys/membarrier.h view
@@ -0,0 +1,21 @@+#ifndef _SYS_MEMBARRIER_H+#define _SYS_MEMBARRIER_H++#define MEMBARRIER_CMD_QUERY 0+#define MEMBARRIER_CMD_GLOBAL 1+#define MEMBARRIER_CMD_GLOBAL_EXPEDITED 2+#define MEMBARRIER_CMD_REGISTER_GLOBAL_EXPEDITED 4+#define MEMBARRIER_CMD_PRIVATE_EXPEDITED 8+#define MEMBARRIER_CMD_REGISTER_PRIVATE_EXPEDITED 16+#define MEMBARRIER_CMD_PRIVATE_EXPEDITED_SYNC_CORE 32+#define MEMBARRIER_CMD_REGISTER_PRIVATE_EXPEDITED_SYNC_CORE 64+#define MEMBARRIER_CMD_PRIVATE_EXPEDITED_RSEQ 128+#define MEMBARRIER_CMD_REGISTER_PRIVATE_EXPEDITED_RSEQ 256++#define MEMBARRIER_CMD_SHARED MEMBARRIER_CMD_GLOBAL++#define MEMBARRIER_CMD_FLAG_CPU 1++int membarrier(int, int);++#endif
+ musl-include/aarch64/sys/mman.h view
@@ -0,0 +1,152 @@+#ifndef	_SYS_MMAN_H+#define	_SYS_MMAN_H+#ifdef __cplusplus+extern "C" {+#endif++#include <features.h>++#define __NEED_mode_t+#define __NEED_size_t+#define __NEED_off_t++#if defined(_GNU_SOURCE)+#define __NEED_ssize_t+#endif++#include <bits/alltypes.h>++#define MAP_FAILED ((void *) -1)++#define MAP_SHARED     0x01+#define MAP_PRIVATE    0x02+#define MAP_SHARED_VALIDATE 0x03+#define MAP_TYPE       0x0f+#define MAP_FIXED      0x10+#define MAP_ANON       0x20+#define MAP_ANONYMOUS  MAP_ANON+#define MAP_NORESERVE  0x4000+#define MAP_GROWSDOWN  0x0100+#define MAP_DENYWRITE  0x0800+#define MAP_EXECUTABLE 0x1000+#define MAP_LOCKED     0x2000+#define MAP_POPULATE   0x8000+#define MAP_NONBLOCK   0x10000+#define MAP_STACK      0x20000+#define MAP_HUGETLB    0x40000+#define MAP_SYNC       0x80000+#define MAP_FIXED_NOREPLACE 0x100000+#define MAP_FILE       0++#define MAP_HUGE_SHIFT 26+#define MAP_HUGE_MASK  0x3f+#define MAP_HUGE_16KB  (14 << 26)+#define MAP_HUGE_64KB  (16 << 26)+#define MAP_HUGE_512KB (19 << 26)+#define MAP_HUGE_1MB   (20 << 26)+#define MAP_HUGE_2MB   (21 << 26)+#define MAP_HUGE_8MB   (23 << 26)+#define MAP_HUGE_16MB  (24 << 26)+#define MAP_HUGE_32MB  (25 << 26)+#define MAP_HUGE_256MB (28 << 26)+#define MAP_HUGE_512MB (29 << 26)+#define MAP_HUGE_1GB   (30 << 26)+#define MAP_HUGE_2GB   (31 << 26)+#define MAP_HUGE_16GB  (34U << 26)++#define PROT_NONE      0+#define PROT_READ      1+#define PROT_WRITE     2+#define PROT_EXEC      4+#define PROT_GROWSDOWN 0x01000000+#define PROT_GROWSUP   0x02000000++#define MS_ASYNC       1+#define MS_INVALIDATE  2+#define MS_SYNC        4++#define MCL_CURRENT    1+#define MCL_FUTURE     2+#define MCL_ONFAULT    4++#define POSIX_MADV_NORMAL     0+#define POSIX_MADV_RANDOM     1+#define POSIX_MADV_SEQUENTIAL 2+#define POSIX_MADV_WILLNEED   3+#define POSIX_MADV_DONTNEED   4++#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE)+#define MADV_NORMAL      0+#define MADV_RANDOM      1+#define MADV_SEQUENTIAL  2+#define MADV_WILLNEED    3+#define MADV_DONTNEED    4+#define MADV_FREE        8+#define MADV_REMOVE      9+#define MADV_DONTFORK    10+#define MADV_DOFORK      11+#define MADV_MERGEABLE   12+#define MADV_UNMERGEABLE 13+#define MADV_HUGEPAGE    14+#define MADV_NOHUGEPAGE  15+#define MADV_DONTDUMP    16+#define MADV_DODUMP      17+#define MADV_WIPEONFORK  18+#define MADV_KEEPONFORK  19+#define MADV_COLD        20+#define MADV_PAGEOUT     21+#define MADV_HWPOISON    100+#define MADV_SOFT_OFFLINE 101+#endif++#ifdef _GNU_SOURCE+#define MREMAP_MAYMOVE 1+#define MREMAP_FIXED 2+#define MREMAP_DONTUNMAP 4++#define MLOCK_ONFAULT 0x01++#define MFD_CLOEXEC 0x0001U+#define MFD_ALLOW_SEALING 0x0002U+#define MFD_HUGETLB 0x0004U+#endif++#include <bits/mman.h>++void *mmap (void *, size_t, int, int, int, off_t);+int munmap (void *, size_t);++int mprotect (void *, size_t, int);+int msync (void *, size_t, int);++int posix_madvise (void *, size_t, int);++int mlock (const void *, size_t);+int munlock (const void *, size_t);+int mlockall (int);+int munlockall (void);++#ifdef _GNU_SOURCE+void *mremap (void *, size_t, size_t, int, ...);+int remap_file_pages (void *, size_t, int, size_t, int);+int memfd_create (const char *, unsigned);+int mlock2 (const void *, size_t, unsigned);+#endif++#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE)+int madvise (void *, size_t, int);+int mincore (void *, size_t, unsigned char *);+#endif++int shm_open (const char *, int, mode_t);+int shm_unlink (const char *);++#if defined(_LARGEFILE64_SOURCE)+#define mmap64 mmap+#define off64_t off_t+#endif++#ifdef __cplusplus+}+#endif+#endif
+ musl-include/aarch64/sys/mount.h view
@@ -0,0 +1,75 @@+#ifndef _SYS_MOUNT_H+#define _SYS_MOUNT_H++#ifdef __cplusplus+extern "C" {+#endif++#include <sys/ioctl.h>++#define BLKROSET   _IO(0x12, 93)+#define BLKROGET   _IO(0x12, 94)+#define BLKRRPART  _IO(0x12, 95)+#define BLKGETSIZE _IO(0x12, 96)+#define BLKFLSBUF  _IO(0x12, 97)+#define BLKRASET   _IO(0x12, 98)+#define BLKRAGET   _IO(0x12, 99)+#define BLKFRASET  _IO(0x12,100)+#define BLKFRAGET  _IO(0x12,101)+#define BLKSECTSET _IO(0x12,102)+#define BLKSECTGET _IO(0x12,103)+#define BLKSSZGET  _IO(0x12,104)+#define BLKBSZGET  _IOR(0x12,112,size_t)+#define BLKBSZSET  _IOW(0x12,113,size_t)+#define BLKGETSIZE64 _IOR(0x12,114,size_t)++#define MS_RDONLY      1+#define MS_NOSUID      2+#define MS_NODEV       4+#define MS_NOEXEC      8+#define MS_SYNCHRONOUS 16+#define MS_REMOUNT     32+#define MS_MANDLOCK    64+#define MS_DIRSYNC     128+#define MS_NOSYMFOLLOW 256+#define MS_NOATIME     1024+#define MS_NODIRATIME  2048+#define MS_BIND        4096+#define MS_MOVE        8192+#define MS_REC         16384+#define MS_SILENT      32768+#define MS_POSIXACL    (1<<16)+#define MS_UNBINDABLE  (1<<17)+#define MS_PRIVATE     (1<<18)+#define MS_SLAVE       (1<<19)+#define MS_SHARED      (1<<20)+#define MS_RELATIME    (1<<21)+#define MS_KERNMOUNT   (1<<22)+#define MS_I_VERSION   (1<<23)+#define MS_STRICTATIME (1<<24)+#define MS_LAZYTIME    (1<<25)+#define MS_NOREMOTELOCK (1<<27)+#define MS_NOSEC       (1<<28)+#define MS_BORN        (1<<29)+#define MS_ACTIVE      (1<<30)+#define MS_NOUSER      (1U<<31)++#define MS_RMT_MASK (MS_RDONLY|MS_SYNCHRONOUS|MS_MANDLOCK|MS_I_VERSION|MS_LAZYTIME)++#define MS_MGC_VAL 0xc0ed0000+#define MS_MGC_MSK 0xffff0000++#define MNT_FORCE       1+#define MNT_DETACH      2+#define MNT_EXPIRE      4+#define UMOUNT_NOFOLLOW 8++int mount(const char *, const char *, const char *, unsigned long, const void *);+int umount(const char *);+int umount2(const char *, int);++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/aarch64/sys/msg.h view
@@ -0,0 +1,53 @@+#ifndef _SYS_MSG_H+#define _SYS_MSG_H++#ifdef __cplusplus+extern "C" {+#endif++#include <sys/ipc.h>++#define __NEED_pid_t+#define __NEED_key_t+#define __NEED_time_t+#define __NEED_size_t+#define __NEED_ssize_t++#include <bits/alltypes.h>++typedef unsigned long msgqnum_t;+typedef unsigned long msglen_t;++#include <bits/msg.h>++#define __msg_cbytes msg_cbytes++#define MSG_NOERROR 010000+#define MSG_EXCEPT  020000++#define MSG_STAT (11 | (IPC_STAT & 0x100))+#define MSG_INFO 12+#define MSG_STAT_ANY (13 | (IPC_STAT & 0x100))++struct msginfo {+	int msgpool, msgmap, msgmax, msgmnb, msgmni, msgssz, msgtql;+	unsigned short msgseg;+};++int msgctl (int, int, struct msqid_ds *);+int msgget (key_t, int);+ssize_t msgrcv (int, void *, size_t, long, int);+int msgsnd (int, const void *, size_t, int);++#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE)+struct msgbuf {+	long mtype;+	char mtext[1];+};+#endif++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/aarch64/sys/mtio.h view
@@ -0,0 +1,188 @@+#ifndef _SYS_MTIO_H+#define _SYS_MTIO_H++#include <sys/types.h>+#include <sys/ioctl.h>++struct mtop {+	short mt_op;+	int mt_count;+};++#define _IOT_mtop _IOT (_IOTS (short), 1, _IOTS (int), 1, 0, 0)+#define _IOT_mtget _IOT (_IOTS (long), 7, 0, 0, 0, 0)+#define _IOT_mtpos _IOT_SIMPLE (long)+#define _IOT_mtconfiginfo _IOT (_IOTS (long), 2, _IOTS (short), 3, _IOTS (long), 1)+++#define MTRESET 0+#define MTFSF	1+#define MTBSF	2+#define MTFSR	3+#define MTBSR	4+#define MTWEOF	5+#define MTREW	6+#define MTOFFL	7+#define MTNOP	8+#define MTRETEN 9+#define MTBSFM	10+#define MTFSFM  11+#define MTEOM	12+#define MTERASE 13+#define MTRAS1  14+#define MTRAS2	15+#define MTRAS3  16+#define MTSETBLK 20+#define MTSETDENSITY 21+#define MTSEEK	22+#define MTTELL	23+#define MTSETDRVBUFFER 24+#define MTFSS	25+#define MTBSS	26+#define MTWSM	27+#define MTLOCK  28+#define MTUNLOCK 29+#define MTLOAD  30+#define MTUNLOAD 31+#define MTCOMPRESSION 32+#define MTSETPART 33+#define MTMKPART  34++struct mtget {+	long mt_type;+	long mt_resid;+	long mt_dsreg;+	long mt_gstat;+	long mt_erreg;+	int mt_fileno;+	int mt_blkno;+};++#define MT_ISUNKNOWN		0x01+#define MT_ISQIC02		0x02+#define MT_ISWT5150		0x03+#define MT_ISARCHIVE_5945L2	0x04+#define MT_ISCMSJ500		0x05+#define MT_ISTDC3610		0x06+#define MT_ISARCHIVE_VP60I	0x07+#define MT_ISARCHIVE_2150L	0x08+#define MT_ISARCHIVE_2060L	0x09+#define MT_ISARCHIVESC499	0x0A+#define MT_ISQIC02_ALL_FEATURES	0x0F+#define MT_ISWT5099EEN24	0x11+#define MT_ISTEAC_MT2ST		0x12+#define MT_ISEVEREX_FT40A	0x32+#define MT_ISDDS1		0x51+#define MT_ISDDS2		0x52+#define MT_ISSCSI1		0x71+#define MT_ISSCSI2		0x72+#define MT_ISFTAPE_UNKNOWN	0x800000+#define MT_ISFTAPE_FLAG		0x800000++struct mt_tape_info {+	long t_type;+	char *t_name;+};++#define MT_TAPE_INFO \+{									      \+	{MT_ISUNKNOWN,		"Unknown type of tape device"},		      \+	{MT_ISQIC02,		"Generic QIC-02 tape streamer"},	      \+	{MT_ISWT5150,		"Wangtek 5150, QIC-150"},		      \+	{MT_ISARCHIVE_5945L2,	"Archive 5945L-2"},			      \+	{MT_ISCMSJ500,		"CMS Jumbo 500"},			      \+	{MT_ISTDC3610,		"Tandberg TDC 3610, QIC-24"},		      \+	{MT_ISARCHIVE_VP60I,	"Archive VP60i, QIC-02"},		      \+	{MT_ISARCHIVE_2150L,	"Archive Viper 2150L"},			      \+	{MT_ISARCHIVE_2060L,	"Archive Viper 2060L"},			      \+	{MT_ISARCHIVESC499,	"Archive SC-499 QIC-36 controller"},	      \+	{MT_ISQIC02_ALL_FEATURES, "Generic QIC-02 tape, all features"},	      \+	{MT_ISWT5099EEN24,	"Wangtek 5099-een24, 60MB"},		      \+	{MT_ISTEAC_MT2ST,	"Teac MT-2ST 155mb data cassette drive"},     \+	{MT_ISEVEREX_FT40A,	"Everex FT40A, QIC-40"},		      \+	{MT_ISSCSI1,		"Generic SCSI-1 tape"},			      \+	{MT_ISSCSI2,		"Generic SCSI-2 tape"},			      \+	{0, 0}								      \+}++struct mtpos {+	long mt_blkno;+};++struct mtconfiginfo  {+	long mt_type;+	long ifc_type;+	unsigned short irqnr;+	unsigned short dmanr;+	unsigned short port;+	unsigned long debug;+	unsigned have_dens:1;+	unsigned have_bsf:1;+	unsigned have_fsr:1;+	unsigned have_bsr:1;+	unsigned have_eod:1;+	unsigned have_seek:1;+	unsigned have_tell:1;+	unsigned have_ras1:1;+	unsigned have_ras2:1;+	unsigned have_ras3:1;+	unsigned have_qfa:1;+	unsigned pad1:5;+	char reserved[10];+};++#define	MTIOCTOP _IOW('m', 1, struct mtop)+#define	MTIOCGET _IOR('m', 2, struct mtget)+#define	MTIOCPOS _IOR('m', 3, struct mtpos)++#define	MTIOCGETCONFIG	_IOR('m', 4, struct mtconfiginfo)+#define	MTIOCSETCONFIG	_IOW('m', 5, struct mtconfiginfo)++#define GMT_EOF(x)              ((x) & 0x80000000)+#define GMT_BOT(x)              ((x) & 0x40000000)+#define GMT_EOT(x)              ((x) & 0x20000000)+#define GMT_SM(x)               ((x) & 0x10000000)+#define GMT_EOD(x)              ((x) & 0x08000000)+#define GMT_WR_PROT(x)          ((x) & 0x04000000)+#define GMT_ONLINE(x)           ((x) & 0x01000000)+#define GMT_D_6250(x)           ((x) & 0x00800000)+#define GMT_D_1600(x)           ((x) & 0x00400000)+#define GMT_D_800(x)            ((x) & 0x00200000)+#define GMT_DR_OPEN(x)          ((x) & 0x00040000)+#define GMT_IM_REP_EN(x)        ((x) & 0x00010000)++#define MT_ST_BLKSIZE_SHIFT	0+#define MT_ST_BLKSIZE_MASK	0xffffff+#define MT_ST_DENSITY_SHIFT	24+#define MT_ST_DENSITY_MASK	0xff000000+#define MT_ST_SOFTERR_SHIFT	0+#define MT_ST_SOFTERR_MASK	0xffff+#define MT_ST_OPTIONS		0xf0000000+#define MT_ST_BOOLEANS		0x10000000+#define MT_ST_SETBOOLEANS	0x30000000+#define MT_ST_CLEARBOOLEANS	0x40000000+#define MT_ST_WRITE_THRESHOLD	0x20000000+#define MT_ST_DEF_BLKSIZE	0x50000000+#define MT_ST_DEF_OPTIONS	0x60000000+#define MT_ST_BUFFER_WRITES	0x1+#define MT_ST_ASYNC_WRITES	0x2+#define MT_ST_READ_AHEAD	0x4+#define MT_ST_DEBUGGING		0x8+#define MT_ST_TWO_FM		0x10+#define MT_ST_FAST_MTEOM	0x20+#define MT_ST_AUTO_LOCK		0x40+#define MT_ST_DEF_WRITES	0x80+#define MT_ST_CAN_BSR		0x100+#define MT_ST_NO_BLKLIMS	0x200+#define MT_ST_CAN_PARTITIONS    0x400+#define MT_ST_SCSI2LOGICAL      0x800+#define MT_ST_CLEAR_DEFAULT	0xfffff+#define MT_ST_DEF_DENSITY	(MT_ST_DEF_OPTIONS | 0x100000)+#define MT_ST_DEF_COMPRESSION	(MT_ST_DEF_OPTIONS | 0x200000)+#define MT_ST_DEF_DRVBUFFER	(MT_ST_DEF_OPTIONS | 0x300000)+#define MT_ST_HPLOADER_OFFSET 10000+#ifndef DEFTAPE+# define DEFTAPE	"/dev/tape"+#endif++#endif
+ musl-include/aarch64/sys/param.h view
@@ -0,0 +1,35 @@+#ifndef _SYS_PARAM_H+#define _SYS_PARAM_H++#define MAXSYMLINKS 20+#define MAXHOSTNAMELEN 64+#define MAXNAMLEN 255+#define MAXPATHLEN 4096+#define NBBY 8+#define NGROUPS 32+#define CANBSIZ 255+#define NOFILE 256+#define NCARGS 131072+#define DEV_BSIZE 512+#define NOGROUP (-1)++#undef MIN+#undef MAX+#define MIN(a,b) (((a)<(b))?(a):(b))+#define MAX(a,b) (((a)>(b))?(a):(b))++#define __bitop(x,i,o) ((x)[(i)/8] o (1<<(i)%8))+#define setbit(x,i) __bitop(x,i,|=)+#define clrbit(x,i) __bitop(x,i,&=~)+#define isset(x,i) __bitop(x,i,&)+#define isclr(x,i) !isset(x,i)++#define howmany(n,d) (((n)+((d)-1))/(d))+#define roundup(n,d) (howmany(n,d)*(d))+#define powerof2(n) !(((n)-1) & (n))++#include <sys/resource.h>+#include <endian.h>+#include <limits.h>++#endif
+ musl-include/aarch64/sys/personality.h view
@@ -0,0 +1,49 @@+#ifndef _PERSONALITY_H+#define _PERSONALITY_H++#ifdef __cplusplus+extern "C" {+#endif++#define UNAME26            0x0020000+#define ADDR_NO_RANDOMIZE  0x0040000+#define FDPIC_FUNCPTRS     0x0080000+#define MMAP_PAGE_ZERO     0x0100000+#define ADDR_COMPAT_LAYOUT 0x0200000+#define READ_IMPLIES_EXEC  0x0400000+#define ADDR_LIMIT_32BIT   0x0800000+#define SHORT_INODE        0x1000000+#define WHOLE_SECONDS      0x2000000+#define STICKY_TIMEOUTS    0x4000000+#define ADDR_LIMIT_3GB     0x8000000++#define PER_LINUX 0+#define PER_LINUX_32BIT ADDR_LIMIT_32BIT+#define PER_LINUX_FDPIC FDPIC_FUNCPTRS+#define PER_SVR4 (1 | STICKY_TIMEOUTS | MMAP_PAGE_ZERO)+#define PER_SVR3 (2 | STICKY_TIMEOUTS | SHORT_INODE)+#define PER_SCOSVR3 (3 | STICKY_TIMEOUTS | WHOLE_SECONDS | SHORT_INODE)+#define PER_OSR5 (3 | STICKY_TIMEOUTS | WHOLE_SECONDS)+#define PER_WYSEV386 (4 | STICKY_TIMEOUTS | SHORT_INODE)+#define PER_ISCR4 (5 | STICKY_TIMEOUTS)+#define PER_BSD 6+#define PER_SUNOS (6 | STICKY_TIMEOUTS)+#define PER_XENIX (7 | STICKY_TIMEOUTS | SHORT_INODE)+#define PER_LINUX32 8+#define PER_LINUX32_3GB (8 | ADDR_LIMIT_3GB)+#define PER_IRIX32 (9 | STICKY_TIMEOUTS)+#define PER_IRIXN32 (0xa | STICKY_TIMEOUTS)+#define PER_IRIX64 (0x0b | STICKY_TIMEOUTS)+#define PER_RISCOS 0xc+#define PER_SOLARIS (0xd | STICKY_TIMEOUTS)+#define PER_UW7 (0xe | STICKY_TIMEOUTS | MMAP_PAGE_ZERO)+#define PER_OSF4 0xf+#define PER_HPUX 0x10+#define PER_MASK 0xff++int personality(unsigned long);++#ifdef __cplusplus+}+#endif+#endif
+ musl-include/aarch64/sys/poll.h view
@@ -0,0 +1,2 @@+#warning redirecting incorrect #include <sys/poll.h> to <poll.h>+#include <poll.h>
+ musl-include/aarch64/sys/prctl.h view
@@ -0,0 +1,186 @@+#ifndef _SYS_PRCTL_H+#define _SYS_PRCTL_H++#ifdef __cplusplus+extern "C" {+#endif++#include <stdint.h>++#define PR_SET_PDEATHSIG  1+#define PR_GET_PDEATHSIG  2+#define PR_GET_DUMPABLE   3+#define PR_SET_DUMPABLE   4+#define PR_GET_UNALIGN   5+#define PR_SET_UNALIGN   6+#define PR_UNALIGN_NOPRINT 1+#define PR_UNALIGN_SIGBUS 2+#define PR_GET_KEEPCAPS   7+#define PR_SET_KEEPCAPS   8+#define PR_GET_FPEMU  9+#define PR_SET_FPEMU 10+#define PR_FPEMU_NOPRINT 1+#define PR_FPEMU_SIGFPE 2+#define PR_GET_FPEXC 11+#define PR_SET_FPEXC 12+#define PR_FP_EXC_SW_ENABLE 0x80+#define PR_FP_EXC_DIV  0x010000+#define PR_FP_EXC_OVF  0x020000+#define PR_FP_EXC_UND  0x040000+#define PR_FP_EXC_RES  0x080000+#define PR_FP_EXC_INV  0x100000+#define PR_FP_EXC_DISABLED 0+#define PR_FP_EXC_NONRECOV 1+#define PR_FP_EXC_ASYNC 2+#define PR_FP_EXC_PRECISE 3+#define PR_GET_TIMING   13+#define PR_SET_TIMING   14+#define PR_TIMING_STATISTICAL  0+#define PR_TIMING_TIMESTAMP    1+#define PR_SET_NAME    15+#define PR_GET_NAME    16+#define PR_GET_ENDIAN 19+#define PR_SET_ENDIAN 20+#define PR_ENDIAN_BIG 0+#define PR_ENDIAN_LITTLE 1+#define PR_ENDIAN_PPC_LITTLE 2+#define PR_GET_SECCOMP 21+#define PR_SET_SECCOMP 22+#define PR_CAPBSET_READ 23+#define PR_CAPBSET_DROP 24+#define PR_GET_TSC 25+#define PR_SET_TSC 26+#define PR_TSC_ENABLE 1+#define PR_TSC_SIGSEGV 2+#define PR_GET_SECUREBITS 27+#define PR_SET_SECUREBITS 28+#define PR_SET_TIMERSLACK 29+#define PR_GET_TIMERSLACK 30++#define PR_TASK_PERF_EVENTS_DISABLE             31+#define PR_TASK_PERF_EVENTS_ENABLE              32++#define PR_MCE_KILL     33+#define PR_MCE_KILL_CLEAR   0+#define PR_MCE_KILL_SET     1+#define PR_MCE_KILL_LATE    0+#define PR_MCE_KILL_EARLY   1+#define PR_MCE_KILL_DEFAULT 2+#define PR_MCE_KILL_GET 34++#define PR_SET_MM               35+#define PR_SET_MM_START_CODE           1+#define PR_SET_MM_END_CODE             2+#define PR_SET_MM_START_DATA           3+#define PR_SET_MM_END_DATA             4+#define PR_SET_MM_START_STACK          5+#define PR_SET_MM_START_BRK            6+#define PR_SET_MM_BRK                  7+#define PR_SET_MM_ARG_START            8+#define PR_SET_MM_ARG_END              9+#define PR_SET_MM_ENV_START            10+#define PR_SET_MM_ENV_END              11+#define PR_SET_MM_AUXV                 12+#define PR_SET_MM_EXE_FILE             13+#define PR_SET_MM_MAP                  14+#define PR_SET_MM_MAP_SIZE             15++struct prctl_mm_map {+	uint64_t start_code;+	uint64_t end_code;+	uint64_t start_data;+	uint64_t end_data;+	uint64_t start_brk;+	uint64_t brk;+	uint64_t start_stack;+	uint64_t arg_start;+	uint64_t arg_end;+	uint64_t env_start;+	uint64_t env_end;+	uint64_t *auxv;+	uint32_t auxv_size;+	uint32_t exe_fd;+};++#define PR_SET_PTRACER 0x59616d61+#define PR_SET_PTRACER_ANY (-1UL)++#define PR_SET_CHILD_SUBREAPER  36+#define PR_GET_CHILD_SUBREAPER  37++#define PR_SET_NO_NEW_PRIVS     38+#define PR_GET_NO_NEW_PRIVS     39++#define PR_GET_TID_ADDRESS      40++#define PR_SET_THP_DISABLE      41+#define PR_GET_THP_DISABLE      42++#define PR_MPX_ENABLE_MANAGEMENT  43+#define PR_MPX_DISABLE_MANAGEMENT 44++#define PR_SET_FP_MODE          45+#define PR_GET_FP_MODE          46+#define PR_FP_MODE_FR (1 << 0)+#define PR_FP_MODE_FRE (1 << 1)++#define PR_CAP_AMBIENT          47+#define PR_CAP_AMBIENT_IS_SET   1+#define PR_CAP_AMBIENT_RAISE    2+#define PR_CAP_AMBIENT_LOWER    3+#define PR_CAP_AMBIENT_CLEAR_ALL 4++#define PR_SVE_SET_VL           50+#define PR_SVE_SET_VL_ONEXEC (1 << 18)+#define PR_SVE_GET_VL           51+#define PR_SVE_VL_LEN_MASK 0xffff+#define PR_SVE_VL_INHERIT (1 << 17)++#define PR_GET_SPECULATION_CTRL 52+#define PR_SET_SPECULATION_CTRL 53+#define PR_SPEC_STORE_BYPASS 0+#define PR_SPEC_INDIRECT_BRANCH 1+#define PR_SPEC_NOT_AFFECTED 0+#define PR_SPEC_PRCTL (1UL << 0)+#define PR_SPEC_ENABLE (1UL << 1)+#define PR_SPEC_DISABLE (1UL << 2)+#define PR_SPEC_FORCE_DISABLE (1UL << 3)+#define PR_SPEC_DISABLE_NOEXEC (1UL << 4)++#define PR_PAC_RESET_KEYS       54+#define PR_PAC_APIAKEY (1UL << 0)+#define PR_PAC_APIBKEY (1UL << 1)+#define PR_PAC_APDAKEY (1UL << 2)+#define PR_PAC_APDBKEY (1UL << 3)+#define PR_PAC_APGAKEY (1UL << 4)++#define PR_SET_TAGGED_ADDR_CTRL 55+#define PR_GET_TAGGED_ADDR_CTRL 56+#define PR_TAGGED_ADDR_ENABLE (1UL << 0)+#define PR_MTE_TCF_SHIFT 1+#define PR_MTE_TCF_NONE  (0UL << 1)+#define PR_MTE_TCF_SYNC  (1UL << 1)+#define PR_MTE_TCF_ASYNC (2UL << 1)+#define PR_MTE_TCF_MASK  (3UL << 1)+#define PR_MTE_TAG_SHIFT 3+#define PR_MTE_TAG_MASK  (0xffffUL << 3)++#define PR_SET_IO_FLUSHER 57+#define PR_GET_IO_FLUSHER 58++#define PR_SET_SYSCALL_USER_DISPATCH 59+#define PR_SYS_DISPATCH_OFF 0+#define PR_SYS_DISPATCH_ON 1+#define SYSCALL_DISPATCH_FILTER_ALLOW 0+#define SYSCALL_DISPATCH_FILTER_BLOCK 1++#define PR_PAC_SET_ENABLED_KEYS 60+#define PR_PAC_GET_ENABLED_KEYS 61++int prctl (int, ...);++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/aarch64/sys/procfs.h view
@@ -0,0 +1,63 @@+#ifndef _SYS_PROCFS_H+#define _SYS_PROCFS_H+#ifdef __cplusplus+extern "C" {+#endif++#include <sys/time.h>+#include <sys/types.h>+#include <sys/user.h>++struct elf_siginfo {+	int si_signo;+	int si_code;+	int si_errno;+};++struct elf_prstatus {+	struct elf_siginfo pr_info;+	short int pr_cursig;+	unsigned long int pr_sigpend;+	unsigned long int pr_sighold;+	pid_t pr_pid;+	pid_t pr_ppid;+	pid_t pr_pgrp;+	pid_t pr_sid;+	struct {+		long tv_sec, tv_usec;+	} pr_utime, pr_stime, pr_cutime, pr_cstime;+	elf_gregset_t pr_reg;+	int pr_fpvalid;+};++#define ELF_PRARGSZ 80++struct elf_prpsinfo {+	char pr_state;+	char pr_sname;+	char pr_zomb;+	char pr_nice;+	unsigned long int pr_flag;+#if UINTPTR_MAX == 0xffffffff+	unsigned short int pr_uid;+	unsigned short int pr_gid;+#else+	unsigned int pr_uid;+	unsigned int pr_gid;+#endif+	int pr_pid, pr_ppid, pr_pgrp, pr_sid;+	char pr_fname[16];+	char pr_psargs[ELF_PRARGSZ];+};++typedef void *psaddr_t;+typedef elf_gregset_t prgregset_t;+typedef elf_fpregset_t prfpregset_t;+typedef pid_t lwpid_t;+typedef struct elf_prstatus prstatus_t;+typedef struct elf_prpsinfo prpsinfo_t;++#ifdef __cplusplus+}+#endif+#endif
+ musl-include/aarch64/sys/ptrace.h view
@@ -0,0 +1,147 @@+#ifndef _SYS_PTRACE_H+#define _SYS_PTRACE_H+#ifdef __cplusplus+extern "C" {+#endif++#include <stdint.h>++#define PTRACE_TRACEME 0+#define PT_TRACE_ME PTRACE_TRACEME++#define PTRACE_PEEKTEXT 1+#define PTRACE_PEEKDATA 2+#define PTRACE_PEEKUSER 3+#define PTRACE_POKETEXT 4+#define PTRACE_POKEDATA 5+#define PTRACE_POKEUSER 6+#define PTRACE_CONT 7+#define PTRACE_KILL 8+#define PTRACE_SINGLESTEP 9+#define PTRACE_GETREGS 12+#define PTRACE_SETREGS 13+#define PTRACE_GETFPREGS 14+#define PTRACE_SETFPREGS 15+#define PTRACE_ATTACH 16+#define PTRACE_DETACH 17+#define PTRACE_GETFPXREGS 18+#define PTRACE_SETFPXREGS 19+#define PTRACE_SYSCALL 24+#define PTRACE_SETOPTIONS 0x4200+#define PTRACE_GETEVENTMSG 0x4201+#define PTRACE_GETSIGINFO 0x4202+#define PTRACE_SETSIGINFO 0x4203+#define PTRACE_GETREGSET 0x4204+#define PTRACE_SETREGSET 0x4205+#define PTRACE_SEIZE 0x4206+#define PTRACE_INTERRUPT 0x4207+#define PTRACE_LISTEN 0x4208+#define PTRACE_PEEKSIGINFO 0x4209+#define PTRACE_GETSIGMASK 0x420a+#define PTRACE_SETSIGMASK 0x420b+#define PTRACE_SECCOMP_GET_FILTER 0x420c+#define PTRACE_SECCOMP_GET_METADATA 0x420d+#define PTRACE_GET_SYSCALL_INFO 0x420e+#define PTRACE_GET_RSEQ_CONFIGURATION	0x420f++#define PT_READ_I PTRACE_PEEKTEXT+#define PT_READ_D PTRACE_PEEKDATA+#define PT_READ_U PTRACE_PEEKUSER+#define PT_WRITE_I PTRACE_POKETEXT+#define PT_WRITE_D PTRACE_POKEDATA+#define PT_WRITE_U PTRACE_POKEUSER+#define PT_CONTINUE PTRACE_CONT+#define PT_KILL PTRACE_KILL+#define PT_STEP PTRACE_SINGLESTEP+#define PT_GETREGS PTRACE_GETREGS+#define PT_SETREGS PTRACE_SETREGS+#define PT_GETFPREGS PTRACE_GETFPREGS+#define PT_SETFPREGS PTRACE_SETFPREGS+#define PT_ATTACH PTRACE_ATTACH+#define PT_DETACH PTRACE_DETACH+#define PT_GETFPXREGS PTRACE_GETFPXREGS+#define PT_SETFPXREGS PTRACE_SETFPXREGS+#define PT_SYSCALL PTRACE_SYSCALL+#define PT_SETOPTIONS PTRACE_SETOPTIONS+#define PT_GETEVENTMSG PTRACE_GETEVENTMSG+#define PT_GETSIGINFO PTRACE_GETSIGINFO+#define PT_SETSIGINFO PTRACE_SETSIGINFO++#define PTRACE_O_TRACESYSGOOD   0x00000001+#define PTRACE_O_TRACEFORK      0x00000002+#define PTRACE_O_TRACEVFORK     0x00000004+#define PTRACE_O_TRACECLONE     0x00000008+#define PTRACE_O_TRACEEXEC      0x00000010+#define PTRACE_O_TRACEVFORKDONE 0x00000020+#define PTRACE_O_TRACEEXIT      0x00000040+#define PTRACE_O_TRACESECCOMP   0x00000080+#define PTRACE_O_EXITKILL       0x00100000+#define PTRACE_O_SUSPEND_SECCOMP 0x00200000+#define PTRACE_O_MASK           0x003000ff++#define PTRACE_EVENT_FORK 1+#define PTRACE_EVENT_VFORK 2+#define PTRACE_EVENT_CLONE 3+#define PTRACE_EVENT_EXEC 4+#define PTRACE_EVENT_VFORK_DONE 5+#define PTRACE_EVENT_EXIT 6+#define PTRACE_EVENT_SECCOMP 7+#define PTRACE_EVENT_STOP 128++#define PTRACE_PEEKSIGINFO_SHARED 1++#define PTRACE_SYSCALL_INFO_NONE 0+#define PTRACE_SYSCALL_INFO_ENTRY 1+#define PTRACE_SYSCALL_INFO_EXIT 2+#define PTRACE_SYSCALL_INFO_SECCOMP 3++#include <bits/ptrace.h>++struct __ptrace_peeksiginfo_args {+	uint64_t off;+	uint32_t flags;+	int32_t nr;+};++struct __ptrace_seccomp_metadata {+	uint64_t filter_off;+	uint64_t flags;+};++struct __ptrace_syscall_info {+	uint8_t op;+	uint8_t __pad[3];+	uint32_t arch;+	uint64_t instruction_pointer;+	uint64_t stack_pointer;+	union {+		struct {+			uint64_t nr;+			uint64_t args[6];+		} entry;+		struct {+			int64_t rval;+			uint8_t is_error;+		} exit;+		struct {+			uint64_t nr;+			uint64_t args[6];+			uint32_t ret_data;+		} seccomp;+	};+};++struct __ptrace_rseq_configuration {+	uint64_t rseq_abi_pointer;+	uint32_t rseq_abi_size;+	uint32_t signature;+	uint32_t flags;+	uint32_t pad;+};++long ptrace(int, ...);++#ifdef __cplusplus+}+#endif+#endif
+ musl-include/aarch64/sys/quota.h view
@@ -0,0 +1,102 @@+#ifndef _SYS_QUOTA_H+#define _SYS_QUOTA_H++#ifdef __cplusplus+extern "C" {+#endif++#include <stdint.h>++#define _LINUX_QUOTA_VERSION 2++#define dbtob(num) ((num) << 10)+#define btodb(num) ((num) >> 10)+#define fs_to_dq_blocks(num, blksize) (((num) * (blksize)) / 1024)++#define MAX_IQ_TIME 604800+#define MAX_DQ_TIME 604800++#define MAXQUOTAS 2+#define USRQUOTA  0+#define GRPQUOTA  1++#define INITQFNAMES { "user", "group", "undefined" };++#define QUOTAFILENAME "quota"+#define QUOTAGROUP "staff"++#define NR_DQHASH 43+#define NR_DQUOTS 256++#define SUBCMDMASK       0x00ff+#define SUBCMDSHIFT      8+#define QCMD(cmd, type)  (((cmd) << SUBCMDSHIFT) | ((type) & SUBCMDMASK))++#define Q_SYNC     0x800001+#define Q_QUOTAON  0x800002+#define Q_QUOTAOFF 0x800003+#define Q_GETFMT   0x800004+#define Q_GETINFO  0x800005+#define Q_SETINFO  0x800006+#define Q_GETQUOTA 0x800007+#define Q_SETQUOTA 0x800008++#define	QFMT_VFS_OLD 1+#define	QFMT_VFS_V0 2+#define QFMT_OCFS2 3+#define	QFMT_VFS_V1 4++#define QIF_BLIMITS	1+#define QIF_SPACE	2+#define QIF_ILIMITS	4+#define QIF_INODES	8+#define QIF_BTIME	16+#define QIF_ITIME	32+#define QIF_LIMITS	(QIF_BLIMITS | QIF_ILIMITS)+#define QIF_USAGE	(QIF_SPACE | QIF_INODES)+#define QIF_TIMES	(QIF_BTIME | QIF_ITIME)+#define QIF_ALL		(QIF_LIMITS | QIF_USAGE | QIF_TIMES)++struct dqblk {+	uint64_t dqb_bhardlimit;+	uint64_t dqb_bsoftlimit;+	uint64_t dqb_curspace;+	uint64_t dqb_ihardlimit;+	uint64_t dqb_isoftlimit;+	uint64_t dqb_curinodes;+	uint64_t dqb_btime;+	uint64_t dqb_itime;+	uint32_t dqb_valid;+};++#define	dq_bhardlimit	dq_dqb.dqb_bhardlimit+#define	dq_bsoftlimit	dq_dqb.dqb_bsoftlimit+#define dq_curspace	dq_dqb.dqb_curspace+#define dq_valid	dq_dqb.dqb_valid+#define	dq_ihardlimit	dq_dqb.dqb_ihardlimit+#define	dq_isoftlimit	dq_dqb.dqb_isoftlimit+#define	dq_curinodes	dq_dqb.dqb_curinodes+#define	dq_btime	dq_dqb.dqb_btime+#define	dq_itime	dq_dqb.dqb_itime++#define dqoff(UID)      ((long long)(UID) * sizeof (struct dqblk))++#define IIF_BGRACE	1+#define IIF_IGRACE	2+#define IIF_FLAGS	4+#define IIF_ALL		(IIF_BGRACE | IIF_IGRACE | IIF_FLAGS)++struct dqinfo {+	uint64_t dqi_bgrace;+	uint64_t dqi_igrace;+	uint32_t dqi_flags;+	uint32_t dqi_valid;+};++int quotactl(int, const char *, int, char *);++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/aarch64/sys/random.h view
@@ -0,0 +1,20 @@+#ifndef _SYS_RANDOM_H+#define _SYS_RANDOM_H+#ifdef __cplusplus+extern "C" {+#endif++#define __NEED_size_t+#define __NEED_ssize_t+#include <bits/alltypes.h>++#define GRND_NONBLOCK	0x0001+#define GRND_RANDOM	0x0002+#define GRND_INSECURE	0x0004++ssize_t getrandom(void *, size_t, unsigned);++#ifdef __cplusplus+}+#endif+#endif
+ musl-include/aarch64/sys/reboot.h view
@@ -0,0 +1,20 @@+#ifndef _SYS_REBOOT_H+#define _SYS_REBOOT_H+#ifdef __cplusplus+extern "C" {+#endif++#define RB_AUTOBOOT     0x01234567+#define RB_HALT_SYSTEM  0xcdef0123+#define RB_ENABLE_CAD   0x89abcdef+#define RB_DISABLE_CAD  0+#define RB_POWER_OFF    0x4321fedc+#define RB_SW_SUSPEND   0xd000fce2+#define RB_KEXEC        0x45584543++int reboot(int);++#ifdef __cplusplus+}+#endif+#endif
+ musl-include/aarch64/sys/reg.h view
@@ -0,0 +1,9 @@+#ifndef _SYS_REG_H+#define _SYS_REG_H++#include <limits.h>+#include <unistd.h>++#include <bits/reg.h>++#endif
+ musl-include/aarch64/sys/resource.h view
@@ -0,0 +1,116 @@+#ifndef	_SYS_RESOURCE_H+#define	_SYS_RESOURCE_H++#ifdef __cplusplus+extern "C" {+#endif++#include <features.h>+#include <sys/time.h>++#define __NEED_id_t++#ifdef _GNU_SOURCE+#define __NEED_pid_t+#endif++#include <bits/alltypes.h>+#include <bits/resource.h>++typedef unsigned long long rlim_t;++struct rlimit {+	rlim_t rlim_cur;+	rlim_t rlim_max;+};++struct rusage {+	struct timeval ru_utime;+	struct timeval ru_stime;+	/* linux extentions, but useful */+	long	ru_maxrss;+	long	ru_ixrss;+	long	ru_idrss;+	long	ru_isrss;+	long	ru_minflt;+	long	ru_majflt;+	long	ru_nswap;+	long	ru_inblock;+	long	ru_oublock;+	long	ru_msgsnd;+	long	ru_msgrcv;+	long	ru_nsignals;+	long	ru_nvcsw;+	long	ru_nivcsw;+	/* room for more... */+	long    __reserved[16];+};++int getrlimit (int, struct rlimit *);+int setrlimit (int, const struct rlimit *);+int getrusage (int, struct rusage *);++int getpriority (int, id_t);+int setpriority (int, id_t, int);++#ifdef _GNU_SOURCE+int prlimit(pid_t, int, const struct rlimit *, struct rlimit *);+#define prlimit64 prlimit+#endif++#define PRIO_MIN (-20)+#define PRIO_MAX 20++#define PRIO_PROCESS 0+#define PRIO_PGRP    1+#define PRIO_USER    2++#define RUSAGE_SELF     0+#define RUSAGE_CHILDREN (-1)+#define RUSAGE_THREAD   1++#define RLIM_INFINITY (~0ULL)+#define RLIM_SAVED_CUR RLIM_INFINITY+#define RLIM_SAVED_MAX RLIM_INFINITY++#define RLIMIT_CPU     0+#define RLIMIT_FSIZE   1+#define RLIMIT_DATA    2+#define RLIMIT_STACK   3+#define RLIMIT_CORE    4+#ifndef RLIMIT_RSS+#define RLIMIT_RSS     5+#define RLIMIT_NPROC   6+#define RLIMIT_NOFILE  7+#define RLIMIT_MEMLOCK 8+#define RLIMIT_AS      9+#endif+#define RLIMIT_LOCKS   10+#define RLIMIT_SIGPENDING 11+#define RLIMIT_MSGQUEUE 12+#define RLIMIT_NICE    13+#define RLIMIT_RTPRIO  14+#define RLIMIT_RTTIME  15+#define RLIMIT_NLIMITS 16++#define RLIM_NLIMITS RLIMIT_NLIMITS++#if defined(_LARGEFILE64_SOURCE)+#define RLIM64_INFINITY RLIM_INFINITY+#define RLIM64_SAVED_CUR RLIM_SAVED_CUR+#define RLIM64_SAVED_MAX RLIM_SAVED_MAX+#define getrlimit64 getrlimit+#define setrlimit64 setrlimit+#define rlimit64 rlimit+#define rlim64_t rlim_t+#endif++#if _REDIR_TIME64+__REDIR(getrusage, __getrusage_time64);+#endif++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/aarch64/sys/select.h view
@@ -0,0 +1,46 @@+#ifndef _SYS_SELECT_H+#define _SYS_SELECT_H+#ifdef __cplusplus+extern "C" {+#endif++#include <features.h>++#define __NEED_size_t+#define __NEED_time_t+#define __NEED_suseconds_t+#define __NEED_struct_timeval+#define __NEED_struct_timespec+#define __NEED_sigset_t++#include <bits/alltypes.h>++#define FD_SETSIZE 1024++typedef unsigned long fd_mask;++typedef struct {+	unsigned long fds_bits[FD_SETSIZE / 8 / sizeof(long)];+} fd_set;++#define FD_ZERO(s) do { int __i; unsigned long *__b=(s)->fds_bits; for(__i=sizeof (fd_set)/sizeof (long); __i; __i--) *__b++=0; } while(0)+#define FD_SET(d, s)   ((s)->fds_bits[(d)/(8*sizeof(long))] |= (1UL<<((d)%(8*sizeof(long)))))+#define FD_CLR(d, s)   ((s)->fds_bits[(d)/(8*sizeof(long))] &= ~(1UL<<((d)%(8*sizeof(long)))))+#define FD_ISSET(d, s) !!((s)->fds_bits[(d)/(8*sizeof(long))] & (1UL<<((d)%(8*sizeof(long)))))++int select (int, fd_set *__restrict, fd_set *__restrict, fd_set *__restrict, struct timeval *__restrict);+int pselect (int, fd_set *__restrict, fd_set *__restrict, fd_set *__restrict, const struct timespec *__restrict, const sigset_t *__restrict);++#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE)+#define NFDBITS (8*(int)sizeof(long))+#endif++#if _REDIR_TIME64+__REDIR(select, __select_time64);+__REDIR(pselect, __pselect_time64);+#endif++#ifdef __cplusplus+}+#endif+#endif
+ musl-include/aarch64/sys/sem.h view
@@ -0,0 +1,72 @@+#ifndef _SYS_SEM_H+#define _SYS_SEM_H+#ifdef __cplusplus+extern "C" {+#endif++#include <features.h>++#define __NEED_size_t+#define __NEED_pid_t+#define __NEED_time_t+#ifdef _GNU_SOURCE+#define __NEED_struct_timespec+#endif+#include <bits/alltypes.h>++#include <sys/ipc.h>++#define SEM_UNDO	0x1000+#define GETPID		11+#define GETVAL		12+#define GETALL		13+#define GETNCNT		14+#define GETZCNT		15+#define SETVAL		16+#define SETALL		17++#include <bits/sem.h>++#define _SEM_SEMUN_UNDEFINED 1++#define SEM_STAT (18 | (IPC_STAT & 0x100))+#define SEM_INFO 19+#define SEM_STAT_ANY (20 | (IPC_STAT & 0x100))++struct  seminfo {+	int semmap;+	int semmni;+	int semmns;+	int semmnu;+	int semmsl;+	int semopm;+	int semume;+	int semusz;+	int semvmx;+	int semaem;+};++struct sembuf {+	unsigned short sem_num;+	short sem_op;+	short sem_flg;+};++int semctl(int, int, int, ...);+int semget(key_t, int, int);+int semop(int, struct sembuf *, size_t);++#ifdef _GNU_SOURCE+int semtimedop(int, struct sembuf *, size_t, const struct timespec *);+#endif++#if _REDIR_TIME64+#ifdef _GNU_SOURCE+__REDIR(semtimedop, __semtimedop_time64);+#endif+#endif++#ifdef __cplusplus+}+#endif+#endif
+ musl-include/aarch64/sys/sendfile.h view
@@ -0,0 +1,22 @@+#ifndef _SYS_SENDFILE_H+#define _SYS_SENDFILE_H++#ifdef __cplusplus+extern "C" {+#endif++#include <features.h>+#include <unistd.h>++ssize_t sendfile(int, int, off_t *, size_t);++#if defined(_LARGEFILE64_SOURCE)+#define sendfile64 sendfile+#define off64_t off_t+#endif++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/aarch64/sys/shm.h view
@@ -0,0 +1,70 @@+#ifndef _SYS_SHM_H+#define _SYS_SHM_H++#ifdef __cplusplus+extern "C" {+#endif++#include <features.h>++#define __NEED_time_t+#define __NEED_size_t+#define __NEED_pid_t++#include <bits/alltypes.h>++#include <sys/ipc.h>++#ifdef _GNU_SOURCE+#define __used_ids used_ids+#define __swap_attempts swap_attempts+#define __swap_successes swap_successes+#endif++#include <bits/shm.h>++#define SHM_R 0400+#define SHM_W 0200++#define SHM_RDONLY 010000+#define SHM_RND    020000+#define SHM_REMAP  040000+#define SHM_EXEC   0100000++#define SHM_LOCK 11+#define SHM_UNLOCK 12+#define SHM_STAT (13 | (IPC_STAT & 0x100))+#define SHM_INFO 14+#define SHM_STAT_ANY (15 | (IPC_STAT & 0x100))+#define SHM_DEST 01000+#define SHM_LOCKED 02000+#define SHM_HUGETLB 04000+#define SHM_NORESERVE 010000++#define SHM_HUGE_SHIFT 26+#define SHM_HUGE_MASK  0x3f+#define SHM_HUGE_64KB  (16 << 26)+#define SHM_HUGE_512KB (19 << 26)+#define SHM_HUGE_1MB   (20 << 26)+#define SHM_HUGE_2MB   (21 << 26)+#define SHM_HUGE_8MB   (23 << 26)+#define SHM_HUGE_16MB  (24 << 26)+#define SHM_HUGE_32MB  (25 << 26)+#define SHM_HUGE_256MB (28 << 26)+#define SHM_HUGE_512MB (29 << 26)+#define SHM_HUGE_1GB   (30 << 26)+#define SHM_HUGE_2GB   (31 << 26)+#define SHM_HUGE_16GB  (34U << 26)++typedef unsigned long shmatt_t;++void *shmat(int, const void *, int);+int shmctl(int, int, struct shmid_ds *);+int shmdt(const void *);+int shmget(key_t, size_t, int);++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/aarch64/sys/signal.h view
@@ -0,0 +1,2 @@+#warning redirecting incorrect #include <sys/signal.h> to <signal.h>+#include <signal.h>
+ musl-include/aarch64/sys/signalfd.h view
@@ -0,0 +1,49 @@+#ifndef _SYS_SIGNALFD_H+#define _SYS_SIGNALFD_H++#ifdef __cplusplus+extern "C" {+#endif++#include <stdint.h>+#include <fcntl.h>++#define __NEED_sigset_t++#include <bits/alltypes.h>++#define SFD_CLOEXEC O_CLOEXEC+#define SFD_NONBLOCK O_NONBLOCK++int signalfd(int, const sigset_t *, int);++struct signalfd_siginfo {+	uint32_t  ssi_signo;+	int32_t   ssi_errno;+	int32_t   ssi_code;+	uint32_t  ssi_pid;+	uint32_t  ssi_uid;+	int32_t   ssi_fd;+	uint32_t  ssi_tid;+	uint32_t  ssi_band;+	uint32_t  ssi_overrun;+	uint32_t  ssi_trapno;+	int32_t   ssi_status;+	int32_t   ssi_int;+	uint64_t  ssi_ptr;+	uint64_t  ssi_utime;+	uint64_t  ssi_stime;+	uint64_t  ssi_addr;+	uint16_t  ssi_addr_lsb;+	uint16_t  __pad2;+	int32_t   ssi_syscall;+	uint64_t  ssi_call_addr;+	uint32_t  ssi_arch;+	uint8_t   __pad[128-14*4-5*8-2*2];+};++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/aarch64/sys/socket.h view
@@ -0,0 +1,415 @@+#ifndef	_SYS_SOCKET_H+#define	_SYS_SOCKET_H+#ifdef __cplusplus+extern "C" {+#endif++#include <features.h>++#define __NEED_socklen_t+#define __NEED_sa_family_t+#define __NEED_size_t+#define __NEED_ssize_t+#define __NEED_uid_t+#define __NEED_pid_t+#define __NEED_gid_t+#define __NEED_struct_iovec++#include <bits/alltypes.h>++#include <bits/socket.h>++struct msghdr {+	void *msg_name;+	socklen_t msg_namelen;+	struct iovec *msg_iov;+#if __LONG_MAX > 0x7fffffff && __BYTE_ORDER == __BIG_ENDIAN+	int __pad1;+#endif+	int msg_iovlen;+#if __LONG_MAX > 0x7fffffff && __BYTE_ORDER == __LITTLE_ENDIAN+	int __pad1;+#endif+	void *msg_control;+#if __LONG_MAX > 0x7fffffff && __BYTE_ORDER == __BIG_ENDIAN+	int __pad2;+#endif+	socklen_t msg_controllen;+#if __LONG_MAX > 0x7fffffff && __BYTE_ORDER == __LITTLE_ENDIAN+	int __pad2;+#endif+	int msg_flags;+};++struct cmsghdr {+#if __LONG_MAX > 0x7fffffff && __BYTE_ORDER == __BIG_ENDIAN+	int __pad1;+#endif+	socklen_t cmsg_len;+#if __LONG_MAX > 0x7fffffff && __BYTE_ORDER == __LITTLE_ENDIAN+	int __pad1;+#endif+	int cmsg_level;+	int cmsg_type;+};++#ifdef _GNU_SOURCE+struct ucred {+	pid_t pid;+	uid_t uid;+	gid_t gid;+};++struct mmsghdr {+	struct msghdr msg_hdr;+	unsigned int  msg_len;+};++struct timespec;++int sendmmsg (int, struct mmsghdr *, unsigned int, unsigned int);+int recvmmsg (int, struct mmsghdr *, unsigned int, unsigned int, struct timespec *);+#endif++struct linger {+	int l_onoff;+	int l_linger;+};++#define SHUT_RD 0+#define SHUT_WR 1+#define SHUT_RDWR 2++#ifndef SOCK_STREAM+#define SOCK_STREAM    1+#define SOCK_DGRAM     2+#endif++#define SOCK_RAW       3+#define SOCK_RDM       4+#define SOCK_SEQPACKET 5+#define SOCK_DCCP      6+#define SOCK_PACKET    10++#ifndef SOCK_CLOEXEC+#define SOCK_CLOEXEC   02000000+#define SOCK_NONBLOCK  04000+#endif++#define PF_UNSPEC       0+#define PF_LOCAL        1+#define PF_UNIX         PF_LOCAL+#define PF_FILE         PF_LOCAL+#define PF_INET         2+#define PF_AX25         3+#define PF_IPX          4+#define PF_APPLETALK    5+#define PF_NETROM       6+#define PF_BRIDGE       7+#define PF_ATMPVC       8+#define PF_X25          9+#define PF_INET6        10+#define PF_ROSE         11+#define PF_DECnet       12+#define PF_NETBEUI      13+#define PF_SECURITY     14+#define PF_KEY          15+#define PF_NETLINK      16+#define PF_ROUTE        PF_NETLINK+#define PF_PACKET       17+#define PF_ASH          18+#define PF_ECONET       19+#define PF_ATMSVC       20+#define PF_RDS          21+#define PF_SNA          22+#define PF_IRDA         23+#define PF_PPPOX        24+#define PF_WANPIPE      25+#define PF_LLC          26+#define PF_IB           27+#define PF_MPLS         28+#define PF_CAN          29+#define PF_TIPC         30+#define PF_BLUETOOTH    31+#define PF_IUCV         32+#define PF_RXRPC        33+#define PF_ISDN         34+#define PF_PHONET       35+#define PF_IEEE802154   36+#define PF_CAIF         37+#define PF_ALG          38+#define PF_NFC          39+#define PF_VSOCK        40+#define PF_KCM          41+#define PF_QIPCRTR      42+#define PF_SMC          43+#define PF_XDP          44+#define PF_MAX          45++#define AF_UNSPEC       PF_UNSPEC+#define AF_LOCAL        PF_LOCAL+#define AF_UNIX         AF_LOCAL+#define AF_FILE         AF_LOCAL+#define AF_INET         PF_INET+#define AF_AX25         PF_AX25+#define AF_IPX          PF_IPX+#define AF_APPLETALK    PF_APPLETALK+#define AF_NETROM       PF_NETROM+#define AF_BRIDGE       PF_BRIDGE+#define AF_ATMPVC       PF_ATMPVC+#define AF_X25          PF_X25+#define AF_INET6        PF_INET6+#define AF_ROSE         PF_ROSE+#define AF_DECnet       PF_DECnet+#define AF_NETBEUI      PF_NETBEUI+#define AF_SECURITY     PF_SECURITY+#define AF_KEY          PF_KEY+#define AF_NETLINK      PF_NETLINK+#define AF_ROUTE        PF_ROUTE+#define AF_PACKET       PF_PACKET+#define AF_ASH          PF_ASH+#define AF_ECONET       PF_ECONET+#define AF_ATMSVC       PF_ATMSVC+#define AF_RDS          PF_RDS+#define AF_SNA          PF_SNA+#define AF_IRDA         PF_IRDA+#define AF_PPPOX        PF_PPPOX+#define AF_WANPIPE      PF_WANPIPE+#define AF_LLC          PF_LLC+#define AF_IB           PF_IB+#define AF_MPLS         PF_MPLS+#define AF_CAN          PF_CAN+#define AF_TIPC         PF_TIPC+#define AF_BLUETOOTH    PF_BLUETOOTH+#define AF_IUCV         PF_IUCV+#define AF_RXRPC        PF_RXRPC+#define AF_ISDN         PF_ISDN+#define AF_PHONET       PF_PHONET+#define AF_IEEE802154   PF_IEEE802154+#define AF_CAIF         PF_CAIF+#define AF_ALG          PF_ALG+#define AF_NFC          PF_NFC+#define AF_VSOCK        PF_VSOCK+#define AF_KCM          PF_KCM+#define AF_QIPCRTR      PF_QIPCRTR+#define AF_SMC          PF_SMC+#define AF_XDP          PF_XDP+#define AF_MAX          PF_MAX++#ifndef SO_DEBUG+#define SO_DEBUG        1+#define SO_REUSEADDR    2+#define SO_TYPE         3+#define SO_ERROR        4+#define SO_DONTROUTE    5+#define SO_BROADCAST    6+#define SO_SNDBUF       7+#define SO_RCVBUF       8+#define SO_KEEPALIVE    9+#define SO_OOBINLINE    10+#define SO_NO_CHECK     11+#define SO_PRIORITY     12+#define SO_LINGER       13+#define SO_BSDCOMPAT    14+#define SO_REUSEPORT    15+#define SO_PASSCRED     16+#define SO_PEERCRED     17+#define SO_RCVLOWAT     18+#define SO_SNDLOWAT     19+#define SO_ACCEPTCONN   30+#define SO_PEERSEC      31+#define SO_SNDBUFFORCE  32+#define SO_RCVBUFFORCE  33+#define SO_PROTOCOL     38+#define SO_DOMAIN       39+#endif++#ifndef SO_RCVTIMEO+#if __LONG_MAX == 0x7fffffff+#define SO_RCVTIMEO     66+#define SO_SNDTIMEO     67+#else+#define SO_RCVTIMEO     20+#define SO_SNDTIMEO     21+#endif+#endif++#ifndef SO_TIMESTAMP+#if __LONG_MAX == 0x7fffffff+#define SO_TIMESTAMP    63+#define SO_TIMESTAMPNS  64+#define SO_TIMESTAMPING 65+#else+#define SO_TIMESTAMP    29+#define SO_TIMESTAMPNS  35+#define SO_TIMESTAMPING 37+#endif+#endif++#define SO_SECURITY_AUTHENTICATION              22+#define SO_SECURITY_ENCRYPTION_TRANSPORT        23+#define SO_SECURITY_ENCRYPTION_NETWORK          24++#define SO_BINDTODEVICE 25++#define SO_ATTACH_FILTER        26+#define SO_DETACH_FILTER        27+#define SO_GET_FILTER           SO_ATTACH_FILTER++#define SO_PEERNAME             28+#define SCM_TIMESTAMP           SO_TIMESTAMP+#define SO_PASSSEC              34+#define SCM_TIMESTAMPNS         SO_TIMESTAMPNS+#define SO_MARK                 36+#define SCM_TIMESTAMPING        SO_TIMESTAMPING+#define SO_RXQ_OVFL             40+#define SO_WIFI_STATUS          41+#define SCM_WIFI_STATUS         SO_WIFI_STATUS+#define SO_PEEK_OFF             42+#define SO_NOFCS                43+#define SO_LOCK_FILTER          44+#define SO_SELECT_ERR_QUEUE     45+#define SO_BUSY_POLL            46+#define SO_MAX_PACING_RATE      47+#define SO_BPF_EXTENSIONS       48+#define SO_INCOMING_CPU         49+#define SO_ATTACH_BPF           50+#define SO_DETACH_BPF           SO_DETACH_FILTER+#define SO_ATTACH_REUSEPORT_CBPF 51+#define SO_ATTACH_REUSEPORT_EBPF 52+#define SO_CNX_ADVICE           53+#define SCM_TIMESTAMPING_OPT_STATS 54+#define SO_MEMINFO              55+#define SO_INCOMING_NAPI_ID     56+#define SO_COOKIE               57+#define SCM_TIMESTAMPING_PKTINFO 58+#define SO_PEERGROUPS           59+#define SO_ZEROCOPY             60+#define SO_TXTIME               61+#define SCM_TXTIME              SO_TXTIME+#define SO_BINDTOIFINDEX        62+#define SO_DETACH_REUSEPORT_BPF 68+#define SO_PREFER_BUSY_POLL     69+#define SO_BUSY_POLL_BUDGET     70++#ifndef SOL_SOCKET+#define SOL_SOCKET      1+#endif++#define SOL_IP          0+#define SOL_IPV6        41+#define SOL_ICMPV6      58++#define SOL_RAW         255+#define SOL_DECNET      261+#define SOL_X25         262+#define SOL_PACKET      263+#define SOL_ATM         264+#define SOL_AAL         265+#define SOL_IRDA        266+#define SOL_NETBEUI     267+#define SOL_LLC         268+#define SOL_DCCP        269+#define SOL_NETLINK     270+#define SOL_TIPC        271+#define SOL_RXRPC       272+#define SOL_PPPOL2TP    273+#define SOL_BLUETOOTH   274+#define SOL_PNPIPE      275+#define SOL_RDS         276+#define SOL_IUCV        277+#define SOL_CAIF        278+#define SOL_ALG         279+#define SOL_NFC         280+#define SOL_KCM         281+#define SOL_TLS         282+#define SOL_XDP         283++#define SOMAXCONN       128++#define MSG_OOB       0x0001+#define MSG_PEEK      0x0002+#define MSG_DONTROUTE 0x0004+#define MSG_CTRUNC    0x0008+#define MSG_PROXY     0x0010+#define MSG_TRUNC     0x0020+#define MSG_DONTWAIT  0x0040+#define MSG_EOR       0x0080+#define MSG_WAITALL   0x0100+#define MSG_FIN       0x0200+#define MSG_SYN       0x0400+#define MSG_CONFIRM   0x0800+#define MSG_RST       0x1000+#define MSG_ERRQUEUE  0x2000+#define MSG_NOSIGNAL  0x4000+#define MSG_MORE      0x8000+#define MSG_WAITFORONE 0x10000+#define MSG_BATCH     0x40000+#define MSG_ZEROCOPY  0x4000000+#define MSG_FASTOPEN  0x20000000+#define MSG_CMSG_CLOEXEC 0x40000000++#define __CMSG_LEN(cmsg) (((cmsg)->cmsg_len + sizeof(long) - 1) & ~(long)(sizeof(long) - 1))+#define __CMSG_NEXT(cmsg) ((unsigned char *)(cmsg) + __CMSG_LEN(cmsg))+#define __MHDR_END(mhdr) ((unsigned char *)(mhdr)->msg_control + (mhdr)->msg_controllen)++#define CMSG_DATA(cmsg) ((unsigned char *) (((struct cmsghdr *)(cmsg)) + 1))+#define CMSG_NXTHDR(mhdr, cmsg) ((cmsg)->cmsg_len < sizeof (struct cmsghdr) || \+	__CMSG_LEN(cmsg) + sizeof(struct cmsghdr) >= __MHDR_END(mhdr) - (unsigned char *)(cmsg) \+	? 0 : (struct cmsghdr *)__CMSG_NEXT(cmsg))+#define CMSG_FIRSTHDR(mhdr) ((size_t) (mhdr)->msg_controllen >= sizeof (struct cmsghdr) ? (struct cmsghdr *) (mhdr)->msg_control : (struct cmsghdr *) 0)++#define CMSG_ALIGN(len) (((len) + sizeof (size_t) - 1) & (size_t) ~(sizeof (size_t) - 1))+#define CMSG_SPACE(len) (CMSG_ALIGN (len) + CMSG_ALIGN (sizeof (struct cmsghdr)))+#define CMSG_LEN(len)   (CMSG_ALIGN (sizeof (struct cmsghdr)) + (len))++#define SCM_RIGHTS      0x01+#define SCM_CREDENTIALS 0x02++struct sockaddr {+	sa_family_t sa_family;+	char sa_data[14];+};++struct sockaddr_storage {+	sa_family_t ss_family;+	char __ss_padding[128-sizeof(long)-sizeof(sa_family_t)];+	unsigned long __ss_align;+};++int socket (int, int, int);+int socketpair (int, int, int, int [2]);++int shutdown (int, int);++int bind (int, const struct sockaddr *, socklen_t);+int connect (int, const struct sockaddr *, socklen_t);+int listen (int, int);+int accept (int, struct sockaddr *__restrict, socklen_t *__restrict);+int accept4(int, struct sockaddr *__restrict, socklen_t *__restrict, int);++int getsockname (int, struct sockaddr *__restrict, socklen_t *__restrict);+int getpeername (int, struct sockaddr *__restrict, socklen_t *__restrict);++ssize_t send (int, const void *, size_t, int);+ssize_t recv (int, void *, size_t, int);+ssize_t sendto (int, const void *, size_t, int, const struct sockaddr *, socklen_t);+ssize_t recvfrom (int, void *__restrict, size_t, int, struct sockaddr *__restrict, socklen_t *__restrict);+ssize_t sendmsg (int, const struct msghdr *, int);+ssize_t recvmsg (int, struct msghdr *, int);++int getsockopt (int, int, int, void *__restrict, socklen_t *__restrict);+int setsockopt (int, int, int, const void *, socklen_t);++int sockatmark (int);++#if _REDIR_TIME64+#ifdef _GNU_SOURCE+__REDIR(recvmmsg, __recvmmsg_time64);+#endif+#endif++#ifdef __cplusplus+}+#endif+#endif
+ musl-include/aarch64/sys/soundcard.h view
@@ -0,0 +1,1 @@+#include <bits/soundcard.h>
+ musl-include/aarch64/sys/stat.h view
@@ -0,0 +1,182 @@+#ifndef	_SYS_STAT_H+#define	_SYS_STAT_H+#ifdef __cplusplus+extern "C" {+#endif++#include <features.h>++#define __NEED_dev_t+#define __NEED_ino_t+#define __NEED_mode_t+#define __NEED_nlink_t+#define __NEED_uid_t+#define __NEED_gid_t+#define __NEED_off_t+#define __NEED_time_t+#define __NEED_blksize_t+#define __NEED_blkcnt_t+#define __NEED_struct_timespec++#ifdef _GNU_SOURCE+#define __NEED_int64_t+#define __NEED_uint64_t+#define __NEED_uint32_t+#define __NEED_uint16_t+#endif++#include <bits/alltypes.h>++#include <bits/stat.h>++#define st_atime st_atim.tv_sec+#define st_mtime st_mtim.tv_sec+#define st_ctime st_ctim.tv_sec++#define S_IFMT  0170000++#define S_IFDIR 0040000+#define S_IFCHR 0020000+#define S_IFBLK 0060000+#define S_IFREG 0100000+#define S_IFIFO 0010000+#define S_IFLNK 0120000+#define S_IFSOCK 0140000++#define S_TYPEISMQ(buf)  0+#define S_TYPEISSEM(buf) 0+#define S_TYPEISSHM(buf) 0+#define S_TYPEISTMO(buf) 0++#define S_ISDIR(mode)  (((mode) & S_IFMT) == S_IFDIR)+#define S_ISCHR(mode)  (((mode) & S_IFMT) == S_IFCHR)+#define S_ISBLK(mode)  (((mode) & S_IFMT) == S_IFBLK)+#define S_ISREG(mode)  (((mode) & S_IFMT) == S_IFREG)+#define S_ISFIFO(mode) (((mode) & S_IFMT) == S_IFIFO)+#define S_ISLNK(mode)  (((mode) & S_IFMT) == S_IFLNK)+#define S_ISSOCK(mode) (((mode) & S_IFMT) == S_IFSOCK)++#ifndef S_IRUSR+#define S_ISUID 04000+#define S_ISGID 02000+#define S_ISVTX 01000+#define S_IRUSR 0400+#define S_IWUSR 0200+#define S_IXUSR 0100+#define S_IRWXU 0700+#define S_IRGRP 0040+#define S_IWGRP 0020+#define S_IXGRP 0010+#define S_IRWXG 0070+#define S_IROTH 0004+#define S_IWOTH 0002+#define S_IXOTH 0001+#define S_IRWXO 0007+#endif++#define UTIME_NOW  0x3fffffff+#define UTIME_OMIT 0x3ffffffe++int stat(const char *__restrict, struct stat *__restrict);+int fstat(int, struct stat *);+int lstat(const char *__restrict, struct stat *__restrict);+int fstatat(int, const char *__restrict, struct stat *__restrict, int);+int chmod(const char *, mode_t);+int fchmod(int, mode_t);+int fchmodat(int, const char *, mode_t, int);+mode_t umask(mode_t);+int mkdir(const char *, mode_t);+int mkfifo(const char *, mode_t);+int mkdirat(int, const char *, mode_t);+int mkfifoat(int, const char *, mode_t);++#if defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) || defined(_BSD_SOURCE)+int mknod(const char *, mode_t, dev_t);+int mknodat(int, const char *, mode_t, dev_t);+#endif++int futimens(int, const struct timespec [2]);+int utimensat(int, const char *, const struct timespec [2], int);++#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE)+int lchmod(const char *, mode_t);+#define S_IREAD S_IRUSR+#define S_IWRITE S_IWUSR+#define S_IEXEC S_IXUSR+#endif++#if defined(_GNU_SOURCE)+#define STATX_TYPE 1U+#define STATX_MODE 2U+#define STATX_NLINK 4U+#define STATX_UID 8U+#define STATX_GID 0x10U+#define STATX_ATIME 0x20U+#define STATX_MTIME 0x40U+#define STATX_CTIME 0x80U+#define STATX_INO 0x100U+#define STATX_SIZE 0x200U+#define STATX_BLOCKS 0x400U+#define STATX_BASIC_STATS 0x7ffU+#define STATX_BTIME 0x800U+#define STATX_ALL 0xfffU++struct statx_timestamp {+	int64_t tv_sec;+	uint32_t tv_nsec, __pad;+};++struct statx {+	uint32_t stx_mask;+	uint32_t stx_blksize;+	uint64_t stx_attributes;+	uint32_t stx_nlink;+	uint32_t stx_uid;+	uint32_t stx_gid;+	uint16_t stx_mode;+	uint16_t __pad0[1];+	uint64_t stx_ino;+	uint64_t stx_size;+	uint64_t stx_blocks;+	uint64_t stx_attributes_mask;+	struct statx_timestamp stx_atime;+	struct statx_timestamp stx_btime;+	struct statx_timestamp stx_ctime;+	struct statx_timestamp stx_mtime;+	uint32_t stx_rdev_major;+	uint32_t stx_rdev_minor;+	uint32_t stx_dev_major;+	uint32_t stx_dev_minor;+	uint64_t __pad1[14];+};++int statx(int, const char *__restrict, int, unsigned, struct statx *__restrict);+#endif++#if defined(_LARGEFILE64_SOURCE)+#define stat64 stat+#define fstat64 fstat+#define lstat64 lstat+#define fstatat64 fstatat+#define blkcnt64_t blkcnt_t+#define fsblkcnt64_t fsblkcnt_t+#define fsfilcnt64_t fsfilcnt_t+#define ino64_t ino_t+#define off64_t off_t+#endif++#if _REDIR_TIME64+__REDIR(stat, __stat_time64);+__REDIR(fstat, __fstat_time64);+__REDIR(lstat, __lstat_time64);+__REDIR(fstatat, __fstatat_time64);+__REDIR(futimens, __futimens_time64);+__REDIR(utimensat, __utimensat_time64);+#endif++#ifdef __cplusplus+}+#endif+#endif++
+ musl-include/aarch64/sys/statfs.h view
@@ -0,0 +1,32 @@+#ifndef	_SYS_STATFS_H+#define	_SYS_STATFS_H++#ifdef __cplusplus+extern "C" {+#endif++#include <features.h>++#include <sys/statvfs.h>++typedef struct __fsid_t {+	int __val[2];+} fsid_t;++#include <bits/statfs.h>++int statfs (const char *, struct statfs *);+int fstatfs (int, struct statfs *);++#if defined(_LARGEFILE64_SOURCE)+#define statfs64 statfs+#define fstatfs64 fstatfs+#define fsblkcnt64_t fsblkcnt_t+#define fsfilcnt64_t fsfilcnt_t+#endif++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/aarch64/sys/statvfs.h view
@@ -0,0 +1,57 @@+#ifndef	_SYS_STATVFS_H+#define	_SYS_STATVFS_H++#ifdef __cplusplus+extern "C" {+#endif++#include <features.h>++#define __NEED_fsblkcnt_t+#define __NEED_fsfilcnt_t+#include <bits/alltypes.h>++struct statvfs {+	unsigned long f_bsize, f_frsize;+	fsblkcnt_t f_blocks, f_bfree, f_bavail;+	fsfilcnt_t f_files, f_ffree, f_favail;+#if __BYTE_ORDER == __LITTLE_ENDIAN+	unsigned long f_fsid;+	unsigned :8*(2*sizeof(int)-sizeof(long));+#else+	unsigned :8*(2*sizeof(int)-sizeof(long));+	unsigned long f_fsid;+#endif+	unsigned long f_flag, f_namemax;+	unsigned int f_type;+	int __reserved[5];+};++int statvfs (const char *__restrict, struct statvfs *__restrict);+int fstatvfs (int, struct statvfs *);++#define ST_RDONLY 1+#define ST_NOSUID 2+#define ST_NODEV  4+#define ST_NOEXEC 8+#define ST_SYNCHRONOUS 16+#define ST_MANDLOCK    64+#define ST_WRITE       128+#define ST_APPEND      256+#define ST_IMMUTABLE   512+#define ST_NOATIME     1024+#define ST_NODIRATIME  2048+#define ST_RELATIME    4096++#if defined(_LARGEFILE64_SOURCE)+#define statvfs64 statvfs+#define fstatvfs64 fstatvfs+#define fsblkcnt64_t fsblkcnt_t+#define fsfilcnt64_t fsfilcnt_t+#endif++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/aarch64/sys/stropts.h view
@@ -0,0 +1,1 @@+#include <stropts.h>
+ musl-include/aarch64/sys/swap.h view
@@ -0,0 +1,21 @@+#ifndef _SYS_SWAP_H+#define _SYS_SWAP_H++#ifdef __cplusplus+extern "C" {+#endif+++#define	SWAP_FLAG_PREFER        0x8000+#define	SWAP_FLAG_PRIO_MASK     0x7fff+#define	SWAP_FLAG_PRIO_SHIFT    0+#define SWAP_FLAG_DISCARD       0x10000++int swapon (const char *, int);+int swapoff (const char *);++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/aarch64/sys/syscall.h view
@@ -0,0 +1,6 @@+#ifndef _SYS_SYSCALL_H+#define _SYS_SYSCALL_H++#include <bits/syscall.h>++#endif
+ musl-include/aarch64/sys/sysinfo.h view
@@ -0,0 +1,36 @@+#ifndef _SYS_SYSINFO_H+#define _SYS_SYSINFO_H++#ifdef __cplusplus+extern "C" {+#endif++#define SI_LOAD_SHIFT 16++struct sysinfo {+	unsigned long uptime;+	unsigned long loads[3];+	unsigned long totalram;+	unsigned long freeram;+	unsigned long sharedram;+	unsigned long bufferram;+	unsigned long totalswap;+	unsigned long freeswap;+	unsigned short procs, pad;+	unsigned long totalhigh;+	unsigned long freehigh;+	unsigned mem_unit;+	char __reserved[256];+};++int sysinfo (struct sysinfo *);+int get_nprocs_conf (void);+int get_nprocs (void);+long get_phys_pages (void);+long get_avphys_pages (void);++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/aarch64/sys/syslog.h view
@@ -0,0 +1,1 @@+#include <syslog.h>
+ musl-include/aarch64/sys/sysmacros.h view
@@ -0,0 +1,15 @@+#ifndef _SYS_SYSMACROS_H+#define _SYS_SYSMACROS_H++#define major(x) \+	((unsigned)( (((x)>>31>>1) & 0xfffff000) | (((x)>>8) & 0x00000fff) ))+#define minor(x) \+	((unsigned)( (((x)>>12) & 0xffffff00) | ((x) & 0x000000ff) ))++#define makedev(x,y) ( \+        (((x)&0xfffff000ULL) << 32) | \+	(((x)&0x00000fffULL) << 8) | \+        (((y)&0xffffff00ULL) << 12) | \+	(((y)&0x000000ffULL)) )++#endif
+ musl-include/aarch64/sys/termios.h view
@@ -0,0 +1,2 @@+#warning redirecting incorrect #include <sys/termios.h> to <termios.h>+#include <termios.h>
+ musl-include/aarch64/sys/time.h view
@@ -0,0 +1,76 @@+#ifndef _SYS_TIME_H+#define _SYS_TIME_H+#ifdef __cplusplus+extern "C" {+#endif++#include <features.h>++#include <sys/select.h>++int gettimeofday (struct timeval *__restrict, void *__restrict);++#define ITIMER_REAL    0+#define ITIMER_VIRTUAL 1+#define ITIMER_PROF    2++struct itimerval {+	struct timeval it_interval;+	struct timeval it_value;+};++int getitimer (int, struct itimerval *);+int setitimer (int, const struct itimerval *__restrict, struct itimerval *__restrict);+int utimes (const char *, const struct timeval [2]);++#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE)+struct timezone {+	int tz_minuteswest;+	int tz_dsttime;+};+int futimes(int, const struct timeval [2]);+int futimesat(int, const char *, const struct timeval [2]);+int lutimes(const char *, const struct timeval [2]);+int settimeofday(const struct timeval *, const struct timezone *);+int adjtime (const struct timeval *, struct timeval *);+#define timerisset(t) ((t)->tv_sec || (t)->tv_usec)+#define timerclear(t) ((t)->tv_sec = (t)->tv_usec = 0)+#define timercmp(s,t,op) ((s)->tv_sec == (t)->tv_sec ? \+	(s)->tv_usec op (t)->tv_usec : (s)->tv_sec op (t)->tv_sec)+#define timeradd(s,t,a) (void) ( (a)->tv_sec = (s)->tv_sec + (t)->tv_sec, \+	((a)->tv_usec = (s)->tv_usec + (t)->tv_usec) >= 1000000 && \+	((a)->tv_usec -= 1000000, (a)->tv_sec++) )+#define timersub(s,t,a) (void) ( (a)->tv_sec = (s)->tv_sec - (t)->tv_sec, \+	((a)->tv_usec = (s)->tv_usec - (t)->tv_usec) < 0 && \+	((a)->tv_usec += 1000000, (a)->tv_sec--) )+#endif++#if defined(_GNU_SOURCE)+#define TIMEVAL_TO_TIMESPEC(tv, ts) ( \+	(ts)->tv_sec = (tv)->tv_sec, \+	(ts)->tv_nsec = (tv)->tv_usec * 1000, \+	(void)0 )+#define TIMESPEC_TO_TIMEVAL(tv, ts) ( \+	(tv)->tv_sec = (ts)->tv_sec, \+	(tv)->tv_usec = (ts)->tv_nsec / 1000, \+	(void)0 )+#endif++#if _REDIR_TIME64+__REDIR(gettimeofday, __gettimeofday_time64);+__REDIR(getitimer, __getitimer_time64);+__REDIR(setitimer, __setitimer_time64);+__REDIR(utimes, __utimes_time64);+#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE)+__REDIR(futimes, __futimes_time64);+__REDIR(futimesat, __futimesat_time64);+__REDIR(lutimes, __lutimes_time64);+__REDIR(settimeofday, __settimeofday_time64);+__REDIR(adjtime, __adjtime64);+#endif+#endif++#ifdef __cplusplus+}+#endif+#endif
+ musl-include/aarch64/sys/timeb.h view
@@ -0,0 +1,28 @@+#ifndef _SYS_TIMEB_H+#define _SYS_TIMEB_H+#ifdef __cplusplus+extern "C" {+#endif++#include <features.h>++#define __NEED_time_t++#include <bits/alltypes.h>++struct timeb {+	time_t time;+	unsigned short millitm;+	short timezone, dstflag;+};++int ftime(struct timeb *);++#if _REDIR_TIME64+__REDIR(ftime, __ftime64);+#endif++#ifdef __cplusplus+}+#endif+#endif
+ musl-include/aarch64/sys/timerfd.h view
@@ -0,0 +1,32 @@+#ifndef _SYS_TIMERFD_H+#define _SYS_TIMERFD_H++#ifdef __cplusplus+extern "C" {+#endif++#include <time.h>+#include <fcntl.h>++#define TFD_NONBLOCK O_NONBLOCK+#define TFD_CLOEXEC O_CLOEXEC++#define TFD_TIMER_ABSTIME 1+#define TFD_TIMER_CANCEL_ON_SET (1 << 1)++struct itimerspec;++int timerfd_create(int, int);+int timerfd_settime(int, int, const struct itimerspec *, struct itimerspec *);+int timerfd_gettime(int, struct itimerspec *);++#if _REDIR_TIME64+__REDIR(timerfd_settime, __timerfd_settime64);+__REDIR(timerfd_gettime, __timerfd_gettime64);+#endif++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/aarch64/sys/times.h view
@@ -0,0 +1,25 @@+#ifndef	_SYS_TIMES_H+#define	_SYS_TIMES_H++#ifdef __cplusplus+extern "C" {+#endif++#define __NEED_clock_t+#include <bits/alltypes.h>++struct tms {+	clock_t tms_utime;+	clock_t tms_stime;+	clock_t tms_cutime;+	clock_t tms_cstime;+};++clock_t times (struct tms *);++#ifdef __cplusplus+}+#endif++#endif+
+ musl-include/aarch64/sys/timex.h view
@@ -0,0 +1,103 @@+#ifndef _SYS_TIMEX_H+#define _SYS_TIMEX_H++#ifdef __cplusplus+extern "C" {+#endif++#define __NEED_clockid_t++#include <bits/alltypes.h>++#include <sys/time.h>++struct ntptimeval {+	struct timeval time;+	long maxerror, esterror;+};++struct timex {+	unsigned modes;+	long offset, freq, maxerror, esterror;+	int status;+	long constant, precision, tolerance;+	struct timeval time;+	long tick, ppsfreq, jitter;+	int shift;+	long stabil, jitcnt, calcnt, errcnt, stbcnt;+	int tai;+	int __padding[11];+};++#define ADJ_OFFSET		0x0001+#define ADJ_FREQUENCY		0x0002+#define ADJ_MAXERROR		0x0004+#define ADJ_ESTERROR		0x0008+#define ADJ_STATUS		0x0010+#define ADJ_TIMECONST		0x0020+#define ADJ_TAI			0x0080+#define ADJ_SETOFFSET		0x0100+#define ADJ_MICRO		0x1000+#define ADJ_NANO		0x2000+#define ADJ_TICK		0x4000+#define ADJ_OFFSET_SINGLESHOT	0x8001+#define ADJ_OFFSET_SS_READ	0xa001++#define MOD_OFFSET	ADJ_OFFSET+#define MOD_FREQUENCY	ADJ_FREQUENCY+#define MOD_MAXERROR	ADJ_MAXERROR+#define MOD_ESTERROR	ADJ_ESTERROR+#define MOD_STATUS	ADJ_STATUS+#define MOD_TIMECONST	ADJ_TIMECONST+#define MOD_CLKB	ADJ_TICK+#define MOD_CLKA	ADJ_OFFSET_SINGLESHOT+#define MOD_TAI		ADJ_TAI+#define MOD_MICRO	ADJ_MICRO+#define MOD_NANO	ADJ_NANO++#define STA_PLL		0x0001+#define STA_PPSFREQ	0x0002+#define STA_PPSTIME	0x0004+#define STA_FLL		0x0008++#define STA_INS		0x0010+#define STA_DEL		0x0020+#define STA_UNSYNC	0x0040+#define STA_FREQHOLD	0x0080++#define STA_PPSSIGNAL	0x0100+#define STA_PPSJITTER	0x0200+#define STA_PPSWANDER	0x0400+#define STA_PPSERROR	0x0800++#define STA_CLOCKERR	0x1000+#define STA_NANO	0x2000+#define STA_MODE	0x4000+#define STA_CLK		0x8000++#define STA_RONLY (STA_PPSSIGNAL | STA_PPSJITTER | STA_PPSWANDER | \+    STA_PPSERROR | STA_CLOCKERR | STA_NANO | STA_MODE | STA_CLK)++#define TIME_OK		0+#define TIME_INS	1+#define TIME_DEL	2+#define TIME_OOP	3+#define TIME_WAIT	4+#define TIME_ERROR	5+#define TIME_BAD	TIME_ERROR++#define MAXTC		6++int adjtimex(struct timex *);+int clock_adjtime(clockid_t, struct timex *);++#if _REDIR_TIME64+__REDIR(adjtimex, __adjtimex_time64);+__REDIR(clock_adjtime, __clock_adjtime64);+#endif++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/aarch64/sys/ttydefaults.h view
@@ -0,0 +1,34 @@+#ifndef _SYS_TTYDEFAULTS_H+#define _SYS_TTYDEFAULTS_H++#define TTYDEF_IFLAG (BRKINT | ISTRIP | ICRNL | IMAXBEL | IXON | IXANY)+#define TTYDEF_OFLAG (OPOST | ONLCR | XTABS)+#define TTYDEF_LFLAG (ECHO | ICANON | ISIG | IEXTEN | ECHOE|ECHOKE|ECHOCTL)+#define TTYDEF_CFLAG (CREAD | CS7 | PARENB | HUPCL)+#define TTYDEF_SPEED (B9600)+#define CTRL(x) ((x)&037)+#define CEOF CTRL('d')++#define CEOL '\0'+#define CSTATUS '\0'++#define CERASE 0177+#define CINTR CTRL('c')+#define CKILL CTRL('u')+#define CMIN 1+#define CQUIT 034+#define CSUSP CTRL('z')+#define CTIME 0+#define CDSUSP CTRL('y')+#define CSTART CTRL('q')+#define CSTOP CTRL('s')+#define CLNEXT CTRL('v')+#define CDISCARD CTRL('o')+#define CWERASE CTRL('w')+#define CREPRINT CTRL('r')+#define CEOT CEOF+#define CBRK CEOL+#define CRPRNT CREPRINT+#define CFLUSH CDISCARD++#endif
+ musl-include/aarch64/sys/types.h view
@@ -0,0 +1,85 @@+#ifndef	_SYS_TYPES_H+#define	_SYS_TYPES_H+#ifdef __cplusplus+extern "C" {+#endif++#include <features.h>++#define __NEED_ino_t+#define __NEED_dev_t+#define __NEED_uid_t+#define __NEED_gid_t+#define __NEED_mode_t+#define __NEED_nlink_t+#define __NEED_off_t+#define __NEED_pid_t+#define __NEED_size_t+#define __NEED_ssize_t+#define __NEED_time_t+#define __NEED_timer_t+#define __NEED_clockid_t++#define __NEED_blkcnt_t+#define __NEED_fsblkcnt_t+#define __NEED_fsfilcnt_t++#define __NEED_id_t+#define __NEED_key_t+#define __NEED_clock_t+#define __NEED_suseconds_t+#define __NEED_blksize_t++#define __NEED_pthread_t+#define __NEED_pthread_attr_t+#define __NEED_pthread_mutexattr_t+#define __NEED_pthread_condattr_t+#define __NEED_pthread_rwlockattr_t+#define __NEED_pthread_barrierattr_t+#define __NEED_pthread_mutex_t+#define __NEED_pthread_cond_t+#define __NEED_pthread_rwlock_t+#define __NEED_pthread_barrier_t+#define __NEED_pthread_spinlock_t+#define __NEED_pthread_key_t+#define __NEED_pthread_once_t+#define __NEED_useconds_t++#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE)+#define __NEED_int8_t+#define __NEED_int16_t+#define __NEED_int32_t+#define __NEED_int64_t+#define __NEED_u_int64_t+#define __NEED_register_t+#endif++#include <bits/alltypes.h>++#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE)+typedef unsigned char u_int8_t;+typedef unsigned short u_int16_t;+typedef unsigned u_int32_t;+typedef char *caddr_t;+typedef unsigned char u_char;+typedef unsigned short u_short, ushort;+typedef unsigned u_int, uint;+typedef unsigned long u_long, ulong;+typedef long long quad_t;+typedef unsigned long long u_quad_t;+#include <endian.h>+#include <sys/select.h>+#endif++#if defined(_LARGEFILE64_SOURCE)+#define blkcnt64_t blkcnt_t+#define fsblkcnt64_t fsblkcnt_t+#define fsfilcnt64_t fsfilcnt_t+#define ino64_t ino_t+#define off64_t off_t+#endif++#ifdef __cplusplus+}+#endif+#endif
+ musl-include/aarch64/sys/ucontext.h view
@@ -0,0 +1,1 @@+#include <ucontext.h>
+ musl-include/aarch64/sys/uio.h view
@@ -0,0 +1,55 @@+#ifndef _SYS_UIO_H+#define _SYS_UIO_H++#ifdef __cplusplus+extern "C" {+#endif++#include <features.h>++#define __NEED_size_t+#define __NEED_ssize_t+#define __NEED_struct_iovec++#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE)+#define __NEED_off_t+#endif++#ifdef _GNU_SOURCE+#define __NEED_pid_t+#endif++#include <bits/alltypes.h>++#define UIO_MAXIOV 1024++ssize_t readv (int, const struct iovec *, int);+ssize_t writev (int, const struct iovec *, int);++#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE)+ssize_t preadv (int, const struct iovec *, int, off_t);+ssize_t pwritev (int, const struct iovec *, int, off_t);+#if defined(_LARGEFILE64_SOURCE)+#define preadv64 preadv+#define pwritev64 pwritev+#define off64_t off_t+#endif+#endif++#ifdef _GNU_SOURCE+ssize_t process_vm_writev(pid_t, const struct iovec *, unsigned long, const struct iovec *, unsigned long, unsigned long);+ssize_t process_vm_readv(pid_t, const struct iovec *, unsigned long, const struct iovec *, unsigned long, unsigned long);+ssize_t preadv2 (int, const struct iovec *, int, off_t, int);+ssize_t pwritev2 (int, const struct iovec *, int, off_t, int);+#define RWF_HIPRI 0x00000001+#define RWF_DSYNC 0x00000002+#define RWF_SYNC 0x00000004+#define RWF_NOWAIT 0x00000008+#define RWF_APPEND 0x00000010+#endif++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/aarch64/sys/un.h view
@@ -0,0 +1,31 @@+#ifndef	_SYS_UN_H+#define	_SYS_UN_H++#ifdef __cplusplus+extern "C" {+#endif++#include <features.h>++#define __NEED_sa_family_t+#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE)+#define __NEED_size_t+#endif++#include <bits/alltypes.h>++struct sockaddr_un {+	sa_family_t sun_family;+	char sun_path[108];+};++#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE)+size_t strlen(const char *);+#define SUN_LEN(s) (2+strlen((s)->sun_path))+#endif++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/aarch64/sys/user.h view
@@ -0,0 +1,16 @@+#ifndef _SYS_USER_H+#define _SYS_USER_H+#ifdef __cplusplus+extern "C" {+#endif++#include <limits.h>+#include <stdint.h>+#include <unistd.h>++#include <bits/user.h>++#ifdef __cplusplus+}+#endif+#endif
+ musl-include/aarch64/sys/utsname.h view
@@ -0,0 +1,29 @@+#ifndef	_SYS_UTSNAME_H+#define	_SYS_UTSNAME_H++#ifdef __cplusplus+extern "C" {+#endif++#include <features.h>++struct utsname {+	char sysname[65];+	char nodename[65];+	char release[65];+	char version[65];+	char machine[65];+#ifdef _GNU_SOURCE+	char domainname[65];+#else+	char __domainname[65];+#endif+};++int uname (struct utsname *);++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/aarch64/sys/vfs.h view
@@ -0,0 +1,1 @@+#include <sys/statfs.h>
+ musl-include/aarch64/sys/vt.h view
@@ -0,0 +1,1 @@+#include <bits/vt.h>
+ musl-include/aarch64/sys/wait.h view
@@ -0,0 +1,67 @@+#ifndef	_SYS_WAIT_H+#define	_SYS_WAIT_H+#ifdef __cplusplus+extern "C" {+#endif++#include <features.h>++#define __NEED_pid_t+#define __NEED_id_t+#include <bits/alltypes.h>++typedef enum {+	P_ALL = 0,+	P_PID = 1,+	P_PGID = 2,+	P_PIDFD = 3+} idtype_t;++pid_t wait (int *);+pid_t waitpid (pid_t, int *, int );++#if defined(_POSIX_SOURCE) || defined(_POSIX_C_SOURCE) \+ || defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) \+ || defined(_BSD_SOURCE)+#include <signal.h>+int waitid (idtype_t, id_t, siginfo_t *, int);+#endif++#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE)+#include <sys/resource.h>+pid_t wait3 (int *, int, struct rusage *);+pid_t wait4 (pid_t, int *, int, struct rusage *);+#endif++#define WNOHANG    1+#define WUNTRACED  2++#define WSTOPPED   2+#define WEXITED    4+#define WCONTINUED 8+#define WNOWAIT    0x1000000++#define __WNOTHREAD 0x20000000+#define __WALL      0x40000000+#define __WCLONE    0x80000000++#define WEXITSTATUS(s) (((s) & 0xff00) >> 8)+#define WTERMSIG(s) ((s) & 0x7f)+#define WSTOPSIG(s) WEXITSTATUS(s)+#define WCOREDUMP(s) ((s) & 0x80)+#define WIFEXITED(s) (!WTERMSIG(s))+#define WIFSTOPPED(s) ((short)((((s)&0xffff)*0x10001U)>>8) > 0x7f00)+#define WIFSIGNALED(s) (((s)&0xffff)-1U < 0xffu)+#define WIFCONTINUED(s) ((s) == 0xffff)++#if _REDIR_TIME64+#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE)+__REDIR(wait3, __wait3_time64);+__REDIR(wait4, __wait4_time64);+#endif+#endif++#ifdef __cplusplus+}+#endif+#endif
+ musl-include/aarch64/sys/xattr.h view
@@ -0,0 +1,32 @@+#ifndef	_SYS_XATTR_H+#define	_SYS_XATTR_H+#ifdef __cplusplus+extern "C" {+#endif++#define __NEED_ssize_t+#define __NEED_size_t+#include <bits/alltypes.h>++#define XATTR_CREATE 1+#define XATTR_REPLACE 2++ssize_t getxattr(const char *, const char *, void *, size_t);+ssize_t lgetxattr(const char *, const char *, void *, size_t);+ssize_t fgetxattr(int, const char *, void *, size_t);+ssize_t listxattr(const char *, char *, size_t);+ssize_t llistxattr(const char *, char *, size_t);+ssize_t flistxattr(int, char *, size_t);+int setxattr(const char *, const char *, const void *, size_t, int);+int lsetxattr(const char *, const char *, const void *, size_t, int);+int fsetxattr(int, const char *, const void *, size_t, int);+int removexattr(const char *, const char *);+int lremovexattr(const char *, const char *);+int fremovexattr(int, const char *);++#define __UAPI_DEF_XATTR        0++#ifdef __cplusplus+}+#endif+#endif
+ musl-include/aarch64/syscall.h view
@@ -0,0 +1,1 @@+#include <sys/syscall.h>
+ musl-include/aarch64/sysexits.h view
@@ -0,0 +1,21 @@+#ifndef	_SYSEXITS_H+#define _SYSEXITS_H+#define EX_OK 0+#define EX__BASE 64+#define EX_USAGE 64+#define EX_DATAERR 65+#define EX_NOINPUT 66+#define EX_NOUSER 67+#define EX_NOHOST 68+#define EX_UNAVAILABLE 69+#define EX_SOFTWARE 70+#define EX_OSERR 71+#define EX_OSFILE 72+#define EX_CANTCREAT 73+#define EX_IOERR 74+#define EX_TEMPFAIL 75+#define EX_PROTOCOL 76+#define EX_NOPERM 77+#define EX_CONFIG 78+#define EX__MAX 78+#endif
+ musl-include/aarch64/syslog.h view
@@ -0,0 +1,100 @@+#ifndef _SYSLOG_H+#define _SYSLOG_H++#ifdef __cplusplus+extern "C" {+#endif++#include <features.h>++#define LOG_EMERG   0+#define LOG_ALERT   1+#define LOG_CRIT    2+#define LOG_ERR     3+#define LOG_WARNING 4+#define LOG_NOTICE  5+#define LOG_INFO    6+#define LOG_DEBUG   7++#define LOG_PRIMASK 7+#define LOG_PRI(p) ((p)&LOG_PRIMASK)+#define	LOG_MAKEPRI(f, p) (((f)<<3)|(p))++#define LOG_MASK(p) (1<<(p))+#define LOG_UPTO(p) ((1<<((p)+1))-1)++#define LOG_KERN     (0<<3)+#define LOG_USER     (1<<3)+#define LOG_MAIL     (2<<3)+#define LOG_DAEMON   (3<<3)+#define LOG_AUTH     (4<<3)+#define LOG_SYSLOG   (5<<3)+#define LOG_LPR      (6<<3)+#define LOG_NEWS     (7<<3)+#define LOG_UUCP     (8<<3)+#define LOG_CRON     (9<<3)+#define	LOG_AUTHPRIV (10<<3)+#define	LOG_FTP      (11<<3)++#define LOG_LOCAL0   (16<<3)+#define LOG_LOCAL1   (17<<3)+#define LOG_LOCAL2   (18<<3)+#define LOG_LOCAL3   (19<<3)+#define LOG_LOCAL4   (20<<3)+#define LOG_LOCAL5   (21<<3)+#define LOG_LOCAL6   (22<<3)+#define LOG_LOCAL7   (23<<3)++#define LOG_NFACILITIES 24+#define LOG_FACMASK 0x3f8+#define LOG_FAC(p) (((p)&LOG_FACMASK)>>3)++#define LOG_PID    0x01+#define LOG_CONS   0x02+#define LOG_ODELAY 0x04+#define LOG_NDELAY 0x08+#define LOG_NOWAIT 0x10+#define LOG_PERROR 0x20++void closelog (void);+void openlog (const char *, int, int);+int setlogmask (int);+void syslog (int, const char *, ...);++#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE)+#define _PATH_LOG "/dev/log"+#define __NEED_va_list+#include <bits/alltypes.h>+void vsyslog (int, const char *, va_list);+#if defined(SYSLOG_NAMES)+#define	INTERNAL_NOPRI 0x10+#define	INTERNAL_MARK (LOG_NFACILITIES<<3)+typedef struct {+	char *c_name;+	int c_val;+} CODE;+#define prioritynames ((CODE *)(const CODE []){ \+	{ "alert", LOG_ALERT }, { "crit", LOG_CRIT }, { "debug", LOG_DEBUG }, \+	{ "emerg", LOG_EMERG }, { "err", LOG_ERR }, { "error", LOG_ERR }, \+	{ "info", LOG_INFO }, { "none", INTERNAL_NOPRI }, \+	{ "notice", LOG_NOTICE }, { "panic", LOG_EMERG }, \+	{ "warn", LOG_WARNING }, { "warning", LOG_WARNING }, { 0, -1 } })+#define facilitynames ((CODE *)(const CODE []){ \+	{ "auth", LOG_AUTH }, { "authpriv", LOG_AUTHPRIV }, \+	{ "cron", LOG_CRON }, { "daemon", LOG_DAEMON }, { "ftp", LOG_FTP }, \+	{ "kern", LOG_KERN }, { "lpr", LOG_LPR }, { "mail", LOG_MAIL }, \+	{ "mark", INTERNAL_MARK }, { "news", LOG_NEWS }, \+	{ "security", LOG_AUTH }, { "syslog", LOG_SYSLOG }, \+	{ "user", LOG_USER }, { "uucp", LOG_UUCP }, \+	{ "local0", LOG_LOCAL0 }, { "local1", LOG_LOCAL1 }, \+	{ "local2", LOG_LOCAL2 }, { "local3", LOG_LOCAL3 }, \+	{ "local4", LOG_LOCAL4 }, { "local5", LOG_LOCAL5 }, \+	{ "local6", LOG_LOCAL6 }, { "local7", LOG_LOCAL7 }, { 0, -1 } })+#endif+#endif++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/aarch64/tar.h view
@@ -0,0 +1,33 @@+#ifndef	_TAR_H+#define	_TAR_H++#define TSUID   04000+#define TSGID   02000+#define TSVTX   01000+#define TUREAD  00400+#define TUWRITE 00200+#define TUEXEC  00100+#define TGREAD  00040+#define TGWRITE 00020+#define TGEXEC  00010+#define TOREAD  00004+#define TOWRITE 00002+#define TOEXEC  00001++#define REGTYPE  '0'+#define AREGTYPE '\0'+#define LNKTYPE  '1'+#define SYMTYPE  '2'+#define CHRTYPE  '3'+#define BLKTYPE  '4'+#define DIRTYPE  '5'+#define FIFOTYPE '6'+#define CONTTYPE '7'++#define TMAGIC "ustar"+#define TMAGLEN 6++#define TVERSION "00"+#define TVERSLEN 2++#endif
+ musl-include/aarch64/termios.h view
@@ -0,0 +1,50 @@+#ifndef	_TERMIOS_H+#define	_TERMIOS_H++#ifdef __cplusplus+extern "C" {+#endif++#include <features.h>++#define __NEED_pid_t+#define __NEED_struct_winsize++#include <bits/alltypes.h>++typedef unsigned char cc_t;+typedef unsigned int speed_t;+typedef unsigned int tcflag_t;++#define NCCS 32++#include <bits/termios.h>++speed_t cfgetospeed (const struct termios *);+speed_t cfgetispeed (const struct termios *);+int cfsetospeed (struct termios *, speed_t);+int cfsetispeed (struct termios *, speed_t);++int tcgetattr (int, struct termios *);+int tcsetattr (int, int, const struct termios *);++int tcgetwinsize (int, struct winsize *);+int tcsetwinsize (int, const struct winsize *);++int tcsendbreak (int, int);+int tcdrain (int);+int tcflush (int, int);+int tcflow (int, int);++pid_t tcgetsid (int);++#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE)+void cfmakeraw(struct termios *);+int cfsetspeed(struct termios *, speed_t);+#endif++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/aarch64/tgmath.h view
@@ -0,0 +1,270 @@+#ifndef _TGMATH_H+#define _TGMATH_H++/*+the return types are only correct with gcc (__GNUC__)+otherwise they are long double or long double complex++the long double version of a function is never chosen when+sizeof(double) == sizeof(long double)+(but the return type is set correctly with gcc)+*/++#include <math.h>+#include <complex.h>++#define __IS_FP(x) (sizeof((x)+1ULL) == sizeof((x)+1.0f))+#define __IS_CX(x) (__IS_FP(x) && sizeof(x) == sizeof((x)+I))+#define __IS_REAL(x) (__IS_FP(x) && 2*sizeof(x) == sizeof((x)+I))++#define __FLT(x) (__IS_REAL(x) && sizeof(x) == sizeof(float))+#define __LDBL(x) (__IS_REAL(x) && sizeof(x) == sizeof(long double) && sizeof(long double) != sizeof(double))++#define __FLTCX(x) (__IS_CX(x) && sizeof(x) == sizeof(float complex))+#define __DBLCX(x) (__IS_CX(x) && sizeof(x) == sizeof(double complex))+#define __LDBLCX(x) (__IS_CX(x) && sizeof(x) == sizeof(long double complex) && sizeof(long double) != sizeof(double))++/* return type */++#ifdef __GNUC__+/*+the result must be casted to the right type+(otherwise the result type is determined by the conversion+rules applied to all the function return types so it is long+double or long double complex except for integral functions)++this cannot be done in c99, so the typeof gcc extension is+used and that the type of ?: depends on wether an operand is+a null pointer constant or not+(in c11 _Generic can be used)++the c arguments below must be integer constant expressions+so they can be in null pointer constants+(__IS_FP above was carefully chosen this way)+*/+/* if c then t else void */+#define __type1(c,t) __typeof__(*(0?(t*)0:(void*)!(c)))+/* if c then t1 else t2 */+#define __type2(c,t1,t2) __typeof__(*(0?(__type1(c,t1)*)0:(__type1(!(c),t2)*)0))+/* cast to double when x is integral, otherwise use typeof(x) */+#define __RETCAST(x) ( \+	__type2(__IS_FP(x), __typeof__(x), double))+/* 2 args case, should work for complex types (cpow) */+#define __RETCAST_2(x, y) ( \+	__type2(__IS_FP(x) && __IS_FP(y), \+		__typeof__((x)+(y)), \+		__typeof__((x)+(y)+1.0)))+/* 3 args case (fma only) */+#define __RETCAST_3(x, y, z) ( \+	__type2(__IS_FP(x) && __IS_FP(y) && __IS_FP(z), \+		__typeof__((x)+(y)+(z)), \+		__typeof__((x)+(y)+(z)+1.0)))+/* drop complex from the type of x */+/* TODO: wrong when sizeof(long double)==sizeof(double) */+#define __RETCAST_REAL(x) (  \+	__type2(__IS_FP(x) && sizeof((x)+I) == sizeof(float complex), float, \+	__type2(sizeof((x)+1.0+I) == sizeof(double complex), double, \+		long double)))+/* add complex to the type of x */+#define __RETCAST_CX(x) (__typeof__(__RETCAST(x)0+I))+#else+#define __RETCAST(x)+#define __RETCAST_2(x, y)+#define __RETCAST_3(x, y, z)+#define __RETCAST_REAL(x)+#define __RETCAST_CX(x)+#endif++/* function selection */++#define __tg_real_nocast(fun, x) ( \+	__FLT(x) ? fun ## f (x) : \+	__LDBL(x) ? fun ## l (x) : \+	fun(x) )++#define __tg_real(fun, x) (__RETCAST(x)__tg_real_nocast(fun, x))++#define __tg_real_2_1(fun, x, y) (__RETCAST(x)( \+	__FLT(x) ? fun ## f (x, y) : \+	__LDBL(x) ? fun ## l (x, y) : \+	fun(x, y) ))++#define __tg_real_2(fun, x, y) (__RETCAST_2(x, y)( \+	__FLT(x) && __FLT(y) ? fun ## f (x, y) : \+	__LDBL((x)+(y)) ? fun ## l (x, y) : \+	fun(x, y) ))++#define __tg_complex(fun, x) (__RETCAST_CX(x)( \+	__FLTCX((x)+I) && __IS_FP(x) ? fun ## f (x) : \+	__LDBLCX((x)+I) ? fun ## l (x) : \+	fun(x) ))++#define __tg_complex_retreal(fun, x) (__RETCAST_REAL(x)( \+	__FLTCX((x)+I) && __IS_FP(x) ? fun ## f (x) : \+	__LDBLCX((x)+I) ? fun ## l (x) : \+	fun(x) ))++#define __tg_real_complex(fun, x) (__RETCAST(x)( \+	__FLTCX(x) ? c ## fun ## f (x) : \+	__DBLCX(x) ? c ## fun (x) : \+	__LDBLCX(x) ? c ## fun ## l (x) : \+	__FLT(x) ? fun ## f (x) : \+	__LDBL(x) ? fun ## l (x) : \+	fun(x) ))++/* special cases */++#define __tg_real_remquo(x, y, z) (__RETCAST_2(x, y)( \+	__FLT(x) && __FLT(y) ? remquof(x, y, z) : \+	__LDBL((x)+(y)) ? remquol(x, y, z) : \+	remquo(x, y, z) ))++#define __tg_real_fma(x, y, z) (__RETCAST_3(x, y, z)( \+	__FLT(x) && __FLT(y) && __FLT(z) ? fmaf(x, y, z) : \+	__LDBL((x)+(y)+(z)) ? fmal(x, y, z) : \+	fma(x, y, z) ))++#define __tg_real_complex_pow(x, y) (__RETCAST_2(x, y)( \+	__FLTCX((x)+(y)) && __IS_FP(x) && __IS_FP(y) ? cpowf(x, y) : \+	__FLTCX((x)+(y)) ? cpow(x, y) : \+	__DBLCX((x)+(y)) ? cpow(x, y) : \+	__LDBLCX((x)+(y)) ? cpowl(x, y) : \+	__FLT(x) && __FLT(y) ? powf(x, y) : \+	__LDBL((x)+(y)) ? powl(x, y) : \+	pow(x, y) ))++#define __tg_real_complex_fabs(x) (__RETCAST_REAL(x)( \+	__FLTCX(x) ? cabsf(x) : \+	__DBLCX(x) ? cabs(x) : \+	__LDBLCX(x) ? cabsl(x) : \+	__FLT(x) ? fabsf(x) : \+	__LDBL(x) ? fabsl(x) : \+	fabs(x) ))++/* suppress any macros in math.h or complex.h */++#undef acos+#undef acosh+#undef asin+#undef asinh+#undef atan+#undef atan2+#undef atanh+#undef carg+#undef cbrt+#undef ceil+#undef cimag+#undef conj+#undef copysign+#undef cos+#undef cosh+#undef cproj+#undef creal+#undef erf+#undef erfc+#undef exp+#undef exp2+#undef expm1+#undef fabs+#undef fdim+#undef floor+#undef fma+#undef fmax+#undef fmin+#undef fmod+#undef frexp+#undef hypot+#undef ilogb+#undef ldexp+#undef lgamma+#undef llrint+#undef llround+#undef log+#undef log10+#undef log1p+#undef log2+#undef logb+#undef lrint+#undef lround+#undef nearbyint+#undef nextafter+#undef nexttoward+#undef pow+#undef remainder+#undef remquo+#undef rint+#undef round+#undef scalbln+#undef scalbn+#undef sin+#undef sinh+#undef sqrt+#undef tan+#undef tanh+#undef tgamma+#undef trunc++/* tg functions */++#define acos(x)         __tg_real_complex(acos, (x))+#define acosh(x)        __tg_real_complex(acosh, (x))+#define asin(x)         __tg_real_complex(asin, (x))+#define asinh(x)        __tg_real_complex(asinh, (x))+#define atan(x)         __tg_real_complex(atan, (x))+#define atan2(x,y)      __tg_real_2(atan2, (x), (y))+#define atanh(x)        __tg_real_complex(atanh, (x))+#define carg(x)         __tg_complex_retreal(carg, (x))+#define cbrt(x)         __tg_real(cbrt, (x))+#define ceil(x)         __tg_real(ceil, (x))+#define cimag(x)        __tg_complex_retreal(cimag, (x))+#define conj(x)         __tg_complex(conj, (x))+#define copysign(x,y)   __tg_real_2(copysign, (x), (y))+#define cos(x)          __tg_real_complex(cos, (x))+#define cosh(x)         __tg_real_complex(cosh, (x))+#define cproj(x)        __tg_complex(cproj, (x))+#define creal(x)        __tg_complex_retreal(creal, (x))+#define erf(x)          __tg_real(erf, (x))+#define erfc(x)         __tg_real(erfc, (x))+#define exp(x)          __tg_real_complex(exp, (x))+#define exp2(x)         __tg_real(exp2, (x))+#define expm1(x)        __tg_real(expm1, (x))+#define fabs(x)         __tg_real_complex_fabs(x)+#define fdim(x,y)       __tg_real_2(fdim, (x), (y))+#define floor(x)        __tg_real(floor, (x))+#define fma(x,y,z)      __tg_real_fma((x), (y), (z))+#define fmax(x,y)       __tg_real_2(fmax, (x), (y))+#define fmin(x,y)       __tg_real_2(fmin, (x), (y))+#define fmod(x,y)       __tg_real_2(fmod, (x), (y))+#define frexp(x,y)      __tg_real_2_1(frexp, (x), (y))+#define hypot(x,y)      __tg_real_2(hypot, (x), (y))+#define ilogb(x)        __tg_real_nocast(ilogb, (x))+#define ldexp(x,y)      __tg_real_2_1(ldexp, (x), (y))+#define lgamma(x)       __tg_real(lgamma, (x))+#define llrint(x)       __tg_real_nocast(llrint, (x))+#define llround(x)      __tg_real_nocast(llround, (x))+#define log(x)          __tg_real_complex(log, (x))+#define log10(x)        __tg_real(log10, (x))+#define log1p(x)        __tg_real(log1p, (x))+#define log2(x)         __tg_real(log2, (x))+#define logb(x)         __tg_real(logb, (x))+#define lrint(x)        __tg_real_nocast(lrint, (x))+#define lround(x)       __tg_real_nocast(lround, (x))+#define nearbyint(x)    __tg_real(nearbyint, (x))+#define nextafter(x,y)  __tg_real_2(nextafter, (x), (y))+#define nexttoward(x,y) __tg_real_2(nexttoward, (x), (y))+#define pow(x,y)        __tg_real_complex_pow((x), (y))+#define remainder(x,y)  __tg_real_2(remainder, (x), (y))+#define remquo(x,y,z)   __tg_real_remquo((x), (y), (z))+#define rint(x)         __tg_real(rint, (x))+#define round(x)        __tg_real(round, (x))+#define scalbln(x,y)    __tg_real_2_1(scalbln, (x), (y))+#define scalbn(x,y)     __tg_real_2_1(scalbn, (x), (y))+#define sin(x)          __tg_real_complex(sin, (x))+#define sinh(x)         __tg_real_complex(sinh, (x))+#define sqrt(x)         __tg_real_complex(sqrt, (x))+#define tan(x)          __tg_real_complex(tan, (x))+#define tanh(x)         __tg_real_complex(tanh, (x))+#define tgamma(x)       __tg_real(tgamma, (x))+#define trunc(x)        __tg_real(trunc, (x))++#endif
+ musl-include/aarch64/threads.h view
@@ -0,0 +1,93 @@+#ifndef _THREADS_H+#define _THREADS_H++#include <features.h>+#include <time.h>++#ifdef __cplusplus+extern "C" {+typedef unsigned long thrd_t;+#else+typedef struct __pthread *thrd_t;+#define thread_local _Thread_local+#endif++typedef int once_flag;+typedef unsigned tss_t;+typedef int (*thrd_start_t)(void *);+typedef void (*tss_dtor_t)(void *);++#define __NEED_cnd_t+#define __NEED_mtx_t++#include <bits/alltypes.h>++#define TSS_DTOR_ITERATIONS 4++enum {+	thrd_success  = 0,+	thrd_busy     = 1,+	thrd_error    = 2,+	thrd_nomem    = 3,+	thrd_timedout = 4,+};++enum {+	mtx_plain     = 0,+	mtx_recursive = 1,+	mtx_timed     = 2,+};++#define ONCE_FLAG_INIT 0++int thrd_create(thrd_t *, thrd_start_t, void *);+_Noreturn void thrd_exit(int);++int thrd_detach(thrd_t);+int thrd_join(thrd_t, int *);++int thrd_sleep(const struct timespec *, struct timespec *);+void thrd_yield(void);++thrd_t thrd_current(void);+int thrd_equal(thrd_t, thrd_t);+#ifndef __cplusplus+#define thrd_equal(A, B) ((A) == (B))+#endif++void call_once(once_flag *, void (*)(void));++int mtx_init(mtx_t *, int);+void mtx_destroy(mtx_t *);++int mtx_lock(mtx_t *);+int mtx_timedlock(mtx_t *__restrict, const struct timespec *__restrict);+int mtx_trylock(mtx_t *);+int mtx_unlock(mtx_t *);++int cnd_init(cnd_t *);+void cnd_destroy(cnd_t *);++int cnd_broadcast(cnd_t *);+int cnd_signal(cnd_t *);++int cnd_timedwait(cnd_t *__restrict, mtx_t *__restrict, const struct timespec *__restrict);+int cnd_wait(cnd_t *, mtx_t *);++int tss_create(tss_t *, tss_dtor_t);+void tss_delete(tss_t);++int tss_set(tss_t, void *);+void *tss_get(tss_t);++#if _REDIR_TIME64+__REDIR(thrd_sleep, __thrd_sleep_time64);+__REDIR(mtx_timedlock, __mtx_timedlock_time64);+__REDIR(cnd_timedwait, __cnd_timedwait_time64);+#endif++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/aarch64/time.h view
@@ -0,0 +1,168 @@+#ifndef	_TIME_H+#define _TIME_H++#ifdef __cplusplus+extern "C" {+#endif++#include <features.h>++#if __cplusplus >= 201103L+#define NULL nullptr+#elif defined(__cplusplus)+#define NULL 0L+#else+#define NULL ((void*)0)+#endif+++#define __NEED_size_t+#define __NEED_time_t+#define __NEED_clock_t+#define __NEED_struct_timespec++#if defined(_POSIX_SOURCE) || defined(_POSIX_C_SOURCE) \+ || defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) \+ || defined(_BSD_SOURCE)+#define __NEED_clockid_t+#define __NEED_timer_t+#define __NEED_pid_t+#define __NEED_locale_t+#endif++#include <bits/alltypes.h>++#if defined(_BSD_SOURCE) || defined(_GNU_SOURCE)+#define __tm_gmtoff tm_gmtoff+#define __tm_zone tm_zone+#endif++struct tm {+	int tm_sec;+	int tm_min;+	int tm_hour;+	int tm_mday;+	int tm_mon;+	int tm_year;+	int tm_wday;+	int tm_yday;+	int tm_isdst;+	long __tm_gmtoff;+	const char *__tm_zone;+};++clock_t clock (void);+time_t time (time_t *);+double difftime (time_t, time_t);+time_t mktime (struct tm *);+size_t strftime (char *__restrict, size_t, const char *__restrict, const struct tm *__restrict);+struct tm *gmtime (const time_t *);+struct tm *localtime (const time_t *);+char *asctime (const struct tm *);+char *ctime (const time_t *);+int timespec_get(struct timespec *, int);++#define CLOCKS_PER_SEC 1000000L++#define TIME_UTC 1++#if defined(_POSIX_SOURCE) || defined(_POSIX_C_SOURCE) \+ || defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) \+ || defined(_BSD_SOURCE)++size_t strftime_l (char *  __restrict, size_t, const char *  __restrict, const struct tm *  __restrict, locale_t);++struct tm *gmtime_r (const time_t *__restrict, struct tm *__restrict);+struct tm *localtime_r (const time_t *__restrict, struct tm *__restrict);+char *asctime_r (const struct tm *__restrict, char *__restrict);+char *ctime_r (const time_t *, char *);++void tzset (void);++struct itimerspec {+	struct timespec it_interval;+	struct timespec it_value;+};++#define CLOCK_REALTIME           0+#define CLOCK_MONOTONIC          1+#define CLOCK_PROCESS_CPUTIME_ID 2+#define CLOCK_THREAD_CPUTIME_ID  3+#define CLOCK_MONOTONIC_RAW      4+#define CLOCK_REALTIME_COARSE    5+#define CLOCK_MONOTONIC_COARSE   6+#define CLOCK_BOOTTIME           7+#define CLOCK_REALTIME_ALARM     8+#define CLOCK_BOOTTIME_ALARM     9+#define CLOCK_SGI_CYCLE         10+#define CLOCK_TAI               11++#define TIMER_ABSTIME 1++int nanosleep (const struct timespec *, struct timespec *);+int clock_getres (clockid_t, struct timespec *);+int clock_gettime (clockid_t, struct timespec *);+int clock_settime (clockid_t, const struct timespec *);+int clock_nanosleep (clockid_t, int, const struct timespec *, struct timespec *);+int clock_getcpuclockid (pid_t, clockid_t *);++struct sigevent;+int timer_create (clockid_t, struct sigevent *__restrict, timer_t *__restrict);+int timer_delete (timer_t);+int timer_settime (timer_t, int, const struct itimerspec *__restrict, struct itimerspec *__restrict);+int timer_gettime (timer_t, struct itimerspec *);+int timer_getoverrun (timer_t);++extern char *tzname[2];++#endif+++#if defined(_XOPEN_SOURCE) || defined(_BSD_SOURCE) || defined(_GNU_SOURCE)+char *strptime (const char *__restrict, const char *__restrict, struct tm *__restrict);+extern int daylight;+extern long timezone;+extern int getdate_err;+struct tm *getdate (const char *);+#endif+++#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE)+int stime(const time_t *);+time_t timegm(struct tm *);+#endif++#if _REDIR_TIME64+__REDIR(time, __time64);+__REDIR(difftime, __difftime64);+__REDIR(mktime, __mktime64);+__REDIR(gmtime, __gmtime64);+__REDIR(localtime, __localtime64);+__REDIR(ctime, __ctime64);+__REDIR(timespec_get, __timespec_get_time64);+#if defined(_POSIX_SOURCE) || defined(_POSIX_C_SOURCE) \+ || defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) \+ || defined(_BSD_SOURCE)+__REDIR(gmtime_r, __gmtime64_r);+__REDIR(localtime_r, __localtime64_r);+__REDIR(ctime_r, __ctime64_r);+__REDIR(nanosleep, __nanosleep_time64);+__REDIR(clock_getres, __clock_getres_time64);+__REDIR(clock_gettime, __clock_gettime64);+__REDIR(clock_settime, __clock_settime64);+__REDIR(clock_nanosleep, __clock_nanosleep_time64);+__REDIR(timer_settime, __timer_settime64);+__REDIR(timer_gettime, __timer_gettime64);+#endif+#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE)+__REDIR(stime, __stime64);+__REDIR(timegm, __timegm_time64);+#endif+#endif++#ifdef __cplusplus+}+#endif+++#endif
+ musl-include/aarch64/uchar.h view
@@ -0,0 +1,29 @@+#ifndef _UCHAR_H+#define _UCHAR_H++#ifdef __cplusplus+extern "C" {+#endif++#if __cplusplus < 201103L+typedef unsigned short char16_t;+typedef unsigned char32_t;+#endif++#define __NEED_mbstate_t+#define __NEED_size_t++#include <features.h>+#include <bits/alltypes.h>++size_t c16rtomb(char *__restrict, char16_t, mbstate_t *__restrict);+size_t mbrtoc16(char16_t *__restrict, const char *__restrict, size_t, mbstate_t *__restrict);++size_t c32rtomb(char *__restrict, char32_t, mbstate_t *__restrict);+size_t mbrtoc32(char32_t *__restrict, const char *__restrict, size_t, mbstate_t *__restrict);++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/aarch64/ucontext.h view
@@ -0,0 +1,25 @@+#ifndef _UCONTEXT_H+#define _UCONTEXT_H+#ifdef __cplusplus+extern "C" {+#endif++#include <features.h>++#include <signal.h>++#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE)+#define NGREG (sizeof(gregset_t)/sizeof(greg_t))+#endif++struct __ucontext;++int  getcontext(struct __ucontext *);+void makecontext(struct __ucontext *, void (*)(), int, ...);+int  setcontext(const struct __ucontext *);+int  swapcontext(struct __ucontext *, const struct __ucontext *);++#ifdef __cplusplus+}+#endif+#endif
+ musl-include/aarch64/ulimit.h view
@@ -0,0 +1,17 @@+#ifndef _ULIMIT_H+#define _ULIMIT_H++#ifdef __cplusplus+extern "C" {+#endif++#define UL_GETFSIZE 1+#define UL_SETFSIZE 2++long ulimit (int, ...);++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/aarch64/unistd.h view
@@ -0,0 +1,479 @@+#ifndef	_UNISTD_H+#define	_UNISTD_H++#ifdef __cplusplus+extern "C" {+#endif++#include <features.h>++#define STDIN_FILENO  0+#define STDOUT_FILENO 1+#define STDERR_FILENO 2++#define SEEK_SET 0+#define SEEK_CUR 1+#define SEEK_END 2+#define SEEK_DATA 3+#define SEEK_HOLE 4++#if __cplusplus >= 201103L+#define NULL nullptr+#elif defined(__cplusplus)+#define NULL 0L+#else+#define NULL ((void*)0)+#endif++#define __NEED_size_t+#define __NEED_ssize_t+#define __NEED_uid_t+#define __NEED_gid_t+#define __NEED_off_t+#define __NEED_pid_t+#define __NEED_intptr_t+#define __NEED_useconds_t++#include <bits/alltypes.h>++int pipe(int [2]);+int pipe2(int [2], int);+int close(int);+int posix_close(int, int);+int dup(int);+int dup2(int, int);+int dup3(int, int, int);+off_t lseek(int, off_t, int);+int fsync(int);+int fdatasync(int);++ssize_t read(int, void *, size_t);+ssize_t write(int, const void *, size_t);+ssize_t pread(int, void *, size_t, off_t);+ssize_t pwrite(int, const void *, size_t, off_t);++int chown(const char *, uid_t, gid_t);+int fchown(int, uid_t, gid_t);+int lchown(const char *, uid_t, gid_t);+int fchownat(int, const char *, uid_t, gid_t, int);++int link(const char *, const char *);+int linkat(int, const char *, int, const char *, int);+int symlink(const char *, const char *);+int symlinkat(const char *, int, const char *);+ssize_t readlink(const char *__restrict, char *__restrict, size_t);+ssize_t readlinkat(int, const char *__restrict, char *__restrict, size_t);+int unlink(const char *);+int unlinkat(int, const char *, int);+int rmdir(const char *);+int truncate(const char *, off_t);+int ftruncate(int, off_t);++#define F_OK 0+#define R_OK 4+#define W_OK 2+#define X_OK 1++int access(const char *, int);+int faccessat(int, const char *, int, int);++int chdir(const char *);+int fchdir(int);+char *getcwd(char *, size_t);++unsigned alarm(unsigned);+unsigned sleep(unsigned);+int pause(void);++pid_t fork(void);+pid_t _Fork(void);+int execve(const char *, char *const [], char *const []);+int execv(const char *, char *const []);+int execle(const char *, const char *, ...);+int execl(const char *, const char *, ...);+int execvp(const char *, char *const []);+int execlp(const char *, const char *, ...);+int fexecve(int, char *const [], char *const []);+_Noreturn void _exit(int);++pid_t getpid(void);+pid_t getppid(void);+pid_t getpgrp(void);+pid_t getpgid(pid_t);+int setpgid(pid_t, pid_t);+pid_t setsid(void);+pid_t getsid(pid_t);+char *ttyname(int);+int ttyname_r(int, char *, size_t);+int isatty(int);+pid_t tcgetpgrp(int);+int tcsetpgrp(int, pid_t);++uid_t getuid(void);+uid_t geteuid(void);+gid_t getgid(void);+gid_t getegid(void);+int getgroups(int, gid_t []);+int setuid(uid_t);+int seteuid(uid_t);+int setgid(gid_t);+int setegid(gid_t);++char *getlogin(void);+int getlogin_r(char *, size_t);+int gethostname(char *, size_t);+char *ctermid(char *);++int getopt(int, char * const [], const char *);+extern char *optarg;+extern int optind, opterr, optopt;++long pathconf(const char *, int);+long fpathconf(int, int);+long sysconf(int);+size_t confstr(int, char *, size_t);++#if defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) || defined(_BSD_SOURCE)+#define F_ULOCK 0+#define F_LOCK  1+#define F_TLOCK 2+#define F_TEST  3+int setreuid(uid_t, uid_t);+int setregid(gid_t, gid_t);+int lockf(int, int, off_t);+long gethostid(void);+int nice(int);+void sync(void);+pid_t setpgrp(void);+char *crypt(const char *, const char *);+void encrypt(char *, int);+void swab(const void *__restrict, void *__restrict, ssize_t);+#endif++#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE) \+ || (defined(_XOPEN_SOURCE) && _XOPEN_SOURCE+0 < 700)+int usleep(unsigned);+unsigned ualarm(unsigned, unsigned);+#endif++#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE)+#define L_SET 0+#define L_INCR 1+#define L_XTND 2+int brk(void *);+void *sbrk(intptr_t);+pid_t vfork(void);+int vhangup(void);+int chroot(const char *);+int getpagesize(void);+int getdtablesize(void);+int sethostname(const char *, size_t);+int getdomainname(char *, size_t);+int setdomainname(const char *, size_t);+int setgroups(size_t, const gid_t *);+char *getpass(const char *);+int daemon(int, int);+void setusershell(void);+void endusershell(void);+char *getusershell(void);+int acct(const char *);+long syscall(long, ...);+int execvpe(const char *, char *const [], char *const []);+int issetugid(void);+int getentropy(void *, size_t);+extern int optreset;+#endif++#ifdef _GNU_SOURCE+extern char **environ;+int setresuid(uid_t, uid_t, uid_t);+int setresgid(gid_t, gid_t, gid_t);+int getresuid(uid_t *, uid_t *, uid_t *);+int getresgid(gid_t *, gid_t *, gid_t *);+char *get_current_dir_name(void);+int syncfs(int);+int euidaccess(const char *, int);+int eaccess(const char *, int);+ssize_t copy_file_range(int, off_t *, int, off_t *, size_t, unsigned);+pid_t gettid(void);+#endif++#if defined(_LARGEFILE64_SOURCE)+#define lseek64 lseek+#define pread64 pread+#define pwrite64 pwrite+#define truncate64 truncate+#define ftruncate64 ftruncate+#define lockf64 lockf+#define off64_t off_t+#endif++#define POSIX_CLOSE_RESTART     0++#define _XOPEN_VERSION          700+#define _XOPEN_UNIX             1+#define _XOPEN_ENH_I18N         1++#define _POSIX_VERSION          200809L+#define _POSIX2_VERSION         _POSIX_VERSION++#define _POSIX_ADVISORY_INFO    _POSIX_VERSION+#define _POSIX_CHOWN_RESTRICTED 1+#define _POSIX_IPV6             _POSIX_VERSION+#define _POSIX_JOB_CONTROL      1+#define _POSIX_MAPPED_FILES     _POSIX_VERSION+#define _POSIX_MEMLOCK          _POSIX_VERSION+#define _POSIX_MEMLOCK_RANGE    _POSIX_VERSION+#define _POSIX_MEMORY_PROTECTION _POSIX_VERSION+#define _POSIX_MESSAGE_PASSING  _POSIX_VERSION+#define _POSIX_FSYNC            _POSIX_VERSION+#define _POSIX_NO_TRUNC         1+#define _POSIX_RAW_SOCKETS      _POSIX_VERSION+#define _POSIX_REALTIME_SIGNALS _POSIX_VERSION+#define _POSIX_REGEXP           1+#define _POSIX_SAVED_IDS        1+#define _POSIX_SHELL            1+#define _POSIX_SPAWN            _POSIX_VERSION+#define _POSIX_VDISABLE         0++#define _POSIX_THREADS          _POSIX_VERSION+#define _POSIX_THREAD_PROCESS_SHARED _POSIX_VERSION+#define _POSIX_THREAD_SAFE_FUNCTIONS _POSIX_VERSION+#define _POSIX_THREAD_ATTR_STACKADDR _POSIX_VERSION+#define _POSIX_THREAD_ATTR_STACKSIZE _POSIX_VERSION+#define _POSIX_THREAD_PRIORITY_SCHEDULING _POSIX_VERSION+#define _POSIX_THREAD_CPUTIME   _POSIX_VERSION+#define _POSIX_TIMERS           _POSIX_VERSION+#define _POSIX_TIMEOUTS         _POSIX_VERSION+#define _POSIX_MONOTONIC_CLOCK  _POSIX_VERSION+#define _POSIX_CPUTIME          _POSIX_VERSION+#define _POSIX_CLOCK_SELECTION  _POSIX_VERSION+#define _POSIX_BARRIERS         _POSIX_VERSION+#define _POSIX_SPIN_LOCKS       _POSIX_VERSION+#define _POSIX_READER_WRITER_LOCKS _POSIX_VERSION+#define _POSIX_ASYNCHRONOUS_IO  _POSIX_VERSION+#define _POSIX_SEMAPHORES       _POSIX_VERSION+#define _POSIX_SHARED_MEMORY_OBJECTS _POSIX_VERSION++#define _POSIX2_C_BIND          _POSIX_VERSION++#include <bits/posix.h>++++#define _PC_LINK_MAX	0+#define _PC_MAX_CANON	1+#define _PC_MAX_INPUT	2+#define _PC_NAME_MAX	3+#define _PC_PATH_MAX	4+#define _PC_PIPE_BUF	5+#define _PC_CHOWN_RESTRICTED	6+#define _PC_NO_TRUNC	7+#define _PC_VDISABLE	8+#define _PC_SYNC_IO	9+#define _PC_ASYNC_IO	10+#define _PC_PRIO_IO	11+#define _PC_SOCK_MAXBUF	12+#define _PC_FILESIZEBITS	13+#define _PC_REC_INCR_XFER_SIZE	14+#define _PC_REC_MAX_XFER_SIZE	15+#define _PC_REC_MIN_XFER_SIZE	16+#define _PC_REC_XFER_ALIGN	17+#define _PC_ALLOC_SIZE_MIN	18+#define _PC_SYMLINK_MAX	19+#define _PC_2_SYMLINKS	20++#define _SC_ARG_MAX	0+#define _SC_CHILD_MAX	1+#define _SC_CLK_TCK	2+#define _SC_NGROUPS_MAX	3+#define _SC_OPEN_MAX	4+#define _SC_STREAM_MAX	5+#define _SC_TZNAME_MAX	6+#define _SC_JOB_CONTROL	7+#define _SC_SAVED_IDS	8+#define _SC_REALTIME_SIGNALS	9+#define _SC_PRIORITY_SCHEDULING	10+#define _SC_TIMERS	11+#define _SC_ASYNCHRONOUS_IO	12+#define _SC_PRIORITIZED_IO	13+#define _SC_SYNCHRONIZED_IO	14+#define _SC_FSYNC	15+#define _SC_MAPPED_FILES	16+#define _SC_MEMLOCK	17+#define _SC_MEMLOCK_RANGE	18+#define _SC_MEMORY_PROTECTION	19+#define _SC_MESSAGE_PASSING	20+#define _SC_SEMAPHORES	21+#define _SC_SHARED_MEMORY_OBJECTS	22+#define _SC_AIO_LISTIO_MAX	23+#define _SC_AIO_MAX	24+#define _SC_AIO_PRIO_DELTA_MAX	25+#define _SC_DELAYTIMER_MAX	26+#define _SC_MQ_OPEN_MAX	27+#define _SC_MQ_PRIO_MAX	28+#define _SC_VERSION	29+#define _SC_PAGE_SIZE	30+#define _SC_PAGESIZE	30 /* !! */+#define _SC_RTSIG_MAX	31+#define _SC_SEM_NSEMS_MAX	32+#define _SC_SEM_VALUE_MAX	33+#define _SC_SIGQUEUE_MAX	34+#define _SC_TIMER_MAX	35+#define _SC_BC_BASE_MAX	36+#define _SC_BC_DIM_MAX	37+#define _SC_BC_SCALE_MAX	38+#define _SC_BC_STRING_MAX	39+#define _SC_COLL_WEIGHTS_MAX	40+#define _SC_EXPR_NEST_MAX	42+#define _SC_LINE_MAX	43+#define _SC_RE_DUP_MAX	44+#define _SC_2_VERSION	46+#define _SC_2_C_BIND	47+#define _SC_2_C_DEV	48+#define _SC_2_FORT_DEV	49+#define _SC_2_FORT_RUN	50+#define _SC_2_SW_DEV	51+#define _SC_2_LOCALEDEF	52+#define _SC_UIO_MAXIOV	60 /* !! */+#define _SC_IOV_MAX	60+#define _SC_THREADS	67+#define _SC_THREAD_SAFE_FUNCTIONS	68+#define _SC_GETGR_R_SIZE_MAX	69+#define _SC_GETPW_R_SIZE_MAX	70+#define _SC_LOGIN_NAME_MAX	71+#define _SC_TTY_NAME_MAX	72+#define _SC_THREAD_DESTRUCTOR_ITERATIONS	73+#define _SC_THREAD_KEYS_MAX	74+#define _SC_THREAD_STACK_MIN	75+#define _SC_THREAD_THREADS_MAX	76+#define _SC_THREAD_ATTR_STACKADDR	77+#define _SC_THREAD_ATTR_STACKSIZE	78+#define _SC_THREAD_PRIORITY_SCHEDULING	79+#define _SC_THREAD_PRIO_INHERIT	80+#define _SC_THREAD_PRIO_PROTECT	81+#define _SC_THREAD_PROCESS_SHARED	82+#define _SC_NPROCESSORS_CONF	83+#define _SC_NPROCESSORS_ONLN	84+#define _SC_PHYS_PAGES	85+#define _SC_AVPHYS_PAGES	86+#define _SC_ATEXIT_MAX	87+#define _SC_PASS_MAX	88+#define _SC_XOPEN_VERSION	89+#define _SC_XOPEN_XCU_VERSION	90+#define _SC_XOPEN_UNIX	91+#define _SC_XOPEN_CRYPT	92+#define _SC_XOPEN_ENH_I18N	93+#define _SC_XOPEN_SHM	94+#define _SC_2_CHAR_TERM	95+#define _SC_2_UPE	97+#define _SC_XOPEN_XPG2	98+#define _SC_XOPEN_XPG3	99+#define _SC_XOPEN_XPG4	100+#define _SC_NZERO	109+#define _SC_XBS5_ILP32_OFF32	125+#define _SC_XBS5_ILP32_OFFBIG	126+#define _SC_XBS5_LP64_OFF64	127+#define _SC_XBS5_LPBIG_OFFBIG	128+#define _SC_XOPEN_LEGACY	129+#define _SC_XOPEN_REALTIME	130+#define _SC_XOPEN_REALTIME_THREADS	131+#define _SC_ADVISORY_INFO	132+#define _SC_BARRIERS	133+#define _SC_CLOCK_SELECTION	137+#define _SC_CPUTIME	138+#define _SC_THREAD_CPUTIME	139+#define _SC_MONOTONIC_CLOCK	149+#define _SC_READER_WRITER_LOCKS	153+#define _SC_SPIN_LOCKS	154+#define _SC_REGEXP	155+#define _SC_SHELL	157+#define _SC_SPAWN	159+#define _SC_SPORADIC_SERVER	160+#define _SC_THREAD_SPORADIC_SERVER	161+#define _SC_TIMEOUTS	164+#define _SC_TYPED_MEMORY_OBJECTS	165+#define _SC_2_PBS	168+#define _SC_2_PBS_ACCOUNTING	169+#define _SC_2_PBS_LOCATE	170+#define _SC_2_PBS_MESSAGE	171+#define _SC_2_PBS_TRACK	172+#define _SC_SYMLOOP_MAX	173+#define _SC_STREAMS	174+#define _SC_2_PBS_CHECKPOINT	175+#define _SC_V6_ILP32_OFF32	176+#define _SC_V6_ILP32_OFFBIG	177+#define _SC_V6_LP64_OFF64	178+#define _SC_V6_LPBIG_OFFBIG	179+#define _SC_HOST_NAME_MAX	180+#define _SC_TRACE	181+#define _SC_TRACE_EVENT_FILTER	182+#define _SC_TRACE_INHERIT	183+#define _SC_TRACE_LOG	184++#define _SC_IPV6	235+#define _SC_RAW_SOCKETS	236+#define _SC_V7_ILP32_OFF32	237+#define _SC_V7_ILP32_OFFBIG	238+#define _SC_V7_LP64_OFF64	239+#define _SC_V7_LPBIG_OFFBIG	240+#define _SC_SS_REPL_MAX	241+#define _SC_TRACE_EVENT_NAME_MAX	242+#define _SC_TRACE_NAME_MAX	243+#define _SC_TRACE_SYS_MAX	244+#define _SC_TRACE_USER_EVENT_MAX	245+#define _SC_XOPEN_STREAMS	246+#define _SC_THREAD_ROBUST_PRIO_INHERIT	247+#define _SC_THREAD_ROBUST_PRIO_PROTECT	248+#define _SC_MINSIGSTKSZ	249+#define _SC_SIGSTKSZ	250++#define _CS_PATH	0+#define _CS_POSIX_V6_WIDTH_RESTRICTED_ENVS	1+#define _CS_GNU_LIBC_VERSION	2+#define _CS_GNU_LIBPTHREAD_VERSION	3+#define _CS_POSIX_V5_WIDTH_RESTRICTED_ENVS	4+#define _CS_POSIX_V7_WIDTH_RESTRICTED_ENVS	5++#define _CS_POSIX_V6_ILP32_OFF32_CFLAGS	1116+#define _CS_POSIX_V6_ILP32_OFF32_LDFLAGS	1117+#define _CS_POSIX_V6_ILP32_OFF32_LIBS	1118+#define _CS_POSIX_V6_ILP32_OFF32_LINTFLAGS	1119+#define _CS_POSIX_V6_ILP32_OFFBIG_CFLAGS	1120+#define _CS_POSIX_V6_ILP32_OFFBIG_LDFLAGS	1121+#define _CS_POSIX_V6_ILP32_OFFBIG_LIBS	1122+#define _CS_POSIX_V6_ILP32_OFFBIG_LINTFLAGS	1123+#define _CS_POSIX_V6_LP64_OFF64_CFLAGS	1124+#define _CS_POSIX_V6_LP64_OFF64_LDFLAGS	1125+#define _CS_POSIX_V6_LP64_OFF64_LIBS	1126+#define _CS_POSIX_V6_LP64_OFF64_LINTFLAGS	1127+#define _CS_POSIX_V6_LPBIG_OFFBIG_CFLAGS	1128+#define _CS_POSIX_V6_LPBIG_OFFBIG_LDFLAGS	1129+#define _CS_POSIX_V6_LPBIG_OFFBIG_LIBS	1130+#define _CS_POSIX_V6_LPBIG_OFFBIG_LINTFLAGS	1131+#define _CS_POSIX_V7_ILP32_OFF32_CFLAGS	1132+#define _CS_POSIX_V7_ILP32_OFF32_LDFLAGS	1133+#define _CS_POSIX_V7_ILP32_OFF32_LIBS	1134+#define _CS_POSIX_V7_ILP32_OFF32_LINTFLAGS	1135+#define _CS_POSIX_V7_ILP32_OFFBIG_CFLAGS	1136+#define _CS_POSIX_V7_ILP32_OFFBIG_LDFLAGS	1137+#define _CS_POSIX_V7_ILP32_OFFBIG_LIBS	1138+#define _CS_POSIX_V7_ILP32_OFFBIG_LINTFLAGS	1139+#define _CS_POSIX_V7_LP64_OFF64_CFLAGS	1140+#define _CS_POSIX_V7_LP64_OFF64_LDFLAGS	1141+#define _CS_POSIX_V7_LP64_OFF64_LIBS	1142+#define _CS_POSIX_V7_LP64_OFF64_LINTFLAGS	1143+#define _CS_POSIX_V7_LPBIG_OFFBIG_CFLAGS	1144+#define _CS_POSIX_V7_LPBIG_OFFBIG_LDFLAGS	1145+#define _CS_POSIX_V7_LPBIG_OFFBIG_LIBS	1146+#define _CS_POSIX_V7_LPBIG_OFFBIG_LINTFLAGS	1147+#define _CS_V6_ENV	1148+#define _CS_V7_ENV	1149+#define _CS_POSIX_V7_THREADS_CFLAGS	1150+#define _CS_POSIX_V7_THREADS_LDFLAGS	1151++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/aarch64/utime.h view
@@ -0,0 +1,29 @@+#ifndef	_UTIME_H+#define	_UTIME_H++#ifdef __cplusplus+extern "C" {+#endif++#include <features.h>++#define __NEED_time_t++#include <bits/alltypes.h>++struct utimbuf {+	time_t actime;+	time_t modtime;+};++int utime (const char *, const struct utimbuf *);++#if _REDIR_TIME64+__REDIR(utime, __utime64);+#endif++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/aarch64/utmp.h view
@@ -0,0 +1,52 @@+#ifndef _UTMP_H+#define _UTMP_H++#ifdef __cplusplus+extern "C" {+#endif++#include <utmpx.h>++#define ACCOUNTING 9+#define UT_NAMESIZE 32+#define UT_HOSTSIZE 256+#define UT_LINESIZE 32++struct lastlog {+	time_t ll_time;+	char ll_line[UT_LINESIZE];+	char ll_host[UT_HOSTSIZE];+};++#define ut_time ut_tv.tv_sec+#define ut_name ut_user+#define ut_addr ut_addr_v6[0]+#define utmp utmpx+#define e_exit __e_exit+#define e_termination __e_termination++void         endutent(void);+struct utmp *getutent(void);+struct utmp *getutid(const struct utmp *);+struct utmp *getutline(const struct utmp *);+struct utmp *pututline(const struct utmp *);+void         setutent(void);++void updwtmp(const char *, const struct utmp *);+int utmpname(const char *);++int login_tty(int);++#define _PATH_UTMP "/dev/null/utmp"+#define _PATH_WTMP "/dev/null/wtmp"++#define UTMP_FILE _PATH_UTMP+#define WTMP_FILE _PATH_WTMP+#define UTMP_FILENAME _PATH_UTMP+#define WTMP_FILENAME _PATH_WTMP++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/aarch64/utmpx.h view
@@ -0,0 +1,67 @@+#ifndef _UTMPX_H+#define _UTMPX_H++#ifdef __cplusplus+extern "C" {+#endif++#include <features.h>++#define __NEED_pid_t+#define __NEED_time_t+#define __NEED_suseconds_t+#define __NEED_struct_timeval++#include <bits/alltypes.h>++struct utmpx {+	short ut_type;+	short __ut_pad1;+	pid_t ut_pid;+	char ut_line[32];+	char ut_id[4];+	char ut_user[32];+	char ut_host[256];+	struct {+		short __e_termination;+		short __e_exit;+	} ut_exit;+#if __BYTE_ORDER == 1234+	int ut_session, __ut_pad2;+#else+	int __ut_pad2, ut_session;+#endif+	struct timeval ut_tv;+	unsigned ut_addr_v6[4];+	char __unused[20];+};++void          endutxent(void);+struct utmpx *getutxent(void);+struct utmpx *getutxid(const struct utmpx *);+struct utmpx *getutxline(const struct utmpx *);+struct utmpx *pututxline(const struct utmpx *);+void          setutxent(void);++#if defined(_BSD_SOURCE) || defined(_GNU_SOURCE)+#define e_exit __e_exit+#define e_termination __e_termination+void updwtmpx(const char *, const struct utmpx *);+int utmpxname(const char *);+#endif++#define EMPTY           0+#define RUN_LVL         1+#define BOOT_TIME       2+#define NEW_TIME        3+#define OLD_TIME        4+#define INIT_PROCESS    5+#define LOGIN_PROCESS   6+#define USER_PROCESS    7+#define DEAD_PROCESS    8++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/aarch64/values.h view
@@ -0,0 +1,39 @@+#ifndef _VALUES_H+#define _VALUES_H++#include <limits.h>++#define CHARBITS   (sizeof(char)   * 8)+#define SHORTBITS  (sizeof(short)  * 8)+#define INTBITS    (sizeof(int)    * 8)+#define LONGBITS   (sizeof(long)   * 8)+#define PTRBITS    (sizeof(char *) * 8)+#define DOUBLEBITS (sizeof(double) * 8)+#define FLOATBITS  (sizeof(float)  * 8)++#define MINSHORT SHRT_MIN+#define MININT   INT_MIN+#define MINLONG  LONG_MIN++#define MAXSHORT SHRT_MAX+#define MAXINT   INT_MAX+#define MAXLONG  LONG_MAX++#define HIBITS   MINSHORT+#define HIBITL   MINLONG++#include <float.h>++#define MAXDOUBLE DBL_MAX+#undef  MAXFLOAT+#define MAXFLOAT  FLT_MAX+#define MINDOUBLE DBL_MIN+#define MINFLOAT  FLT_MIN+#define DMINEXP   DBL_MIN_EXP+#define FMINEXP   FLT_MIN_EXP+#define DMAXEXP   DBL_MAX_EXP+#define FMAXEXP   FLT_MAX_EXP++#define BITSPERBYTE CHAR_BIT++#endif
+ musl-include/aarch64/wait.h view
@@ -0,0 +1,2 @@+#warning redirecting incorrect #include <wait.h> to <sys/wait.h>+#include <sys/wait.h>
+ musl-include/aarch64/wchar.h view
@@ -0,0 +1,207 @@+#ifndef _WCHAR_H+#define _WCHAR_H++#ifdef __cplusplus+extern "C" {+#endif++#include <features.h>++#define __NEED_FILE+#define __NEED___isoc_va_list+#define __NEED_size_t+#define __NEED_wchar_t+#define __NEED_wint_t+#define __NEED_mbstate_t++#if __STDC_VERSION__ < 201112L+#define __NEED_struct__IO_FILE+#endif++#if defined(_POSIX_SOURCE) || defined(_POSIX_C_SOURCE) \+ || defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) || defined(_BSD_SOURCE)+#define __NEED_locale_t+#define __NEED_va_list+#endif++#if defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) || defined(_BSD_SOURCE)+#define __NEED_wctype_t+#endif++#include <bits/alltypes.h>++#if L'\0'-1 > 0+#define WCHAR_MAX (0xffffffffu+L'\0')+#define WCHAR_MIN (0+L'\0')+#else+#define WCHAR_MAX (0x7fffffff+L'\0')+#define WCHAR_MIN (-1-0x7fffffff+L'\0')+#endif++#if __cplusplus >= 201103L+#define NULL nullptr+#elif defined(__cplusplus)+#define NULL 0L+#else+#define NULL ((void*)0)+#endif++#undef WEOF+#define WEOF 0xffffffffU++wchar_t *wcscpy (wchar_t *__restrict, const wchar_t *__restrict);+wchar_t *wcsncpy (wchar_t *__restrict, const wchar_t *__restrict, size_t);++wchar_t *wcscat (wchar_t *__restrict, const wchar_t *__restrict);+wchar_t *wcsncat (wchar_t *__restrict, const wchar_t *__restrict, size_t);++int wcscmp (const wchar_t *, const wchar_t *);+int wcsncmp (const wchar_t *, const wchar_t *, size_t);++int wcscoll(const wchar_t *, const wchar_t *);+size_t wcsxfrm (wchar_t *__restrict, const wchar_t *__restrict, size_t);++wchar_t *wcschr (const wchar_t *, wchar_t);+wchar_t *wcsrchr (const wchar_t *, wchar_t);++size_t wcscspn (const wchar_t *, const wchar_t *);+size_t wcsspn (const wchar_t *, const wchar_t *);+wchar_t *wcspbrk (const wchar_t *, const wchar_t *);++wchar_t *wcstok (wchar_t *__restrict, const wchar_t *__restrict, wchar_t **__restrict);++size_t wcslen (const wchar_t *);++wchar_t *wcsstr (const wchar_t *__restrict, const wchar_t *__restrict);+wchar_t *wcswcs (const wchar_t *, const wchar_t *);++wchar_t *wmemchr (const wchar_t *, wchar_t, size_t);+int wmemcmp (const wchar_t *, const wchar_t *, size_t);+wchar_t *wmemcpy (wchar_t *__restrict, const wchar_t *__restrict, size_t);+wchar_t *wmemmove (wchar_t *, const wchar_t *, size_t);+wchar_t *wmemset (wchar_t *, wchar_t, size_t);++wint_t btowc (int);+int wctob (wint_t);++int mbsinit (const mbstate_t *);+size_t mbrtowc (wchar_t *__restrict, const char *__restrict, size_t, mbstate_t *__restrict);+size_t wcrtomb (char *__restrict, wchar_t, mbstate_t *__restrict);++size_t mbrlen (const char *__restrict, size_t, mbstate_t *__restrict);++size_t mbsrtowcs (wchar_t *__restrict, const char **__restrict, size_t, mbstate_t *__restrict);+size_t wcsrtombs (char *__restrict, const wchar_t **__restrict, size_t, mbstate_t *__restrict);++float wcstof (const wchar_t *__restrict, wchar_t **__restrict);+double wcstod (const wchar_t *__restrict, wchar_t **__restrict);+long double wcstold (const wchar_t *__restrict, wchar_t **__restrict);++long wcstol (const wchar_t *__restrict, wchar_t **__restrict, int);+unsigned long wcstoul (const wchar_t *__restrict, wchar_t **__restrict, int);++long long wcstoll (const wchar_t *__restrict, wchar_t **__restrict, int);+unsigned long long wcstoull (const wchar_t *__restrict, wchar_t **__restrict, int);++++int fwide (FILE *, int);+++int wprintf (const wchar_t *__restrict, ...);+int fwprintf (FILE *__restrict, const wchar_t *__restrict, ...);+int swprintf (wchar_t *__restrict, size_t, const wchar_t *__restrict, ...);++int vwprintf (const wchar_t *__restrict, __isoc_va_list);+int vfwprintf (FILE *__restrict, const wchar_t *__restrict, __isoc_va_list);+int vswprintf (wchar_t *__restrict, size_t, const wchar_t *__restrict, __isoc_va_list);++int wscanf (const wchar_t *__restrict, ...);+int fwscanf (FILE *__restrict, const wchar_t *__restrict, ...);+int swscanf (const wchar_t *__restrict, const wchar_t *__restrict, ...);++int vwscanf (const wchar_t *__restrict, __isoc_va_list);+int vfwscanf (FILE *__restrict, const wchar_t *__restrict, __isoc_va_list);+int vswscanf (const wchar_t *__restrict, const wchar_t *__restrict, __isoc_va_list);++wint_t fgetwc (FILE *);+wint_t getwc (FILE *);+wint_t getwchar (void);++wint_t fputwc (wchar_t, FILE *);+wint_t putwc (wchar_t, FILE *);+wint_t putwchar (wchar_t);++wchar_t *fgetws (wchar_t *__restrict, int, FILE *__restrict);+int fputws (const wchar_t *__restrict, FILE *__restrict);++wint_t ungetwc (wint_t, FILE *);++struct tm;+size_t wcsftime (wchar_t *__restrict, size_t, const wchar_t *__restrict, const struct tm *__restrict);++#undef iswdigit++#if defined(_GNU_SOURCE)+wint_t fgetwc_unlocked (FILE *);+wint_t getwc_unlocked (FILE *);+wint_t getwchar_unlocked (void);+wint_t fputwc_unlocked (wchar_t, FILE *);+wint_t putwc_unlocked (wchar_t, FILE *);+wint_t putwchar_unlocked (wchar_t);+wchar_t *fgetws_unlocked (wchar_t *__restrict, int, FILE *__restrict);+int fputws_unlocked (const wchar_t *__restrict, FILE *__restrict);+#endif++#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE)+size_t wcsftime_l (wchar_t *__restrict, size_t, const wchar_t *__restrict, const struct tm *__restrict, locale_t);+#endif++#if defined(_POSIX_SOURCE) || defined(_POSIX_C_SOURCE) \+ || defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE)  || defined(_BSD_SOURCE)+FILE *open_wmemstream(wchar_t **, size_t *);+size_t mbsnrtowcs(wchar_t *__restrict, const char **__restrict, size_t, size_t, mbstate_t *__restrict);+size_t wcsnrtombs(char *__restrict, const wchar_t **__restrict, size_t, size_t, mbstate_t *__restrict);+wchar_t *wcsdup(const wchar_t *);+size_t wcsnlen (const wchar_t *, size_t);+wchar_t *wcpcpy (wchar_t *__restrict, const wchar_t *__restrict);+wchar_t *wcpncpy (wchar_t *__restrict, const wchar_t *__restrict, size_t);+int wcscasecmp(const wchar_t *, const wchar_t *);+int wcscasecmp_l(const wchar_t *, const wchar_t *, locale_t);+int wcsncasecmp(const wchar_t *, const wchar_t *, size_t);+int wcsncasecmp_l(const wchar_t *, const wchar_t *, size_t, locale_t);+int wcscoll_l(const wchar_t *, const wchar_t *, locale_t);+size_t wcsxfrm_l(wchar_t *__restrict, const wchar_t *__restrict, size_t, locale_t);+#endif++#if defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) || defined(_BSD_SOURCE)+int wcwidth (wchar_t);+int wcswidth (const wchar_t *, size_t);+int       iswalnum(wint_t);+int       iswalpha(wint_t);+int       iswblank(wint_t);+int       iswcntrl(wint_t);+int       iswdigit(wint_t);+int       iswgraph(wint_t);+int       iswlower(wint_t);+int       iswprint(wint_t);+int       iswpunct(wint_t);+int       iswspace(wint_t);+int       iswupper(wint_t);+int       iswxdigit(wint_t);+int       iswctype(wint_t, wctype_t);+wint_t    towlower(wint_t);+wint_t    towupper(wint_t);+wctype_t  wctype(const char *);++#ifndef __cplusplus+#undef iswdigit+#define iswdigit(a) (0 ? iswdigit(a) : ((unsigned)(a)-'0') < 10)+#endif+#endif++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/aarch64/wctype.h view
@@ -0,0 +1,79 @@+#ifndef _WCTYPE_H+#define _WCTYPE_H++#ifdef __cplusplus+extern "C" {+#endif++#include <features.h>++#define __NEED_wint_t+#define __NEED_wctype_t++#if defined(_POSIX_SOURCE) || defined(_POSIX_C_SOURCE) \+ || defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) || defined(_BSD_SOURCE)+#define __NEED_locale_t+#endif++#include <bits/alltypes.h>++typedef const int * wctrans_t;++#undef WEOF+#define WEOF 0xffffffffU++#undef iswdigit++int       iswalnum(wint_t);+int       iswalpha(wint_t);+int       iswblank(wint_t);+int       iswcntrl(wint_t);+int       iswdigit(wint_t);+int       iswgraph(wint_t);+int       iswlower(wint_t);+int       iswprint(wint_t);+int       iswpunct(wint_t);+int       iswspace(wint_t);+int       iswupper(wint_t);+int       iswxdigit(wint_t);+int       iswctype(wint_t, wctype_t);+wint_t    towctrans(wint_t, wctrans_t);+wint_t    towlower(wint_t);+wint_t    towupper(wint_t);+wctrans_t wctrans(const char *);+wctype_t  wctype(const char *);++#ifndef __cplusplus+#undef iswdigit+#define iswdigit(a) (0 ? iswdigit(a) : ((unsigned)(a)-'0') < 10)+#endif++#if defined(_POSIX_SOURCE) || defined(_POSIX_C_SOURCE) \+ || defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) || defined(_BSD_SOURCE)++int iswalnum_l(wint_t, locale_t);+int iswalpha_l(wint_t, locale_t);+int iswblank_l(wint_t, locale_t);+int iswcntrl_l(wint_t, locale_t);+int iswdigit_l(wint_t, locale_t);+int iswgraph_l(wint_t, locale_t);+int iswlower_l(wint_t, locale_t);+int iswprint_l(wint_t, locale_t);+int iswpunct_l(wint_t, locale_t);+int iswspace_l(wint_t, locale_t);+int iswupper_l(wint_t, locale_t);+int iswxdigit_l(wint_t, locale_t);+int iswctype_l(wint_t, wctype_t, locale_t);+wint_t towlower_l(wint_t, locale_t);+wint_t towupper_l(wint_t, locale_t);+wint_t towctrans_l(wint_t, wctrans_t, locale_t);+wctrans_t wctrans_l(const char *, locale_t);+wctype_t  wctype_l(const char *, locale_t);++#endif++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/aarch64/wordexp.h view
@@ -0,0 +1,41 @@+#ifndef	_WORDEXP_H+#define	_WORDEXP_H++#ifdef __cplusplus+extern "C" {+#endif++#include <features.h>++#define __NEED_size_t++#include <bits/alltypes.h>++#define WRDE_DOOFFS  1+#define WRDE_APPEND  2+#define WRDE_NOCMD   4+#define WRDE_REUSE   8+#define WRDE_SHOWERR 16+#define WRDE_UNDEF   32++typedef struct {+	size_t we_wordc;+	char **we_wordv;+	size_t we_offs;+} wordexp_t;++#define WRDE_NOSYS   -1+#define WRDE_NOSPACE 1+#define WRDE_BADCHAR 2+#define WRDE_BADVAL  3+#define WRDE_CMDSUB  4+#define WRDE_SYNTAX  5++int wordexp (const char *__restrict, wordexp_t *__restrict, int);+void wordfree (wordexp_t *);++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/arm/aio.h view
@@ -0,0 +1,73 @@+#ifndef _AIO_H+#define _AIO_H++#ifdef __cplusplus+extern "C" {+#endif++#include <features.h>+#include <signal.h>+#include <time.h>++#define __NEED_ssize_t+#define __NEED_off_t++#include <bits/alltypes.h>++struct aiocb {+	int aio_fildes, aio_lio_opcode, aio_reqprio;+	volatile void *aio_buf;+	size_t aio_nbytes;+	struct sigevent aio_sigevent;+	void *__td;+	int __lock[2];+	volatile int __err;+	ssize_t __ret;+	off_t aio_offset;+	void *__next, *__prev;+	char __dummy4[32-2*sizeof(void *)];+};++#define AIO_CANCELED 0+#define AIO_NOTCANCELED 1+#define AIO_ALLDONE 2++#define LIO_READ 0+#define LIO_WRITE 1+#define LIO_NOP 2++#define LIO_WAIT 0+#define LIO_NOWAIT 1++int aio_read(struct aiocb *);+int aio_write(struct aiocb *);+int aio_error(const struct aiocb *);+ssize_t aio_return(struct aiocb *);+int aio_cancel(int, struct aiocb *);+int aio_suspend(const struct aiocb *const [], int, const struct timespec *);+int aio_fsync(int, struct aiocb *);++int lio_listio(int, struct aiocb *__restrict const *__restrict, int, struct sigevent *__restrict);++#if defined(_LARGEFILE64_SOURCE)+#define aiocb64 aiocb+#define aio_read64 aio_read+#define aio_write64 aio_write+#define aio_error64 aio_error+#define aio_return64 aio_return+#define aio_cancel64 aio_cancel+#define aio_suspend64 aio_suspend+#define aio_fsync64 aio_fsync+#define lio_listio64 lio_listio+#define off64_t off_t+#endif++#if _REDIR_TIME64+__REDIR(aio_suspend, __aio_suspend_time64);+#endif++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/arm/alloca.h view
@@ -0,0 +1,19 @@+#ifndef	_ALLOCA_H+#define	_ALLOCA_H++#ifdef __cplusplus+extern "C" {+#endif++#define	__NEED_size_t+#include <bits/alltypes.h>++void *alloca(size_t);++#define alloca __builtin_alloca++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/arm/ar.h view
@@ -0,0 +1,25 @@+#ifndef _AR_H+#define _AR_H++#ifdef __cplusplus+extern "C" {+#endif++#define ARMAG "!<arch>\n"+#define SARMAG 8+#define ARFMAG "`\n"++struct ar_hdr {+	char ar_name[16];+	char ar_date[12];+	char ar_uid[6], ar_gid[6];+	char ar_mode[8];+	char ar_size[10];+	char ar_fmag[2];+};++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/arm/arpa/ftp.h view
@@ -0,0 +1,35 @@+#ifndef _ARPA_FTP_H+#define _ARPA_FTP_H+#define PRELIM 1+#define COMPLETE 2+#define CONTINUE 3+#define TRANSIENT 4+#define ERROR 5+#define TYPE_A 1+#define TYPE_E 2+#define TYPE_I 3+#define TYPE_L 4+#define FORM_N 1+#define FORM_T 2+#define FORM_C 3+#define STRU_F 1+#define STRU_R 2+#define STRU_P 3+#define MODE_S 1+#define MODE_B 2+#define MODE_C 3+#define REC_ESC '\377'+#define REC_EOR '\001'+#define REC_EOF '\002'+#define BLK_EOR 0x80+#define BLK_EOF 0x40+#define BLK_ERRORS 0x20+#define BLK_RESTART 0x10+#define BLK_BYTECOUNT 2+#ifdef FTP_NAMES+char *modenames[] =  {"0", "Stream", "Block", "Compressed" };+char *strunames[] =  {"0", "File", "Record", "Page" };+char *typenames[] =  {"0", "ASCII", "EBCDIC", "Image", "Local" };+char *formnames[] =  {"0", "Nonprint", "Telnet", "Carriage-control" };+#endif+#endif
+ musl-include/arm/arpa/inet.h view
@@ -0,0 +1,31 @@+#ifndef _ARPA_INET_H+#define	_ARPA_INET_H++#ifdef __cplusplus+extern "C" {+#endif++#include <features.h>+#include <netinet/in.h>++uint32_t htonl(uint32_t);+uint16_t htons(uint16_t);+uint32_t ntohl(uint32_t);+uint16_t ntohs(uint16_t);++in_addr_t inet_addr (const char *);+in_addr_t inet_network (const char *);+char *inet_ntoa (struct in_addr);+int inet_pton (int, const char *__restrict, void *__restrict);+const char *inet_ntop (int, const void *__restrict, char *__restrict, socklen_t);++int inet_aton (const char *, struct in_addr *);+struct in_addr inet_makeaddr(in_addr_t, in_addr_t);+in_addr_t inet_lnaof(struct in_addr);+in_addr_t inet_netof(struct in_addr);++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/arm/arpa/nameser.h view
@@ -0,0 +1,526 @@+#ifndef _ARPA_NAMESER_H+#define _ARPA_NAMESER_H++#ifdef __cplusplus+extern "C" {+#endif++#include <stddef.h>+#include <stdint.h>++#define __NAMESER	19991006+#define NS_PACKETSZ	512+#define NS_MAXDNAME	1025+#define NS_MAXMSG	65535+#define NS_MAXCDNAME	255+#define NS_MAXLABEL	63+#define NS_HFIXEDSZ	12+#define NS_QFIXEDSZ	4+#define NS_RRFIXEDSZ	10+#define NS_INT32SZ	4+#define NS_INT16SZ	2+#define NS_INT8SZ	1+#define NS_INADDRSZ	4+#define NS_IN6ADDRSZ	16+#define NS_CMPRSFLGS	0xc0+#define NS_DEFAULTPORT	53++typedef enum __ns_sect {+	ns_s_qd = 0,+	ns_s_zn = 0,+	ns_s_an = 1,+	ns_s_pr = 1,+	ns_s_ns = 2,+	ns_s_ud = 2,+	ns_s_ar = 3,+	ns_s_max = 4+} ns_sect;++typedef struct __ns_msg {+	const unsigned char *_msg, *_eom;+	uint16_t _id, _flags, _counts[ns_s_max];+	const unsigned char *_sections[ns_s_max];+	ns_sect _sect;+	int _rrnum;+	const unsigned char *_msg_ptr;+} ns_msg;++struct _ns_flagdata {  int mask, shift;  };+extern const struct _ns_flagdata _ns_flagdata[];++#define ns_msg_id(handle) ((handle)._id + 0)+#define ns_msg_base(handle) ((handle)._msg + 0)+#define ns_msg_end(handle) ((handle)._eom + 0)+#define ns_msg_size(handle) ((handle)._eom - (handle)._msg)+#define ns_msg_count(handle, section) ((handle)._counts[section] + 0)+#define ns_msg_getflag(handle, flag) \+	(((handle)._flags & _ns_flagdata[flag].mask) >> _ns_flagdata[flag].shift)++typedef	struct __ns_rr {+	char		name[NS_MAXDNAME];+	uint16_t	type;+	uint16_t	rr_class;+	uint32_t	ttl;+	uint16_t	rdlength;+	const unsigned char *rdata;+} ns_rr;++#define ns_rr_name(rr)	(((rr).name[0] != '\0') ? (rr).name : ".")+#define ns_rr_type(rr)	((ns_type)((rr).type + 0))+#define ns_rr_class(rr)	((ns_class)((rr).rr_class + 0))+#define ns_rr_ttl(rr)	((rr).ttl + 0)+#define ns_rr_rdlen(rr)	((rr).rdlength + 0)+#define ns_rr_rdata(rr)	((rr).rdata + 0)++typedef enum __ns_flag {+	ns_f_qr,+	ns_f_opcode,+	ns_f_aa,+	ns_f_tc,+	ns_f_rd,+	ns_f_ra,+	ns_f_z,+	ns_f_ad,+	ns_f_cd,+	ns_f_rcode,+	ns_f_max+} ns_flag;++typedef enum __ns_opcode {+	ns_o_query = 0,+	ns_o_iquery = 1,+	ns_o_status = 2,+	ns_o_notify = 4,+	ns_o_update = 5,+	ns_o_max = 6+} ns_opcode;++typedef	enum __ns_rcode {+	ns_r_noerror = 0,+	ns_r_formerr = 1,+	ns_r_servfail = 2,+	ns_r_nxdomain = 3,+	ns_r_notimpl = 4,+	ns_r_refused = 5,+	ns_r_yxdomain = 6,+	ns_r_yxrrset = 7,+	ns_r_nxrrset = 8,+	ns_r_notauth = 9,+	ns_r_notzone = 10,+	ns_r_max = 11,+	ns_r_badvers = 16,+	ns_r_badsig = 16,+	ns_r_badkey = 17,+	ns_r_badtime = 18+} ns_rcode;++typedef enum __ns_update_operation {+	ns_uop_delete = 0,+	ns_uop_add = 1,+	ns_uop_max = 2+} ns_update_operation;++struct ns_tsig_key {+        char name[NS_MAXDNAME], alg[NS_MAXDNAME];+        unsigned char *data;+        int len;+};+typedef struct ns_tsig_key ns_tsig_key;++struct ns_tcp_tsig_state {+	int counter;+	struct dst_key *key;+	void *ctx;+	unsigned char sig[NS_PACKETSZ];+	int siglen;+};+typedef struct ns_tcp_tsig_state ns_tcp_tsig_state;++#define NS_TSIG_FUDGE 300+#define NS_TSIG_TCP_COUNT 100+#define NS_TSIG_ALG_HMAC_MD5 "HMAC-MD5.SIG-ALG.REG.INT"++#define NS_TSIG_ERROR_NO_TSIG -10+#define NS_TSIG_ERROR_NO_SPACE -11+#define NS_TSIG_ERROR_FORMERR -12++typedef enum __ns_type {+	ns_t_invalid = 0,+	ns_t_a = 1,+	ns_t_ns = 2,+	ns_t_md = 3,+	ns_t_mf = 4,+	ns_t_cname = 5,+	ns_t_soa = 6,+	ns_t_mb = 7,+	ns_t_mg = 8,+	ns_t_mr = 9,+	ns_t_null = 10,+	ns_t_wks = 11,+	ns_t_ptr = 12,+	ns_t_hinfo = 13,+	ns_t_minfo = 14,+	ns_t_mx = 15,+	ns_t_txt = 16,+	ns_t_rp = 17,+	ns_t_afsdb = 18,+	ns_t_x25 = 19,+	ns_t_isdn = 20,+	ns_t_rt = 21,+	ns_t_nsap = 22,+	ns_t_nsap_ptr = 23,+	ns_t_sig = 24,+	ns_t_key = 25,+	ns_t_px = 26,+	ns_t_gpos = 27,+	ns_t_aaaa = 28,+	ns_t_loc = 29,+	ns_t_nxt = 30,+	ns_t_eid = 31,+	ns_t_nimloc = 32,+	ns_t_srv = 33,+	ns_t_atma = 34,+	ns_t_naptr = 35,+	ns_t_kx = 36,+	ns_t_cert = 37,+	ns_t_a6 = 38,+	ns_t_dname = 39,+	ns_t_sink = 40,+	ns_t_opt = 41,+	ns_t_apl = 42,+	ns_t_ds = 43,+	ns_t_sshfp = 44,+	ns_t_ipseckey = 45,+	ns_t_rrsig = 46,+	ns_t_nsec = 47,+	ns_t_dnskey = 48,+	ns_t_dhcid = 49,+	ns_t_nsec3 = 50,+	ns_t_nsec3param = 51,+	ns_t_tlsa = 52,+	ns_t_smimea = 53,+	ns_t_hip = 55,+	ns_t_ninfo = 56,+	ns_t_rkey = 57,+	ns_t_talink = 58,+	ns_t_cds = 59,+	ns_t_cdnskey = 60,+	ns_t_openpgpkey = 61,+	ns_t_csync = 62,+	ns_t_spf = 99,+	ns_t_uinfo = 100,+	ns_t_uid = 101,+	ns_t_gid = 102,+	ns_t_unspec = 103,+	ns_t_nid = 104,+	ns_t_l32 = 105,+	ns_t_l64 = 106,+	ns_t_lp = 107,+	ns_t_eui48 = 108,+	ns_t_eui64 = 109,+	ns_t_tkey = 249,+	ns_t_tsig = 250,+	ns_t_ixfr = 251,+	ns_t_axfr = 252,+	ns_t_mailb = 253,+	ns_t_maila = 254,+	ns_t_any = 255,+	ns_t_zxfr = 256,+	ns_t_uri = 256,+	ns_t_caa = 257,+	ns_t_avc = 258,+	ns_t_ta = 32768,+	ns_t_dlv = 32769,+	ns_t_max = 65536+} ns_type;++#define	ns_t_qt_p(t) (ns_t_xfr_p(t) || (t) == ns_t_any || \+		      (t) == ns_t_mailb || (t) == ns_t_maila)+#define	ns_t_mrr_p(t) ((t) == ns_t_tsig || (t) == ns_t_opt)+#define ns_t_rr_p(t) (!ns_t_qt_p(t) && !ns_t_mrr_p(t))+#define ns_t_udp_p(t) ((t) != ns_t_axfr && (t) != ns_t_zxfr)+#define ns_t_xfr_p(t) ((t) == ns_t_axfr || (t) == ns_t_ixfr || \+		       (t) == ns_t_zxfr)++typedef enum __ns_class {+	ns_c_invalid = 0,+	ns_c_in = 1,+	ns_c_2 = 2,+	ns_c_chaos = 3,+	ns_c_hs = 4,+	ns_c_none = 254,+	ns_c_any = 255,+	ns_c_max = 65536+} ns_class;++typedef enum __ns_key_types {+	ns_kt_rsa = 1,+	ns_kt_dh  = 2,+	ns_kt_dsa = 3,+	ns_kt_private = 254+} ns_key_types;++typedef enum __ns_cert_types {+	cert_t_pkix = 1,+	cert_t_spki = 2,+	cert_t_pgp  = 3,+	cert_t_url  = 253,+	cert_t_oid  = 254+} ns_cert_types;++#define	NS_KEY_TYPEMASK		0xC000+#define	NS_KEY_TYPE_AUTH_CONF	0x0000+#define	NS_KEY_TYPE_CONF_ONLY	0x8000+#define	NS_KEY_TYPE_AUTH_ONLY	0x4000+#define	NS_KEY_TYPE_NO_KEY	0xC000+#define	NS_KEY_NO_AUTH		0x8000+#define	NS_KEY_NO_CONF		0x4000+#define	NS_KEY_RESERVED2	0x2000+#define	NS_KEY_EXTENDED_FLAGS	0x1000+#define	NS_KEY_RESERVED4	0x0800+#define	NS_KEY_RESERVED5	0x0400+#define	NS_KEY_NAME_TYPE	0x0300+#define	NS_KEY_NAME_USER	0x0000+#define	NS_KEY_NAME_ENTITY	0x0200+#define	NS_KEY_NAME_ZONE	0x0100+#define	NS_KEY_NAME_RESERVED	0x0300+#define	NS_KEY_RESERVED8	0x0080+#define	NS_KEY_RESERVED9	0x0040+#define	NS_KEY_RESERVED10	0x0020+#define	NS_KEY_RESERVED11	0x0010+#define	NS_KEY_SIGNATORYMASK	0x000F+#define	NS_KEY_RESERVED_BITMASK ( NS_KEY_RESERVED2 | \+				  NS_KEY_RESERVED4 | \+				  NS_KEY_RESERVED5 | \+				  NS_KEY_RESERVED8 | \+				  NS_KEY_RESERVED9 | \+				  NS_KEY_RESERVED10 | \+				  NS_KEY_RESERVED11 )+#define NS_KEY_RESERVED_BITMASK2 0xFFFF+#define	NS_ALG_MD5RSA		1+#define	NS_ALG_DH               2+#define	NS_ALG_DSA              3+#define	NS_ALG_DSS              NS_ALG_DSA+#define	NS_ALG_EXPIRE_ONLY	253+#define	NS_ALG_PRIVATE_OID	254++#define NS_KEY_PROT_TLS         1+#define NS_KEY_PROT_EMAIL       2+#define NS_KEY_PROT_DNSSEC      3+#define NS_KEY_PROT_IPSEC       4+#define NS_KEY_PROT_ANY		255++#define	NS_MD5RSA_MIN_BITS	 512+#define	NS_MD5RSA_MAX_BITS	4096+#define	NS_MD5RSA_MAX_BYTES	((NS_MD5RSA_MAX_BITS+7/8)*2+3)+#define	NS_MD5RSA_MAX_BASE64	(((NS_MD5RSA_MAX_BYTES+2)/3)*4)+#define NS_MD5RSA_MIN_SIZE	((NS_MD5RSA_MIN_BITS+7)/8)+#define NS_MD5RSA_MAX_SIZE	((NS_MD5RSA_MAX_BITS+7)/8)++#define NS_DSA_SIG_SIZE         41+#define NS_DSA_MIN_SIZE         213+#define NS_DSA_MAX_BYTES        405++#define	NS_SIG_TYPE	0+#define	NS_SIG_ALG	2+#define	NS_SIG_LABELS	3+#define	NS_SIG_OTTL	4+#define	NS_SIG_EXPIR	8+#define	NS_SIG_SIGNED	12+#define	NS_SIG_FOOT	16+#define	NS_SIG_SIGNER	18+#define	NS_NXT_BITS 8+#define	NS_NXT_BIT_SET(  n,p) (p[(n)/NS_NXT_BITS] |=  (0x80>>((n)%NS_NXT_BITS)))+#define	NS_NXT_BIT_CLEAR(n,p) (p[(n)/NS_NXT_BITS] &= ~(0x80>>((n)%NS_NXT_BITS)))+#define	NS_NXT_BIT_ISSET(n,p) (p[(n)/NS_NXT_BITS] &   (0x80>>((n)%NS_NXT_BITS)))+#define NS_NXT_MAX 127++#define NS_OPT_DNSSEC_OK        0x8000U+#define NS_OPT_NSID		3++#define NS_GET16(s, cp) (void)((s) = ns_get16(((cp)+=2)-2))+#define NS_GET32(l, cp) (void)((l) = ns_get32(((cp)+=4)-4))+#define NS_PUT16(s, cp) ns_put16((s), ((cp)+=2)-2)+#define NS_PUT32(l, cp) ns_put32((l), ((cp)+=4)-4)++unsigned ns_get16(const unsigned char *);+unsigned long ns_get32(const unsigned char *);+void ns_put16(unsigned, unsigned char *);+void ns_put32(unsigned long, unsigned char *);++int ns_initparse(const unsigned char *, int, ns_msg *);+int ns_parserr(ns_msg *, ns_sect, int, ns_rr *);+int ns_skiprr(const unsigned char *, const unsigned char *, ns_sect, int);+int ns_name_uncompress(const unsigned char *, const unsigned char *, const unsigned char *, char *, size_t);+++#define	__BIND		19950621++typedef struct {+	unsigned	id :16;+#if __BYTE_ORDER == __BIG_ENDIAN+	unsigned	qr: 1;+	unsigned	opcode: 4;+	unsigned	aa: 1;+	unsigned	tc: 1;+	unsigned	rd: 1;+	unsigned	ra: 1;+	unsigned	unused :1;+	unsigned	ad: 1;+	unsigned	cd: 1;+	unsigned	rcode :4;+#else+	unsigned	rd :1;+	unsigned	tc :1;+	unsigned	aa :1;+	unsigned	opcode :4;+	unsigned	qr :1;+	unsigned	rcode :4;+	unsigned	cd: 1;+	unsigned	ad: 1;+	unsigned	unused :1;+	unsigned	ra :1;+#endif+	unsigned	qdcount :16;+	unsigned	ancount :16;+	unsigned	nscount :16;+	unsigned	arcount :16;+} HEADER;++#define PACKETSZ	NS_PACKETSZ+#define MAXDNAME	NS_MAXDNAME+#define MAXCDNAME	NS_MAXCDNAME+#define MAXLABEL	NS_MAXLABEL+#define	HFIXEDSZ	NS_HFIXEDSZ+#define QFIXEDSZ	NS_QFIXEDSZ+#define RRFIXEDSZ	NS_RRFIXEDSZ+#define	INT32SZ		NS_INT32SZ+#define	INT16SZ		NS_INT16SZ+#define INT8SZ		NS_INT8SZ+#define	INADDRSZ	NS_INADDRSZ+#define	IN6ADDRSZ	NS_IN6ADDRSZ+#define	INDIR_MASK	NS_CMPRSFLGS+#define NAMESERVER_PORT	NS_DEFAULTPORT++#define S_ZONE		ns_s_zn+#define S_PREREQ	ns_s_pr+#define S_UPDATE	ns_s_ud+#define S_ADDT		ns_s_ar++#define QUERY		ns_o_query+#define IQUERY		ns_o_iquery+#define STATUS		ns_o_status+#define	NS_NOTIFY_OP	ns_o_notify+#define	NS_UPDATE_OP	ns_o_update++#define NOERROR		ns_r_noerror+#define FORMERR		ns_r_formerr+#define SERVFAIL	ns_r_servfail+#define NXDOMAIN	ns_r_nxdomain+#define NOTIMP		ns_r_notimpl+#define REFUSED		ns_r_refused+#define YXDOMAIN	ns_r_yxdomain+#define YXRRSET		ns_r_yxrrset+#define NXRRSET		ns_r_nxrrset+#define NOTAUTH		ns_r_notauth+#define NOTZONE		ns_r_notzone++#define DELETE		ns_uop_delete+#define ADD		ns_uop_add++#define T_A		ns_t_a+#define T_NS		ns_t_ns+#define T_MD		ns_t_md+#define T_MF		ns_t_mf+#define T_CNAME		ns_t_cname+#define T_SOA		ns_t_soa+#define T_MB		ns_t_mb+#define T_MG		ns_t_mg+#define T_MR		ns_t_mr+#define T_NULL		ns_t_null+#define T_WKS		ns_t_wks+#define T_PTR		ns_t_ptr+#define T_HINFO		ns_t_hinfo+#define T_MINFO		ns_t_minfo+#define T_MX		ns_t_mx+#define T_TXT		ns_t_txt+#define	T_RP		ns_t_rp+#define T_AFSDB		ns_t_afsdb+#define T_X25		ns_t_x25+#define T_ISDN		ns_t_isdn+#define T_RT		ns_t_rt+#define T_NSAP		ns_t_nsap+#define T_NSAP_PTR	ns_t_nsap_ptr+#define	T_SIG		ns_t_sig+#define	T_KEY		ns_t_key+#define	T_PX		ns_t_px+#define	T_GPOS		ns_t_gpos+#define	T_AAAA		ns_t_aaaa+#define	T_LOC		ns_t_loc+#define	T_NXT		ns_t_nxt+#define	T_EID		ns_t_eid+#define	T_NIMLOC	ns_t_nimloc+#define	T_SRV		ns_t_srv+#define T_ATMA		ns_t_atma+#define T_NAPTR		ns_t_naptr+#define T_A6		ns_t_a6+#define T_DNAME		ns_t_dname+#define T_DS		ns_t_ds+#define T_SSHFP		ns_t_sshfp+#define T_IPSECKEY	ns_t_ipseckey+#define T_RRSIG		ns_t_rrsig+#define T_NSEC		ns_t_nsec+#define T_DNSKEY	ns_t_dnskey+#define T_DHCID		ns_t_dhcid+#define T_NSEC3		ns_t_nsec3+#define T_NSEC3PARAM	ns_t_nsec3param+#define T_TLSA		ns_t_tlsa+#define T_SMIMEA	ns_t_smimea+#define T_HIP		ns_t_hip+#define T_NINFO		ns_t_ninfo+#define T_RKEY		ns_t_rkey+#define T_TALINK	ns_t_talink+#define T_CDS		ns_t_cds+#define T_CDNSKEY	ns_t_cdnskey+#define T_OPENPGPKEY	ns_t_openpgpkey+#define T_CSYNC		ns_t_csync+#define T_SPF		ns_t_spf+#define T_UINFO		ns_t_uinfo+#define T_UID		ns_t_uid+#define T_GID		ns_t_gid+#define T_UNSPEC	ns_t_unspec+#define T_NID		ns_t_nid+#define T_L32		ns_t_l32+#define T_L64		ns_t_l64+#define T_LP		ns_t_lp+#define T_EUI48		ns_t_eui48+#define T_EUI64		ns_t_eui64+#define T_TKEY		ns_t_tkey+#define	T_TSIG		ns_t_tsig+#define	T_IXFR		ns_t_ixfr+#define T_AXFR		ns_t_axfr+#define T_MAILB		ns_t_mailb+#define T_MAILA		ns_t_maila+#define T_ANY		ns_t_any+#define T_URI		ns_t_uri+#define T_CAA		ns_t_caa+#define T_AVC		ns_t_avc+#define T_TA		ns_t_ta+#define T_DLV		ns_t_dlv++#define C_IN		ns_c_in+#define C_CHAOS		ns_c_chaos+#define C_HS		ns_c_hs+#define C_NONE		ns_c_none+#define C_ANY		ns_c_any++#define	GETSHORT		NS_GET16+#define	GETLONG			NS_GET32+#define	PUTSHORT		NS_PUT16+#define	PUTLONG			NS_PUT32++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/arm/arpa/nameser_compat.h view
@@ -0,0 +1,2 @@+#include <arpa/nameser.h>+
+ musl-include/arm/arpa/telnet.h view
@@ -0,0 +1,251 @@+#ifndef _ARPA_TELNET_H+#define	_ARPA_TELNET_H++#define	IAC	255+#define	DONT	254+#define	DO	253+#define	WONT	252+#define	WILL	251+#define	SB	250+#define	GA	249+#define	EL	248+#define	EC	247+#define	AYT	246+#define	AO	245+#define	IP	244+#define	BREAK	243+#define	DM	242+#define	NOP	241+#define	SE	240+#define EOR     239+#define	ABORT	238+#define	SUSP	237+#define	xEOF	236++#define SYNCH	242++#define telcmds ((char [][6]){ "EOF", "SUSP", "ABORT", "EOR", "SE", "NOP", "DMARK", "BRK", "IP", "AO", "AYT", "EC", "EL", "GA", "SB", "WILL", "WONT", "DO", "DONT", "IAC", 0 })++#define	TELCMD_FIRST	xEOF+#define	TELCMD_LAST	IAC+#define	TELCMD_OK(x)	((unsigned int)(x) <= TELCMD_LAST && \+			 (unsigned int)(x) >= TELCMD_FIRST)+#define	TELCMD(x)	telcmds[(x)-TELCMD_FIRST]++#define TELOPT_BINARY	0+#define TELOPT_ECHO	1+#define	TELOPT_RCP	2+#define	TELOPT_SGA	3+#define	TELOPT_NAMS	4+#define	TELOPT_STATUS	5+#define	TELOPT_TM	6+#define	TELOPT_RCTE	7+#define TELOPT_NAOL 	8+#define TELOPT_NAOP 	9+#define TELOPT_NAOCRD	10+#define TELOPT_NAOHTS	11+#define TELOPT_NAOHTD	12+#define TELOPT_NAOFFD	13+#define TELOPT_NAOVTS	14+#define TELOPT_NAOVTD	15+#define TELOPT_NAOLFD	16+#define TELOPT_XASCII	17+#define	TELOPT_LOGOUT	18+#define	TELOPT_BM	19+#define	TELOPT_DET	20+#define	TELOPT_SUPDUP	21+#define	TELOPT_SUPDUPOUTPUT 22+#define	TELOPT_SNDLOC	23+#define	TELOPT_TTYPE	24+#define	TELOPT_EOR	25+#define	TELOPT_TUID	26+#define	TELOPT_OUTMRK	27+#define	TELOPT_TTYLOC	28+#define	TELOPT_3270REGIME 29+#define	TELOPT_X3PAD	30+#define	TELOPT_NAWS	31+#define	TELOPT_TSPEED	32+#define	TELOPT_LFLOW	33+#define TELOPT_LINEMODE	34+#define TELOPT_XDISPLOC	35+#define TELOPT_OLD_ENVIRON 36+#define	TELOPT_AUTHENTICATION 37/* Authenticate */+#define	TELOPT_ENCRYPT	38+#define TELOPT_NEW_ENVIRON 39+#define	TELOPT_EXOPL	255+++#define	NTELOPTS	(1+TELOPT_NEW_ENVIRON)+#ifdef TELOPTS+char *telopts[NTELOPTS+1] = {+	"BINARY", "ECHO", "RCP", "SUPPRESS GO AHEAD", "NAME",+	"STATUS", "TIMING MARK", "RCTE", "NAOL", "NAOP",+	"NAOCRD", "NAOHTS", "NAOHTD", "NAOFFD", "NAOVTS",+	"NAOVTD", "NAOLFD", "EXTEND ASCII", "LOGOUT", "BYTE MACRO",+	"DATA ENTRY TERMINAL", "SUPDUP", "SUPDUP OUTPUT",+	"SEND LOCATION", "TERMINAL TYPE", "END OF RECORD",+	"TACACS UID", "OUTPUT MARKING", "TTYLOC",+	"3270 REGIME", "X.3 PAD", "NAWS", "TSPEED", "LFLOW",+	"LINEMODE", "XDISPLOC", "OLD-ENVIRON", "AUTHENTICATION",+	"ENCRYPT", "NEW-ENVIRON",+	0,+};+#define	TELOPT_FIRST	TELOPT_BINARY+#define	TELOPT_LAST	TELOPT_NEW_ENVIRON+#define	TELOPT_OK(x)	((unsigned int)(x) <= TELOPT_LAST)+#define	TELOPT(x)	telopts[(x)-TELOPT_FIRST]+#endif++#define	TELQUAL_IS	0+#define	TELQUAL_SEND	1+#define	TELQUAL_INFO	2+#define	TELQUAL_REPLY	2+#define	TELQUAL_NAME	3++#define	LFLOW_OFF		0+#define	LFLOW_ON		1+#define	LFLOW_RESTART_ANY	2+#define	LFLOW_RESTART_XON	3+++#define	LM_MODE		1+#define	LM_FORWARDMASK	2+#define	LM_SLC		3++#define	MODE_EDIT	0x01+#define	MODE_TRAPSIG	0x02+#define	MODE_ACK	0x04+#define MODE_SOFT_TAB	0x08+#define MODE_LIT_ECHO	0x10++#define	MODE_MASK	0x1f++#define MODE_FLOW		0x0100+#define MODE_ECHO		0x0200+#define MODE_INBIN		0x0400+#define MODE_OUTBIN		0x0800+#define MODE_FORCE		0x1000++#define	SLC_SYNCH	1+#define	SLC_BRK		2+#define	SLC_IP		3+#define	SLC_AO		4+#define	SLC_AYT		5+#define	SLC_EOR		6+#define	SLC_ABORT	7+#define	SLC_EOF		8+#define	SLC_SUSP	9+#define	SLC_EC		10+#define	SLC_EL		11+#define	SLC_EW		12+#define	SLC_RP		13+#define	SLC_LNEXT	14+#define	SLC_XON		15+#define	SLC_XOFF	16+#define	SLC_FORW1	17+#define	SLC_FORW2	18++#define	NSLC		18++#define	SLC_NAMELIST	"0", "SYNCH", "BRK", "IP", "AO", "AYT", "EOR", \+			"ABORT", "EOF", "SUSP", "EC", "EL", "EW", "RP", \+			"LNEXT", "XON", "XOFF", "FORW1", "FORW2", 0,+#ifdef	SLC_NAMES+char *slc_names[] = {+	SLC_NAMELIST+};+#else+extern char *slc_names[];+#define	SLC_NAMES SLC_NAMELIST+#endif++#define	SLC_NAME_OK(x)	((unsigned int)(x) <= NSLC)+#define SLC_NAME(x)	slc_names[x]++#define	SLC_NOSUPPORT	0+#define	SLC_CANTCHANGE	1+#define	SLC_VARIABLE	2+#define	SLC_DEFAULT	3+#define	SLC_LEVELBITS	0x03++#define	SLC_FUNC	0+#define	SLC_FLAGS	1+#define	SLC_VALUE	2++#define	SLC_ACK		0x80+#define	SLC_FLUSHIN	0x40+#define	SLC_FLUSHOUT	0x20++#define	OLD_ENV_VAR	1+#define	OLD_ENV_VALUE	0+#define	NEW_ENV_VAR	0+#define	NEW_ENV_VALUE	1+#define	ENV_ESC		2+#define ENV_USERVAR	3++#define	AUTH_WHO_CLIENT		0+#define	AUTH_WHO_SERVER		1+#define	AUTH_WHO_MASK		1++#define	AUTH_HOW_ONE_WAY	0+#define	AUTH_HOW_MUTUAL		2+#define	AUTH_HOW_MASK		2++#define	AUTHTYPE_NULL		0+#define	AUTHTYPE_KERBEROS_V4	1+#define	AUTHTYPE_KERBEROS_V5	2+#define	AUTHTYPE_SPX		3+#define	AUTHTYPE_MINK		4+#define	AUTHTYPE_CNT		5++#define	AUTHTYPE_TEST		99++#ifdef	AUTH_NAMES+char *authtype_names[] = {+	"NULL", "KERBEROS_V4", "KERBEROS_V5", "SPX", "MINK", 0,+};+#else+extern char *authtype_names[];+#endif++#define	AUTHTYPE_NAME_OK(x)	((unsigned int)(x) < AUTHTYPE_CNT)+#define	AUTHTYPE_NAME(x)	authtype_names[x]++#define	ENCRYPT_IS		0+#define	ENCRYPT_SUPPORT		1+#define	ENCRYPT_REPLY		2+#define	ENCRYPT_START		3+#define	ENCRYPT_END		4+#define	ENCRYPT_REQSTART	5+#define	ENCRYPT_REQEND		6+#define	ENCRYPT_ENC_KEYID	7+#define	ENCRYPT_DEC_KEYID	8+#define	ENCRYPT_CNT		9++#define	ENCTYPE_ANY		0+#define	ENCTYPE_DES_CFB64	1+#define	ENCTYPE_DES_OFB64	2+#define	ENCTYPE_CNT		3++#ifdef	ENCRYPT_NAMES+char *encrypt_names[] = {+	"IS", "SUPPORT", "REPLY", "START", "END",+	"REQUEST-START", "REQUEST-END", "ENC-KEYID", "DEC-KEYID",+	0,+};+char *enctype_names[] = {+	"ANY", "DES_CFB64",  "DES_OFB64",  0,+};+#else+extern char *encrypt_names[];+extern char *enctype_names[];+#endif+++#define	ENCRYPT_NAME_OK(x)	((unsigned int)(x) < ENCRYPT_CNT)+#define	ENCRYPT_NAME(x)		encrypt_names[x]++#define	ENCTYPE_NAME_OK(x)	((unsigned int)(x) < ENCTYPE_CNT)+#define	ENCTYPE_NAME(x)		enctype_names[x]++#endif
+ musl-include/arm/arpa/tftp.h view
@@ -0,0 +1,31 @@+#ifndef _ARPA_TFTP_H+#define _ARPA_TFTP_H+#define SEGSIZE 512+#define RRQ 01+#define WRQ 02+#define DATA 03+#define ACK 04+#define ERROR 05+struct tftphdr {+	short th_opcode;+	union {+		unsigned short tu_block;+		short tu_code;+		char tu_stuff[1];+	} th_u;+	char th_data[1];+};+#define th_block th_u.tu_block+#define th_code th_u.tu_code+#define th_stuff th_u.tu_stuff+#define th_msg th_data+#define EUNDEF 0+#define ENOTFOUND 1+#define EACCESS 2+#define ENOSPACE 3+#define EBADOP 4+#define EBADID 5+#define EEXISTS 6+#define ENOUSER 7+#endif+
+ musl-include/arm/assert.h view
@@ -0,0 +1,23 @@+#include <features.h>++#undef assert++#ifdef NDEBUG+#define	assert(x) (void)0+#else+#define assert(x) ((void)((x) || (__assert_fail(#x, __FILE__, __LINE__, __func__),0)))+#endif++#if __STDC_VERSION__ >= 201112L && !defined(__cplusplus)+#define static_assert _Static_assert+#endif++#ifdef __cplusplus+extern "C" {+#endif++_Noreturn void __assert_fail (const char *, const char *, int, const char *);++#ifdef __cplusplus+}+#endif
+ musl-include/arm/bits/alltypes.h view
@@ -0,0 +1,408 @@+#define _REDIR_TIME64 1+#define _Addr int+#define _Int64 long long+#define _Reg int++#if __ARMEB__+#define __BYTE_ORDER 4321+#else+#define __BYTE_ORDER 1234+#endif++#define __LONG_MAX 0x7fffffffL++#ifndef __cplusplus+#if defined(__NEED_wchar_t) && !defined(__DEFINED_wchar_t)+typedef unsigned wchar_t;+#define __DEFINED_wchar_t+#endif++#endif++#if defined(__NEED_float_t) && !defined(__DEFINED_float_t)+typedef float float_t;+#define __DEFINED_float_t+#endif++#if defined(__NEED_double_t) && !defined(__DEFINED_double_t)+typedef double double_t;+#define __DEFINED_double_t+#endif+++#if defined(__NEED_max_align_t) && !defined(__DEFINED_max_align_t)+typedef struct { long long __ll; long double __ld; } max_align_t;+#define __DEFINED_max_align_t+#endif++#define __LITTLE_ENDIAN 1234+#define __BIG_ENDIAN 4321+#define __USE_TIME_BITS64 1++#if defined(__NEED_size_t) && !defined(__DEFINED_size_t)+typedef unsigned _Addr size_t;+#define __DEFINED_size_t+#endif++#if defined(__NEED_uintptr_t) && !defined(__DEFINED_uintptr_t)+typedef unsigned _Addr uintptr_t;+#define __DEFINED_uintptr_t+#endif++#if defined(__NEED_ptrdiff_t) && !defined(__DEFINED_ptrdiff_t)+typedef _Addr ptrdiff_t;+#define __DEFINED_ptrdiff_t+#endif++#if defined(__NEED_ssize_t) && !defined(__DEFINED_ssize_t)+typedef _Addr ssize_t;+#define __DEFINED_ssize_t+#endif++#if defined(__NEED_intptr_t) && !defined(__DEFINED_intptr_t)+typedef _Addr intptr_t;+#define __DEFINED_intptr_t+#endif++#if defined(__NEED_regoff_t) && !defined(__DEFINED_regoff_t)+typedef _Addr regoff_t;+#define __DEFINED_regoff_t+#endif++#if defined(__NEED_register_t) && !defined(__DEFINED_register_t)+typedef _Reg register_t;+#define __DEFINED_register_t+#endif++#if defined(__NEED_time_t) && !defined(__DEFINED_time_t)+typedef _Int64 time_t;+#define __DEFINED_time_t+#endif++#if defined(__NEED_suseconds_t) && !defined(__DEFINED_suseconds_t)+typedef _Int64 suseconds_t;+#define __DEFINED_suseconds_t+#endif+++#if defined(__NEED_int8_t) && !defined(__DEFINED_int8_t)+typedef signed char     int8_t;+#define __DEFINED_int8_t+#endif++#if defined(__NEED_int16_t) && !defined(__DEFINED_int16_t)+typedef signed short    int16_t;+#define __DEFINED_int16_t+#endif++#if defined(__NEED_int32_t) && !defined(__DEFINED_int32_t)+typedef signed int      int32_t;+#define __DEFINED_int32_t+#endif++#if defined(__NEED_int64_t) && !defined(__DEFINED_int64_t)+typedef signed _Int64   int64_t;+#define __DEFINED_int64_t+#endif++#if defined(__NEED_intmax_t) && !defined(__DEFINED_intmax_t)+typedef signed _Int64   intmax_t;+#define __DEFINED_intmax_t+#endif++#if defined(__NEED_uint8_t) && !defined(__DEFINED_uint8_t)+typedef unsigned char   uint8_t;+#define __DEFINED_uint8_t+#endif++#if defined(__NEED_uint16_t) && !defined(__DEFINED_uint16_t)+typedef unsigned short  uint16_t;+#define __DEFINED_uint16_t+#endif++#if defined(__NEED_uint32_t) && !defined(__DEFINED_uint32_t)+typedef unsigned int    uint32_t;+#define __DEFINED_uint32_t+#endif++#if defined(__NEED_uint64_t) && !defined(__DEFINED_uint64_t)+typedef unsigned _Int64 uint64_t;+#define __DEFINED_uint64_t+#endif++#if defined(__NEED_u_int64_t) && !defined(__DEFINED_u_int64_t)+typedef unsigned _Int64 u_int64_t;+#define __DEFINED_u_int64_t+#endif++#if defined(__NEED_uintmax_t) && !defined(__DEFINED_uintmax_t)+typedef unsigned _Int64 uintmax_t;+#define __DEFINED_uintmax_t+#endif+++#if defined(__NEED_mode_t) && !defined(__DEFINED_mode_t)+typedef unsigned mode_t;+#define __DEFINED_mode_t+#endif++#if defined(__NEED_nlink_t) && !defined(__DEFINED_nlink_t)+typedef unsigned _Reg nlink_t;+#define __DEFINED_nlink_t+#endif++#if defined(__NEED_off_t) && !defined(__DEFINED_off_t)+typedef _Int64 off_t;+#define __DEFINED_off_t+#endif++#if defined(__NEED_ino_t) && !defined(__DEFINED_ino_t)+typedef unsigned _Int64 ino_t;+#define __DEFINED_ino_t+#endif++#if defined(__NEED_dev_t) && !defined(__DEFINED_dev_t)+typedef unsigned _Int64 dev_t;+#define __DEFINED_dev_t+#endif++#if defined(__NEED_blksize_t) && !defined(__DEFINED_blksize_t)+typedef long blksize_t;+#define __DEFINED_blksize_t+#endif++#if defined(__NEED_blkcnt_t) && !defined(__DEFINED_blkcnt_t)+typedef _Int64 blkcnt_t;+#define __DEFINED_blkcnt_t+#endif++#if defined(__NEED_fsblkcnt_t) && !defined(__DEFINED_fsblkcnt_t)+typedef unsigned _Int64 fsblkcnt_t;+#define __DEFINED_fsblkcnt_t+#endif++#if defined(__NEED_fsfilcnt_t) && !defined(__DEFINED_fsfilcnt_t)+typedef unsigned _Int64 fsfilcnt_t;+#define __DEFINED_fsfilcnt_t+#endif+++#if defined(__NEED_wint_t) && !defined(__DEFINED_wint_t)+typedef unsigned wint_t;+#define __DEFINED_wint_t+#endif++#if defined(__NEED_wctype_t) && !defined(__DEFINED_wctype_t)+typedef unsigned long wctype_t;+#define __DEFINED_wctype_t+#endif+++#if defined(__NEED_timer_t) && !defined(__DEFINED_timer_t)+typedef void * timer_t;+#define __DEFINED_timer_t+#endif++#if defined(__NEED_clockid_t) && !defined(__DEFINED_clockid_t)+typedef int clockid_t;+#define __DEFINED_clockid_t+#endif++#if defined(__NEED_clock_t) && !defined(__DEFINED_clock_t)+typedef long clock_t;+#define __DEFINED_clock_t+#endif++#if defined(__NEED_struct_timeval) && !defined(__DEFINED_struct_timeval)+struct timeval { time_t tv_sec; suseconds_t tv_usec; };+#define __DEFINED_struct_timeval+#endif++#if defined(__NEED_struct_timespec) && !defined(__DEFINED_struct_timespec)+struct timespec { time_t tv_sec; int :8*(sizeof(time_t)-sizeof(long))*(__BYTE_ORDER==4321); long tv_nsec; int :8*(sizeof(time_t)-sizeof(long))*(__BYTE_ORDER!=4321); };+#define __DEFINED_struct_timespec+#endif+++#if defined(__NEED_pid_t) && !defined(__DEFINED_pid_t)+typedef int pid_t;+#define __DEFINED_pid_t+#endif++#if defined(__NEED_id_t) && !defined(__DEFINED_id_t)+typedef unsigned id_t;+#define __DEFINED_id_t+#endif++#if defined(__NEED_uid_t) && !defined(__DEFINED_uid_t)+typedef unsigned uid_t;+#define __DEFINED_uid_t+#endif++#if defined(__NEED_gid_t) && !defined(__DEFINED_gid_t)+typedef unsigned gid_t;+#define __DEFINED_gid_t+#endif++#if defined(__NEED_key_t) && !defined(__DEFINED_key_t)+typedef int key_t;+#define __DEFINED_key_t+#endif++#if defined(__NEED_useconds_t) && !defined(__DEFINED_useconds_t)+typedef unsigned useconds_t;+#define __DEFINED_useconds_t+#endif+++#ifdef __cplusplus+#if defined(__NEED_pthread_t) && !defined(__DEFINED_pthread_t)+typedef unsigned long pthread_t;+#define __DEFINED_pthread_t+#endif++#else+#if defined(__NEED_pthread_t) && !defined(__DEFINED_pthread_t)+typedef struct __pthread * pthread_t;+#define __DEFINED_pthread_t+#endif++#endif+#if defined(__NEED_pthread_once_t) && !defined(__DEFINED_pthread_once_t)+typedef int pthread_once_t;+#define __DEFINED_pthread_once_t+#endif++#if defined(__NEED_pthread_key_t) && !defined(__DEFINED_pthread_key_t)+typedef unsigned pthread_key_t;+#define __DEFINED_pthread_key_t+#endif++#if defined(__NEED_pthread_spinlock_t) && !defined(__DEFINED_pthread_spinlock_t)+typedef int pthread_spinlock_t;+#define __DEFINED_pthread_spinlock_t+#endif++#if defined(__NEED_pthread_mutexattr_t) && !defined(__DEFINED_pthread_mutexattr_t)+typedef struct { unsigned __attr; } pthread_mutexattr_t;+#define __DEFINED_pthread_mutexattr_t+#endif++#if defined(__NEED_pthread_condattr_t) && !defined(__DEFINED_pthread_condattr_t)+typedef struct { unsigned __attr; } pthread_condattr_t;+#define __DEFINED_pthread_condattr_t+#endif++#if defined(__NEED_pthread_barrierattr_t) && !defined(__DEFINED_pthread_barrierattr_t)+typedef struct { unsigned __attr; } pthread_barrierattr_t;+#define __DEFINED_pthread_barrierattr_t+#endif++#if defined(__NEED_pthread_rwlockattr_t) && !defined(__DEFINED_pthread_rwlockattr_t)+typedef struct { unsigned __attr[2]; } pthread_rwlockattr_t;+#define __DEFINED_pthread_rwlockattr_t+#endif+++#if defined(__NEED_struct__IO_FILE) && !defined(__DEFINED_struct__IO_FILE)+struct _IO_FILE { char __x; };+#define __DEFINED_struct__IO_FILE+#endif++#if defined(__NEED_FILE) && !defined(__DEFINED_FILE)+typedef struct _IO_FILE FILE;+#define __DEFINED_FILE+#endif+++#if defined(__NEED_va_list) && !defined(__DEFINED_va_list)+typedef __builtin_va_list va_list;+#define __DEFINED_va_list+#endif++#if defined(__NEED___isoc_va_list) && !defined(__DEFINED___isoc_va_list)+typedef __builtin_va_list __isoc_va_list;+#define __DEFINED___isoc_va_list+#endif+++#if defined(__NEED_mbstate_t) && !defined(__DEFINED_mbstate_t)+typedef struct __mbstate_t { unsigned __opaque1, __opaque2; } mbstate_t;+#define __DEFINED_mbstate_t+#endif+++#if defined(__NEED_locale_t) && !defined(__DEFINED_locale_t)+typedef struct __locale_struct * locale_t;+#define __DEFINED_locale_t+#endif+++#if defined(__NEED_sigset_t) && !defined(__DEFINED_sigset_t)+typedef struct __sigset_t { unsigned long __bits[128/sizeof(long)]; } sigset_t;+#define __DEFINED_sigset_t+#endif+++#if defined(__NEED_struct_iovec) && !defined(__DEFINED_struct_iovec)+struct iovec { void *iov_base; size_t iov_len; };+#define __DEFINED_struct_iovec+#endif+++#if defined(__NEED_struct_winsize) && !defined(__DEFINED_struct_winsize)+struct winsize { unsigned short ws_row, ws_col, ws_xpixel, ws_ypixel; };+#define __DEFINED_struct_winsize+#endif+++#if defined(__NEED_socklen_t) && !defined(__DEFINED_socklen_t)+typedef unsigned socklen_t;+#define __DEFINED_socklen_t+#endif++#if defined(__NEED_sa_family_t) && !defined(__DEFINED_sa_family_t)+typedef unsigned short sa_family_t;+#define __DEFINED_sa_family_t+#endif+++#if defined(__NEED_pthread_attr_t) && !defined(__DEFINED_pthread_attr_t)+typedef struct { union { int __i[sizeof(long)==8?14:9]; volatile int __vi[sizeof(long)==8?14:9]; unsigned long __s[sizeof(long)==8?7:9]; } __u; } pthread_attr_t;+#define __DEFINED_pthread_attr_t+#endif++#if defined(__NEED_pthread_mutex_t) && !defined(__DEFINED_pthread_mutex_t)+typedef struct { union { int __i[sizeof(long)==8?10:6]; volatile int __vi[sizeof(long)==8?10:6]; volatile void *volatile __p[sizeof(long)==8?5:6]; } __u; } pthread_mutex_t;+#define __DEFINED_pthread_mutex_t+#endif++#if defined(__NEED_mtx_t) && !defined(__DEFINED_mtx_t)+typedef struct { union { int __i[sizeof(long)==8?10:6]; volatile int __vi[sizeof(long)==8?10:6]; volatile void *volatile __p[sizeof(long)==8?5:6]; } __u; } mtx_t;+#define __DEFINED_mtx_t+#endif++#if defined(__NEED_pthread_cond_t) && !defined(__DEFINED_pthread_cond_t)+typedef struct { union { int __i[12]; volatile int __vi[12]; void *__p[12*sizeof(int)/sizeof(void*)]; } __u; } pthread_cond_t;+#define __DEFINED_pthread_cond_t+#endif++#if defined(__NEED_cnd_t) && !defined(__DEFINED_cnd_t)+typedef struct { union { int __i[12]; volatile int __vi[12]; void *__p[12*sizeof(int)/sizeof(void*)]; } __u; } cnd_t;+#define __DEFINED_cnd_t+#endif++#if defined(__NEED_pthread_rwlock_t) && !defined(__DEFINED_pthread_rwlock_t)+typedef struct { union { int __i[sizeof(long)==8?14:8]; volatile int __vi[sizeof(long)==8?14:8]; void *__p[sizeof(long)==8?7:8]; } __u; } pthread_rwlock_t;+#define __DEFINED_pthread_rwlock_t+#endif++#if defined(__NEED_pthread_barrier_t) && !defined(__DEFINED_pthread_barrier_t)+typedef struct { union { int __i[sizeof(long)==8?8:5]; volatile int __vi[sizeof(long)==8?8:5]; void *__p[sizeof(long)==8?4:5]; } __u; } pthread_barrier_t;+#define __DEFINED_pthread_barrier_t+#endif+++#undef _Addr+#undef _Int64+#undef _Reg
+ musl-include/arm/bits/dirent.h view
@@ -0,0 +1,11 @@+#define _DIRENT_HAVE_D_RECLEN+#define _DIRENT_HAVE_D_OFF+#define _DIRENT_HAVE_D_TYPE++struct dirent {+	ino_t d_ino;+	off_t d_off;+	unsigned short d_reclen;+	unsigned char d_type;+	char d_name[256];+};
+ musl-include/arm/bits/errno.h view
@@ -0,0 +1,134 @@+#define EPERM            1+#define ENOENT           2+#define ESRCH            3+#define EINTR            4+#define EIO              5+#define ENXIO            6+#define E2BIG            7+#define ENOEXEC          8+#define EBADF            9+#define ECHILD          10+#define EAGAIN          11+#define ENOMEM          12+#define EACCES          13+#define EFAULT          14+#define ENOTBLK         15+#define EBUSY           16+#define EEXIST          17+#define EXDEV           18+#define ENODEV          19+#define ENOTDIR         20+#define EISDIR          21+#define EINVAL          22+#define ENFILE          23+#define EMFILE          24+#define ENOTTY          25+#define ETXTBSY         26+#define EFBIG           27+#define ENOSPC          28+#define ESPIPE          29+#define EROFS           30+#define EMLINK          31+#define EPIPE           32+#define EDOM            33+#define ERANGE          34+#define EDEADLK         35+#define ENAMETOOLONG    36+#define ENOLCK          37+#define ENOSYS          38+#define ENOTEMPTY       39+#define ELOOP           40+#define EWOULDBLOCK     EAGAIN+#define ENOMSG          42+#define EIDRM           43+#define ECHRNG          44+#define EL2NSYNC        45+#define EL3HLT          46+#define EL3RST          47+#define ELNRNG          48+#define EUNATCH         49+#define ENOCSI          50+#define EL2HLT          51+#define EBADE           52+#define EBADR           53+#define EXFULL          54+#define ENOANO          55+#define EBADRQC         56+#define EBADSLT         57+#define EDEADLOCK       EDEADLK+#define EBFONT          59+#define ENOSTR          60+#define ENODATA         61+#define ETIME           62+#define ENOSR           63+#define ENONET          64+#define ENOPKG          65+#define EREMOTE         66+#define ENOLINK         67+#define EADV            68+#define ESRMNT          69+#define ECOMM           70+#define EPROTO          71+#define EMULTIHOP       72+#define EDOTDOT         73+#define EBADMSG         74+#define EOVERFLOW       75+#define ENOTUNIQ        76+#define EBADFD          77+#define EREMCHG         78+#define ELIBACC         79+#define ELIBBAD         80+#define ELIBSCN         81+#define ELIBMAX         82+#define ELIBEXEC        83+#define EILSEQ          84+#define ERESTART        85+#define ESTRPIPE        86+#define EUSERS          87+#define ENOTSOCK        88+#define EDESTADDRREQ    89+#define EMSGSIZE        90+#define EPROTOTYPE      91+#define ENOPROTOOPT     92+#define EPROTONOSUPPORT 93+#define ESOCKTNOSUPPORT 94+#define EOPNOTSUPP      95+#define ENOTSUP         EOPNOTSUPP+#define EPFNOSUPPORT    96+#define EAFNOSUPPORT    97+#define EADDRINUSE      98+#define EADDRNOTAVAIL   99+#define ENETDOWN        100+#define ENETUNREACH     101+#define ENETRESET       102+#define ECONNABORTED    103+#define ECONNRESET      104+#define ENOBUFS         105+#define EISCONN         106+#define ENOTCONN        107+#define ESHUTDOWN       108+#define ETOOMANYREFS    109+#define ETIMEDOUT       110+#define ECONNREFUSED    111+#define EHOSTDOWN       112+#define EHOSTUNREACH    113+#define EALREADY        114+#define EINPROGRESS     115+#define ESTALE          116+#define EUCLEAN         117+#define ENOTNAM         118+#define ENAVAIL         119+#define EISNAM          120+#define EREMOTEIO       121+#define EDQUOT          122+#define ENOMEDIUM       123+#define EMEDIUMTYPE     124+#define ECANCELED       125+#define ENOKEY          126+#define EKEYEXPIRED     127+#define EKEYREVOKED     128+#define EKEYREJECTED    129+#define EOWNERDEAD      130+#define ENOTRECOVERABLE 131+#define ERFKILL         132+#define EHWPOISON       133
+ musl-include/arm/bits/fcntl.h view
@@ -0,0 +1,40 @@+#define O_CREAT        0100+#define O_EXCL         0200+#define O_NOCTTY       0400+#define O_TRUNC       01000+#define O_APPEND      02000+#define O_NONBLOCK    04000+#define O_DSYNC      010000+#define O_SYNC     04010000+#define O_RSYNC    04010000+#define O_DIRECTORY  040000+#define O_NOFOLLOW  0100000+#define O_CLOEXEC  02000000++#define O_ASYNC      020000+#define O_DIRECT    0200000+#define O_LARGEFILE 0400000+#define O_NOATIME  01000000+#define O_PATH    010000000+#define O_TMPFILE 020040000+#define O_NDELAY O_NONBLOCK++#define F_DUPFD  0+#define F_GETFD  1+#define F_SETFD  2+#define F_GETFL  3+#define F_SETFL  4++#define F_SETOWN 8+#define F_GETOWN 9+#define F_SETSIG 10+#define F_GETSIG 11++#define F_GETLK 12+#define F_SETLK 13+#define F_SETLKW 14++#define F_SETOWN_EX 15+#define F_GETOWN_EX 16++#define F_GETOWNER_UIDS 17
+ musl-include/arm/bits/fenv.h view
@@ -0,0 +1,23 @@+#ifndef __ARM_PCS_VFP+#define FE_ALL_EXCEPT 0+#define FE_TONEAREST  0+#else+#define FE_INVALID    1+#define FE_DIVBYZERO  2+#define FE_OVERFLOW   4+#define FE_UNDERFLOW  8+#define FE_INEXACT    16+#define FE_ALL_EXCEPT 31+#define FE_TONEAREST  0+#define FE_DOWNWARD   0x800000+#define FE_UPWARD     0x400000+#define FE_TOWARDZERO 0xc00000+#endif++typedef unsigned long fexcept_t;++typedef struct {+	unsigned long __cw;+} fenv_t;++#define FE_DFL_ENV      ((const fenv_t *) -1)
+ musl-include/arm/bits/float.h view
@@ -0,0 +1,16 @@+#define FLT_EVAL_METHOD 0++#define LDBL_TRUE_MIN 4.94065645841246544177e-324L+#define LDBL_MIN 2.22507385850720138309e-308L+#define LDBL_MAX 1.79769313486231570815e+308L+#define LDBL_EPSILON 2.22044604925031308085e-16L++#define LDBL_MANT_DIG 53+#define LDBL_MIN_EXP (-1021)+#define LDBL_MAX_EXP 1024++#define LDBL_DIG 15+#define LDBL_MIN_10_EXP (-307)+#define LDBL_MAX_10_EXP 308++#define DECIMAL_DIG 17
+ musl-include/arm/bits/hwcap.h view
@@ -0,0 +1,53 @@+#define HWCAP_SWP	(1 << 0)+#define HWCAP_HALF	(1 << 1)+#define HWCAP_THUMB	(1 << 2)+#define HWCAP_26BIT	(1 << 3)+#define HWCAP_FAST_MULT	(1 << 4)+#define HWCAP_FPA	(1 << 5)+#define HWCAP_VFP	(1 << 6)+#define HWCAP_EDSP	(1 << 7)+#define HWCAP_JAVA	(1 << 8)+#define HWCAP_IWMMXT	(1 << 9)+#define HWCAP_CRUNCH	(1 << 10)+#define HWCAP_THUMBEE	(1 << 11)+#define HWCAP_NEON	(1 << 12)+#define HWCAP_VFPv3	(1 << 13)+#define HWCAP_VFPv3D16	(1 << 14)+#define HWCAP_TLS	(1 << 15)+#define HWCAP_VFPv4	(1 << 16)+#define HWCAP_IDIVA	(1 << 17)+#define HWCAP_IDIVT	(1 << 18)+#define HWCAP_VFPD32	(1 << 19)+#define HWCAP_IDIV	(HWCAP_IDIVA | HWCAP_IDIVT)+#define HWCAP_LPAE	(1 << 20)+#define HWCAP_EVTSTRM	(1 << 21)++#define HWCAP2_AES	(1 << 0)+#define HWCAP2_PMULL	(1 << 1)+#define HWCAP2_SHA1	(1 << 2)+#define HWCAP2_SHA2	(1 << 3)+#define HWCAP2_CRC32	(1 << 4)++#define HWCAP_ARM_SWP	(1 << 0)+#define HWCAP_ARM_HALF	(1 << 1)+#define HWCAP_ARM_THUMB	(1 << 2)+#define HWCAP_ARM_26BIT	(1 << 3)+#define HWCAP_ARM_FAST_MULT	(1 << 4)+#define HWCAP_ARM_FPA	(1 << 5)+#define HWCAP_ARM_VFP	(1 << 6)+#define HWCAP_ARM_EDSP	(1 << 7)+#define HWCAP_ARM_JAVA	(1 << 8)+#define HWCAP_ARM_IWMMXT	(1 << 9)+#define HWCAP_ARM_CRUNCH	(1 << 10)+#define HWCAP_ARM_THUMBEE	(1 << 11)+#define HWCAP_ARM_NEON	(1 << 12)+#define HWCAP_ARM_VFPv3	(1 << 13)+#define HWCAP_ARM_VFPv3D16	(1 << 14)+#define HWCAP_ARM_TLS	(1 << 15)+#define HWCAP_ARM_VFPv4	(1 << 16)+#define HWCAP_ARM_IDIVA	(1 << 17)+#define HWCAP_ARM_IDIVT	(1 << 18)+#define HWCAP_ARM_VFPD32	(1 << 19)+#define HWCAP_ARM_IDIV	(HWCAP_ARM_IDIVA | HWCAP_ARM_IDIVT)+#define HWCAP_ARM_LPAE	(1 << 20)+#define HWCAP_ARM_EVTSTRM	(1 << 21)
+ musl-include/arm/bits/io.h view
+ musl-include/arm/bits/ioctl.h view
@@ -0,0 +1,115 @@+#define _IOC(a,b,c,d) ( ((a)<<30) | ((b)<<8) | (c) | ((d)<<16) )+#define _IOC_NONE  0U+#define _IOC_WRITE 1U+#define _IOC_READ  2U++#define _IO(a,b) _IOC(_IOC_NONE,(a),(b),0)+#define _IOW(a,b,c) _IOC(_IOC_WRITE,(a),(b),sizeof(c))+#define _IOR(a,b,c) _IOC(_IOC_READ,(a),(b),sizeof(c))+#define _IOWR(a,b,c) _IOC(_IOC_READ|_IOC_WRITE,(a),(b),sizeof(c))++#define TCGETS		0x5401+#define TCSETS		0x5402+#define TCSETSW		0x5403+#define TCSETSF		0x5404+#define TCGETA		0x5405+#define TCSETA		0x5406+#define TCSETAW		0x5407+#define TCSETAF		0x5408+#define TCSBRK		0x5409+#define TCXONC		0x540A+#define TCFLSH		0x540B+#define TIOCEXCL	0x540C+#define TIOCNXCL	0x540D+#define TIOCSCTTY	0x540E+#define TIOCGPGRP	0x540F+#define TIOCSPGRP	0x5410+#define TIOCOUTQ	0x5411+#define TIOCSTI		0x5412+#define TIOCGWINSZ	0x5413+#define TIOCSWINSZ	0x5414+#define TIOCMGET	0x5415+#define TIOCMBIS	0x5416+#define TIOCMBIC	0x5417+#define TIOCMSET	0x5418+#define TIOCGSOFTCAR	0x5419+#define TIOCSSOFTCAR	0x541A+#define FIONREAD	0x541B+#define TIOCINQ		FIONREAD+#define TIOCLINUX	0x541C+#define TIOCCONS	0x541D+#define TIOCGSERIAL	0x541E+#define TIOCSSERIAL	0x541F+#define TIOCPKT		0x5420+#define FIONBIO		0x5421+#define TIOCNOTTY	0x5422+#define TIOCSETD	0x5423+#define TIOCGETD	0x5424+#define TCSBRKP		0x5425+#define TIOCSBRK	0x5427+#define TIOCCBRK	0x5428+#define TIOCGSID	0x5429+#define TIOCGRS485	0x542E+#define TIOCSRS485	0x542F+#define TIOCGPTN	0x80045430+#define TIOCSPTLCK	0x40045431+#define TIOCGDEV	0x80045432+#define TCGETX		0x5432+#define TCSETX		0x5433+#define TCSETXF		0x5434+#define TCSETXW		0x5435+#define TIOCSIG		0x40045436+#define TIOCVHANGUP	0x5437+#define TIOCGPKT	0x80045438+#define TIOCGPTLCK	0x80045439+#define TIOCGEXCL	0x80045440+#define TIOCGPTPEER	0x5441+#define TIOCGISO7816	0x80285442+#define TIOCSISO7816	0xc0285443++#define FIONCLEX	0x5450+#define FIOCLEX		0x5451+#define FIOASYNC	0x5452+#define TIOCSERCONFIG	0x5453+#define TIOCSERGWILD	0x5454+#define TIOCSERSWILD	0x5455+#define TIOCGLCKTRMIOS	0x5456+#define TIOCSLCKTRMIOS	0x5457+#define TIOCSERGSTRUCT	0x5458+#define TIOCSERGETLSR   0x5459+#define TIOCSERGETMULTI 0x545A+#define TIOCSERSETMULTI 0x545B++#define TIOCMIWAIT	0x545C+#define TIOCGICOUNT	0x545D+#define FIOQSIZE	0x5460++#define TIOCM_LE        0x001+#define TIOCM_DTR       0x002+#define TIOCM_RTS       0x004+#define TIOCM_ST        0x008+#define TIOCM_SR        0x010+#define TIOCM_CTS       0x020+#define TIOCM_CAR       0x040+#define TIOCM_RNG       0x080+#define TIOCM_DSR       0x100+#define TIOCM_CD        TIOCM_CAR+#define TIOCM_RI        TIOCM_RNG+#define TIOCM_OUT1      0x2000+#define TIOCM_OUT2      0x4000+#define TIOCM_LOOP      0x8000++#define FIOSETOWN       0x8901+#define SIOCSPGRP       0x8902+#define FIOGETOWN       0x8903+#define SIOCGPGRP       0x8904+#define SIOCATMARK      0x8905+#if __LONG_MAX == 0x7fffffff+#define SIOCGSTAMP      _IOR(0x89, 6, char[16])+#define SIOCGSTAMPNS    _IOR(0x89, 7, char[16])+#else+#define SIOCGSTAMP      0x8906+#define SIOCGSTAMPNS    0x8907+#endif++#include <bits/ioctl_fix.h>
+ musl-include/arm/bits/ioctl_fix.h view
@@ -0,0 +1,2 @@+#undef FIOQSIZE+#define FIOQSIZE 0x545e
+ musl-include/arm/bits/ipc.h view
@@ -0,0 +1,11 @@+struct ipc_perm {+	key_t __ipc_perm_key;+	uid_t uid;+	gid_t gid;+	uid_t cuid;+	gid_t cgid;+	mode_t mode;+	int __ipc_perm_seq;+	long __pad1;+	long __pad2;+};
+ musl-include/arm/bits/ipcstat.h view
@@ -0,0 +1,1 @@+#define IPC_STAT 0x102
+ musl-include/arm/bits/kd.h view
@@ -0,0 +1,1 @@+#include <linux/kd.h>
+ musl-include/arm/bits/limits.h view
+ musl-include/arm/bits/link.h view
@@ -0,0 +1,1 @@+typedef uint32_t Elf_Symndx;
+ musl-include/arm/bits/mman.h view
+ musl-include/arm/bits/msg.h view
@@ -0,0 +1,18 @@+struct msqid_ds {+	struct ipc_perm msg_perm;+	unsigned long __msg_stime_lo;+	unsigned long __msg_stime_hi;+	unsigned long __msg_rtime_lo;+	unsigned long __msg_rtime_hi;+	unsigned long __msg_ctime_lo;+	unsigned long __msg_ctime_hi;+	unsigned long msg_cbytes;+	msgqnum_t msg_qnum;+	msglen_t msg_qbytes;+	pid_t msg_lspid;+	pid_t msg_lrpid;+	unsigned long __unused[2];+	time_t msg_stime;+	time_t msg_rtime;+	time_t msg_ctime;+};
+ musl-include/arm/bits/poll.h view
+ musl-include/arm/bits/posix.h view
@@ -0,0 +1,2 @@+#define _POSIX_V6_ILP32_OFFBIG  1+#define _POSIX_V7_ILP32_OFFBIG  1
+ musl-include/arm/bits/ptrace.h view
@@ -0,0 +1,25 @@+#define PTRACE_GETWMMXREGS	18+#define PTRACE_SETWMMXREGS	19+#define PTRACE_GET_THREAD_AREA	22+#define PTRACE_SET_SYSCALL	23+#define PTRACE_GETCRUNCHREGS	25+#define PTRACE_SETCRUNCHREGS	26+#define PTRACE_GETVFPREGS	27+#define PTRACE_SETVFPREGS	28+#define PTRACE_GETHBPREGS	29+#define PTRACE_SETHBPREGS	30+#define PTRACE_GETFDPIC		31+#define PTRACE_GETFDPIC_EXEC	0+#define PTRACE_GETFDPIC_INTERP	1++#define PT_GETWMMXREGS PTRACE_GETWMMXREGS+#define PT_SETWMMXREGS PTRACE_SETWMMXREGS+#define PT_GET_THREAD_AREA PTRACE_GET_THREAD_AREA+#define PT_SET_SYSCALL PTRACE_SET_SYSCALL+#define PT_GETCRUNCHREGS PTRACE_GETCRUNCHREGS+#define PT_SETCRUNCHREGS PTRACE_SETCRUNCHREGS+#define PT_GETVFPREGS PTRACE_GETVFPREGS+#define PT_SETVFPREGS PTRACE_SETVFPREGS+#define PT_GETHBPREGS PTRACE_GETHBPREGS+#define PT_SETHBPREGS PTRACE_SETHBPREGS+#define PT_GETFDPIC PTRACE_GETFDPIC
+ musl-include/arm/bits/reg.h view
@@ -0,0 +1,3 @@+#undef __WORDSIZE+#define __WORDSIZE 32+/* FIXME */
+ musl-include/arm/bits/resource.h view
+ musl-include/arm/bits/sem.h view
@@ -0,0 +1,18 @@+struct semid_ds {+	struct ipc_perm sem_perm;+	unsigned long __sem_otime_lo;+	unsigned long __sem_otime_hi;+	unsigned long __sem_ctime_lo;+	unsigned long __sem_ctime_hi;+#if __BYTE_ORDER == __LITTLE_ENDIAN+	unsigned short sem_nsems;+	char __sem_nsems_pad[sizeof(long)-sizeof(short)];+#else+	char __sem_nsems_pad[sizeof(long)-sizeof(short)];+	unsigned short sem_nsems;+#endif+	long __unused3;+	long __unused4;+	time_t sem_otime;+	time_t sem_ctime;+};
+ musl-include/arm/bits/setjmp.h view
@@ -0,0 +1,1 @@+typedef unsigned long long __jmp_buf[32];
+ musl-include/arm/bits/shm.h view
@@ -0,0 +1,31 @@+#define SHMLBA 4096++struct shmid_ds {+	struct ipc_perm shm_perm;+	size_t shm_segsz;+	unsigned long __shm_atime_lo;+	unsigned long __shm_atime_hi;+	unsigned long __shm_dtime_lo;+	unsigned long __shm_dtime_hi;+	unsigned long __shm_ctime_lo;+	unsigned long __shm_ctime_hi;+	pid_t shm_cpid;+	pid_t shm_lpid;+	unsigned long shm_nattch;+	unsigned long __pad1;+	unsigned long __pad2;+	unsigned long __pad3;+	time_t shm_atime;+	time_t shm_dtime;+	time_t shm_ctime;+};++struct shminfo {+	unsigned long shmmax, shmmin, shmmni, shmseg, shmall, __unused[4];+};++struct shm_info {+	int __used_ids;+	unsigned long shm_tot, shm_rss, shm_swp;+	unsigned long __swap_attempts, __swap_successes;+};
+ musl-include/arm/bits/signal.h view
@@ -0,0 +1,86 @@+#if defined(_POSIX_SOURCE) || defined(_POSIX_C_SOURCE) \+ || defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) || defined(_BSD_SOURCE)++#if defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) || defined(_BSD_SOURCE)+#define MINSIGSTKSZ 2048+#define SIGSTKSZ 8192+#endif++#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE)+typedef int greg_t, gregset_t[18];+typedef struct sigcontext {+	unsigned long trap_no, error_code, oldmask;+	unsigned long arm_r0, arm_r1, arm_r2, arm_r3;+	unsigned long arm_r4, arm_r5, arm_r6, arm_r7;+	unsigned long arm_r8, arm_r9, arm_r10, arm_fp;+	unsigned long arm_ip, arm_sp, arm_lr, arm_pc;+	unsigned long arm_cpsr, fault_address;+} mcontext_t;+#else+typedef struct {+	unsigned long __regs[21];+} mcontext_t;+#endif++struct sigaltstack {+	void *ss_sp;+	int ss_flags;+	size_t ss_size;+};++typedef struct __ucontext {+	unsigned long uc_flags;+	struct __ucontext *uc_link;+	stack_t uc_stack;+	mcontext_t uc_mcontext;+	sigset_t uc_sigmask;+	unsigned long long uc_regspace[64];+} ucontext_t;++#define SA_NOCLDSTOP  1+#define SA_NOCLDWAIT  2+#define SA_SIGINFO    4+#define SA_ONSTACK    0x08000000+#define SA_RESTART    0x10000000+#define SA_NODEFER    0x40000000+#define SA_RESETHAND  0x80000000+#define SA_RESTORER   0x04000000++#endif++#define SIGHUP    1+#define SIGINT    2+#define SIGQUIT   3+#define SIGILL    4+#define SIGTRAP   5+#define SIGABRT   6+#define SIGIOT    SIGABRT+#define SIGBUS    7+#define SIGFPE    8+#define SIGKILL   9+#define SIGUSR1   10+#define SIGSEGV   11+#define SIGUSR2   12+#define SIGPIPE   13+#define SIGALRM   14+#define SIGTERM   15+#define SIGSTKFLT 16+#define SIGCHLD   17+#define SIGCONT   18+#define SIGSTOP   19+#define SIGTSTP   20+#define SIGTTIN   21+#define SIGTTOU   22+#define SIGURG    23+#define SIGXCPU   24+#define SIGXFSZ   25+#define SIGVTALRM 26+#define SIGPROF   27+#define SIGWINCH  28+#define SIGIO     29+#define SIGPOLL   29+#define SIGPWR    30+#define SIGSYS    31+#define SIGUNUSED SIGSYS++#define _NSIG 65
+ musl-include/arm/bits/socket.h view
+ musl-include/arm/bits/soundcard.h view
@@ -0,0 +1,1 @@+#include <linux/soundcard.h>
+ musl-include/arm/bits/stat.h view
@@ -0,0 +1,25 @@+/* copied from kernel definition, but with padding replaced+ * by the corresponding correctly-sized userspace types. */++struct stat {+	dev_t st_dev;+	int __st_dev_padding;+	long __st_ino_truncated;+	mode_t st_mode;+	nlink_t st_nlink;+	uid_t st_uid;+	gid_t st_gid;+	dev_t st_rdev;+	int __st_rdev_padding;+	off_t st_size;+	blksize_t st_blksize;+	blkcnt_t st_blocks;+	struct {+		long tv_sec;+		long tv_nsec;+	} __st_atim32, __st_mtim32, __st_ctim32;+	ino_t st_ino;+	struct timespec st_atim;+	struct timespec st_mtim;+	struct timespec st_ctim;+};
+ musl-include/arm/bits/statfs.h view
@@ -0,0 +1,7 @@+struct statfs {+	unsigned long f_type, f_bsize;+	fsblkcnt_t f_blocks, f_bfree, f_bavail;+	fsfilcnt_t f_files, f_ffree;+	fsid_t f_fsid;+	unsigned long f_namelen, f_frsize, f_flags, f_spare[4];+};
+ musl-include/arm/bits/stdint.h view
@@ -0,0 +1,20 @@+typedef int32_t int_fast16_t;+typedef int32_t int_fast32_t;+typedef uint32_t uint_fast16_t;+typedef uint32_t uint_fast32_t;++#define INT_FAST16_MIN  INT32_MIN+#define INT_FAST32_MIN  INT32_MIN++#define INT_FAST16_MAX  INT32_MAX+#define INT_FAST32_MAX  INT32_MAX++#define UINT_FAST16_MAX UINT32_MAX+#define UINT_FAST32_MAX UINT32_MAX++#define INTPTR_MIN      INT32_MIN+#define INTPTR_MAX      INT32_MAX+#define UINTPTR_MAX     UINT32_MAX+#define PTRDIFF_MIN     INT32_MIN+#define PTRDIFF_MAX     INT32_MAX+#define SIZE_MAX        UINT32_MAX
+ musl-include/arm/bits/syscall.h view
@@ -0,0 +1,820 @@+#define __NR_restart_syscall	0+#define __NR_exit	1+#define __NR_fork	2+#define __NR_read	3+#define __NR_write	4+#define __NR_open	5+#define __NR_close	6+#define __NR_creat	8+#define __NR_link	9+#define __NR_unlink	10+#define __NR_execve	11+#define __NR_chdir	12+#define __NR_mknod	14+#define __NR_chmod	15+#define __NR_lchown	16+#define __NR_lseek	19+#define __NR_getpid	20+#define __NR_mount	21+#define __NR_setuid	23+#define __NR_getuid	24+#define __NR_ptrace	26+#define __NR_pause	29+#define __NR_access	33+#define __NR_nice	34+#define __NR_sync	36+#define __NR_kill	37+#define __NR_rename	38+#define __NR_mkdir	39+#define __NR_rmdir	40+#define __NR_dup	41+#define __NR_pipe	42+#define __NR_times	43+#define __NR_brk	45+#define __NR_setgid	46+#define __NR_getgid	47+#define __NR_geteuid	49+#define __NR_getegid	50+#define __NR_acct	51+#define __NR_umount2	52+#define __NR_ioctl	54+#define __NR_fcntl	55+#define __NR_setpgid	57+#define __NR_umask	60+#define __NR_chroot	61+#define __NR_ustat	62+#define __NR_dup2	63+#define __NR_getppid	64+#define __NR_getpgrp	65+#define __NR_setsid	66+#define __NR_sigaction	67+#define __NR_setreuid	70+#define __NR_setregid	71+#define __NR_sigsuspend	72+#define __NR_sigpending	73+#define __NR_sethostname	74+#define __NR_setrlimit	75+#define __NR_getrusage	77+#define __NR_gettimeofday_time32	78+#define __NR_settimeofday_time32	79+#define __NR_getgroups	80+#define __NR_setgroups	81+#define __NR_symlink	83+#define __NR_readlink	85+#define __NR_uselib	86+#define __NR_swapon	87+#define __NR_reboot	88+#define __NR_munmap	91+#define __NR_truncate	92+#define __NR_ftruncate	93+#define __NR_fchmod	94+#define __NR_fchown	95+#define __NR_getpriority	96+#define __NR_setpriority	97+#define __NR_statfs	99+#define __NR_fstatfs	100+#define __NR_syslog	103+#define __NR_setitimer	104+#define __NR_getitimer	105+#define __NR_stat	106+#define __NR_lstat	107+#define __NR_fstat	108+#define __NR_vhangup	111+#define __NR_wait4	114+#define __NR_swapoff	115+#define __NR_sysinfo	116+#define __NR_fsync	118+#define __NR_sigreturn	119+#define __NR_clone	120+#define __NR_setdomainname	121+#define __NR_uname	122+#define __NR_adjtimex	124+#define __NR_mprotect	125+#define __NR_sigprocmask	126+#define __NR_init_module	128+#define __NR_delete_module	129+#define __NR_quotactl	131+#define __NR_getpgid	132+#define __NR_fchdir	133+#define __NR_bdflush	134+#define __NR_sysfs	135+#define __NR_personality	136+#define __NR_setfsuid	138+#define __NR_setfsgid	139+#define __NR__llseek	140+#define __NR_getdents	141+#define __NR__newselect	142+#define __NR_flock	143+#define __NR_msync	144+#define __NR_readv	145+#define __NR_writev	146+#define __NR_getsid	147+#define __NR_fdatasync	148+#define __NR__sysctl	149+#define __NR_mlock	150+#define __NR_munlock	151+#define __NR_mlockall	152+#define __NR_munlockall	153+#define __NR_sched_setparam	154+#define __NR_sched_getparam	155+#define __NR_sched_setscheduler	156+#define __NR_sched_getscheduler	157+#define __NR_sched_yield	158+#define __NR_sched_get_priority_max	159+#define __NR_sched_get_priority_min	160+#define __NR_sched_rr_get_interval	161+#define __NR_nanosleep	162+#define __NR_mremap	163+#define __NR_setresuid	164+#define __NR_getresuid	165+#define __NR_poll	168+#define __NR_nfsservctl	169+#define __NR_setresgid	170+#define __NR_getresgid	171+#define __NR_prctl	172+#define __NR_rt_sigreturn	173+#define __NR_rt_sigaction	174+#define __NR_rt_sigprocmask	175+#define __NR_rt_sigpending	176+#define __NR_rt_sigtimedwait	177+#define __NR_rt_sigqueueinfo	178+#define __NR_rt_sigsuspend	179+#define __NR_pread64	180+#define __NR_pwrite64	181+#define __NR_chown	182+#define __NR_getcwd	183+#define __NR_capget	184+#define __NR_capset	185+#define __NR_sigaltstack	186+#define __NR_sendfile	187+#define __NR_vfork	190+#define __NR_ugetrlimit	191+#define __NR_mmap2	192+#define __NR_truncate64	193+#define __NR_ftruncate64	194+#define __NR_stat64	195+#define __NR_lstat64	196+#define __NR_fstat64	197+#define __NR_lchown32	198+#define __NR_getuid32	199+#define __NR_getgid32	200+#define __NR_geteuid32	201+#define __NR_getegid32	202+#define __NR_setreuid32	203+#define __NR_setregid32	204+#define __NR_getgroups32	205+#define __NR_setgroups32	206+#define __NR_fchown32	207+#define __NR_setresuid32	208+#define __NR_getresuid32	209+#define __NR_setresgid32	210+#define __NR_getresgid32	211+#define __NR_chown32	212+#define __NR_setuid32	213+#define __NR_setgid32	214+#define __NR_setfsuid32	215+#define __NR_setfsgid32	216+#define __NR_getdents64	217+#define __NR_pivot_root	218+#define __NR_mincore	219+#define __NR_madvise	220+#define __NR_fcntl64	221+#define __NR_gettid	224+#define __NR_readahead	225+#define __NR_setxattr	226+#define __NR_lsetxattr	227+#define __NR_fsetxattr	228+#define __NR_getxattr	229+#define __NR_lgetxattr	230+#define __NR_fgetxattr	231+#define __NR_listxattr	232+#define __NR_llistxattr	233+#define __NR_flistxattr	234+#define __NR_removexattr	235+#define __NR_lremovexattr	236+#define __NR_fremovexattr	237+#define __NR_tkill	238+#define __NR_sendfile64	239+#define __NR_futex	240+#define __NR_sched_setaffinity	241+#define __NR_sched_getaffinity	242+#define __NR_io_setup	243+#define __NR_io_destroy	244+#define __NR_io_getevents	245+#define __NR_io_submit	246+#define __NR_io_cancel	247+#define __NR_exit_group	248+#define __NR_lookup_dcookie	249+#define __NR_epoll_create	250+#define __NR_epoll_ctl	251+#define __NR_epoll_wait	252+#define __NR_remap_file_pages	253+#define __NR_set_tid_address	256+#define __NR_timer_create	257+#define __NR_timer_settime32	258+#define __NR_timer_gettime32	259+#define __NR_timer_getoverrun	260+#define __NR_timer_delete	261+#define __NR_clock_settime32	262+#define __NR_clock_gettime32	263+#define __NR_clock_getres_time32	264+#define __NR_clock_nanosleep_time32	265+#define __NR_statfs64	266+#define __NR_fstatfs64	267+#define __NR_tgkill	268+#define __NR_utimes	269+#define __NR_fadvise64_64	270+#define __NR_arm_fadvise64_64	270+#define __NR_pciconfig_iobase	271+#define __NR_pciconfig_read	272+#define __NR_pciconfig_write	273+#define __NR_mq_open	274+#define __NR_mq_unlink	275+#define __NR_mq_timedsend	276+#define __NR_mq_timedreceive	277+#define __NR_mq_notify	278+#define __NR_mq_getsetattr	279+#define __NR_waitid	280+#define __NR_socket	281+#define __NR_bind	282+#define __NR_connect	283+#define __NR_listen	284+#define __NR_accept	285+#define __NR_getsockname	286+#define __NR_getpeername	287+#define __NR_socketpair	288+#define __NR_send	289+#define __NR_sendto	290+#define __NR_recv	291+#define __NR_recvfrom	292+#define __NR_shutdown	293+#define __NR_setsockopt	294+#define __NR_getsockopt	295+#define __NR_sendmsg	296+#define __NR_recvmsg	297+#define __NR_semop	298+#define __NR_semget	299+#define __NR_semctl	300+#define __NR_msgsnd	301+#define __NR_msgrcv	302+#define __NR_msgget	303+#define __NR_msgctl	304+#define __NR_shmat	305+#define __NR_shmdt	306+#define __NR_shmget	307+#define __NR_shmctl	308+#define __NR_add_key	309+#define __NR_request_key	310+#define __NR_keyctl	311+#define __NR_semtimedop	312+#define __NR_vserver	313+#define __NR_ioprio_set	314+#define __NR_ioprio_get	315+#define __NR_inotify_init	316+#define __NR_inotify_add_watch	317+#define __NR_inotify_rm_watch	318+#define __NR_mbind	319+#define __NR_get_mempolicy	320+#define __NR_set_mempolicy	321+#define __NR_openat	322+#define __NR_mkdirat	323+#define __NR_mknodat	324+#define __NR_fchownat	325+#define __NR_futimesat	326+#define __NR_fstatat64	327+#define __NR_unlinkat	328+#define __NR_renameat	329+#define __NR_linkat	330+#define __NR_symlinkat	331+#define __NR_readlinkat	332+#define __NR_fchmodat	333+#define __NR_faccessat	334+#define __NR_pselect6	335+#define __NR_ppoll	336+#define __NR_unshare	337+#define __NR_set_robust_list	338+#define __NR_get_robust_list	339+#define __NR_splice	340+#define __NR_sync_file_range2	341+#define __NR_arm_sync_file_range	341+#define __NR_tee	342+#define __NR_vmsplice	343+#define __NR_move_pages	344+#define __NR_getcpu	345+#define __NR_epoll_pwait	346+#define __NR_kexec_load	347+#define __NR_utimensat	348+#define __NR_signalfd	349+#define __NR_timerfd_create	350+#define __NR_eventfd	351+#define __NR_fallocate	352+#define __NR_timerfd_settime32	353+#define __NR_timerfd_gettime32	354+#define __NR_signalfd4	355+#define __NR_eventfd2	356+#define __NR_epoll_create1	357+#define __NR_dup3	358+#define __NR_pipe2	359+#define __NR_inotify_init1	360+#define __NR_preadv	361+#define __NR_pwritev	362+#define __NR_rt_tgsigqueueinfo	363+#define __NR_perf_event_open	364+#define __NR_recvmmsg	365+#define __NR_accept4	366+#define __NR_fanotify_init	367+#define __NR_fanotify_mark	368+#define __NR_prlimit64	369+#define __NR_name_to_handle_at	370+#define __NR_open_by_handle_at	371+#define __NR_clock_adjtime	372+#define __NR_syncfs	373+#define __NR_sendmmsg	374+#define __NR_setns	375+#define __NR_process_vm_readv	376+#define __NR_process_vm_writev	377+#define __NR_kcmp		378+#define __NR_finit_module	379+#define __NR_sched_setattr	380+#define __NR_sched_getattr	381+#define __NR_renameat2	382+#define __NR_seccomp	383+#define __NR_getrandom	384+#define __NR_memfd_create	385+#define __NR_bpf	386+#define __NR_execveat	387+#define __NR_userfaultfd	388+#define __NR_membarrier		389+#define __NR_mlock2		390+#define __NR_copy_file_range	391+#define __NR_preadv2	392+#define __NR_pwritev2	393+#define __NR_pkey_mprotect	394+#define __NR_pkey_alloc	395+#define __NR_pkey_free	396+#define __NR_statx	397+#define __NR_rseq	398+#define __NR_io_pgetevents	399+#define __NR_migrate_pages	400+#define __NR_kexec_file_load	401+#define __NR_clock_gettime64	403+#define __NR_clock_settime64	404+#define __NR_clock_adjtime64	405+#define __NR_clock_getres_time64	406+#define __NR_clock_nanosleep_time64	407+#define __NR_timer_gettime64	408+#define __NR_timer_settime64	409+#define __NR_timerfd_gettime64	410+#define __NR_timerfd_settime64	411+#define __NR_utimensat_time64	412+#define __NR_pselect6_time64	413+#define __NR_ppoll_time64	414+#define __NR_io_pgetevents_time64	416+#define __NR_recvmmsg_time64	417+#define __NR_mq_timedsend_time64	418+#define __NR_mq_timedreceive_time64	419+#define __NR_semtimedop_time64	420+#define __NR_rt_sigtimedwait_time64	421+#define __NR_futex_time64	422+#define __NR_sched_rr_get_interval_time64	423+#define __NR_pidfd_send_signal	424+#define __NR_io_uring_setup	425+#define __NR_io_uring_enter	426+#define __NR_io_uring_register	427+#define __NR_open_tree		428+#define __NR_move_mount		429+#define __NR_fsopen		430+#define __NR_fsconfig		431+#define __NR_fsmount		432+#define __NR_fspick		433+#define __NR_pidfd_open		434+#define __NR_clone3		435+#define __NR_close_range	436+#define __NR_openat2		437+#define __NR_pidfd_getfd	438+#define __NR_faccessat2		439+#define __NR_process_madvise	440+#define __NR_epoll_pwait2	441+#define __NR_mount_setattr	442+#define __NR_landlock_create_ruleset	444+#define __NR_landlock_add_rule	445+#define __NR_landlock_restrict_self	446+#define __NR_process_mrelease	448+#define __NR_futex_waitv	449+#define __NR_set_mempolicy_home_node	450+#define __NR_cachestat		451+#define __NR_fchmodat2		452++#define __ARM_NR_breakpoint	0x0f0001+#define __ARM_NR_cacheflush	0x0f0002+#define __ARM_NR_usr26		0x0f0003+#define __ARM_NR_usr32		0x0f0004+#define __ARM_NR_set_tls	0x0f0005+#define __ARM_NR_get_tls	0x0f0006++#define SYS_restart_syscall	0+#define SYS_exit	1+#define SYS_fork	2+#define SYS_read	3+#define SYS_write	4+#define SYS_open	5+#define SYS_close	6+#define SYS_creat	8+#define SYS_link	9+#define SYS_unlink	10+#define SYS_execve	11+#define SYS_chdir	12+#define SYS_mknod	14+#define SYS_chmod	15+#define SYS_lchown	16+#define SYS_lseek	19+#define SYS_getpid	20+#define SYS_mount	21+#define SYS_setuid	23+#define SYS_getuid	24+#define SYS_ptrace	26+#define SYS_pause	29+#define SYS_access	33+#define SYS_nice	34+#define SYS_sync	36+#define SYS_kill	37+#define SYS_rename	38+#define SYS_mkdir	39+#define SYS_rmdir	40+#define SYS_dup	41+#define SYS_pipe	42+#define SYS_times	43+#define SYS_brk	45+#define SYS_setgid	46+#define SYS_getgid	47+#define SYS_geteuid	49+#define SYS_getegid	50+#define SYS_acct	51+#define SYS_umount2	52+#define SYS_ioctl	54+#define SYS_fcntl	55+#define SYS_setpgid	57+#define SYS_umask	60+#define SYS_chroot	61+#define SYS_ustat	62+#define SYS_dup2	63+#define SYS_getppid	64+#define SYS_getpgrp	65+#define SYS_setsid	66+#define SYS_sigaction	67+#define SYS_setreuid	70+#define SYS_setregid	71+#define SYS_sigsuspend	72+#define SYS_sigpending	73+#define SYS_sethostname	74+#define SYS_setrlimit	75+#define SYS_getrusage	77+#define SYS_gettimeofday_time32	78+#define SYS_settimeofday_time32	79+#define SYS_getgroups	80+#define SYS_setgroups	81+#define SYS_symlink	83+#define SYS_readlink	85+#define SYS_uselib	86+#define SYS_swapon	87+#define SYS_reboot	88+#define SYS_munmap	91+#define SYS_truncate	92+#define SYS_ftruncate	93+#define SYS_fchmod	94+#define SYS_fchown	95+#define SYS_getpriority	96+#define SYS_setpriority	97+#define SYS_statfs	99+#define SYS_fstatfs	100+#define SYS_syslog	103+#define SYS_setitimer	104+#define SYS_getitimer	105+#define SYS_stat	106+#define SYS_lstat	107+#define SYS_fstat	108+#define SYS_vhangup	111+#define SYS_wait4	114+#define SYS_swapoff	115+#define SYS_sysinfo	116+#define SYS_fsync	118+#define SYS_sigreturn	119+#define SYS_clone	120+#define SYS_setdomainname	121+#define SYS_uname	122+#define SYS_adjtimex	124+#define SYS_mprotect	125+#define SYS_sigprocmask	126+#define SYS_init_module	128+#define SYS_delete_module	129+#define SYS_quotactl	131+#define SYS_getpgid	132+#define SYS_fchdir	133+#define SYS_bdflush	134+#define SYS_sysfs	135+#define SYS_personality	136+#define SYS_setfsuid	138+#define SYS_setfsgid	139+#define SYS__llseek	140+#define SYS_getdents	141+#define SYS__newselect	142+#define SYS_flock	143+#define SYS_msync	144+#define SYS_readv	145+#define SYS_writev	146+#define SYS_getsid	147+#define SYS_fdatasync	148+#define SYS__sysctl	149+#define SYS_mlock	150+#define SYS_munlock	151+#define SYS_mlockall	152+#define SYS_munlockall	153+#define SYS_sched_setparam	154+#define SYS_sched_getparam	155+#define SYS_sched_setscheduler	156+#define SYS_sched_getscheduler	157+#define SYS_sched_yield	158+#define SYS_sched_get_priority_max	159+#define SYS_sched_get_priority_min	160+#define SYS_sched_rr_get_interval	161+#define SYS_nanosleep	162+#define SYS_mremap	163+#define SYS_setresuid	164+#define SYS_getresuid	165+#define SYS_poll	168+#define SYS_nfsservctl	169+#define SYS_setresgid	170+#define SYS_getresgid	171+#define SYS_prctl	172+#define SYS_rt_sigreturn	173+#define SYS_rt_sigaction	174+#define SYS_rt_sigprocmask	175+#define SYS_rt_sigpending	176+#define SYS_rt_sigtimedwait	177+#define SYS_rt_sigqueueinfo	178+#define SYS_rt_sigsuspend	179+#define SYS_pread64	180+#define SYS_pwrite64	181+#define SYS_chown	182+#define SYS_getcwd	183+#define SYS_capget	184+#define SYS_capset	185+#define SYS_sigaltstack	186+#define SYS_sendfile	187+#define SYS_vfork	190+#define SYS_ugetrlimit	191+#define SYS_mmap2	192+#define SYS_truncate64	193+#define SYS_ftruncate64	194+#define SYS_stat64	195+#define SYS_lstat64	196+#define SYS_fstat64	197+#define SYS_lchown32	198+#define SYS_getuid32	199+#define SYS_getgid32	200+#define SYS_geteuid32	201+#define SYS_getegid32	202+#define SYS_setreuid32	203+#define SYS_setregid32	204+#define SYS_getgroups32	205+#define SYS_setgroups32	206+#define SYS_fchown32	207+#define SYS_setresuid32	208+#define SYS_getresuid32	209+#define SYS_setresgid32	210+#define SYS_getresgid32	211+#define SYS_chown32	212+#define SYS_setuid32	213+#define SYS_setgid32	214+#define SYS_setfsuid32	215+#define SYS_setfsgid32	216+#define SYS_getdents64	217+#define SYS_pivot_root	218+#define SYS_mincore	219+#define SYS_madvise	220+#define SYS_fcntl64	221+#define SYS_gettid	224+#define SYS_readahead	225+#define SYS_setxattr	226+#define SYS_lsetxattr	227+#define SYS_fsetxattr	228+#define SYS_getxattr	229+#define SYS_lgetxattr	230+#define SYS_fgetxattr	231+#define SYS_listxattr	232+#define SYS_llistxattr	233+#define SYS_flistxattr	234+#define SYS_removexattr	235+#define SYS_lremovexattr	236+#define SYS_fremovexattr	237+#define SYS_tkill	238+#define SYS_sendfile64	239+#define SYS_futex	240+#define SYS_sched_setaffinity	241+#define SYS_sched_getaffinity	242+#define SYS_io_setup	243+#define SYS_io_destroy	244+#define SYS_io_getevents	245+#define SYS_io_submit	246+#define SYS_io_cancel	247+#define SYS_exit_group	248+#define SYS_lookup_dcookie	249+#define SYS_epoll_create	250+#define SYS_epoll_ctl	251+#define SYS_epoll_wait	252+#define SYS_remap_file_pages	253+#define SYS_set_tid_address	256+#define SYS_timer_create	257+#define SYS_timer_settime32	258+#define SYS_timer_gettime32	259+#define SYS_timer_getoverrun	260+#define SYS_timer_delete	261+#define SYS_clock_settime32	262+#define SYS_clock_gettime32	263+#define SYS_clock_getres_time32	264+#define SYS_clock_nanosleep_time32	265+#define SYS_statfs64	266+#define SYS_fstatfs64	267+#define SYS_tgkill	268+#define SYS_utimes	269+#define SYS_fadvise64_64	270+#define SYS_arm_fadvise64_64	270+#define SYS_pciconfig_iobase	271+#define SYS_pciconfig_read	272+#define SYS_pciconfig_write	273+#define SYS_mq_open	274+#define SYS_mq_unlink	275+#define SYS_mq_timedsend	276+#define SYS_mq_timedreceive	277+#define SYS_mq_notify	278+#define SYS_mq_getsetattr	279+#define SYS_waitid	280+#define SYS_socket	281+#define SYS_bind	282+#define SYS_connect	283+#define SYS_listen	284+#define SYS_accept	285+#define SYS_getsockname	286+#define SYS_getpeername	287+#define SYS_socketpair	288+#define SYS_send	289+#define SYS_sendto	290+#define SYS_recv	291+#define SYS_recvfrom	292+#define SYS_shutdown	293+#define SYS_setsockopt	294+#define SYS_getsockopt	295+#define SYS_sendmsg	296+#define SYS_recvmsg	297+#define SYS_semop	298+#define SYS_semget	299+#define SYS_semctl	300+#define SYS_msgsnd	301+#define SYS_msgrcv	302+#define SYS_msgget	303+#define SYS_msgctl	304+#define SYS_shmat	305+#define SYS_shmdt	306+#define SYS_shmget	307+#define SYS_shmctl	308+#define SYS_add_key	309+#define SYS_request_key	310+#define SYS_keyctl	311+#define SYS_semtimedop	312+#define SYS_vserver	313+#define SYS_ioprio_set	314+#define SYS_ioprio_get	315+#define SYS_inotify_init	316+#define SYS_inotify_add_watch	317+#define SYS_inotify_rm_watch	318+#define SYS_mbind	319+#define SYS_get_mempolicy	320+#define SYS_set_mempolicy	321+#define SYS_openat	322+#define SYS_mkdirat	323+#define SYS_mknodat	324+#define SYS_fchownat	325+#define SYS_futimesat	326+#define SYS_fstatat64	327+#define SYS_unlinkat	328+#define SYS_renameat	329+#define SYS_linkat	330+#define SYS_symlinkat	331+#define SYS_readlinkat	332+#define SYS_fchmodat	333+#define SYS_faccessat	334+#define SYS_pselect6	335+#define SYS_ppoll	336+#define SYS_unshare	337+#define SYS_set_robust_list	338+#define SYS_get_robust_list	339+#define SYS_splice	340+#define SYS_sync_file_range2	341+#define SYS_arm_sync_file_range	341+#define SYS_tee	342+#define SYS_vmsplice	343+#define SYS_move_pages	344+#define SYS_getcpu	345+#define SYS_epoll_pwait	346+#define SYS_kexec_load	347+#define SYS_utimensat	348+#define SYS_signalfd	349+#define SYS_timerfd_create	350+#define SYS_eventfd	351+#define SYS_fallocate	352+#define SYS_timerfd_settime32	353+#define SYS_timerfd_gettime32	354+#define SYS_signalfd4	355+#define SYS_eventfd2	356+#define SYS_epoll_create1	357+#define SYS_dup3	358+#define SYS_pipe2	359+#define SYS_inotify_init1	360+#define SYS_preadv	361+#define SYS_pwritev	362+#define SYS_rt_tgsigqueueinfo	363+#define SYS_perf_event_open	364+#define SYS_recvmmsg	365+#define SYS_accept4	366+#define SYS_fanotify_init	367+#define SYS_fanotify_mark	368+#define SYS_prlimit64	369+#define SYS_name_to_handle_at	370+#define SYS_open_by_handle_at	371+#define SYS_clock_adjtime	372+#define SYS_syncfs	373+#define SYS_sendmmsg	374+#define SYS_setns	375+#define SYS_process_vm_readv	376+#define SYS_process_vm_writev	377+#define SYS_kcmp		378+#define SYS_finit_module	379+#define SYS_sched_setattr	380+#define SYS_sched_getattr	381+#define SYS_renameat2	382+#define SYS_seccomp	383+#define SYS_getrandom	384+#define SYS_memfd_create	385+#define SYS_bpf	386+#define SYS_execveat	387+#define SYS_userfaultfd	388+#define SYS_membarrier		389+#define SYS_mlock2		390+#define SYS_copy_file_range	391+#define SYS_preadv2	392+#define SYS_pwritev2	393+#define SYS_pkey_mprotect	394+#define SYS_pkey_alloc	395+#define SYS_pkey_free	396+#define SYS_statx	397+#define SYS_rseq	398+#define SYS_io_pgetevents	399+#define SYS_migrate_pages	400+#define SYS_kexec_file_load	401+#define SYS_clock_gettime64	403+#define SYS_clock_settime64	404+#define SYS_clock_adjtime64	405+#define SYS_clock_getres_time64	406+#define SYS_clock_nanosleep_time64	407+#define SYS_timer_gettime64	408+#define SYS_timer_settime64	409+#define SYS_timerfd_gettime64	410+#define SYS_timerfd_settime64	411+#define SYS_utimensat_time64	412+#define SYS_pselect6_time64	413+#define SYS_ppoll_time64	414+#define SYS_io_pgetevents_time64	416+#define SYS_recvmmsg_time64	417+#define SYS_mq_timedsend_time64	418+#define SYS_mq_timedreceive_time64	419+#define SYS_semtimedop_time64	420+#define SYS_rt_sigtimedwait_time64	421+#define SYS_futex_time64	422+#define SYS_sched_rr_get_interval_time64	423+#define SYS_pidfd_send_signal	424+#define SYS_io_uring_setup	425+#define SYS_io_uring_enter	426+#define SYS_io_uring_register	427+#define SYS_open_tree		428+#define SYS_move_mount		429+#define SYS_fsopen		430+#define SYS_fsconfig		431+#define SYS_fsmount		432+#define SYS_fspick		433+#define SYS_pidfd_open		434+#define SYS_clone3		435+#define SYS_close_range	436+#define SYS_openat2		437+#define SYS_pidfd_getfd	438+#define SYS_faccessat2		439+#define SYS_process_madvise	440+#define SYS_epoll_pwait2	441+#define SYS_mount_setattr	442+#define SYS_landlock_create_ruleset	444+#define SYS_landlock_add_rule	445+#define SYS_landlock_restrict_self	446+#define SYS_process_mrelease	448+#define SYS_futex_waitv	449+#define SYS_set_mempolicy_home_node	450+#define SYS_cachestat		451+#define SYS_fchmodat2		452
+ musl-include/arm/bits/termios.h view
@@ -0,0 +1,166 @@+struct termios {+	tcflag_t c_iflag;+	tcflag_t c_oflag;+	tcflag_t c_cflag;+	tcflag_t c_lflag;+	cc_t c_line;+	cc_t c_cc[NCCS];+	speed_t __c_ispeed;+	speed_t __c_ospeed;+};++#define VINTR     0+#define VQUIT     1+#define VERASE    2+#define VKILL     3+#define VEOF      4+#define VTIME     5+#define VMIN      6+#define VSWTC     7+#define VSTART    8+#define VSTOP     9+#define VSUSP    10+#define VEOL     11+#define VREPRINT 12+#define VDISCARD 13+#define VWERASE  14+#define VLNEXT   15+#define VEOL2    16++#define IGNBRK  0000001+#define BRKINT  0000002+#define IGNPAR  0000004+#define PARMRK  0000010+#define INPCK   0000020+#define ISTRIP  0000040+#define INLCR   0000100+#define IGNCR   0000200+#define ICRNL   0000400+#define IUCLC   0001000+#define IXON    0002000+#define IXANY   0004000+#define IXOFF   0010000+#define IMAXBEL 0020000+#define IUTF8   0040000++#define OPOST  0000001+#define OLCUC  0000002+#define ONLCR  0000004+#define OCRNL  0000010+#define ONOCR  0000020+#define ONLRET 0000040+#define OFILL  0000100+#define OFDEL  0000200+#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE) || defined(_XOPEN_SOURCE)+#define NLDLY  0000400+#define NL0    0000000+#define NL1    0000400+#define CRDLY  0003000+#define CR0    0000000+#define CR1    0001000+#define CR2    0002000+#define CR3    0003000+#define TABDLY 0014000+#define TAB0   0000000+#define TAB1   0004000+#define TAB2   0010000+#define TAB3   0014000+#define BSDLY  0020000+#define BS0    0000000+#define BS1    0020000+#define FFDLY  0100000+#define FF0    0000000+#define FF1    0100000+#endif++#define VTDLY  0040000+#define VT0    0000000+#define VT1    0040000++#define B0       0000000+#define B50      0000001+#define B75      0000002+#define B110     0000003+#define B134     0000004+#define B150     0000005+#define B200     0000006+#define B300     0000007+#define B600     0000010+#define B1200    0000011+#define B1800    0000012+#define B2400    0000013+#define B4800    0000014+#define B9600    0000015+#define B19200   0000016+#define B38400   0000017++#define B57600   0010001+#define B115200  0010002+#define B230400  0010003+#define B460800  0010004+#define B500000  0010005+#define B576000  0010006+#define B921600  0010007+#define B1000000 0010010+#define B1152000 0010011+#define B1500000 0010012+#define B2000000 0010013+#define B2500000 0010014+#define B3000000 0010015+#define B3500000 0010016+#define B4000000 0010017++#define CSIZE  0000060+#define CS5    0000000+#define CS6    0000020+#define CS7    0000040+#define CS8    0000060+#define CSTOPB 0000100+#define CREAD  0000200+#define PARENB 0000400+#define PARODD 0001000+#define HUPCL  0002000+#define CLOCAL 0004000++#define ISIG   0000001+#define ICANON 0000002+#define ECHO   0000010+#define ECHOE  0000020+#define ECHOK  0000040+#define ECHONL 0000100+#define NOFLSH 0000200+#define TOSTOP 0000400+#define IEXTEN 0100000++#define TCOOFF 0+#define TCOON  1+#define TCIOFF 2+#define TCION  3++#define TCIFLUSH  0+#define TCOFLUSH  1+#define TCIOFLUSH 2++#define TCSANOW   0+#define TCSADRAIN 1+#define TCSAFLUSH 2++#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE)+#define EXTA    0000016+#define EXTB    0000017+#define CBAUD   0010017+#define CBAUDEX 0010000+#define CIBAUD  002003600000+#define CMSPAR  010000000000+#define CRTSCTS 020000000000++#define XCASE   0000004+#define ECHOCTL 0001000+#define ECHOPRT 0002000+#define ECHOKE  0004000+#define FLUSHO  0010000+#define PENDIN  0040000+#define EXTPROC 0200000++#define XTABS  0014000+#endif
+ musl-include/arm/bits/user.h view
@@ -0,0 +1,36 @@+typedef struct user_fpregs {+	struct fp_reg {+		unsigned sign1:1;+		unsigned unused:15;+		unsigned sign2:1;+		unsigned exponent:14;+		unsigned j:1;+		unsigned mantissa1:31;+		unsigned mantissa0:32;+	} fpregs[8];+	unsigned fpsr:32;+	unsigned fpcr:32;+	unsigned char ftype[8];+	unsigned int init_flag;+} elf_fpregset_t;++struct user_regs {+	unsigned long uregs[18];+};+#define ELF_NGREG 18+typedef unsigned long elf_greg_t, elf_gregset_t[ELF_NGREG];++struct user {+	struct user_regs regs;+	int u_fpvalid;+	unsigned long u_tsize, u_dsize, u_ssize;+	unsigned long start_code, start_stack;+	long signal;+	int reserved;+	struct user_regs *u_ar0;+	unsigned long magic;+	char u_comm[32];+	int u_debugreg[8];+	struct user_fpregs u_fp;+	struct user_fpregs *u_fp0;+};
+ musl-include/arm/bits/vt.h view
@@ -0,0 +1,1 @@+#include <linux/vt.h>
+ musl-include/arm/byteswap.h view
@@ -0,0 +1,26 @@+#ifndef _BYTESWAP_H+#define _BYTESWAP_H++#include <features.h>+#include <stdint.h>++static __inline uint16_t __bswap_16(uint16_t __x)+{+	return __x<<8 | __x>>8;+}++static __inline uint32_t __bswap_32(uint32_t __x)+{+	return __x>>24 | __x>>8&0xff00 | __x<<8&0xff0000 | __x<<24;+}++static __inline uint64_t __bswap_64(uint64_t __x)+{+	return __bswap_32(__x)+0ULL<<32 | __bswap_32(__x>>32);+}++#define bswap_16(x) __bswap_16(x)+#define bswap_32(x) __bswap_32(x)+#define bswap_64(x) __bswap_64(x)++#endif
+ musl-include/arm/complex.h view
@@ -0,0 +1,133 @@+#ifndef _COMPLEX_H+#define _COMPLEX_H++#ifdef __cplusplus+extern "C" {+#endif++#define complex _Complex+#ifdef __GNUC__+#define _Complex_I (__extension__ (0.0f+1.0fi))+#else+#define _Complex_I (0.0f+1.0fi)+#endif+#define I _Complex_I++double complex cacos(double complex);+float complex cacosf(float complex);+long double complex cacosl(long double complex);++double complex casin(double complex);+float complex casinf(float complex);+long double complex casinl(long double complex);++double complex catan(double complex);+float complex catanf(float complex);+long double complex catanl(long double complex);++double complex ccos(double complex);+float complex ccosf(float complex);+long double complex ccosl(long double complex);++double complex csin(double complex);+float complex csinf(float complex);+long double complex csinl(long double complex);++double complex ctan(double complex);+float complex ctanf(float complex);+long double complex ctanl(long double complex);++double complex cacosh(double complex);+float complex cacoshf(float complex);+long double complex cacoshl(long double complex);++double complex casinh(double complex);+float complex casinhf(float complex);+long double complex casinhl(long double complex);++double complex catanh(double complex);+float complex catanhf(float complex);+long double complex catanhl(long double complex);++double complex ccosh(double complex);+float complex ccoshf(float complex);+long double complex ccoshl(long double complex);++double complex csinh(double complex);+float complex csinhf(float complex);+long double complex csinhl(long double complex);++double complex ctanh(double complex);+float complex ctanhf(float complex);+long double complex ctanhl(long double complex);++double complex cexp(double complex);+float complex cexpf(float complex);+long double complex cexpl(long double complex);++double complex clog(double complex);+float complex clogf(float complex);+long double complex clogl(long double complex);++double cabs(double complex);+float cabsf(float complex);+long double cabsl(long double complex);++double complex cpow(double complex, double complex);+float complex cpowf(float complex, float complex);+long double complex cpowl(long double complex, long double complex);++double complex csqrt(double complex);+float complex csqrtf(float complex);+long double complex csqrtl(long double complex);++double carg(double complex);+float cargf(float complex);+long double cargl(long double complex);++double cimag(double complex);+float cimagf(float complex);+long double cimagl(long double complex);++double complex conj(double complex);+float complex conjf(float complex);+long double complex conjl(long double complex);++double complex cproj(double complex);+float complex cprojf(float complex);+long double complex cprojl(long double complex);++double creal(double complex);+float crealf(float complex);+long double creall(long double complex);++#ifndef __cplusplus+#define __CIMAG(x, t) \+	(+(union { _Complex t __z; t __xy[2]; }){(_Complex t)(x)}.__xy[1])++#define creal(x) ((double)(x))+#define crealf(x) ((float)(x))+#define creall(x) ((long double)(x))++#define cimag(x) __CIMAG(x, double)+#define cimagf(x) __CIMAG(x, float)+#define cimagl(x) __CIMAG(x, long double)+#endif++#if __STDC_VERSION__ >= 201112L+#if defined(_Imaginary_I)+#define __CMPLX(x, y, t) ((t)(x) + _Imaginary_I*(t)(y))+#elif defined(__clang__)+#define __CMPLX(x, y, t) (+(_Complex t){ (t)(x), (t)(y) })+#else+#define __CMPLX(x, y, t) (__builtin_complex((t)(x), (t)(y)))+#endif+#define CMPLX(x, y) __CMPLX(x, y, double)+#define CMPLXF(x, y) __CMPLX(x, y, float)+#define CMPLXL(x, y) __CMPLX(x, y, long double)+#endif++#ifdef __cplusplus+}+#endif+#endif
+ musl-include/arm/cpio.h view
@@ -0,0 +1,29 @@+#ifndef _CPIO_H+#define _CPIO_H++#define MAGIC "070707"++#define C_IRUSR  000400+#define C_IWUSR  000200+#define C_IXUSR  000100+#define C_IRGRP  000040+#define C_IWGRP  000020+#define C_IXGRP  000010+#define C_IROTH  000004+#define C_IWOTH  000002+#define C_IXOTH  000001++#define C_ISUID  004000+#define C_ISGID  002000+#define C_ISVTX  001000++#define C_ISBLK  060000+#define C_ISCHR  020000+#define C_ISDIR  040000+#define C_ISFIFO 010000+#define C_ISSOCK 0140000+#define C_ISLNK  0120000+#define C_ISCTG  0110000+#define C_ISREG  0100000++#endif
+ musl-include/arm/crypt.h view
@@ -0,0 +1,20 @@+#ifndef _CRYPT_H+#define _CRYPT_H++#ifdef __cplusplus+extern "C" {+#endif++struct crypt_data {+	int initialized;+	char __buf[256];+};++char *crypt(const char *, const char *);+char *crypt_r(const char *, const char *, struct crypt_data *);++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/arm/ctype.h view
@@ -0,0 +1,77 @@+#ifndef	_CTYPE_H+#define	_CTYPE_H++#ifdef __cplusplus+extern "C" {+#endif++#include <features.h>++int   isalnum(int);+int   isalpha(int);+int   isblank(int);+int   iscntrl(int);+int   isdigit(int);+int   isgraph(int);+int   islower(int);+int   isprint(int);+int   ispunct(int);+int   isspace(int);+int   isupper(int);+int   isxdigit(int);+int   tolower(int);+int   toupper(int);++#ifndef __cplusplus+static __inline int __isspace(int _c)+{+	return _c == ' ' || (unsigned)_c-'\t' < 5;+}++#define isalpha(a) (0 ? isalpha(a) : (((unsigned)(a)|32)-'a') < 26)+#define isdigit(a) (0 ? isdigit(a) : ((unsigned)(a)-'0') < 10)+#define islower(a) (0 ? islower(a) : ((unsigned)(a)-'a') < 26)+#define isupper(a) (0 ? isupper(a) : ((unsigned)(a)-'A') < 26)+#define isprint(a) (0 ? isprint(a) : ((unsigned)(a)-0x20) < 0x5f)+#define isgraph(a) (0 ? isgraph(a) : ((unsigned)(a)-0x21) < 0x5e)+#define isspace(a) __isspace(a)+#endif+++#if defined(_POSIX_SOURCE) || defined(_POSIX_C_SOURCE) \+ || defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) \+ || defined(_BSD_SOURCE)++#define __NEED_locale_t+#include <bits/alltypes.h>++int   isalnum_l(int, locale_t);+int   isalpha_l(int, locale_t);+int   isblank_l(int, locale_t);+int   iscntrl_l(int, locale_t);+int   isdigit_l(int, locale_t);+int   isgraph_l(int, locale_t);+int   islower_l(int, locale_t);+int   isprint_l(int, locale_t);+int   ispunct_l(int, locale_t);+int   isspace_l(int, locale_t);+int   isupper_l(int, locale_t);+int   isxdigit_l(int, locale_t);+int   tolower_l(int, locale_t);+int   toupper_l(int, locale_t);++int   isascii(int);+int   toascii(int);+#define _tolower(a) ((a)|0x20)+#define _toupper(a) ((a)&0x5f)+#ifndef __cplusplus+#define isascii(a) (0 ? isascii(a) : (unsigned)(a) < 128)+#endif++#endif++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/arm/dirent.h view
@@ -0,0 +1,75 @@+#ifndef	_DIRENT_H+#define	_DIRENT_H++#ifdef __cplusplus+extern "C" {+#endif++#include <features.h>++#define __NEED_ino_t+#define __NEED_off_t+#if defined(_BSD_SOURCE) || defined(_GNU_SOURCE)+#define __NEED_size_t+#endif++#include <bits/alltypes.h>++#include <bits/dirent.h>++typedef struct __dirstream DIR;++#define d_fileno d_ino++int            closedir(DIR *);+DIR           *fdopendir(int);+DIR           *opendir(const char *);+struct dirent *readdir(DIR *);+int            readdir_r(DIR *__restrict, struct dirent *__restrict, struct dirent **__restrict);+void           rewinddir(DIR *);+int            dirfd(DIR *);++int alphasort(const struct dirent **, const struct dirent **);+int scandir(const char *, struct dirent ***, int (*)(const struct dirent *), int (*)(const struct dirent **, const struct dirent **));++#if defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) || defined(_BSD_SOURCE)+void           seekdir(DIR *, long);+long           telldir(DIR *);+#endif++#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE)+#define DT_UNKNOWN 0+#define DT_FIFO 1+#define DT_CHR 2+#define DT_DIR 4+#define DT_BLK 6+#define DT_REG 8+#define DT_LNK 10+#define DT_SOCK 12+#define DT_WHT 14+#define IFTODT(x) ((x)>>12 & 017)+#define DTTOIF(x) ((x)<<12)+int getdents(int, struct dirent *, size_t);+#endif++#ifdef _GNU_SOURCE+int versionsort(const struct dirent **, const struct dirent **);+#endif++#if defined(_LARGEFILE64_SOURCE)+#define dirent64 dirent+#define readdir64 readdir+#define readdir64_r readdir_r+#define scandir64 scandir+#define alphasort64 alphasort+#define versionsort64 versionsort+#define off64_t off_t+#define ino64_t ino_t+#define getdents64 getdents+#endif++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/arm/dlfcn.h view
@@ -0,0 +1,46 @@+#ifndef	_DLFCN_H+#define	_DLFCN_H++#ifdef __cplusplus+extern "C" {+#endif++#include <features.h>++#define RTLD_LAZY   1+#define RTLD_NOW    2+#define RTLD_NOLOAD 4+#define RTLD_NODELETE 4096+#define RTLD_GLOBAL 256+#define RTLD_LOCAL  0++#define RTLD_NEXT    ((void *)-1)+#define RTLD_DEFAULT ((void *)0)++#define RTLD_DI_LINKMAP 2++int    dlclose(void *);+char  *dlerror(void);+void  *dlopen(const char *, int);+void  *dlsym(void *__restrict, const char *__restrict);++#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE)+typedef struct {+	const char *dli_fname;+	void *dli_fbase;+	const char *dli_sname;+	void *dli_saddr;+} Dl_info;+int dladdr(const void *, Dl_info *);+int dlinfo(void *, int, void *);+#endif++#if _REDIR_TIME64+__REDIR(dlsym, __dlsym_time64);+#endif++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/arm/elf.h view
@@ -0,0 +1,3414 @@+#ifndef _ELF_H+#define _ELF_H++#ifdef __cplusplus+extern "C" {+#endif++#include <stdint.h>++typedef uint16_t Elf32_Half;+typedef uint16_t Elf64_Half;++typedef uint32_t Elf32_Word;+typedef	int32_t  Elf32_Sword;+typedef uint32_t Elf64_Word;+typedef	int32_t  Elf64_Sword;++typedef uint64_t Elf32_Xword;+typedef	int64_t  Elf32_Sxword;+typedef uint64_t Elf64_Xword;+typedef	int64_t  Elf64_Sxword;++typedef uint32_t Elf32_Addr;+typedef uint64_t Elf64_Addr;++typedef uint32_t Elf32_Off;+typedef uint64_t Elf64_Off;++typedef uint16_t Elf32_Section;+typedef uint16_t Elf64_Section;++typedef Elf32_Half Elf32_Versym;+typedef Elf64_Half Elf64_Versym;++#define EI_NIDENT (16)++typedef struct {+  unsigned char	e_ident[EI_NIDENT];+  Elf32_Half	e_type;+  Elf32_Half	e_machine;+  Elf32_Word	e_version;+  Elf32_Addr	e_entry;+  Elf32_Off	e_phoff;+  Elf32_Off	e_shoff;+  Elf32_Word	e_flags;+  Elf32_Half	e_ehsize;+  Elf32_Half	e_phentsize;+  Elf32_Half	e_phnum;+  Elf32_Half	e_shentsize;+  Elf32_Half	e_shnum;+  Elf32_Half	e_shstrndx;+} Elf32_Ehdr;++typedef struct {+  unsigned char	e_ident[EI_NIDENT];+  Elf64_Half	e_type;+  Elf64_Half	e_machine;+  Elf64_Word	e_version;+  Elf64_Addr	e_entry;+  Elf64_Off	e_phoff;+  Elf64_Off	e_shoff;+  Elf64_Word	e_flags;+  Elf64_Half	e_ehsize;+  Elf64_Half	e_phentsize;+  Elf64_Half	e_phnum;+  Elf64_Half	e_shentsize;+  Elf64_Half	e_shnum;+  Elf64_Half	e_shstrndx;+} Elf64_Ehdr;++#define EI_MAG0		0+#define ELFMAG0		0x7f++#define EI_MAG1		1+#define ELFMAG1		'E'++#define EI_MAG2		2+#define ELFMAG2		'L'++#define EI_MAG3		3+#define ELFMAG3		'F'+++#define	ELFMAG		"\177ELF"+#define	SELFMAG		4++#define EI_CLASS	4+#define ELFCLASSNONE	0+#define ELFCLASS32	1+#define ELFCLASS64	2+#define ELFCLASSNUM	3++#define EI_DATA		5+#define ELFDATANONE	0+#define ELFDATA2LSB	1+#define ELFDATA2MSB	2+#define ELFDATANUM	3++#define EI_VERSION	6+++#define EI_OSABI	7+#define ELFOSABI_NONE		0+#define ELFOSABI_SYSV		0+#define ELFOSABI_HPUX		1+#define ELFOSABI_NETBSD		2+#define ELFOSABI_LINUX		3+#define ELFOSABI_GNU		3+#define ELFOSABI_SOLARIS	6+#define ELFOSABI_AIX		7+#define ELFOSABI_IRIX		8+#define ELFOSABI_FREEBSD	9+#define ELFOSABI_TRU64		10+#define ELFOSABI_MODESTO	11+#define ELFOSABI_OPENBSD	12+#define ELFOSABI_ARM		97+#define ELFOSABI_STANDALONE	255++#define EI_ABIVERSION	8++#define EI_PAD		9++++#define ET_NONE		0+#define ET_REL		1+#define ET_EXEC		2+#define ET_DYN		3+#define ET_CORE		4+#define	ET_NUM		5+#define ET_LOOS		0xfe00+#define ET_HIOS		0xfeff+#define ET_LOPROC	0xff00+#define ET_HIPROC	0xffff++++#define EM_NONE		 0+#define EM_M32		 1+#define EM_SPARC	 2+#define EM_386		 3+#define EM_68K		 4+#define EM_88K		 5+#define EM_860		 7+#define EM_MIPS		 8+#define EM_S370		 9+#define EM_MIPS_RS3_LE	10++#define EM_PARISC	15+#define EM_VPP500	17+#define EM_SPARC32PLUS	18+#define EM_960		19+#define EM_PPC		20+#define EM_PPC64	21+#define EM_S390		22++#define EM_V800		36+#define EM_FR20		37+#define EM_RH32		38+#define EM_RCE		39+#define EM_ARM		40+#define EM_FAKE_ALPHA	41+#define EM_SH		42+#define EM_SPARCV9	43+#define EM_TRICORE	44+#define EM_ARC		45+#define EM_H8_300	46+#define EM_H8_300H	47+#define EM_H8S		48+#define EM_H8_500	49+#define EM_IA_64	50+#define EM_MIPS_X	51+#define EM_COLDFIRE	52+#define EM_68HC12	53+#define EM_MMA		54+#define EM_PCP		55+#define EM_NCPU		56+#define EM_NDR1		57+#define EM_STARCORE	58+#define EM_ME16		59+#define EM_ST100	60+#define EM_TINYJ	61+#define EM_X86_64	62+#define EM_PDSP		63++#define EM_FX66		66+#define EM_ST9PLUS	67+#define EM_ST7		68+#define EM_68HC16	69+#define EM_68HC11	70+#define EM_68HC08	71+#define EM_68HC05	72+#define EM_SVX		73+#define EM_ST19		74+#define EM_VAX		75+#define EM_CRIS		76+#define EM_JAVELIN	77+#define EM_FIREPATH	78+#define EM_ZSP		79+#define EM_MMIX		80+#define EM_HUANY	81+#define EM_PRISM	82+#define EM_AVR		83+#define EM_FR30		84+#define EM_D10V		85+#define EM_D30V		86+#define EM_V850		87+#define EM_M32R		88+#define EM_MN10300	89+#define EM_MN10200	90+#define EM_PJ		91+#define EM_OR1K		92+#define EM_OPENRISC	92+#define EM_ARC_A5	93+#define EM_ARC_COMPACT	93+#define EM_XTENSA	94+#define EM_VIDEOCORE	95+#define EM_TMM_GPP	96+#define EM_NS32K	97+#define EM_TPC		98+#define EM_SNP1K	99+#define EM_ST200	100+#define EM_IP2K		101+#define EM_MAX		102+#define EM_CR		103+#define EM_F2MC16	104+#define EM_MSP430	105+#define EM_BLACKFIN	106+#define EM_SE_C33	107+#define EM_SEP		108+#define EM_ARCA		109+#define EM_UNICORE	110+#define EM_EXCESS	111+#define EM_DXP		112+#define EM_ALTERA_NIOS2 113+#define EM_CRX		114+#define EM_XGATE	115+#define EM_C166		116+#define EM_M16C		117+#define EM_DSPIC30F	118+#define EM_CE		119+#define EM_M32C		120+#define EM_TSK3000	131+#define EM_RS08		132+#define EM_SHARC	133+#define EM_ECOG2	134+#define EM_SCORE7	135+#define EM_DSP24	136+#define EM_VIDEOCORE3	137+#define EM_LATTICEMICO32 138+#define EM_SE_C17	139+#define EM_TI_C6000	140+#define EM_TI_C2000	141+#define EM_TI_C5500	142+#define EM_TI_ARP32	143+#define EM_TI_PRU	144+#define EM_MMDSP_PLUS	160+#define EM_CYPRESS_M8C	161+#define EM_R32C		162+#define EM_TRIMEDIA	163+#define EM_QDSP6	164+#define EM_8051		165+#define EM_STXP7X	166+#define EM_NDS32	167+#define EM_ECOG1X	168+#define EM_MAXQ30	169+#define EM_XIMO16	170+#define EM_MANIK	171+#define EM_CRAYNV2	172+#define EM_RX		173+#define EM_METAG	174+#define EM_MCST_ELBRUS	175+#define EM_ECOG16	176+#define EM_CR16		177+#define EM_ETPU		178+#define EM_SLE9X	179+#define EM_L10M		180+#define EM_K10M		181+#define EM_AARCH64	183+#define EM_AVR32	185+#define EM_STM8		186+#define EM_TILE64	187+#define EM_TILEPRO	188+#define EM_MICROBLAZE	189+#define EM_CUDA		190+#define EM_TILEGX	191+#define EM_CLOUDSHIELD	192+#define EM_COREA_1ST	193+#define EM_COREA_2ND	194+#define EM_ARC_COMPACT2	195+#define EM_OPEN8	196+#define EM_RL78		197+#define EM_VIDEOCORE5	198+#define EM_78KOR	199+#define EM_56800EX	200+#define EM_BA1		201+#define EM_BA2		202+#define EM_XCORE	203+#define EM_MCHP_PIC	204+#define EM_KM32		210+#define EM_KMX32	211+#define EM_EMX16	212+#define EM_EMX8		213+#define EM_KVARC	214+#define EM_CDP		215+#define EM_COGE		216+#define EM_COOL		217+#define EM_NORC		218+#define EM_CSR_KALIMBA	219+#define EM_Z80		220+#define EM_VISIUM	221+#define EM_FT32		222+#define EM_MOXIE	223+#define EM_AMDGPU	224+#define EM_RISCV	243+#define EM_BPF		247+#define EM_CSKY		252+#define EM_LOONGARCH	258+#define EM_NUM		259++#define EM_ALPHA	0x9026++#define EV_NONE		0+#define EV_CURRENT	1+#define EV_NUM		2++typedef struct {+  Elf32_Word	sh_name;+  Elf32_Word	sh_type;+  Elf32_Word	sh_flags;+  Elf32_Addr	sh_addr;+  Elf32_Off	sh_offset;+  Elf32_Word	sh_size;+  Elf32_Word	sh_link;+  Elf32_Word	sh_info;+  Elf32_Word	sh_addralign;+  Elf32_Word	sh_entsize;+} Elf32_Shdr;++typedef struct {+  Elf64_Word	sh_name;+  Elf64_Word	sh_type;+  Elf64_Xword	sh_flags;+  Elf64_Addr	sh_addr;+  Elf64_Off	sh_offset;+  Elf64_Xword	sh_size;+  Elf64_Word	sh_link;+  Elf64_Word	sh_info;+  Elf64_Xword	sh_addralign;+  Elf64_Xword	sh_entsize;+} Elf64_Shdr;++++#define SHN_UNDEF	0+#define SHN_LORESERVE	0xff00+#define SHN_LOPROC	0xff00+#define SHN_BEFORE	0xff00++#define SHN_AFTER	0xff01++#define SHN_HIPROC	0xff1f+#define SHN_LOOS	0xff20+#define SHN_HIOS	0xff3f+#define SHN_ABS		0xfff1+#define SHN_COMMON	0xfff2+#define SHN_XINDEX	0xffff+#define SHN_HIRESERVE	0xffff++++#define SHT_NULL	  0+#define SHT_PROGBITS	  1+#define SHT_SYMTAB	  2+#define SHT_STRTAB	  3+#define SHT_RELA	  4+#define SHT_HASH	  5+#define SHT_DYNAMIC	  6+#define SHT_NOTE	  7+#define SHT_NOBITS	  8+#define SHT_REL		  9+#define SHT_SHLIB	  10+#define SHT_DYNSYM	  11+#define SHT_INIT_ARRAY	  14+#define SHT_FINI_ARRAY	  15+#define SHT_PREINIT_ARRAY 16+#define SHT_GROUP	  17+#define SHT_SYMTAB_SHNDX  18+#define SHT_RELR	  19+#define	SHT_NUM		  20+#define SHT_LOOS	  0x60000000+#define SHT_GNU_ATTRIBUTES 0x6ffffff5+#define SHT_GNU_HASH	  0x6ffffff6+#define SHT_GNU_LIBLIST	  0x6ffffff7+#define SHT_CHECKSUM	  0x6ffffff8+#define SHT_LOSUNW	  0x6ffffffa+#define SHT_SUNW_move	  0x6ffffffa+#define SHT_SUNW_COMDAT   0x6ffffffb+#define SHT_SUNW_syminfo  0x6ffffffc+#define SHT_GNU_verdef	  0x6ffffffd+#define SHT_GNU_verneed	  0x6ffffffe+#define SHT_GNU_versym	  0x6fffffff+#define SHT_HISUNW	  0x6fffffff+#define SHT_HIOS	  0x6fffffff+#define SHT_LOPROC	  0x70000000+#define SHT_HIPROC	  0x7fffffff+#define SHT_LOUSER	  0x80000000+#define SHT_HIUSER	  0x8fffffff++#define SHF_WRITE	     (1 << 0)+#define SHF_ALLOC	     (1 << 1)+#define SHF_EXECINSTR	     (1 << 2)+#define SHF_MERGE	     (1 << 4)+#define SHF_STRINGS	     (1 << 5)+#define SHF_INFO_LINK	     (1 << 6)+#define SHF_LINK_ORDER	     (1 << 7)+#define SHF_OS_NONCONFORMING (1 << 8)++#define SHF_GROUP	     (1 << 9)+#define SHF_TLS		     (1 << 10)+#define SHF_COMPRESSED	     (1 << 11)+#define SHF_MASKOS	     0x0ff00000+#define SHF_MASKPROC	     0xf0000000+#define SHF_ORDERED	     (1 << 30)+#define SHF_EXCLUDE	     (1U << 31)++typedef struct {+  Elf32_Word	ch_type;+  Elf32_Word	ch_size;+  Elf32_Word	ch_addralign;+} Elf32_Chdr;++typedef struct {+  Elf64_Word	ch_type;+  Elf64_Word	ch_reserved;+  Elf64_Xword	ch_size;+  Elf64_Xword	ch_addralign;+} Elf64_Chdr;++#define ELFCOMPRESS_ZLIB	1+#define ELFCOMPRESS_ZSTD	2+#define ELFCOMPRESS_LOOS	0x60000000+#define ELFCOMPRESS_HIOS	0x6fffffff+#define ELFCOMPRESS_LOPROC	0x70000000+#define ELFCOMPRESS_HIPROC	0x7fffffff+++#define GRP_COMDAT	0x1++typedef struct {+  Elf32_Word	st_name;+  Elf32_Addr	st_value;+  Elf32_Word	st_size;+  unsigned char	st_info;+  unsigned char	st_other;+  Elf32_Section	st_shndx;+} Elf32_Sym;++typedef struct {+  Elf64_Word	st_name;+  unsigned char	st_info;+  unsigned char st_other;+  Elf64_Section	st_shndx;+  Elf64_Addr	st_value;+  Elf64_Xword	st_size;+} Elf64_Sym;++typedef struct {+  Elf32_Half si_boundto;+  Elf32_Half si_flags;+} Elf32_Syminfo;++typedef struct {+  Elf64_Half si_boundto;+  Elf64_Half si_flags;+} Elf64_Syminfo;++#define SYMINFO_BT_SELF		0xffff+#define SYMINFO_BT_PARENT	0xfffe+#define SYMINFO_BT_LOWRESERVE	0xff00++#define SYMINFO_FLG_DIRECT	0x0001+#define SYMINFO_FLG_PASSTHRU	0x0002+#define SYMINFO_FLG_COPY	0x0004+#define SYMINFO_FLG_LAZYLOAD	0x0008++#define SYMINFO_NONE		0+#define SYMINFO_CURRENT		1+#define SYMINFO_NUM		2++#define ELF32_ST_BIND(val)		(((unsigned char) (val)) >> 4)+#define ELF32_ST_TYPE(val)		((val) & 0xf)+#define ELF32_ST_INFO(bind, type)	(((bind) << 4) + ((type) & 0xf))++#define ELF64_ST_BIND(val)		ELF32_ST_BIND (val)+#define ELF64_ST_TYPE(val)		ELF32_ST_TYPE (val)+#define ELF64_ST_INFO(bind, type)	ELF32_ST_INFO ((bind), (type))++#define STB_LOCAL	0+#define STB_GLOBAL	1+#define STB_WEAK	2+#define	STB_NUM		3+#define STB_LOOS	10+#define STB_GNU_UNIQUE	10+#define STB_HIOS	12+#define STB_LOPROC	13+#define STB_HIPROC	15++#define STT_NOTYPE	0+#define STT_OBJECT	1+#define STT_FUNC	2+#define STT_SECTION	3+#define STT_FILE	4+#define STT_COMMON	5+#define STT_TLS		6+#define	STT_NUM		7+#define STT_LOOS	10+#define STT_GNU_IFUNC	10+#define STT_HIOS	12+#define STT_LOPROC	13+#define STT_HIPROC	15++#define STN_UNDEF	0++#define ELF32_ST_VISIBILITY(o)	((o) & 0x03)+#define ELF64_ST_VISIBILITY(o)	ELF32_ST_VISIBILITY (o)++#define STV_DEFAULT	0+#define STV_INTERNAL	1+#define STV_HIDDEN	2+#define STV_PROTECTED	3+++++typedef struct {+  Elf32_Addr	r_offset;+  Elf32_Word	r_info;+} Elf32_Rel;++typedef struct {+  Elf64_Addr	r_offset;+  Elf64_Xword	r_info;+} Elf64_Rel;++++typedef struct {+  Elf32_Addr	r_offset;+  Elf32_Word	r_info;+  Elf32_Sword	r_addend;+} Elf32_Rela;++typedef struct {+  Elf64_Addr	r_offset;+  Elf64_Xword	r_info;+  Elf64_Sxword	r_addend;+} Elf64_Rela;++++typedef Elf32_Word Elf32_Relr;+typedef Elf64_Xword Elf64_Relr;++++#define ELF32_R_SYM(val)		((val) >> 8)+#define ELF32_R_TYPE(val)		((val) & 0xff)+#define ELF32_R_INFO(sym, type)		(((sym) << 8) + ((type) & 0xff))++#define ELF64_R_SYM(i)			((i) >> 32)+#define ELF64_R_TYPE(i)			((i) & 0xffffffff)+#define ELF64_R_INFO(sym,type)		((((Elf64_Xword) (sym)) << 32) + (type))++++typedef struct {+  Elf32_Word	p_type;+  Elf32_Off	p_offset;+  Elf32_Addr	p_vaddr;+  Elf32_Addr	p_paddr;+  Elf32_Word	p_filesz;+  Elf32_Word	p_memsz;+  Elf32_Word	p_flags;+  Elf32_Word	p_align;+} Elf32_Phdr;++typedef struct {+  Elf64_Word	p_type;+  Elf64_Word	p_flags;+  Elf64_Off	p_offset;+  Elf64_Addr	p_vaddr;+  Elf64_Addr	p_paddr;+  Elf64_Xword	p_filesz;+  Elf64_Xword	p_memsz;+  Elf64_Xword	p_align;+} Elf64_Phdr;++++#define	PT_NULL		0+#define PT_LOAD		1+#define PT_DYNAMIC	2+#define PT_INTERP	3+#define PT_NOTE		4+#define PT_SHLIB	5+#define PT_PHDR		6+#define PT_TLS		7+#define	PT_NUM		8+#define PT_LOOS		0x60000000+#define PT_GNU_EH_FRAME	0x6474e550+#define PT_GNU_STACK	0x6474e551+#define PT_GNU_RELRO	0x6474e552+#define PT_GNU_PROPERTY	0x6474e553+#define PT_LOSUNW	0x6ffffffa+#define PT_SUNWBSS	0x6ffffffa+#define PT_SUNWSTACK	0x6ffffffb+#define PT_HISUNW	0x6fffffff+#define PT_HIOS		0x6fffffff+#define PT_LOPROC	0x70000000+#define PT_HIPROC	0x7fffffff+++#define PN_XNUM 0xffff+++#define PF_X		(1 << 0)+#define PF_W		(1 << 1)+#define PF_R		(1 << 2)+#define PF_MASKOS	0x0ff00000+#define PF_MASKPROC	0xf0000000++++#define NT_PRSTATUS	1+#define NT_PRFPREG	2+#define NT_FPREGSET	2+#define NT_PRPSINFO	3+#define NT_PRXREG	4+#define NT_TASKSTRUCT	4+#define NT_PLATFORM	5+#define NT_AUXV		6+#define NT_GWINDOWS	7+#define NT_ASRS		8+#define NT_PSTATUS	10+#define NT_PSINFO	13+#define NT_PRCRED	14+#define NT_UTSNAME	15+#define NT_LWPSTATUS	16+#define NT_LWPSINFO	17+#define NT_PRFPXREG	20+#define NT_SIGINFO	0x53494749+#define NT_FILE		0x46494c45+#define NT_PRXFPREG	0x46e62b7f+#define NT_PPC_VMX	0x100+#define NT_PPC_SPE	0x101+#define NT_PPC_VSX	0x102+#define NT_PPC_TAR	0x103+#define NT_PPC_PPR	0x104+#define NT_PPC_DSCR	0x105+#define NT_PPC_EBB	0x106+#define NT_PPC_PMU	0x107+#define NT_PPC_TM_CGPR	0x108+#define NT_PPC_TM_CFPR	0x109+#define NT_PPC_TM_CVMX	0x10a+#define NT_PPC_TM_CVSX	0x10b+#define NT_PPC_TM_SPR	0x10c+#define NT_PPC_TM_CTAR	0x10d+#define NT_PPC_TM_CPPR	0x10e+#define NT_PPC_TM_CDSCR	0x10f+#define NT_386_TLS	0x200+#define NT_386_IOPERM	0x201+#define NT_X86_XSTATE	0x202+#define NT_S390_HIGH_GPRS	0x300+#define NT_S390_TIMER	0x301+#define NT_S390_TODCMP	0x302+#define NT_S390_TODPREG	0x303+#define NT_S390_CTRS	0x304+#define NT_S390_PREFIX	0x305+#define NT_S390_LAST_BREAK	0x306+#define NT_S390_SYSTEM_CALL	0x307+#define NT_S390_TDB	0x308+#define NT_S390_VXRS_LOW	0x309+#define NT_S390_VXRS_HIGH	0x30a+#define NT_S390_GS_CB	0x30b+#define NT_S390_GS_BC	0x30c+#define NT_S390_RI_CB	0x30d+#define NT_ARM_VFP	0x400+#define NT_ARM_TLS	0x401+#define NT_ARM_HW_BREAK	0x402+#define NT_ARM_HW_WATCH	0x403+#define NT_ARM_SYSTEM_CALL	0x404+#define NT_ARM_SVE	0x405+#define NT_ARM_PAC_MASK	0x406+#define NT_ARM_PACA_KEYS	0x407+#define NT_ARM_PACG_KEYS	0x408+#define NT_ARM_TAGGED_ADDR_CTRL	0x409+#define NT_ARM_PAC_ENABLED_KEYS	0x40a+#define NT_METAG_CBUF	0x500+#define NT_METAG_RPIPE	0x501+#define NT_METAG_TLS	0x502+#define NT_ARC_V2	0x600+#define NT_VMCOREDD	0x700+#define NT_MIPS_DSP	0x800+#define NT_MIPS_FP_MODE	0x801+#define NT_MIPS_MSA	0x802+#define NT_RISCV_CSR	0x900+#define NT_RISCV_VECTOR	0x901+#define NT_VERSION	1+#define NT_LOONGARCH_CPUCFG	0xa00+#define NT_LOONGARCH_CSR	0xa01+#define NT_LOONGARCH_LSX	0xa02+#define NT_LOONGARCH_LASX	0xa03+#define NT_LOONGARCH_LBT	0xa04+++++typedef struct {+  Elf32_Sword d_tag;+  union {+      Elf32_Word d_val;+      Elf32_Addr d_ptr;+  } d_un;+} Elf32_Dyn;++typedef struct {+  Elf64_Sxword d_tag;+  union {+      Elf64_Xword d_val;+      Elf64_Addr d_ptr;+  } d_un;+} Elf64_Dyn;++++#define DT_NULL		0+#define DT_NEEDED	1+#define DT_PLTRELSZ	2+#define DT_PLTGOT	3+#define DT_HASH		4+#define DT_STRTAB	5+#define DT_SYMTAB	6+#define DT_RELA		7+#define DT_RELASZ	8+#define DT_RELAENT	9+#define DT_STRSZ	10+#define DT_SYMENT	11+#define DT_INIT		12+#define DT_FINI		13+#define DT_SONAME	14+#define DT_RPATH	15+#define DT_SYMBOLIC	16+#define DT_REL		17+#define DT_RELSZ	18+#define DT_RELENT	19+#define DT_PLTREL	20+#define DT_DEBUG	21+#define DT_TEXTREL	22+#define DT_JMPREL	23+#define	DT_BIND_NOW	24+#define	DT_INIT_ARRAY	25+#define	DT_FINI_ARRAY	26+#define	DT_INIT_ARRAYSZ	27+#define	DT_FINI_ARRAYSZ	28+#define DT_RUNPATH	29+#define DT_FLAGS	30+#define DT_ENCODING	32+#define DT_PREINIT_ARRAY 32+#define DT_PREINIT_ARRAYSZ 33+#define DT_SYMTAB_SHNDX	34+#define DT_RELRSZ	35+#define DT_RELR		36+#define DT_RELRENT	37+#define	DT_NUM		38+#define DT_LOOS		0x6000000d+#define DT_HIOS		0x6ffff000+#define DT_LOPROC	0x70000000+#define DT_HIPROC	0x7fffffff+#define	DT_PROCNUM	DT_MIPS_NUM++#define DT_VALRNGLO	0x6ffffd00+#define DT_GNU_PRELINKED 0x6ffffdf5+#define DT_GNU_CONFLICTSZ 0x6ffffdf6+#define DT_GNU_LIBLISTSZ 0x6ffffdf7+#define DT_CHECKSUM	0x6ffffdf8+#define DT_PLTPADSZ	0x6ffffdf9+#define DT_MOVEENT	0x6ffffdfa+#define DT_MOVESZ	0x6ffffdfb+#define DT_FEATURE_1	0x6ffffdfc+#define DT_POSFLAG_1	0x6ffffdfd++#define DT_SYMINSZ	0x6ffffdfe+#define DT_SYMINENT	0x6ffffdff+#define DT_VALRNGHI	0x6ffffdff+#define DT_VALTAGIDX(tag)	(DT_VALRNGHI - (tag))+#define DT_VALNUM 12++#define DT_ADDRRNGLO	0x6ffffe00+#define DT_GNU_HASH	0x6ffffef5+#define DT_TLSDESC_PLT	0x6ffffef6+#define DT_TLSDESC_GOT	0x6ffffef7+#define DT_GNU_CONFLICT	0x6ffffef8+#define DT_GNU_LIBLIST	0x6ffffef9+#define DT_CONFIG	0x6ffffefa+#define DT_DEPAUDIT	0x6ffffefb+#define DT_AUDIT	0x6ffffefc+#define	DT_PLTPAD	0x6ffffefd+#define	DT_MOVETAB	0x6ffffefe+#define DT_SYMINFO	0x6ffffeff+#define DT_ADDRRNGHI	0x6ffffeff+#define DT_ADDRTAGIDX(tag)	(DT_ADDRRNGHI - (tag))+#define DT_ADDRNUM 11++++#define DT_VERSYM	0x6ffffff0++#define DT_RELACOUNT	0x6ffffff9+#define DT_RELCOUNT	0x6ffffffa+++#define DT_FLAGS_1	0x6ffffffb+#define	DT_VERDEF	0x6ffffffc++#define	DT_VERDEFNUM	0x6ffffffd+#define	DT_VERNEED	0x6ffffffe++#define	DT_VERNEEDNUM	0x6fffffff+#define DT_VERSIONTAGIDX(tag)	(DT_VERNEEDNUM - (tag))+#define DT_VERSIONTAGNUM 16++++#define DT_AUXILIARY    0x7ffffffd+#define DT_FILTER       0x7fffffff+#define DT_EXTRATAGIDX(tag)	((Elf32_Word)-((Elf32_Sword) (tag) <<1>>1)-1)+#define DT_EXTRANUM	3+++#define DF_ORIGIN	0x00000001+#define DF_SYMBOLIC	0x00000002+#define DF_TEXTREL	0x00000004+#define DF_BIND_NOW	0x00000008+#define DF_STATIC_TLS	0x00000010++++#define DF_1_NOW	0x00000001+#define DF_1_GLOBAL	0x00000002+#define DF_1_GROUP	0x00000004+#define DF_1_NODELETE	0x00000008+#define DF_1_LOADFLTR	0x00000010+#define DF_1_INITFIRST	0x00000020+#define DF_1_NOOPEN	0x00000040+#define DF_1_ORIGIN	0x00000080+#define DF_1_DIRECT	0x00000100+#define DF_1_TRANS	0x00000200+#define DF_1_INTERPOSE	0x00000400+#define DF_1_NODEFLIB	0x00000800+#define DF_1_NODUMP	0x00001000+#define DF_1_CONFALT	0x00002000+#define DF_1_ENDFILTEE	0x00004000+#define	DF_1_DISPRELDNE	0x00008000+#define	DF_1_DISPRELPND	0x00010000+#define	DF_1_NODIRECT	0x00020000+#define	DF_1_IGNMULDEF	0x00040000+#define	DF_1_NOKSYMS	0x00080000+#define	DF_1_NOHDR	0x00100000+#define	DF_1_EDITED	0x00200000+#define	DF_1_NORELOC	0x00400000+#define	DF_1_SYMINTPOSE	0x00800000+#define	DF_1_GLOBAUDIT	0x01000000+#define	DF_1_SINGLETON	0x02000000+#define	DF_1_STUB	0x04000000+#define	DF_1_PIE	0x08000000++#define DTF_1_PARINIT	0x00000001+#define DTF_1_CONFEXP	0x00000002+++#define DF_P1_LAZYLOAD	0x00000001+#define DF_P1_GROUPPERM	0x00000002+++++typedef struct {+  Elf32_Half	vd_version;+  Elf32_Half	vd_flags;+  Elf32_Half	vd_ndx;+  Elf32_Half	vd_cnt;+  Elf32_Word	vd_hash;+  Elf32_Word	vd_aux;+  Elf32_Word	vd_next;+} Elf32_Verdef;++typedef struct {+  Elf64_Half	vd_version;+  Elf64_Half	vd_flags;+  Elf64_Half	vd_ndx;+  Elf64_Half	vd_cnt;+  Elf64_Word	vd_hash;+  Elf64_Word	vd_aux;+  Elf64_Word	vd_next;+} Elf64_Verdef;++++#define VER_DEF_NONE	0+#define VER_DEF_CURRENT	1+#define VER_DEF_NUM	2+++#define VER_FLG_BASE	0x1+#define VER_FLG_WEAK	0x2+++#define	VER_NDX_LOCAL		0+#define	VER_NDX_GLOBAL		1+#define	VER_NDX_LORESERVE	0xff00+#define	VER_NDX_ELIMINATE	0xff01++++typedef struct {+  Elf32_Word	vda_name;+  Elf32_Word	vda_next;+} Elf32_Verdaux;++typedef struct {+  Elf64_Word	vda_name;+  Elf64_Word	vda_next;+} Elf64_Verdaux;+++++typedef struct {+  Elf32_Half	vn_version;+  Elf32_Half	vn_cnt;+  Elf32_Word	vn_file;+  Elf32_Word	vn_aux;+  Elf32_Word	vn_next;+} Elf32_Verneed;++typedef struct {+  Elf64_Half	vn_version;+  Elf64_Half	vn_cnt;+  Elf64_Word	vn_file;+  Elf64_Word	vn_aux;+  Elf64_Word	vn_next;+} Elf64_Verneed;++++#define VER_NEED_NONE	 0+#define VER_NEED_CURRENT 1+#define VER_NEED_NUM	 2++++typedef struct {+  Elf32_Word	vna_hash;+  Elf32_Half	vna_flags;+  Elf32_Half	vna_other;+  Elf32_Word	vna_name;+  Elf32_Word	vna_next;+} Elf32_Vernaux;++typedef struct {+  Elf64_Word	vna_hash;+  Elf64_Half	vna_flags;+  Elf64_Half	vna_other;+  Elf64_Word	vna_name;+  Elf64_Word	vna_next;+} Elf64_Vernaux;++++#define VER_FLG_WEAK	0x2++++typedef struct {+  uint32_t a_type;+  union {+      uint32_t a_val;+  } a_un;+} Elf32_auxv_t;++typedef struct {+  uint64_t a_type;+  union {+      uint64_t a_val;+  } a_un;+} Elf64_auxv_t;++++#define AT_NULL		0+#define AT_IGNORE	1+#define AT_EXECFD	2+#define AT_PHDR		3+#define AT_PHENT	4+#define AT_PHNUM	5+#define AT_PAGESZ	6+#define AT_BASE		7+#define AT_FLAGS	8+#define AT_ENTRY	9+#define AT_NOTELF	10+#define AT_UID		11+#define AT_EUID		12+#define AT_GID		13+#define AT_EGID		14+#define AT_CLKTCK	17+++#define AT_PLATFORM	15+#define AT_HWCAP	16+++++#define AT_FPUCW	18+++#define AT_DCACHEBSIZE	19+#define AT_ICACHEBSIZE	20+#define AT_UCACHEBSIZE	21++++#define AT_IGNOREPPC	22++#define	AT_SECURE	23++#define AT_BASE_PLATFORM 24++#define AT_RANDOM	25++#define AT_HWCAP2	26++#define AT_EXECFN	31++++#define AT_SYSINFO	32+#define AT_SYSINFO_EHDR	33++++#define AT_L1I_CACHESHAPE	34+#define AT_L1D_CACHESHAPE	35+#define AT_L2_CACHESHAPE	36+#define AT_L3_CACHESHAPE	37++#define AT_L1I_CACHESIZE	40+#define AT_L1I_CACHEGEOMETRY	41+#define AT_L1D_CACHESIZE	42+#define AT_L1D_CACHEGEOMETRY	43+#define AT_L2_CACHESIZE		44+#define AT_L2_CACHEGEOMETRY	45+#define AT_L3_CACHESIZE		46+#define AT_L3_CACHEGEOMETRY	47++#define AT_MINSIGSTKSZ		51+++typedef struct {+  Elf32_Word n_namesz;+  Elf32_Word n_descsz;+  Elf32_Word n_type;+} Elf32_Nhdr;++typedef struct {+  Elf64_Word n_namesz;+  Elf64_Word n_descsz;+  Elf64_Word n_type;+} Elf64_Nhdr;+++++#define ELF_NOTE_SOLARIS	"SUNW Solaris"+++#define ELF_NOTE_GNU		"GNU"++++++#define ELF_NOTE_PAGESIZE_HINT	1+++#define NT_GNU_ABI_TAG	1+#define ELF_NOTE_ABI	NT_GNU_ABI_TAG++++#define ELF_NOTE_OS_LINUX	0+#define ELF_NOTE_OS_GNU		1+#define ELF_NOTE_OS_SOLARIS2	2+#define ELF_NOTE_OS_FREEBSD	3++#define NT_GNU_BUILD_ID	3+#define NT_GNU_GOLD_VERSION	4+#define NT_GNU_PROPERTY_TYPE_0	5++++typedef struct {+  Elf32_Xword m_value;+  Elf32_Word m_info;+  Elf32_Word m_poffset;+  Elf32_Half m_repeat;+  Elf32_Half m_stride;+} Elf32_Move;++typedef struct {+  Elf64_Xword m_value;+  Elf64_Xword m_info;+  Elf64_Xword m_poffset;+  Elf64_Half m_repeat;+  Elf64_Half m_stride;+} Elf64_Move;+++#define ELF32_M_SYM(info)	((info) >> 8)+#define ELF32_M_SIZE(info)	((unsigned char) (info))+#define ELF32_M_INFO(sym, size)	(((sym) << 8) + (unsigned char) (size))++#define ELF64_M_SYM(info)	ELF32_M_SYM (info)+#define ELF64_M_SIZE(info)	ELF32_M_SIZE (info)+#define ELF64_M_INFO(sym, size)	ELF32_M_INFO (sym, size)++#define EF_CPU32	0x00810000++#define R_68K_NONE	0+#define R_68K_32	1+#define R_68K_16	2+#define R_68K_8		3+#define R_68K_PC32	4+#define R_68K_PC16	5+#define R_68K_PC8	6+#define R_68K_GOT32	7+#define R_68K_GOT16	8+#define R_68K_GOT8	9+#define R_68K_GOT32O	10+#define R_68K_GOT16O	11+#define R_68K_GOT8O	12+#define R_68K_PLT32	13+#define R_68K_PLT16	14+#define R_68K_PLT8	15+#define R_68K_PLT32O	16+#define R_68K_PLT16O	17+#define R_68K_PLT8O	18+#define R_68K_COPY	19+#define R_68K_GLOB_DAT	20+#define R_68K_JMP_SLOT	21+#define R_68K_RELATIVE	22+#define R_68K_TLS_GD32	25+#define R_68K_TLS_GD16	26+#define R_68K_TLS_GD8	27+#define R_68K_TLS_LDM32	28+#define R_68K_TLS_LDM16	29+#define R_68K_TLS_LDM8	30+#define R_68K_TLS_LDO32	31+#define R_68K_TLS_LDO16	32+#define R_68K_TLS_LDO8	33+#define R_68K_TLS_IE32	34+#define R_68K_TLS_IE16	35+#define R_68K_TLS_IE8	36+#define R_68K_TLS_LE32	37+#define R_68K_TLS_LE16	38+#define R_68K_TLS_LE8	39+#define R_68K_TLS_DTPMOD32	40+#define R_68K_TLS_DTPREL32	41+#define R_68K_TLS_TPREL32	42+#define R_68K_NUM	43++#define R_386_NONE	   0+#define R_386_32	   1+#define R_386_PC32	   2+#define R_386_GOT32	   3+#define R_386_PLT32	   4+#define R_386_COPY	   5+#define R_386_GLOB_DAT	   6+#define R_386_JMP_SLOT	   7+#define R_386_RELATIVE	   8+#define R_386_GOTOFF	   9+#define R_386_GOTPC	   10+#define R_386_32PLT	   11+#define R_386_TLS_TPOFF	   14+#define R_386_TLS_IE	   15+#define R_386_TLS_GOTIE	   16+#define R_386_TLS_LE	   17+#define R_386_TLS_GD	   18+#define R_386_TLS_LDM	   19+#define R_386_16	   20+#define R_386_PC16	   21+#define R_386_8		   22+#define R_386_PC8	   23+#define R_386_TLS_GD_32	   24+#define R_386_TLS_GD_PUSH  25+#define R_386_TLS_GD_CALL  26+#define R_386_TLS_GD_POP   27+#define R_386_TLS_LDM_32   28+#define R_386_TLS_LDM_PUSH 29+#define R_386_TLS_LDM_CALL 30+#define R_386_TLS_LDM_POP  31+#define R_386_TLS_LDO_32   32+#define R_386_TLS_IE_32	   33+#define R_386_TLS_LE_32	   34+#define R_386_TLS_DTPMOD32 35+#define R_386_TLS_DTPOFF32 36+#define R_386_TLS_TPOFF32  37+#define R_386_SIZE32       38+#define R_386_TLS_GOTDESC  39+#define R_386_TLS_DESC_CALL 40+#define R_386_TLS_DESC     41+#define R_386_IRELATIVE	   42+#define R_386_GOT32X	   43+#define R_386_NUM	   44++++++#define STT_SPARC_REGISTER	13++++#define EF_SPARCV9_MM		3+#define EF_SPARCV9_TSO		0+#define EF_SPARCV9_PSO		1+#define EF_SPARCV9_RMO		2+#define EF_SPARC_LEDATA		0x800000+#define EF_SPARC_EXT_MASK	0xFFFF00+#define EF_SPARC_32PLUS		0x000100+#define EF_SPARC_SUN_US1	0x000200+#define EF_SPARC_HAL_R1		0x000400+#define EF_SPARC_SUN_US3	0x000800++++#define R_SPARC_NONE		0+#define R_SPARC_8		1+#define R_SPARC_16		2+#define R_SPARC_32		3+#define R_SPARC_DISP8		4+#define R_SPARC_DISP16		5+#define R_SPARC_DISP32		6+#define R_SPARC_WDISP30		7+#define R_SPARC_WDISP22		8+#define R_SPARC_HI22		9+#define R_SPARC_22		10+#define R_SPARC_13		11+#define R_SPARC_LO10		12+#define R_SPARC_GOT10		13+#define R_SPARC_GOT13		14+#define R_SPARC_GOT22		15+#define R_SPARC_PC10		16+#define R_SPARC_PC22		17+#define R_SPARC_WPLT30		18+#define R_SPARC_COPY		19+#define R_SPARC_GLOB_DAT	20+#define R_SPARC_JMP_SLOT	21+#define R_SPARC_RELATIVE	22+#define R_SPARC_UA32		23++++#define R_SPARC_PLT32		24+#define R_SPARC_HIPLT22		25+#define R_SPARC_LOPLT10		26+#define R_SPARC_PCPLT32		27+#define R_SPARC_PCPLT22		28+#define R_SPARC_PCPLT10		29+#define R_SPARC_10		30+#define R_SPARC_11		31+#define R_SPARC_64		32+#define R_SPARC_OLO10		33+#define R_SPARC_HH22		34+#define R_SPARC_HM10		35+#define R_SPARC_LM22		36+#define R_SPARC_PC_HH22		37+#define R_SPARC_PC_HM10		38+#define R_SPARC_PC_LM22		39+#define R_SPARC_WDISP16		40+#define R_SPARC_WDISP19		41+#define R_SPARC_GLOB_JMP	42+#define R_SPARC_7		43+#define R_SPARC_5		44+#define R_SPARC_6		45+#define R_SPARC_DISP64		46+#define R_SPARC_PLT64		47+#define R_SPARC_HIX22		48+#define R_SPARC_LOX10		49+#define R_SPARC_H44		50+#define R_SPARC_M44		51+#define R_SPARC_L44		52+#define R_SPARC_REGISTER	53+#define R_SPARC_UA64		54+#define R_SPARC_UA16		55+#define R_SPARC_TLS_GD_HI22	56+#define R_SPARC_TLS_GD_LO10	57+#define R_SPARC_TLS_GD_ADD	58+#define R_SPARC_TLS_GD_CALL	59+#define R_SPARC_TLS_LDM_HI22	60+#define R_SPARC_TLS_LDM_LO10	61+#define R_SPARC_TLS_LDM_ADD	62+#define R_SPARC_TLS_LDM_CALL	63+#define R_SPARC_TLS_LDO_HIX22	64+#define R_SPARC_TLS_LDO_LOX10	65+#define R_SPARC_TLS_LDO_ADD	66+#define R_SPARC_TLS_IE_HI22	67+#define R_SPARC_TLS_IE_LO10	68+#define R_SPARC_TLS_IE_LD	69+#define R_SPARC_TLS_IE_LDX	70+#define R_SPARC_TLS_IE_ADD	71+#define R_SPARC_TLS_LE_HIX22	72+#define R_SPARC_TLS_LE_LOX10	73+#define R_SPARC_TLS_DTPMOD32	74+#define R_SPARC_TLS_DTPMOD64	75+#define R_SPARC_TLS_DTPOFF32	76+#define R_SPARC_TLS_DTPOFF64	77+#define R_SPARC_TLS_TPOFF32	78+#define R_SPARC_TLS_TPOFF64	79+#define R_SPARC_GOTDATA_HIX22	80+#define R_SPARC_GOTDATA_LOX10	81+#define R_SPARC_GOTDATA_OP_HIX22	82+#define R_SPARC_GOTDATA_OP_LOX10	83+#define R_SPARC_GOTDATA_OP	84+#define R_SPARC_H34		85+#define R_SPARC_SIZE32		86+#define R_SPARC_SIZE64		87+#define R_SPARC_GNU_VTINHERIT	250+#define R_SPARC_GNU_VTENTRY	251+#define R_SPARC_REV32		252++#define R_SPARC_NUM		253++++#define DT_SPARC_REGISTER 0x70000001+#define DT_SPARC_NUM	2+++#define EF_MIPS_NOREORDER   1+#define EF_MIPS_PIC	    2+#define EF_MIPS_CPIC	    4+#define EF_MIPS_XGOT	    8+#define EF_MIPS_64BIT_WHIRL 16+#define EF_MIPS_ABI2	    32+#define EF_MIPS_ABI_ON32    64+#define EF_MIPS_FP64	    512+#define EF_MIPS_NAN2008     1024+#define EF_MIPS_ARCH	    0xf0000000++++#define EF_MIPS_ARCH_1	    0x00000000+#define EF_MIPS_ARCH_2	    0x10000000+#define EF_MIPS_ARCH_3	    0x20000000+#define EF_MIPS_ARCH_4	    0x30000000+#define EF_MIPS_ARCH_5	    0x40000000+#define EF_MIPS_ARCH_32     0x50000000+#define EF_MIPS_ARCH_64     0x60000000+#define EF_MIPS_ARCH_32R2   0x70000000+#define EF_MIPS_ARCH_64R2   0x80000000+++#define E_MIPS_ARCH_1	  0x00000000+#define E_MIPS_ARCH_2	  0x10000000+#define E_MIPS_ARCH_3	  0x20000000+#define E_MIPS_ARCH_4	  0x30000000+#define E_MIPS_ARCH_5	  0x40000000+#define E_MIPS_ARCH_32	  0x50000000+#define E_MIPS_ARCH_64	  0x60000000++++#define SHN_MIPS_ACOMMON    0xff00+#define SHN_MIPS_TEXT	    0xff01+#define SHN_MIPS_DATA	    0xff02+#define SHN_MIPS_SCOMMON    0xff03+#define SHN_MIPS_SUNDEFINED 0xff04++++#define SHT_MIPS_LIBLIST       0x70000000+#define SHT_MIPS_MSYM	       0x70000001+#define SHT_MIPS_CONFLICT      0x70000002+#define SHT_MIPS_GPTAB	       0x70000003+#define SHT_MIPS_UCODE	       0x70000004+#define SHT_MIPS_DEBUG	       0x70000005+#define SHT_MIPS_REGINFO       0x70000006+#define SHT_MIPS_PACKAGE       0x70000007+#define SHT_MIPS_PACKSYM       0x70000008+#define SHT_MIPS_RELD	       0x70000009+#define SHT_MIPS_IFACE         0x7000000b+#define SHT_MIPS_CONTENT       0x7000000c+#define SHT_MIPS_OPTIONS       0x7000000d+#define SHT_MIPS_SHDR	       0x70000010+#define SHT_MIPS_FDESC	       0x70000011+#define SHT_MIPS_EXTSYM	       0x70000012+#define SHT_MIPS_DENSE	       0x70000013+#define SHT_MIPS_PDESC	       0x70000014+#define SHT_MIPS_LOCSYM	       0x70000015+#define SHT_MIPS_AUXSYM	       0x70000016+#define SHT_MIPS_OPTSYM	       0x70000017+#define SHT_MIPS_LOCSTR	       0x70000018+#define SHT_MIPS_LINE	       0x70000019+#define SHT_MIPS_RFDESC	       0x7000001a+#define SHT_MIPS_DELTASYM      0x7000001b+#define SHT_MIPS_DELTAINST     0x7000001c+#define SHT_MIPS_DELTACLASS    0x7000001d+#define SHT_MIPS_DWARF         0x7000001e+#define SHT_MIPS_DELTADECL     0x7000001f+#define SHT_MIPS_SYMBOL_LIB    0x70000020+#define SHT_MIPS_EVENTS	       0x70000021+#define SHT_MIPS_TRANSLATE     0x70000022+#define SHT_MIPS_PIXIE	       0x70000023+#define SHT_MIPS_XLATE	       0x70000024+#define SHT_MIPS_XLATE_DEBUG   0x70000025+#define SHT_MIPS_WHIRL	       0x70000026+#define SHT_MIPS_EH_REGION     0x70000027+#define SHT_MIPS_XLATE_OLD     0x70000028+#define SHT_MIPS_PDR_EXCEPTION 0x70000029++++#define SHF_MIPS_GPREL	 0x10000000+#define SHF_MIPS_MERGE	 0x20000000+#define SHF_MIPS_ADDR	 0x40000000+#define SHF_MIPS_STRINGS 0x80000000+#define SHF_MIPS_NOSTRIP 0x08000000+#define SHF_MIPS_LOCAL	 0x04000000+#define SHF_MIPS_NAMES	 0x02000000+#define SHF_MIPS_NODUPE	 0x01000000++++++#define STO_MIPS_DEFAULT		0x0+#define STO_MIPS_INTERNAL		0x1+#define STO_MIPS_HIDDEN			0x2+#define STO_MIPS_PROTECTED		0x3+#define STO_MIPS_PLT			0x8+#define STO_MIPS_SC_ALIGN_UNUSED	0xff+++#define STB_MIPS_SPLIT_COMMON		13++++typedef union {+  struct {+      Elf32_Word gt_current_g_value;+      Elf32_Word gt_unused;+  } gt_header;+  struct {+      Elf32_Word gt_g_value;+      Elf32_Word gt_bytes;+  } gt_entry;+} Elf32_gptab;++++typedef struct {+  Elf32_Word	ri_gprmask;+  Elf32_Word	ri_cprmask[4];+  Elf32_Sword	ri_gp_value;+} Elf32_RegInfo;++++typedef struct {+  unsigned char kind;++  unsigned char size;+  Elf32_Section section;++  Elf32_Word info;+} Elf_Options;++++#define ODK_NULL	0+#define ODK_REGINFO	1+#define ODK_EXCEPTIONS	2+#define ODK_PAD		3+#define ODK_HWPATCH	4+#define ODK_FILL	5+#define ODK_TAGS	6+#define ODK_HWAND	7+#define ODK_HWOR	8++++#define OEX_FPU_MIN	0x1f+#define OEX_FPU_MAX	0x1f00+#define OEX_PAGE0	0x10000+#define OEX_SMM		0x20000+#define OEX_FPDBUG	0x40000+#define OEX_PRECISEFP	OEX_FPDBUG+#define OEX_DISMISS	0x80000++#define OEX_FPU_INVAL	0x10+#define OEX_FPU_DIV0	0x08+#define OEX_FPU_OFLO	0x04+#define OEX_FPU_UFLO	0x02+#define OEX_FPU_INEX	0x01++++#define OHW_R4KEOP	0x1+#define OHW_R8KPFETCH	0x2+#define OHW_R5KEOP	0x4+#define OHW_R5KCVTL	0x8++#define OPAD_PREFIX	0x1+#define OPAD_POSTFIX	0x2+#define OPAD_SYMBOL	0x4++++typedef struct {+  Elf32_Word hwp_flags1;+  Elf32_Word hwp_flags2;+} Elf_Options_Hw;++++#define OHWA0_R4KEOP_CHECKED	0x00000001+#define OHWA1_R4KEOP_CLEAN	0x00000002++++#define R_MIPS_NONE		0+#define R_MIPS_16		1+#define R_MIPS_32		2+#define R_MIPS_REL32		3+#define R_MIPS_26		4+#define R_MIPS_HI16		5+#define R_MIPS_LO16		6+#define R_MIPS_GPREL16		7+#define R_MIPS_LITERAL		8+#define R_MIPS_GOT16		9+#define R_MIPS_PC16		10+#define R_MIPS_CALL16		11+#define R_MIPS_GPREL32		12++#define R_MIPS_SHIFT5		16+#define R_MIPS_SHIFT6		17+#define R_MIPS_64		18+#define R_MIPS_GOT_DISP		19+#define R_MIPS_GOT_PAGE		20+#define R_MIPS_GOT_OFST		21+#define R_MIPS_GOT_HI16		22+#define R_MIPS_GOT_LO16		23+#define R_MIPS_SUB		24+#define R_MIPS_INSERT_A		25+#define R_MIPS_INSERT_B		26+#define R_MIPS_DELETE		27+#define R_MIPS_HIGHER		28+#define R_MIPS_HIGHEST		29+#define R_MIPS_CALL_HI16	30+#define R_MIPS_CALL_LO16	31+#define R_MIPS_SCN_DISP		32+#define R_MIPS_REL16		33+#define R_MIPS_ADD_IMMEDIATE	34+#define R_MIPS_PJUMP		35+#define R_MIPS_RELGOT		36+#define R_MIPS_JALR		37+#define R_MIPS_TLS_DTPMOD32	38+#define R_MIPS_TLS_DTPREL32	39+#define R_MIPS_TLS_DTPMOD64	40+#define R_MIPS_TLS_DTPREL64	41+#define R_MIPS_TLS_GD		42+#define R_MIPS_TLS_LDM		43+#define R_MIPS_TLS_DTPREL_HI16	44+#define R_MIPS_TLS_DTPREL_LO16	45+#define R_MIPS_TLS_GOTTPREL	46+#define R_MIPS_TLS_TPREL32	47+#define R_MIPS_TLS_TPREL64	48+#define R_MIPS_TLS_TPREL_HI16	49+#define R_MIPS_TLS_TPREL_LO16	50+#define R_MIPS_GLOB_DAT		51+#define R_MIPS_COPY		126+#define R_MIPS_JUMP_SLOT        127++#define R_MIPS_NUM		128++++#define PT_MIPS_REGINFO	0x70000000+#define PT_MIPS_RTPROC  0x70000001+#define PT_MIPS_OPTIONS 0x70000002+#define PT_MIPS_ABIFLAGS 0x70000003++++#define PF_MIPS_LOCAL	0x10000000++++#define DT_MIPS_RLD_VERSION  0x70000001+#define DT_MIPS_TIME_STAMP   0x70000002+#define DT_MIPS_ICHECKSUM    0x70000003+#define DT_MIPS_IVERSION     0x70000004+#define DT_MIPS_FLAGS	     0x70000005+#define DT_MIPS_BASE_ADDRESS 0x70000006+#define DT_MIPS_MSYM	     0x70000007+#define DT_MIPS_CONFLICT     0x70000008+#define DT_MIPS_LIBLIST	     0x70000009+#define DT_MIPS_LOCAL_GOTNO  0x7000000a+#define DT_MIPS_CONFLICTNO   0x7000000b+#define DT_MIPS_LIBLISTNO    0x70000010+#define DT_MIPS_SYMTABNO     0x70000011+#define DT_MIPS_UNREFEXTNO   0x70000012+#define DT_MIPS_GOTSYM	     0x70000013+#define DT_MIPS_HIPAGENO     0x70000014+#define DT_MIPS_RLD_MAP	     0x70000016+#define DT_MIPS_DELTA_CLASS  0x70000017+#define DT_MIPS_DELTA_CLASS_NO    0x70000018++#define DT_MIPS_DELTA_INSTANCE    0x70000019+#define DT_MIPS_DELTA_INSTANCE_NO 0x7000001a++#define DT_MIPS_DELTA_RELOC  0x7000001b+#define DT_MIPS_DELTA_RELOC_NO 0x7000001c++#define DT_MIPS_DELTA_SYM    0x7000001d++#define DT_MIPS_DELTA_SYM_NO 0x7000001e++#define DT_MIPS_DELTA_CLASSSYM 0x70000020++#define DT_MIPS_DELTA_CLASSSYM_NO 0x70000021++#define DT_MIPS_CXX_FLAGS    0x70000022+#define DT_MIPS_PIXIE_INIT   0x70000023+#define DT_MIPS_SYMBOL_LIB   0x70000024+#define DT_MIPS_LOCALPAGE_GOTIDX 0x70000025+#define DT_MIPS_LOCAL_GOTIDX 0x70000026+#define DT_MIPS_HIDDEN_GOTIDX 0x70000027+#define DT_MIPS_PROTECTED_GOTIDX 0x70000028+#define DT_MIPS_OPTIONS	     0x70000029+#define DT_MIPS_INTERFACE    0x7000002a+#define DT_MIPS_DYNSTR_ALIGN 0x7000002b+#define DT_MIPS_INTERFACE_SIZE 0x7000002c+#define DT_MIPS_RLD_TEXT_RESOLVE_ADDR 0x7000002d++#define DT_MIPS_PERF_SUFFIX  0x7000002e++#define DT_MIPS_COMPACT_SIZE 0x7000002f+#define DT_MIPS_GP_VALUE     0x70000030+#define DT_MIPS_AUX_DYNAMIC  0x70000031++#define DT_MIPS_PLTGOT	     0x70000032++#define DT_MIPS_RWPLT        0x70000034+#define DT_MIPS_RLD_MAP_REL  0x70000035+#define DT_MIPS_NUM	     0x36++++#define RHF_NONE		   0+#define RHF_QUICKSTART		   (1 << 0)+#define RHF_NOTPOT		   (1 << 1)+#define RHF_NO_LIBRARY_REPLACEMENT (1 << 2)+#define RHF_NO_MOVE		   (1 << 3)+#define RHF_SGI_ONLY		   (1 << 4)+#define RHF_GUARANTEE_INIT	   (1 << 5)+#define RHF_DELTA_C_PLUS_PLUS	   (1 << 6)+#define RHF_GUARANTEE_START_INIT   (1 << 7)+#define RHF_PIXIE		   (1 << 8)+#define RHF_DEFAULT_DELAY_LOAD	   (1 << 9)+#define RHF_REQUICKSTART	   (1 << 10)+#define RHF_REQUICKSTARTED	   (1 << 11)+#define RHF_CORD		   (1 << 12)+#define RHF_NO_UNRES_UNDEF	   (1 << 13)+#define RHF_RLD_ORDER_SAFE	   (1 << 14)++++typedef struct {+  Elf32_Word l_name;+  Elf32_Word l_time_stamp;+  Elf32_Word l_checksum;+  Elf32_Word l_version;+  Elf32_Word l_flags;+} Elf32_Lib;++typedef struct {+  Elf64_Word l_name;+  Elf64_Word l_time_stamp;+  Elf64_Word l_checksum;+  Elf64_Word l_version;+  Elf64_Word l_flags;+} Elf64_Lib;+++++#define LL_NONE		  0+#define LL_EXACT_MATCH	  (1 << 0)+#define LL_IGNORE_INT_VER (1 << 1)+#define LL_REQUIRE_MINOR  (1 << 2)+#define LL_EXPORTS	  (1 << 3)+#define LL_DELAY_LOAD	  (1 << 4)+#define LL_DELTA	  (1 << 5)++++typedef Elf32_Addr Elf32_Conflict;++typedef struct {+  Elf32_Half version;+  unsigned char isa_level;+  unsigned char isa_rev;+  unsigned char gpr_size;+  unsigned char cpr1_size;+  unsigned char cpr2_size;+  unsigned char fp_abi;+  Elf32_Word isa_ext;+  Elf32_Word ases;+  Elf32_Word flags1;+  Elf32_Word flags2;+} Elf_MIPS_ABIFlags_v0;++#define MIPS_AFL_REG_NONE	0x00+#define MIPS_AFL_REG_32		0x01+#define MIPS_AFL_REG_64		0x02+#define MIPS_AFL_REG_128	0x03++#define MIPS_AFL_ASE_DSP	0x00000001+#define MIPS_AFL_ASE_DSPR2	0x00000002+#define MIPS_AFL_ASE_EVA	0x00000004+#define MIPS_AFL_ASE_MCU	0x00000008+#define MIPS_AFL_ASE_MDMX	0x00000010+#define MIPS_AFL_ASE_MIPS3D	0x00000020+#define MIPS_AFL_ASE_MT		0x00000040+#define MIPS_AFL_ASE_SMARTMIPS	0x00000080+#define MIPS_AFL_ASE_VIRT	0x00000100+#define MIPS_AFL_ASE_MSA	0x00000200+#define MIPS_AFL_ASE_MIPS16	0x00000400+#define MIPS_AFL_ASE_MICROMIPS	0x00000800+#define MIPS_AFL_ASE_XPA	0x00001000+#define MIPS_AFL_ASE_MASK	0x00001fff++#define MIPS_AFL_EXT_XLR	  1+#define MIPS_AFL_EXT_OCTEON2	  2+#define MIPS_AFL_EXT_OCTEONP	  3+#define MIPS_AFL_EXT_LOONGSON_3A  4+#define MIPS_AFL_EXT_OCTEON	  5+#define MIPS_AFL_EXT_5900	  6+#define MIPS_AFL_EXT_4650	  7+#define MIPS_AFL_EXT_4010	  8+#define MIPS_AFL_EXT_4100	  9+#define MIPS_AFL_EXT_3900	  10+#define MIPS_AFL_EXT_10000	  11+#define MIPS_AFL_EXT_SB1	  12+#define MIPS_AFL_EXT_4111	  13+#define MIPS_AFL_EXT_4120	  14+#define MIPS_AFL_EXT_5400	  15+#define MIPS_AFL_EXT_5500	  16+#define MIPS_AFL_EXT_LOONGSON_2E  17+#define MIPS_AFL_EXT_LOONGSON_2F  18++#define MIPS_AFL_FLAGS1_ODDSPREG  1++enum+{+  Val_GNU_MIPS_ABI_FP_ANY = 0,+  Val_GNU_MIPS_ABI_FP_DOUBLE = 1,+  Val_GNU_MIPS_ABI_FP_SINGLE = 2,+  Val_GNU_MIPS_ABI_FP_SOFT = 3,+  Val_GNU_MIPS_ABI_FP_OLD_64 = 4,+  Val_GNU_MIPS_ABI_FP_XX = 5,+  Val_GNU_MIPS_ABI_FP_64 = 6,+  Val_GNU_MIPS_ABI_FP_64A = 7,+  Val_GNU_MIPS_ABI_FP_MAX = 7+};+++++#define EF_PARISC_TRAPNIL	0x00010000+#define EF_PARISC_EXT		0x00020000+#define EF_PARISC_LSB		0x00040000+#define EF_PARISC_WIDE		0x00080000+#define EF_PARISC_NO_KABP	0x00100000++#define EF_PARISC_LAZYSWAP	0x00400000+#define EF_PARISC_ARCH		0x0000ffff++++#define EFA_PARISC_1_0		    0x020b+#define EFA_PARISC_1_1		    0x0210+#define EFA_PARISC_2_0		    0x0214++++#define SHN_PARISC_ANSI_COMMON	0xff00++#define SHN_PARISC_HUGE_COMMON	0xff01++++#define SHT_PARISC_EXT		0x70000000+#define SHT_PARISC_UNWIND	0x70000001+#define SHT_PARISC_DOC		0x70000002++++#define SHF_PARISC_SHORT	0x20000000+#define SHF_PARISC_HUGE		0x40000000+#define SHF_PARISC_SBP		0x80000000++++#define STT_PARISC_MILLICODE	13++#define STT_HP_OPAQUE		(STT_LOOS + 0x1)+#define STT_HP_STUB		(STT_LOOS + 0x2)++++#define R_PARISC_NONE		0+#define R_PARISC_DIR32		1+#define R_PARISC_DIR21L		2+#define R_PARISC_DIR17R		3+#define R_PARISC_DIR17F		4+#define R_PARISC_DIR14R		6+#define R_PARISC_PCREL32	9+#define R_PARISC_PCREL21L	10+#define R_PARISC_PCREL17R	11+#define R_PARISC_PCREL17F	12+#define R_PARISC_PCREL14R	14+#define R_PARISC_DPREL21L	18+#define R_PARISC_DPREL14R	22+#define R_PARISC_GPREL21L	26+#define R_PARISC_GPREL14R	30+#define R_PARISC_LTOFF21L	34+#define R_PARISC_LTOFF14R	38+#define R_PARISC_SECREL32	41+#define R_PARISC_SEGBASE	48+#define R_PARISC_SEGREL32	49+#define R_PARISC_PLTOFF21L	50+#define R_PARISC_PLTOFF14R	54+#define R_PARISC_LTOFF_FPTR32	57+#define R_PARISC_LTOFF_FPTR21L	58+#define R_PARISC_LTOFF_FPTR14R	62+#define R_PARISC_FPTR64		64+#define R_PARISC_PLABEL32	65+#define R_PARISC_PLABEL21L	66+#define R_PARISC_PLABEL14R	70+#define R_PARISC_PCREL64	72+#define R_PARISC_PCREL22F	74+#define R_PARISC_PCREL14WR	75+#define R_PARISC_PCREL14DR	76+#define R_PARISC_PCREL16F	77+#define R_PARISC_PCREL16WF	78+#define R_PARISC_PCREL16DF	79+#define R_PARISC_DIR64		80+#define R_PARISC_DIR14WR	83+#define R_PARISC_DIR14DR	84+#define R_PARISC_DIR16F		85+#define R_PARISC_DIR16WF	86+#define R_PARISC_DIR16DF	87+#define R_PARISC_GPREL64	88+#define R_PARISC_GPREL14WR	91+#define R_PARISC_GPREL14DR	92+#define R_PARISC_GPREL16F	93+#define R_PARISC_GPREL16WF	94+#define R_PARISC_GPREL16DF	95+#define R_PARISC_LTOFF64	96+#define R_PARISC_LTOFF14WR	99+#define R_PARISC_LTOFF14DR	100+#define R_PARISC_LTOFF16F	101+#define R_PARISC_LTOFF16WF	102+#define R_PARISC_LTOFF16DF	103+#define R_PARISC_SECREL64	104+#define R_PARISC_SEGREL64	112+#define R_PARISC_PLTOFF14WR	115+#define R_PARISC_PLTOFF14DR	116+#define R_PARISC_PLTOFF16F	117+#define R_PARISC_PLTOFF16WF	118+#define R_PARISC_PLTOFF16DF	119+#define R_PARISC_LTOFF_FPTR64	120+#define R_PARISC_LTOFF_FPTR14WR	123+#define R_PARISC_LTOFF_FPTR14DR	124+#define R_PARISC_LTOFF_FPTR16F	125+#define R_PARISC_LTOFF_FPTR16WF	126+#define R_PARISC_LTOFF_FPTR16DF	127+#define R_PARISC_LORESERVE	128+#define R_PARISC_COPY		128+#define R_PARISC_IPLT		129+#define R_PARISC_EPLT		130+#define R_PARISC_TPREL32	153+#define R_PARISC_TPREL21L	154+#define R_PARISC_TPREL14R	158+#define R_PARISC_LTOFF_TP21L	162+#define R_PARISC_LTOFF_TP14R	166+#define R_PARISC_LTOFF_TP14F	167+#define R_PARISC_TPREL64	216+#define R_PARISC_TPREL14WR	219+#define R_PARISC_TPREL14DR	220+#define R_PARISC_TPREL16F	221+#define R_PARISC_TPREL16WF	222+#define R_PARISC_TPREL16DF	223+#define R_PARISC_LTOFF_TP64	224+#define R_PARISC_LTOFF_TP14WR	227+#define R_PARISC_LTOFF_TP14DR	228+#define R_PARISC_LTOFF_TP16F	229+#define R_PARISC_LTOFF_TP16WF	230+#define R_PARISC_LTOFF_TP16DF	231+#define R_PARISC_GNU_VTENTRY	232+#define R_PARISC_GNU_VTINHERIT	233+#define R_PARISC_TLS_GD21L	234+#define R_PARISC_TLS_GD14R	235+#define R_PARISC_TLS_GDCALL	236+#define R_PARISC_TLS_LDM21L	237+#define R_PARISC_TLS_LDM14R	238+#define R_PARISC_TLS_LDMCALL	239+#define R_PARISC_TLS_LDO21L	240+#define R_PARISC_TLS_LDO14R	241+#define R_PARISC_TLS_DTPMOD32	242+#define R_PARISC_TLS_DTPMOD64	243+#define R_PARISC_TLS_DTPOFF32	244+#define R_PARISC_TLS_DTPOFF64	245+#define R_PARISC_TLS_LE21L	R_PARISC_TPREL21L+#define R_PARISC_TLS_LE14R	R_PARISC_TPREL14R+#define R_PARISC_TLS_IE21L	R_PARISC_LTOFF_TP21L+#define R_PARISC_TLS_IE14R	R_PARISC_LTOFF_TP14R+#define R_PARISC_TLS_TPREL32	R_PARISC_TPREL32+#define R_PARISC_TLS_TPREL64	R_PARISC_TPREL64+#define R_PARISC_HIRESERVE	255++++#define PT_HP_TLS		(PT_LOOS + 0x0)+#define PT_HP_CORE_NONE		(PT_LOOS + 0x1)+#define PT_HP_CORE_VERSION	(PT_LOOS + 0x2)+#define PT_HP_CORE_KERNEL	(PT_LOOS + 0x3)+#define PT_HP_CORE_COMM		(PT_LOOS + 0x4)+#define PT_HP_CORE_PROC		(PT_LOOS + 0x5)+#define PT_HP_CORE_LOADABLE	(PT_LOOS + 0x6)+#define PT_HP_CORE_STACK	(PT_LOOS + 0x7)+#define PT_HP_CORE_SHM		(PT_LOOS + 0x8)+#define PT_HP_CORE_MMF		(PT_LOOS + 0x9)+#define PT_HP_PARALLEL		(PT_LOOS + 0x10)+#define PT_HP_FASTBIND		(PT_LOOS + 0x11)+#define PT_HP_OPT_ANNOT		(PT_LOOS + 0x12)+#define PT_HP_HSL_ANNOT		(PT_LOOS + 0x13)+#define PT_HP_STACK		(PT_LOOS + 0x14)++#define PT_PARISC_ARCHEXT	0x70000000+#define PT_PARISC_UNWIND	0x70000001++++#define PF_PARISC_SBP		0x08000000++#define PF_HP_PAGE_SIZE		0x00100000+#define PF_HP_FAR_SHARED	0x00200000+#define PF_HP_NEAR_SHARED	0x00400000+#define PF_HP_CODE		0x01000000+#define PF_HP_MODIFY		0x02000000+#define PF_HP_LAZYSWAP		0x04000000+#define PF_HP_SBP		0x08000000+++++++#define EF_ALPHA_32BIT		1+#define EF_ALPHA_CANRELAX	2+++++#define SHT_ALPHA_DEBUG		0x70000001+#define SHT_ALPHA_REGINFO	0x70000002++++#define SHF_ALPHA_GPREL		0x10000000+++#define STO_ALPHA_NOPV		0x80+#define STO_ALPHA_STD_GPLOAD	0x88++++#define R_ALPHA_NONE		0+#define R_ALPHA_REFLONG		1+#define R_ALPHA_REFQUAD		2+#define R_ALPHA_GPREL32		3+#define R_ALPHA_LITERAL		4+#define R_ALPHA_LITUSE		5+#define R_ALPHA_GPDISP		6+#define R_ALPHA_BRADDR		7+#define R_ALPHA_HINT		8+#define R_ALPHA_SREL16		9+#define R_ALPHA_SREL32		10+#define R_ALPHA_SREL64		11+#define R_ALPHA_GPRELHIGH	17+#define R_ALPHA_GPRELLOW	18+#define R_ALPHA_GPREL16		19+#define R_ALPHA_COPY		24+#define R_ALPHA_GLOB_DAT	25+#define R_ALPHA_JMP_SLOT	26+#define R_ALPHA_RELATIVE	27+#define R_ALPHA_TLS_GD_HI	28+#define R_ALPHA_TLSGD		29+#define R_ALPHA_TLS_LDM		30+#define R_ALPHA_DTPMOD64	31+#define R_ALPHA_GOTDTPREL	32+#define R_ALPHA_DTPREL64	33+#define R_ALPHA_DTPRELHI	34+#define R_ALPHA_DTPRELLO	35+#define R_ALPHA_DTPREL16	36+#define R_ALPHA_GOTTPREL	37+#define R_ALPHA_TPREL64		38+#define R_ALPHA_TPRELHI		39+#define R_ALPHA_TPRELLO		40+#define R_ALPHA_TPREL16		41++#define R_ALPHA_NUM		46+++#define LITUSE_ALPHA_ADDR	0+#define LITUSE_ALPHA_BASE	1+#define LITUSE_ALPHA_BYTOFF	2+#define LITUSE_ALPHA_JSR	3+#define LITUSE_ALPHA_TLS_GD	4+#define LITUSE_ALPHA_TLS_LDM	5+++#define DT_ALPHA_PLTRO		(DT_LOPROC + 0)+#define DT_ALPHA_NUM		1+++++#define EF_PPC_EMB		0x80000000+++#define EF_PPC_RELOCATABLE	0x00010000+#define EF_PPC_RELOCATABLE_LIB	0x00008000++++#define R_PPC_NONE		0+#define R_PPC_ADDR32		1+#define R_PPC_ADDR24		2+#define R_PPC_ADDR16		3+#define R_PPC_ADDR16_LO		4+#define R_PPC_ADDR16_HI		5+#define R_PPC_ADDR16_HA		6+#define R_PPC_ADDR14		7+#define R_PPC_ADDR14_BRTAKEN	8+#define R_PPC_ADDR14_BRNTAKEN	9+#define R_PPC_REL24		10+#define R_PPC_REL14		11+#define R_PPC_REL14_BRTAKEN	12+#define R_PPC_REL14_BRNTAKEN	13+#define R_PPC_GOT16		14+#define R_PPC_GOT16_LO		15+#define R_PPC_GOT16_HI		16+#define R_PPC_GOT16_HA		17+#define R_PPC_PLTREL24		18+#define R_PPC_COPY		19+#define R_PPC_GLOB_DAT		20+#define R_PPC_JMP_SLOT		21+#define R_PPC_RELATIVE		22+#define R_PPC_LOCAL24PC		23+#define R_PPC_UADDR32		24+#define R_PPC_UADDR16		25+#define R_PPC_REL32		26+#define R_PPC_PLT32		27+#define R_PPC_PLTREL32		28+#define R_PPC_PLT16_LO		29+#define R_PPC_PLT16_HI		30+#define R_PPC_PLT16_HA		31+#define R_PPC_SDAREL16		32+#define R_PPC_SECTOFF		33+#define R_PPC_SECTOFF_LO	34+#define R_PPC_SECTOFF_HI	35+#define R_PPC_SECTOFF_HA	36+++#define R_PPC_TLS		67+#define R_PPC_DTPMOD32		68+#define R_PPC_TPREL16		69+#define R_PPC_TPREL16_LO	70+#define R_PPC_TPREL16_HI	71+#define R_PPC_TPREL16_HA	72+#define R_PPC_TPREL32		73+#define R_PPC_DTPREL16		74+#define R_PPC_DTPREL16_LO	75+#define R_PPC_DTPREL16_HI	76+#define R_PPC_DTPREL16_HA	77+#define R_PPC_DTPREL32		78+#define R_PPC_GOT_TLSGD16	79+#define R_PPC_GOT_TLSGD16_LO	80+#define R_PPC_GOT_TLSGD16_HI	81+#define R_PPC_GOT_TLSGD16_HA	82+#define R_PPC_GOT_TLSLD16	83+#define R_PPC_GOT_TLSLD16_LO	84+#define R_PPC_GOT_TLSLD16_HI	85+#define R_PPC_GOT_TLSLD16_HA	86+#define R_PPC_GOT_TPREL16	87+#define R_PPC_GOT_TPREL16_LO	88+#define R_PPC_GOT_TPREL16_HI	89+#define R_PPC_GOT_TPREL16_HA	90+#define R_PPC_GOT_DTPREL16	91+#define R_PPC_GOT_DTPREL16_LO	92+#define R_PPC_GOT_DTPREL16_HI	93+#define R_PPC_GOT_DTPREL16_HA	94+#define R_PPC_TLSGD		95+#define R_PPC_TLSLD		96+++#define R_PPC_EMB_NADDR32	101+#define R_PPC_EMB_NADDR16	102+#define R_PPC_EMB_NADDR16_LO	103+#define R_PPC_EMB_NADDR16_HI	104+#define R_PPC_EMB_NADDR16_HA	105+#define R_PPC_EMB_SDAI16	106+#define R_PPC_EMB_SDA2I16	107+#define R_PPC_EMB_SDA2REL	108+#define R_PPC_EMB_SDA21		109+#define R_PPC_EMB_MRKREF	110+#define R_PPC_EMB_RELSEC16	111+#define R_PPC_EMB_RELST_LO	112+#define R_PPC_EMB_RELST_HI	113+#define R_PPC_EMB_RELST_HA	114+#define R_PPC_EMB_BIT_FLD	115+#define R_PPC_EMB_RELSDA	116+++#define R_PPC_DIAB_SDA21_LO	180+#define R_PPC_DIAB_SDA21_HI	181+#define R_PPC_DIAB_SDA21_HA	182+#define R_PPC_DIAB_RELSDA_LO	183+#define R_PPC_DIAB_RELSDA_HI	184+#define R_PPC_DIAB_RELSDA_HA	185+++#define R_PPC_IRELATIVE		248+++#define R_PPC_REL16		249+#define R_PPC_REL16_LO		250+#define R_PPC_REL16_HI		251+#define R_PPC_REL16_HA		252++++#define R_PPC_TOC16		255+++#define DT_PPC_GOT		(DT_LOPROC + 0)+#define DT_PPC_OPT		(DT_LOPROC + 1)+#define DT_PPC_NUM		2++#define PPC_OPT_TLS		1+++#define R_PPC64_NONE		R_PPC_NONE+#define R_PPC64_ADDR32		R_PPC_ADDR32+#define R_PPC64_ADDR24		R_PPC_ADDR24+#define R_PPC64_ADDR16		R_PPC_ADDR16+#define R_PPC64_ADDR16_LO	R_PPC_ADDR16_LO+#define R_PPC64_ADDR16_HI	R_PPC_ADDR16_HI+#define R_PPC64_ADDR16_HA	R_PPC_ADDR16_HA+#define R_PPC64_ADDR14		R_PPC_ADDR14+#define R_PPC64_ADDR14_BRTAKEN	R_PPC_ADDR14_BRTAKEN+#define R_PPC64_ADDR14_BRNTAKEN	R_PPC_ADDR14_BRNTAKEN+#define R_PPC64_REL24		R_PPC_REL24+#define R_PPC64_REL14		R_PPC_REL14+#define R_PPC64_REL14_BRTAKEN	R_PPC_REL14_BRTAKEN+#define R_PPC64_REL14_BRNTAKEN	R_PPC_REL14_BRNTAKEN+#define R_PPC64_GOT16		R_PPC_GOT16+#define R_PPC64_GOT16_LO	R_PPC_GOT16_LO+#define R_PPC64_GOT16_HI	R_PPC_GOT16_HI+#define R_PPC64_GOT16_HA	R_PPC_GOT16_HA++#define R_PPC64_COPY		R_PPC_COPY+#define R_PPC64_GLOB_DAT	R_PPC_GLOB_DAT+#define R_PPC64_JMP_SLOT	R_PPC_JMP_SLOT+#define R_PPC64_RELATIVE	R_PPC_RELATIVE++#define R_PPC64_UADDR32		R_PPC_UADDR32+#define R_PPC64_UADDR16		R_PPC_UADDR16+#define R_PPC64_REL32		R_PPC_REL32+#define R_PPC64_PLT32		R_PPC_PLT32+#define R_PPC64_PLTREL32	R_PPC_PLTREL32+#define R_PPC64_PLT16_LO	R_PPC_PLT16_LO+#define R_PPC64_PLT16_HI	R_PPC_PLT16_HI+#define R_PPC64_PLT16_HA	R_PPC_PLT16_HA++#define R_PPC64_SECTOFF		R_PPC_SECTOFF+#define R_PPC64_SECTOFF_LO	R_PPC_SECTOFF_LO+#define R_PPC64_SECTOFF_HI	R_PPC_SECTOFF_HI+#define R_PPC64_SECTOFF_HA	R_PPC_SECTOFF_HA+#define R_PPC64_ADDR30		37+#define R_PPC64_ADDR64		38+#define R_PPC64_ADDR16_HIGHER	39+#define R_PPC64_ADDR16_HIGHERA	40+#define R_PPC64_ADDR16_HIGHEST	41+#define R_PPC64_ADDR16_HIGHESTA	42+#define R_PPC64_UADDR64		43+#define R_PPC64_REL64		44+#define R_PPC64_PLT64		45+#define R_PPC64_PLTREL64	46+#define R_PPC64_TOC16		47+#define R_PPC64_TOC16_LO	48+#define R_PPC64_TOC16_HI	49+#define R_PPC64_TOC16_HA	50+#define R_PPC64_TOC		51+#define R_PPC64_PLTGOT16	52+#define R_PPC64_PLTGOT16_LO	53+#define R_PPC64_PLTGOT16_HI	54+#define R_PPC64_PLTGOT16_HA	55++#define R_PPC64_ADDR16_DS	56+#define R_PPC64_ADDR16_LO_DS	57+#define R_PPC64_GOT16_DS	58+#define R_PPC64_GOT16_LO_DS	59+#define R_PPC64_PLT16_LO_DS	60+#define R_PPC64_SECTOFF_DS	61+#define R_PPC64_SECTOFF_LO_DS	62+#define R_PPC64_TOC16_DS	63+#define R_PPC64_TOC16_LO_DS	64+#define R_PPC64_PLTGOT16_DS	65+#define R_PPC64_PLTGOT16_LO_DS	66+++#define R_PPC64_TLS		67+#define R_PPC64_DTPMOD64	68+#define R_PPC64_TPREL16		69+#define R_PPC64_TPREL16_LO	70+#define R_PPC64_TPREL16_HI	71+#define R_PPC64_TPREL16_HA	72+#define R_PPC64_TPREL64		73+#define R_PPC64_DTPREL16	74+#define R_PPC64_DTPREL16_LO	75+#define R_PPC64_DTPREL16_HI	76+#define R_PPC64_DTPREL16_HA	77+#define R_PPC64_DTPREL64	78+#define R_PPC64_GOT_TLSGD16	79+#define R_PPC64_GOT_TLSGD16_LO	80+#define R_PPC64_GOT_TLSGD16_HI	81+#define R_PPC64_GOT_TLSGD16_HA	82+#define R_PPC64_GOT_TLSLD16	83+#define R_PPC64_GOT_TLSLD16_LO	84+#define R_PPC64_GOT_TLSLD16_HI	85+#define R_PPC64_GOT_TLSLD16_HA	86+#define R_PPC64_GOT_TPREL16_DS	87+#define R_PPC64_GOT_TPREL16_LO_DS 88+#define R_PPC64_GOT_TPREL16_HI	89+#define R_PPC64_GOT_TPREL16_HA	90+#define R_PPC64_GOT_DTPREL16_DS	91+#define R_PPC64_GOT_DTPREL16_LO_DS 92+#define R_PPC64_GOT_DTPREL16_HI	93+#define R_PPC64_GOT_DTPREL16_HA	94+#define R_PPC64_TPREL16_DS	95+#define R_PPC64_TPREL16_LO_DS	96+#define R_PPC64_TPREL16_HIGHER	97+#define R_PPC64_TPREL16_HIGHERA	98+#define R_PPC64_TPREL16_HIGHEST	99+#define R_PPC64_TPREL16_HIGHESTA 100+#define R_PPC64_DTPREL16_DS	101+#define R_PPC64_DTPREL16_LO_DS	102+#define R_PPC64_DTPREL16_HIGHER	103+#define R_PPC64_DTPREL16_HIGHERA 104+#define R_PPC64_DTPREL16_HIGHEST 105+#define R_PPC64_DTPREL16_HIGHESTA 106+#define R_PPC64_TLSGD		107+#define R_PPC64_TLSLD		108+#define R_PPC64_TOCSAVE		109+#define R_PPC64_ADDR16_HIGH	110+#define R_PPC64_ADDR16_HIGHA	111+#define R_PPC64_TPREL16_HIGH	112+#define R_PPC64_TPREL16_HIGHA	113+#define R_PPC64_DTPREL16_HIGH	114+#define R_PPC64_DTPREL16_HIGHA	115+++#define R_PPC64_JMP_IREL	247+#define R_PPC64_IRELATIVE	248+#define R_PPC64_REL16		249+#define R_PPC64_REL16_LO	250+#define R_PPC64_REL16_HI	251+#define R_PPC64_REL16_HA	252++#define EF_PPC64_ABI	3++#define DT_PPC64_GLINK  (DT_LOPROC + 0)+#define DT_PPC64_OPD	(DT_LOPROC + 1)+#define DT_PPC64_OPDSZ	(DT_LOPROC + 2)+#define DT_PPC64_OPT	(DT_LOPROC + 3)+#define DT_PPC64_NUM	4++#define PPC64_OPT_TLS		1+#define PPC64_OPT_MULTI_TOC	2+#define PPC64_OPT_LOCALENTRY	4++#define STO_PPC64_LOCAL_BIT	5+#define STO_PPC64_LOCAL_MASK	0xe0+#define PPC64_LOCAL_ENTRY_OFFSET(x) (1 << (((x)&0xe0)>>5) & 0xfc)+++#define EF_ARM_RELEXEC		0x01+#define EF_ARM_HASENTRY		0x02+#define EF_ARM_INTERWORK	0x04+#define EF_ARM_APCS_26		0x08+#define EF_ARM_APCS_FLOAT	0x10+#define EF_ARM_PIC		0x20+#define EF_ARM_ALIGN8		0x40+#define EF_ARM_NEW_ABI		0x80+#define EF_ARM_OLD_ABI		0x100+#define EF_ARM_SOFT_FLOAT	0x200+#define EF_ARM_VFP_FLOAT	0x400+#define EF_ARM_MAVERICK_FLOAT	0x800++#define EF_ARM_ABI_FLOAT_SOFT	0x200+#define EF_ARM_ABI_FLOAT_HARD	0x400+++#define EF_ARM_SYMSARESORTED	0x04+#define EF_ARM_DYNSYMSUSESEGIDX	0x08+#define EF_ARM_MAPSYMSFIRST	0x10+#define EF_ARM_EABIMASK		0XFF000000+++#define EF_ARM_BE8	    0x00800000+#define EF_ARM_LE8	    0x00400000++#define EF_ARM_EABI_VERSION(flags)	((flags) & EF_ARM_EABIMASK)+#define EF_ARM_EABI_UNKNOWN	0x00000000+#define EF_ARM_EABI_VER1	0x01000000+#define EF_ARM_EABI_VER2	0x02000000+#define EF_ARM_EABI_VER3	0x03000000+#define EF_ARM_EABI_VER4	0x04000000+#define EF_ARM_EABI_VER5	0x05000000+++#define STT_ARM_TFUNC		STT_LOPROC+#define STT_ARM_16BIT		STT_HIPROC+++#define SHF_ARM_ENTRYSECT	0x10000000+#define SHF_ARM_COMDEF		0x80000000++++#define PF_ARM_SB		0x10000000++#define PF_ARM_PI		0x20000000+#define PF_ARM_ABS		0x40000000+++#define PT_ARM_EXIDX		(PT_LOPROC + 1)+++#define SHT_ARM_EXIDX		(SHT_LOPROC + 1)+#define SHT_ARM_PREEMPTMAP	(SHT_LOPROC + 2)+#define SHT_ARM_ATTRIBUTES	(SHT_LOPROC + 3)++#define R_AARCH64_NONE            0+#define R_AARCH64_P32_ABS32	1+#define R_AARCH64_P32_COPY	180+#define R_AARCH64_P32_GLOB_DAT	181+#define R_AARCH64_P32_JUMP_SLOT	182+#define R_AARCH64_P32_RELATIVE	183+#define R_AARCH64_P32_TLS_DTPMOD 184+#define R_AARCH64_P32_TLS_DTPREL 185+#define R_AARCH64_P32_TLS_TPREL	186+#define R_AARCH64_P32_TLSDESC	187+#define R_AARCH64_P32_IRELATIVE	188+#define R_AARCH64_ABS64         257+#define R_AARCH64_ABS32         258+#define R_AARCH64_ABS16		259+#define R_AARCH64_PREL64	260+#define R_AARCH64_PREL32	261+#define R_AARCH64_PREL16	262+#define R_AARCH64_MOVW_UABS_G0	263+#define R_AARCH64_MOVW_UABS_G0_NC 264+#define R_AARCH64_MOVW_UABS_G1	265+#define R_AARCH64_MOVW_UABS_G1_NC 266+#define R_AARCH64_MOVW_UABS_G2	267+#define R_AARCH64_MOVW_UABS_G2_NC 268+#define R_AARCH64_MOVW_UABS_G3	269+#define R_AARCH64_MOVW_SABS_G0	270+#define R_AARCH64_MOVW_SABS_G1	271+#define R_AARCH64_MOVW_SABS_G2	272+#define R_AARCH64_LD_PREL_LO19	273+#define R_AARCH64_ADR_PREL_LO21	274+#define R_AARCH64_ADR_PREL_PG_HI21 275+#define R_AARCH64_ADR_PREL_PG_HI21_NC 276+#define R_AARCH64_ADD_ABS_LO12_NC 277+#define R_AARCH64_LDST8_ABS_LO12_NC 278+#define R_AARCH64_TSTBR14	279+#define R_AARCH64_CONDBR19	280+#define R_AARCH64_JUMP26	282+#define R_AARCH64_CALL26	283+#define R_AARCH64_LDST16_ABS_LO12_NC 284+#define R_AARCH64_LDST32_ABS_LO12_NC 285+#define R_AARCH64_LDST64_ABS_LO12_NC 286+#define R_AARCH64_MOVW_PREL_G0	287+#define R_AARCH64_MOVW_PREL_G0_NC 288+#define R_AARCH64_MOVW_PREL_G1	289+#define R_AARCH64_MOVW_PREL_G1_NC 290+#define R_AARCH64_MOVW_PREL_G2	291+#define R_AARCH64_MOVW_PREL_G2_NC 292+#define R_AARCH64_MOVW_PREL_G3	293+#define R_AARCH64_LDST128_ABS_LO12_NC 299+#define R_AARCH64_MOVW_GOTOFF_G0 300+#define R_AARCH64_MOVW_GOTOFF_G0_NC 301+#define R_AARCH64_MOVW_GOTOFF_G1 302+#define R_AARCH64_MOVW_GOTOFF_G1_NC 303+#define R_AARCH64_MOVW_GOTOFF_G2 304+#define R_AARCH64_MOVW_GOTOFF_G2_NC 305+#define R_AARCH64_MOVW_GOTOFF_G3 306+#define R_AARCH64_GOTREL64	307+#define R_AARCH64_GOTREL32	308+#define R_AARCH64_GOT_LD_PREL19	309+#define R_AARCH64_LD64_GOTOFF_LO15 310+#define R_AARCH64_ADR_GOT_PAGE	311+#define R_AARCH64_LD64_GOT_LO12_NC 312+#define R_AARCH64_LD64_GOTPAGE_LO15 313+#define R_AARCH64_TLSGD_ADR_PREL21 512+#define R_AARCH64_TLSGD_ADR_PAGE21 513+#define R_AARCH64_TLSGD_ADD_LO12_NC 514+#define R_AARCH64_TLSGD_MOVW_G1	515+#define R_AARCH64_TLSGD_MOVW_G0_NC 516+#define R_AARCH64_TLSLD_ADR_PREL21 517+#define R_AARCH64_TLSLD_ADR_PAGE21 518+#define R_AARCH64_TLSLD_ADD_LO12_NC 519+#define R_AARCH64_TLSLD_MOVW_G1	520+#define R_AARCH64_TLSLD_MOVW_G0_NC 521+#define R_AARCH64_TLSLD_LD_PREL19 522+#define R_AARCH64_TLSLD_MOVW_DTPREL_G2 523+#define R_AARCH64_TLSLD_MOVW_DTPREL_G1 524+#define R_AARCH64_TLSLD_MOVW_DTPREL_G1_NC 525+#define R_AARCH64_TLSLD_MOVW_DTPREL_G0 526+#define R_AARCH64_TLSLD_MOVW_DTPREL_G0_NC 527+#define R_AARCH64_TLSLD_ADD_DTPREL_HI12 528+#define R_AARCH64_TLSLD_ADD_DTPREL_LO12 529+#define R_AARCH64_TLSLD_ADD_DTPREL_LO12_NC 530+#define R_AARCH64_TLSLD_LDST8_DTPREL_LO12 531+#define R_AARCH64_TLSLD_LDST8_DTPREL_LO12_NC 532+#define R_AARCH64_TLSLD_LDST16_DTPREL_LO12 533+#define R_AARCH64_TLSLD_LDST16_DTPREL_LO12_NC 534+#define R_AARCH64_TLSLD_LDST32_DTPREL_LO12 535+#define R_AARCH64_TLSLD_LDST32_DTPREL_LO12_NC 536+#define R_AARCH64_TLSLD_LDST64_DTPREL_LO12 537+#define R_AARCH64_TLSLD_LDST64_DTPREL_LO12_NC 538+#define R_AARCH64_TLSIE_MOVW_GOTTPREL_G1 539+#define R_AARCH64_TLSIE_MOVW_GOTTPREL_G0_NC 540+#define R_AARCH64_TLSIE_ADR_GOTTPREL_PAGE21 541+#define R_AARCH64_TLSIE_LD64_GOTTPREL_LO12_NC 542+#define R_AARCH64_TLSIE_LD_GOTTPREL_PREL19 543+#define R_AARCH64_TLSLE_MOVW_TPREL_G2 544+#define R_AARCH64_TLSLE_MOVW_TPREL_G1 545+#define R_AARCH64_TLSLE_MOVW_TPREL_G1_NC 546+#define R_AARCH64_TLSLE_MOVW_TPREL_G0 547+#define R_AARCH64_TLSLE_MOVW_TPREL_G0_NC 548+#define R_AARCH64_TLSLE_ADD_TPREL_HI12 549+#define R_AARCH64_TLSLE_ADD_TPREL_LO12 550+#define R_AARCH64_TLSLE_ADD_TPREL_LO12_NC 551+#define R_AARCH64_TLSLE_LDST8_TPREL_LO12 552+#define R_AARCH64_TLSLE_LDST8_TPREL_LO12_NC 553+#define R_AARCH64_TLSLE_LDST16_TPREL_LO12 554+#define R_AARCH64_TLSLE_LDST16_TPREL_LO12_NC 555+#define R_AARCH64_TLSLE_LDST32_TPREL_LO12 556+#define R_AARCH64_TLSLE_LDST32_TPREL_LO12_NC 557+#define R_AARCH64_TLSLE_LDST64_TPREL_LO12 558+#define R_AARCH64_TLSLE_LDST64_TPREL_LO12_NC 559+#define R_AARCH64_TLSDESC_LD_PREL19 560+#define R_AARCH64_TLSDESC_ADR_PREL21 561+#define R_AARCH64_TLSDESC_ADR_PAGE21 562+#define R_AARCH64_TLSDESC_LD64_LO12 563+#define R_AARCH64_TLSDESC_ADD_LO12 564+#define R_AARCH64_TLSDESC_OFF_G1 565+#define R_AARCH64_TLSDESC_OFF_G0_NC 566+#define R_AARCH64_TLSDESC_LDR	567+#define R_AARCH64_TLSDESC_ADD	568+#define R_AARCH64_TLSDESC_CALL	569+#define R_AARCH64_TLSLE_LDST128_TPREL_LO12 570+#define R_AARCH64_TLSLE_LDST128_TPREL_LO12_NC 571+#define R_AARCH64_TLSLD_LDST128_DTPREL_LO12 572+#define R_AARCH64_TLSLD_LDST128_DTPREL_LO12_NC 573+#define R_AARCH64_COPY         1024+#define R_AARCH64_GLOB_DAT     1025+#define R_AARCH64_JUMP_SLOT    1026+#define R_AARCH64_RELATIVE     1027+#define R_AARCH64_TLS_DTPMOD   1028+#define R_AARCH64_TLS_DTPMOD64 1028+#define R_AARCH64_TLS_DTPREL   1029+#define R_AARCH64_TLS_DTPREL64 1029+#define R_AARCH64_TLS_TPREL    1030+#define R_AARCH64_TLS_TPREL64  1030+#define R_AARCH64_TLSDESC      1031+++#define R_ARM_NONE		0+#define R_ARM_PC24		1+#define R_ARM_ABS32		2+#define R_ARM_REL32		3+#define R_ARM_PC13		4+#define R_ARM_ABS16		5+#define R_ARM_ABS12		6+#define R_ARM_THM_ABS5		7+#define R_ARM_ABS8		8+#define R_ARM_SBREL32		9+#define R_ARM_THM_PC22		10+#define R_ARM_THM_PC8		11+#define R_ARM_AMP_VCALL9	12+#define R_ARM_TLS_DESC		13+#define R_ARM_THM_SWI8		14+#define R_ARM_XPC25		15+#define R_ARM_THM_XPC22		16+#define R_ARM_TLS_DTPMOD32	17+#define R_ARM_TLS_DTPOFF32	18+#define R_ARM_TLS_TPOFF32	19+#define R_ARM_COPY		20+#define R_ARM_GLOB_DAT		21+#define R_ARM_JUMP_SLOT		22+#define R_ARM_RELATIVE		23+#define R_ARM_GOTOFF		24+#define R_ARM_GOTPC		25+#define R_ARM_GOT32		26+#define R_ARM_PLT32		27+#define R_ARM_CALL		28+#define R_ARM_JUMP24		29+#define R_ARM_THM_JUMP24	30+#define R_ARM_BASE_ABS		31+#define R_ARM_ALU_PCREL_7_0	32+#define R_ARM_ALU_PCREL_15_8	33+#define R_ARM_ALU_PCREL_23_15	34+#define R_ARM_LDR_SBREL_11_0	35+#define R_ARM_ALU_SBREL_19_12	36+#define R_ARM_ALU_SBREL_27_20	37+#define R_ARM_TARGET1		38+#define R_ARM_SBREL31		39+#define R_ARM_V4BX		40+#define R_ARM_TARGET2		41+#define R_ARM_PREL31		42+#define R_ARM_MOVW_ABS_NC	43+#define R_ARM_MOVT_ABS		44+#define R_ARM_MOVW_PREL_NC	45+#define R_ARM_MOVT_PREL		46+#define R_ARM_THM_MOVW_ABS_NC	47+#define R_ARM_THM_MOVT_ABS	48+#define R_ARM_THM_MOVW_PREL_NC	49+#define R_ARM_THM_MOVT_PREL	50+#define R_ARM_THM_JUMP19	51+#define R_ARM_THM_JUMP6		52+#define R_ARM_THM_ALU_PREL_11_0	53+#define R_ARM_THM_PC12		54+#define R_ARM_ABS32_NOI		55+#define R_ARM_REL32_NOI		56+#define R_ARM_ALU_PC_G0_NC	57+#define R_ARM_ALU_PC_G0		58+#define R_ARM_ALU_PC_G1_NC	59+#define R_ARM_ALU_PC_G1		60+#define R_ARM_ALU_PC_G2		61+#define R_ARM_LDR_PC_G1		62+#define R_ARM_LDR_PC_G2		63+#define R_ARM_LDRS_PC_G0	64+#define R_ARM_LDRS_PC_G1	65+#define R_ARM_LDRS_PC_G2	66+#define R_ARM_LDC_PC_G0		67+#define R_ARM_LDC_PC_G1		68+#define R_ARM_LDC_PC_G2		69+#define R_ARM_ALU_SB_G0_NC	70+#define R_ARM_ALU_SB_G0		71+#define R_ARM_ALU_SB_G1_NC	72+#define R_ARM_ALU_SB_G1		73+#define R_ARM_ALU_SB_G2		74+#define R_ARM_LDR_SB_G0		75+#define R_ARM_LDR_SB_G1		76+#define R_ARM_LDR_SB_G2		77+#define R_ARM_LDRS_SB_G0	78+#define R_ARM_LDRS_SB_G1	79+#define R_ARM_LDRS_SB_G2	80+#define R_ARM_LDC_SB_G0		81+#define R_ARM_LDC_SB_G1		82+#define R_ARM_LDC_SB_G2		83+#define R_ARM_MOVW_BREL_NC	84+#define R_ARM_MOVT_BREL		85+#define R_ARM_MOVW_BREL		86+#define R_ARM_THM_MOVW_BREL_NC	87+#define R_ARM_THM_MOVT_BREL	88+#define R_ARM_THM_MOVW_BREL	89+#define R_ARM_TLS_GOTDESC	90+#define R_ARM_TLS_CALL		91+#define R_ARM_TLS_DESCSEQ	92+#define R_ARM_THM_TLS_CALL	93+#define R_ARM_PLT32_ABS		94+#define R_ARM_GOT_ABS		95+#define R_ARM_GOT_PREL		96+#define R_ARM_GOT_BREL12	97+#define R_ARM_GOTOFF12		98+#define R_ARM_GOTRELAX		99+#define R_ARM_GNU_VTENTRY	100+#define R_ARM_GNU_VTINHERIT	101+#define R_ARM_THM_PC11		102+#define R_ARM_THM_PC9		103+#define R_ARM_TLS_GD32		104++#define R_ARM_TLS_LDM32		105++#define R_ARM_TLS_LDO32		106++#define R_ARM_TLS_IE32		107++#define R_ARM_TLS_LE32		108+#define R_ARM_TLS_LDO12		109+#define R_ARM_TLS_LE12		110+#define R_ARM_TLS_IE12GP	111+#define R_ARM_ME_TOO		128+#define R_ARM_THM_TLS_DESCSEQ	129+#define R_ARM_THM_TLS_DESCSEQ16	129+#define R_ARM_THM_TLS_DESCSEQ32	130+#define R_ARM_THM_GOT_BREL12	131+#define R_ARM_IRELATIVE		160+#define R_ARM_RXPC25		249+#define R_ARM_RSBREL32		250+#define R_ARM_THM_RPC22		251+#define R_ARM_RREL32		252+#define R_ARM_RABS22		253+#define R_ARM_RPC24		254+#define R_ARM_RBASE		255++#define R_ARM_NUM		256+++#define R_CKCORE_NONE               0+#define R_CKCORE_ADDR32             1+#define R_CKCORE_PCRELIMM8BY4       2+#define R_CKCORE_PCRELIMM11BY2      3+#define R_CKCORE_PCREL32            5+#define R_CKCORE_PCRELJSR_IMM11BY2  6+#define R_CKCORE_RELATIVE           9+#define R_CKCORE_COPY               10+#define R_CKCORE_GLOB_DAT           11+#define R_CKCORE_JUMP_SLOT          12+#define R_CKCORE_GOTOFF             13+#define R_CKCORE_GOTPC              14+#define R_CKCORE_GOT32              15+#define R_CKCORE_PLT32              16+#define R_CKCORE_ADDRGOT            17+#define R_CKCORE_ADDRPLT            18+#define R_CKCORE_PCREL_IMM26BY2     19+#define R_CKCORE_PCREL_IMM16BY2     20+#define R_CKCORE_PCREL_IMM16BY4     21+#define R_CKCORE_PCREL_IMM10BY2     22+#define R_CKCORE_PCREL_IMM10BY4     23+#define R_CKCORE_ADDR_HI16          24+#define R_CKCORE_ADDR_LO16          25+#define R_CKCORE_GOTPC_HI16         26+#define R_CKCORE_GOTPC_LO16         27+#define R_CKCORE_GOTOFF_HI16        28+#define R_CKCORE_GOTOFF_LO16        29+#define R_CKCORE_GOT12              30+#define R_CKCORE_GOT_HI16           31+#define R_CKCORE_GOT_LO16           32+#define R_CKCORE_PLT12              33+#define R_CKCORE_PLT_HI16           34+#define R_CKCORE_PLT_LO16           35+#define R_CKCORE_ADDRGOT_HI16       36+#define R_CKCORE_ADDRGOT_LO16       37+#define R_CKCORE_ADDRPLT_HI16       38+#define R_CKCORE_ADDRPLT_LO16       39+#define R_CKCORE_PCREL_JSR_IMM26BY2 40+#define R_CKCORE_TOFFSET_LO16       41+#define R_CKCORE_DOFFSET_LO16       42+#define R_CKCORE_PCREL_IMM18BY2     43+#define R_CKCORE_DOFFSET_IMM18      44+#define R_CKCORE_DOFFSET_IMM18BY2   45+#define R_CKCORE_DOFFSET_IMM18BY4   46+#define R_CKCORE_GOT_IMM18BY4       48+#define R_CKCORE_PLT_IMM18BY4       49+#define R_CKCORE_PCREL_IMM7BY4      50+#define R_CKCORE_TLS_LE32           51+#define R_CKCORE_TLS_IE32           52+#define R_CKCORE_TLS_GD32           53+#define R_CKCORE_TLS_LDM32          54+#define R_CKCORE_TLS_LDO32          55+#define R_CKCORE_TLS_DTPMOD32       56+#define R_CKCORE_TLS_DTPOFF32       57+#define R_CKCORE_TLS_TPOFF32        58+++#define EF_IA_64_MASKOS		0x0000000f+#define EF_IA_64_ABI64		0x00000010+#define EF_IA_64_ARCH		0xff000000+++#define PT_IA_64_ARCHEXT	(PT_LOPROC + 0)+#define PT_IA_64_UNWIND		(PT_LOPROC + 1)+#define PT_IA_64_HP_OPT_ANOT	(PT_LOOS + 0x12)+#define PT_IA_64_HP_HSL_ANOT	(PT_LOOS + 0x13)+#define PT_IA_64_HP_STACK	(PT_LOOS + 0x14)+++#define PF_IA_64_NORECOV	0x80000000+++#define SHT_IA_64_EXT		(SHT_LOPROC + 0)+#define SHT_IA_64_UNWIND	(SHT_LOPROC + 1)+++#define SHF_IA_64_SHORT		0x10000000+#define SHF_IA_64_NORECOV	0x20000000+++#define DT_IA_64_PLT_RESERVE	(DT_LOPROC + 0)+#define DT_IA_64_NUM		1+++#define R_IA64_NONE		0x00+#define R_IA64_IMM14		0x21+#define R_IA64_IMM22		0x22+#define R_IA64_IMM64		0x23+#define R_IA64_DIR32MSB		0x24+#define R_IA64_DIR32LSB		0x25+#define R_IA64_DIR64MSB		0x26+#define R_IA64_DIR64LSB		0x27+#define R_IA64_GPREL22		0x2a+#define R_IA64_GPREL64I		0x2b+#define R_IA64_GPREL32MSB	0x2c+#define R_IA64_GPREL32LSB	0x2d+#define R_IA64_GPREL64MSB	0x2e+#define R_IA64_GPREL64LSB	0x2f+#define R_IA64_LTOFF22		0x32+#define R_IA64_LTOFF64I		0x33+#define R_IA64_PLTOFF22		0x3a+#define R_IA64_PLTOFF64I	0x3b+#define R_IA64_PLTOFF64MSB	0x3e+#define R_IA64_PLTOFF64LSB	0x3f+#define R_IA64_FPTR64I		0x43+#define R_IA64_FPTR32MSB	0x44+#define R_IA64_FPTR32LSB	0x45+#define R_IA64_FPTR64MSB	0x46+#define R_IA64_FPTR64LSB	0x47+#define R_IA64_PCREL60B		0x48+#define R_IA64_PCREL21B		0x49+#define R_IA64_PCREL21M		0x4a+#define R_IA64_PCREL21F		0x4b+#define R_IA64_PCREL32MSB	0x4c+#define R_IA64_PCREL32LSB	0x4d+#define R_IA64_PCREL64MSB	0x4e+#define R_IA64_PCREL64LSB	0x4f+#define R_IA64_LTOFF_FPTR22	0x52+#define R_IA64_LTOFF_FPTR64I	0x53+#define R_IA64_LTOFF_FPTR32MSB	0x54+#define R_IA64_LTOFF_FPTR32LSB	0x55+#define R_IA64_LTOFF_FPTR64MSB	0x56+#define R_IA64_LTOFF_FPTR64LSB	0x57+#define R_IA64_SEGREL32MSB	0x5c+#define R_IA64_SEGREL32LSB	0x5d+#define R_IA64_SEGREL64MSB	0x5e+#define R_IA64_SEGREL64LSB	0x5f+#define R_IA64_SECREL32MSB	0x64+#define R_IA64_SECREL32LSB	0x65+#define R_IA64_SECREL64MSB	0x66+#define R_IA64_SECREL64LSB	0x67+#define R_IA64_REL32MSB		0x6c+#define R_IA64_REL32LSB		0x6d+#define R_IA64_REL64MSB		0x6e+#define R_IA64_REL64LSB		0x6f+#define R_IA64_LTV32MSB		0x74+#define R_IA64_LTV32LSB		0x75+#define R_IA64_LTV64MSB		0x76+#define R_IA64_LTV64LSB		0x77+#define R_IA64_PCREL21BI	0x79+#define R_IA64_PCREL22		0x7a+#define R_IA64_PCREL64I		0x7b+#define R_IA64_IPLTMSB		0x80+#define R_IA64_IPLTLSB		0x81+#define R_IA64_COPY		0x84+#define R_IA64_SUB		0x85+#define R_IA64_LTOFF22X		0x86+#define R_IA64_LDXMOV		0x87+#define R_IA64_TPREL14		0x91+#define R_IA64_TPREL22		0x92+#define R_IA64_TPREL64I		0x93+#define R_IA64_TPREL64MSB	0x96+#define R_IA64_TPREL64LSB	0x97+#define R_IA64_LTOFF_TPREL22	0x9a+#define R_IA64_DTPMOD64MSB	0xa6+#define R_IA64_DTPMOD64LSB	0xa7+#define R_IA64_LTOFF_DTPMOD22	0xaa+#define R_IA64_DTPREL14		0xb1+#define R_IA64_DTPREL22		0xb2+#define R_IA64_DTPREL64I	0xb3+#define R_IA64_DTPREL32MSB	0xb4+#define R_IA64_DTPREL32LSB	0xb5+#define R_IA64_DTPREL64MSB	0xb6+#define R_IA64_DTPREL64LSB	0xb7+#define R_IA64_LTOFF_DTPREL22	0xba+++#define EF_SH_MACH_MASK		0x1f+#define EF_SH_UNKNOWN		0x0+#define EF_SH1			0x1+#define EF_SH2			0x2+#define EF_SH3			0x3+#define EF_SH_DSP		0x4+#define EF_SH3_DSP		0x5+#define EF_SH4AL_DSP		0x6+#define EF_SH3E			0x8+#define EF_SH4			0x9+#define EF_SH2E			0xb+#define EF_SH4A			0xc+#define EF_SH2A			0xd+#define EF_SH4_NOFPU		0x10+#define EF_SH4A_NOFPU		0x11+#define EF_SH4_NOMMU_NOFPU	0x12+#define EF_SH2A_NOFPU		0x13+#define EF_SH3_NOMMU		0x14+#define EF_SH2A_SH4_NOFPU	0x15+#define EF_SH2A_SH3_NOFPU	0x16+#define EF_SH2A_SH4		0x17+#define EF_SH2A_SH3E		0x18++#define	R_SH_NONE		0+#define	R_SH_DIR32		1+#define	R_SH_REL32		2+#define	R_SH_DIR8WPN		3+#define	R_SH_IND12W		4+#define	R_SH_DIR8WPL		5+#define	R_SH_DIR8WPZ		6+#define	R_SH_DIR8BP		7+#define	R_SH_DIR8W		8+#define	R_SH_DIR8L		9+#define	R_SH_SWITCH16		25+#define	R_SH_SWITCH32		26+#define	R_SH_USES		27+#define	R_SH_COUNT		28+#define	R_SH_ALIGN		29+#define	R_SH_CODE		30+#define	R_SH_DATA		31+#define	R_SH_LABEL		32+#define	R_SH_SWITCH8		33+#define	R_SH_GNU_VTINHERIT	34+#define	R_SH_GNU_VTENTRY	35+#define	R_SH_TLS_GD_32		144+#define	R_SH_TLS_LD_32		145+#define	R_SH_TLS_LDO_32		146+#define	R_SH_TLS_IE_32		147+#define	R_SH_TLS_LE_32		148+#define	R_SH_TLS_DTPMOD32	149+#define	R_SH_TLS_DTPOFF32	150+#define	R_SH_TLS_TPOFF32	151+#define	R_SH_GOT32		160+#define	R_SH_PLT32		161+#define	R_SH_COPY		162+#define	R_SH_GLOB_DAT		163+#define	R_SH_JMP_SLOT		164+#define	R_SH_RELATIVE		165+#define	R_SH_GOTOFF		166+#define	R_SH_GOTPC		167+#define	R_SH_GOT20		201+#define	R_SH_GOTOFF20		202+#define	R_SH_GOTFUNCDESC	203+#define	R_SH_GOTFUNCDEST20	204+#define	R_SH_GOTOFFFUNCDESC	205+#define	R_SH_GOTOFFFUNCDEST20	206+#define	R_SH_FUNCDESC		207+#define	R_SH_FUNCDESC_VALUE	208++#define	R_SH_NUM		256++++#define R_390_NONE		0+#define R_390_8			1+#define R_390_12		2+#define R_390_16		3+#define R_390_32		4+#define R_390_PC32		5+#define R_390_GOT12		6+#define R_390_GOT32		7+#define R_390_PLT32		8+#define R_390_COPY		9+#define R_390_GLOB_DAT		10+#define R_390_JMP_SLOT		11+#define R_390_RELATIVE		12+#define R_390_GOTOFF32		13+#define R_390_GOTPC		14+#define R_390_GOT16		15+#define R_390_PC16		16+#define R_390_PC16DBL		17+#define R_390_PLT16DBL		18+#define R_390_PC32DBL		19+#define R_390_PLT32DBL		20+#define R_390_GOTPCDBL		21+#define R_390_64		22+#define R_390_PC64		23+#define R_390_GOT64		24+#define R_390_PLT64		25+#define R_390_GOTENT		26+#define R_390_GOTOFF16		27+#define R_390_GOTOFF64		28+#define R_390_GOTPLT12		29+#define R_390_GOTPLT16		30+#define R_390_GOTPLT32		31+#define R_390_GOTPLT64		32+#define R_390_GOTPLTENT		33+#define R_390_PLTOFF16		34+#define R_390_PLTOFF32		35+#define R_390_PLTOFF64		36+#define R_390_TLS_LOAD		37+#define R_390_TLS_GDCALL	38++#define R_390_TLS_LDCALL	39++#define R_390_TLS_GD32		40++#define R_390_TLS_GD64		41++#define R_390_TLS_GOTIE12	42++#define R_390_TLS_GOTIE32	43++#define R_390_TLS_GOTIE64	44++#define R_390_TLS_LDM32		45++#define R_390_TLS_LDM64		46++#define R_390_TLS_IE32		47++#define R_390_TLS_IE64		48++#define R_390_TLS_IEENT		49++#define R_390_TLS_LE32		50++#define R_390_TLS_LE64		51++#define R_390_TLS_LDO32		52++#define R_390_TLS_LDO64		53++#define R_390_TLS_DTPMOD	54+#define R_390_TLS_DTPOFF	55+#define R_390_TLS_TPOFF		56++#define R_390_20		57+#define R_390_GOT20		58+#define R_390_GOTPLT20		59+#define R_390_TLS_GOTIE20	60+++#define R_390_NUM		61++++#define R_CRIS_NONE		0+#define R_CRIS_8		1+#define R_CRIS_16		2+#define R_CRIS_32		3+#define R_CRIS_8_PCREL		4+#define R_CRIS_16_PCREL		5+#define R_CRIS_32_PCREL		6+#define R_CRIS_GNU_VTINHERIT	7+#define R_CRIS_GNU_VTENTRY	8+#define R_CRIS_COPY		9+#define R_CRIS_GLOB_DAT		10+#define R_CRIS_JUMP_SLOT	11+#define R_CRIS_RELATIVE		12+#define R_CRIS_16_GOT		13+#define R_CRIS_32_GOT		14+#define R_CRIS_16_GOTPLT	15+#define R_CRIS_32_GOTPLT	16+#define R_CRIS_32_GOTREL	17+#define R_CRIS_32_PLT_GOTREL	18+#define R_CRIS_32_PLT_PCREL	19++#define R_CRIS_NUM		20++++#define R_X86_64_NONE		0+#define R_X86_64_64		1+#define R_X86_64_PC32		2+#define R_X86_64_GOT32		3+#define R_X86_64_PLT32		4+#define R_X86_64_COPY		5+#define R_X86_64_GLOB_DAT	6+#define R_X86_64_JUMP_SLOT	7+#define R_X86_64_RELATIVE	8+#define R_X86_64_GOTPCREL	9++#define R_X86_64_32		10+#define R_X86_64_32S		11+#define R_X86_64_16		12+#define R_X86_64_PC16		13+#define R_X86_64_8		14+#define R_X86_64_PC8		15+#define R_X86_64_DTPMOD64	16+#define R_X86_64_DTPOFF64	17+#define R_X86_64_TPOFF64	18+#define R_X86_64_TLSGD		19++#define R_X86_64_TLSLD		20++#define R_X86_64_DTPOFF32	21+#define R_X86_64_GOTTPOFF	22++#define R_X86_64_TPOFF32	23+#define R_X86_64_PC64		24+#define R_X86_64_GOTOFF64	25+#define R_X86_64_GOTPC32	26+#define R_X86_64_GOT64		27+#define R_X86_64_GOTPCREL64	28+#define R_X86_64_GOTPC64	29+#define R_X86_64_GOTPLT64	30+#define R_X86_64_PLTOFF64	31+#define R_X86_64_SIZE32		32+#define R_X86_64_SIZE64		33++#define R_X86_64_GOTPC32_TLSDESC 34+#define R_X86_64_TLSDESC_CALL   35++#define R_X86_64_TLSDESC        36+#define R_X86_64_IRELATIVE	37+#define R_X86_64_RELATIVE64	38+#define R_X86_64_GOTPCRELX	41+#define R_X86_64_REX_GOTPCRELX	42+#define R_X86_64_NUM		43++++#define R_MN10300_NONE		0+#define R_MN10300_32		1+#define R_MN10300_16		2+#define R_MN10300_8		3+#define R_MN10300_PCREL32	4+#define R_MN10300_PCREL16	5+#define R_MN10300_PCREL8	6+#define R_MN10300_GNU_VTINHERIT	7+#define R_MN10300_GNU_VTENTRY	8+#define R_MN10300_24		9+#define R_MN10300_GOTPC32	10+#define R_MN10300_GOTPC16	11+#define R_MN10300_GOTOFF32	12+#define R_MN10300_GOTOFF24	13+#define R_MN10300_GOTOFF16	14+#define R_MN10300_PLT32		15+#define R_MN10300_PLT16		16+#define R_MN10300_GOT32		17+#define R_MN10300_GOT24		18+#define R_MN10300_GOT16		19+#define R_MN10300_COPY		20+#define R_MN10300_GLOB_DAT	21+#define R_MN10300_JMP_SLOT	22+#define R_MN10300_RELATIVE	23++#define R_MN10300_NUM		24++++#define R_M32R_NONE		0+#define R_M32R_16		1+#define R_M32R_32		2+#define R_M32R_24		3+#define R_M32R_10_PCREL		4+#define R_M32R_18_PCREL		5+#define R_M32R_26_PCREL		6+#define R_M32R_HI16_ULO		7+#define R_M32R_HI16_SLO		8+#define R_M32R_LO16		9+#define R_M32R_SDA16		10+#define R_M32R_GNU_VTINHERIT	11+#define R_M32R_GNU_VTENTRY	12++#define R_M32R_16_RELA		33+#define R_M32R_32_RELA		34+#define R_M32R_24_RELA		35+#define R_M32R_10_PCREL_RELA	36+#define R_M32R_18_PCREL_RELA	37+#define R_M32R_26_PCREL_RELA	38+#define R_M32R_HI16_ULO_RELA	39+#define R_M32R_HI16_SLO_RELA	40+#define R_M32R_LO16_RELA	41+#define R_M32R_SDA16_RELA	42+#define R_M32R_RELA_GNU_VTINHERIT	43+#define R_M32R_RELA_GNU_VTENTRY	44+#define R_M32R_REL32		45++#define R_M32R_GOT24		48+#define R_M32R_26_PLTREL	49+#define R_M32R_COPY		50+#define R_M32R_GLOB_DAT		51+#define R_M32R_JMP_SLOT		52+#define R_M32R_RELATIVE		53+#define R_M32R_GOTOFF		54+#define R_M32R_GOTPC24		55+#define R_M32R_GOT16_HI_ULO	56++#define R_M32R_GOT16_HI_SLO	57++#define R_M32R_GOT16_LO		58+#define R_M32R_GOTPC_HI_ULO	59++#define R_M32R_GOTPC_HI_SLO	60++#define R_M32R_GOTPC_LO		61++#define R_M32R_GOTOFF_HI_ULO	62++#define R_M32R_GOTOFF_HI_SLO	63++#define R_M32R_GOTOFF_LO	64+#define R_M32R_NUM		256++#define R_MICROBLAZE_NONE 0+#define R_MICROBLAZE_32 1+#define R_MICROBLAZE_32_PCREL 2+#define R_MICROBLAZE_64_PCREL 3+#define R_MICROBLAZE_32_PCREL_LO 4+#define R_MICROBLAZE_64 5+#define R_MICROBLAZE_32_LO 6+#define R_MICROBLAZE_SRO32 7+#define R_MICROBLAZE_SRW32 8+#define R_MICROBLAZE_64_NONE 9+#define R_MICROBLAZE_32_SYM_OP_SYM 10+#define R_MICROBLAZE_GNU_VTINHERIT 11+#define R_MICROBLAZE_GNU_VTENTRY 12+#define R_MICROBLAZE_GOTPC_64 13+#define R_MICROBLAZE_GOT_64 14+#define R_MICROBLAZE_PLT_64 15+#define R_MICROBLAZE_REL 16+#define R_MICROBLAZE_JUMP_SLOT 17+#define R_MICROBLAZE_GLOB_DAT 18+#define R_MICROBLAZE_GOTOFF_64 19+#define R_MICROBLAZE_GOTOFF_32 20+#define R_MICROBLAZE_COPY 21+#define R_MICROBLAZE_TLS 22+#define R_MICROBLAZE_TLSGD 23+#define R_MICROBLAZE_TLSLD 24+#define R_MICROBLAZE_TLSDTPMOD32 25+#define R_MICROBLAZE_TLSDTPREL32 26+#define R_MICROBLAZE_TLSDTPREL64 27+#define R_MICROBLAZE_TLSGOTTPREL32 28+#define R_MICROBLAZE_TLSTPREL32	 29++#define DT_NIOS2_GP             0x70000002++#define R_NIOS2_NONE		0+#define R_NIOS2_S16		1+#define R_NIOS2_U16		2+#define R_NIOS2_PCREL16		3+#define R_NIOS2_CALL26		4+#define R_NIOS2_IMM5		5+#define R_NIOS2_CACHE_OPX	6+#define R_NIOS2_IMM6		7+#define R_NIOS2_IMM8		8+#define R_NIOS2_HI16		9+#define R_NIOS2_LO16		10+#define R_NIOS2_HIADJ16		11+#define R_NIOS2_BFD_RELOC_32	12+#define R_NIOS2_BFD_RELOC_16	13+#define R_NIOS2_BFD_RELOC_8	14+#define R_NIOS2_GPREL		15+#define R_NIOS2_GNU_VTINHERIT	16+#define R_NIOS2_GNU_VTENTRY	17+#define R_NIOS2_UJMP		18+#define R_NIOS2_CJMP		19+#define R_NIOS2_CALLR		20+#define R_NIOS2_ALIGN		21+#define R_NIOS2_GOT16		22+#define R_NIOS2_CALL16		23+#define R_NIOS2_GOTOFF_LO	24+#define R_NIOS2_GOTOFF_HA	25+#define R_NIOS2_PCREL_LO	26+#define R_NIOS2_PCREL_HA	27+#define R_NIOS2_TLS_GD16	28+#define R_NIOS2_TLS_LDM16	29+#define R_NIOS2_TLS_LDO16	30+#define R_NIOS2_TLS_IE16	31+#define R_NIOS2_TLS_LE16	32+#define R_NIOS2_TLS_DTPMOD	33+#define R_NIOS2_TLS_DTPREL	34+#define R_NIOS2_TLS_TPREL	35+#define R_NIOS2_COPY		36+#define R_NIOS2_GLOB_DAT	37+#define R_NIOS2_JUMP_SLOT	38+#define R_NIOS2_RELATIVE	39+#define R_NIOS2_GOTOFF		40+#define R_NIOS2_CALL26_NOAT	41+#define R_NIOS2_GOT_LO		42+#define R_NIOS2_GOT_HA		43+#define R_NIOS2_CALL_LO		44+#define R_NIOS2_CALL_HA		45++#define R_OR1K_NONE		0+#define R_OR1K_32		1+#define R_OR1K_16		2+#define R_OR1K_8		3+#define R_OR1K_LO_16_IN_INSN	4+#define R_OR1K_HI_16_IN_INSN	5+#define R_OR1K_INSN_REL_26	6+#define R_OR1K_GNU_VTENTRY	7+#define R_OR1K_GNU_VTINHERIT	8+#define R_OR1K_32_PCREL		9+#define R_OR1K_16_PCREL		10+#define R_OR1K_8_PCREL		11+#define R_OR1K_GOTPC_HI16	12+#define R_OR1K_GOTPC_LO16	13+#define R_OR1K_GOT16		14+#define R_OR1K_PLT26		15+#define R_OR1K_GOTOFF_HI16	16+#define R_OR1K_GOTOFF_LO16	17+#define R_OR1K_COPY		18+#define R_OR1K_GLOB_DAT		19+#define R_OR1K_JMP_SLOT		20+#define R_OR1K_RELATIVE		21+#define R_OR1K_TLS_GD_HI16	22+#define R_OR1K_TLS_GD_LO16	23+#define R_OR1K_TLS_LDM_HI16	24+#define R_OR1K_TLS_LDM_LO16	25+#define R_OR1K_TLS_LDO_HI16	26+#define R_OR1K_TLS_LDO_LO16	27+#define R_OR1K_TLS_IE_HI16	28+#define R_OR1K_TLS_IE_LO16	29+#define R_OR1K_TLS_LE_HI16	30+#define R_OR1K_TLS_LE_LO16	31+#define R_OR1K_TLS_TPOFF	32+#define R_OR1K_TLS_DTPOFF	33+#define R_OR1K_TLS_DTPMOD	34++#define R_BPF_NONE		0+#define R_BPF_MAP_FD		1++#define R_RISCV_NONE            0+#define R_RISCV_32              1+#define R_RISCV_64              2+#define R_RISCV_RELATIVE        3+#define R_RISCV_COPY            4+#define R_RISCV_JUMP_SLOT       5+#define R_RISCV_TLS_DTPMOD32    6+#define R_RISCV_TLS_DTPMOD64    7+#define R_RISCV_TLS_DTPREL32    8+#define R_RISCV_TLS_DTPREL64    9+#define R_RISCV_TLS_TPREL32     10+#define R_RISCV_TLS_TPREL64     11+#define R_RISCV_TLSDESC         12++#define R_RISCV_BRANCH          16+#define R_RISCV_JAL             17+#define R_RISCV_CALL            18+#define R_RISCV_CALL_PLT        19+#define R_RISCV_GOT_HI20        20+#define R_RISCV_TLS_GOT_HI20    21+#define R_RISCV_TLS_GD_HI20     22+#define R_RISCV_PCREL_HI20      23+#define R_RISCV_PCREL_LO12_I    24+#define R_RISCV_PCREL_LO12_S    25+#define R_RISCV_HI20            26+#define R_RISCV_LO12_I          27+#define R_RISCV_LO12_S          28+#define R_RISCV_TPREL_HI20      29+#define R_RISCV_TPREL_LO12_I    30+#define R_RISCV_TPREL_LO12_S    31+#define R_RISCV_TPREL_ADD       32+#define R_RISCV_ADD8            33+#define R_RISCV_ADD16           34+#define R_RISCV_ADD32           35+#define R_RISCV_ADD64           36+#define R_RISCV_SUB8            37+#define R_RISCV_SUB16           38+#define R_RISCV_SUB32           39+#define R_RISCV_SUB64           40+#define R_RISCV_GOT32_PCREL     41+#define R_RISCV_ALIGN           43+#define R_RISCV_RVC_BRANCH      44+#define R_RISCV_RVC_JUMP        45+#define R_RISCV_RVC_LUI         46+#define R_RISCV_RELAX           51+#define R_RISCV_SUB6            52+#define R_RISCV_SET6            53+#define R_RISCV_SET8            54+#define R_RISCV_SET16           55+#define R_RISCV_SET32           56+#define R_RISCV_32_PCREL        57+#define R_RISCV_IRELATIVE       58+#define R_RISCV_PLT32           59+#define R_RISCV_SET_ULEB128     60+#define R_RISCV_SUB_ULEB128     61+#define R_RISCV_TLSDESC_HI20    62+#define R_RISCV_TLSDESC_LOAD_LO12 63+#define R_RISCV_TLSDESC_ADD_LO12  64+#define R_RISCV_TLSDESC_CALL    65++#define EF_LARCH_ABI_MODIFIER_MASK    0x07+#define EF_LARCH_ABI_SOFT_FLOAT       0x01+#define EF_LARCH_ABI_SINGLE_FLOAT     0x02+#define EF_LARCH_ABI_DOUBLE_FLOAT     0x03+#define EF_LARCH_OBJABI_V1            0x40++#define R_LARCH_NONE                        0+#define R_LARCH_32                          1+#define R_LARCH_64                          2+#define R_LARCH_RELATIVE                    3+#define R_LARCH_COPY                        4+#define R_LARCH_JUMP_SLOT                   5+#define R_LARCH_TLS_DTPMOD32                6+#define R_LARCH_TLS_DTPMOD64                7+#define R_LARCH_TLS_DTPREL32                8+#define R_LARCH_TLS_DTPREL64                9+#define R_LARCH_TLS_TPREL32                 10+#define R_LARCH_TLS_TPREL64                 11+#define R_LARCH_IRELATIVE                   12+#define R_LARCH_MARK_LA                     20+#define R_LARCH_MARK_PCREL                  21+#define R_LARCH_SOP_PUSH_PCREL              22+#define R_LARCH_SOP_PUSH_ABSOLUTE           23+#define R_LARCH_SOP_PUSH_DUP                24+#define R_LARCH_SOP_PUSH_GPREL              25+#define R_LARCH_SOP_PUSH_TLS_TPREL          26+#define R_LARCH_SOP_PUSH_TLS_GOT            27+#define R_LARCH_SOP_PUSH_TLS_GD             28+#define R_LARCH_SOP_PUSH_PLT_PCREL          29+#define R_LARCH_SOP_ASSERT                  30+#define R_LARCH_SOP_NOT                     31+#define R_LARCH_SOP_SUB                     32+#define R_LARCH_SOP_SL                      33+#define R_LARCH_SOP_SR                      34+#define R_LARCH_SOP_ADD                     35+#define R_LARCH_SOP_AND                     36+#define R_LARCH_SOP_IF_ELSE                 37+#define R_LARCH_SOP_POP_32_S_10_5           38+#define R_LARCH_SOP_POP_32_U_10_12          39+#define R_LARCH_SOP_POP_32_S_10_12          40+#define R_LARCH_SOP_POP_32_S_10_16          41+#define R_LARCH_SOP_POP_32_S_10_16_S2       42+#define R_LARCH_SOP_POP_32_S_5_20           43+#define R_LARCH_SOP_POP_32_S_0_5_10_16_S2   44+#define R_LARCH_SOP_POP_32_S_0_10_10_16_S2  45+#define R_LARCH_SOP_POP_32_U                46+#define R_LARCH_ADD8                        47+#define R_LARCH_ADD16                       48+#define R_LARCH_ADD24                       49+#define R_LARCH_ADD32                       50+#define R_LARCH_ADD64                       51+#define R_LARCH_SUB8                        52+#define R_LARCH_SUB16                       53+#define R_LARCH_SUB24                       54+#define R_LARCH_SUB32                       55+#define R_LARCH_SUB64                       56+#define R_LARCH_GNU_VTINHERIT               57+#define R_LARCH_GNU_VTENTRY                 58+#define R_LARCH_B16                         64+#define R_LARCH_B21                         65+#define R_LARCH_B26                         66+#define R_LARCH_ABS_HI20                    67+#define R_LARCH_ABS_LO12                    68+#define R_LARCH_ABS64_LO20                  69+#define R_LARCH_ABS64_HI12                  70+#define R_LARCH_PCALA_HI20                  71+#define R_LARCH_PCALA_LO12                  72+#define R_LARCH_PCALA64_LO20                73+#define R_LARCH_PCALA64_HI12                74+#define R_LARCH_GOT_PC_HI20                 75+#define R_LARCH_GOT_PC_LO12                 76+#define R_LARCH_GOT64_PC_LO20               77+#define R_LARCH_GOT64_PC_HI12               78+#define R_LARCH_GOT_HI20                    79+#define R_LARCH_GOT_LO12                    80+#define R_LARCH_GOT64_LO20                  81+#define R_LARCH_GOT64_HI12                  82+#define R_LARCH_TLS_LE_HI20                 83+#define R_LARCH_TLS_LE_LO12                 84+#define R_LARCH_TLS_LE64_LO20               85+#define R_LARCH_TLS_LE64_HI12               86+#define R_LARCH_TLS_IE_PC_HI20              87+#define R_LARCH_TLS_IE_PC_LO12              88+#define R_LARCH_TLS_IE64_PC_LO20            89+#define R_LARCH_TLS_IE64_PC_HI12            90+#define R_LARCH_TLS_IE_HI20                 91+#define R_LARCH_TLS_IE_LO12                 92+#define R_LARCH_TLS_IE64_LO20               93+#define R_LARCH_TLS_IE64_HI12               94+#define R_LARCH_TLS_LD_PC_HI20              95+#define R_LARCH_TLS_LD_HI20                 96+#define R_LARCH_TLS_GD_PC_HI20              97+#define R_LARCH_TLS_GD_HI20                 98+#define R_LARCH_32_PCREL                    99+#define R_LARCH_RELAX                       100++#ifdef __cplusplus+}+#endif+++#endif
+ musl-include/arm/endian.h view
@@ -0,0 +1,80 @@+#ifndef _ENDIAN_H+#define _ENDIAN_H++#include <features.h>++#define __NEED_uint16_t+#define __NEED_uint32_t+#define __NEED_uint64_t++#include <bits/alltypes.h>++#define __PDP_ENDIAN 3412++#define BIG_ENDIAN __BIG_ENDIAN+#define LITTLE_ENDIAN __LITTLE_ENDIAN+#define PDP_ENDIAN __PDP_ENDIAN+#define BYTE_ORDER __BYTE_ORDER++static __inline uint16_t __bswap16(uint16_t __x)+{+	return __x<<8 | __x>>8;+}++static __inline uint32_t __bswap32(uint32_t __x)+{+	return __x>>24 | __x>>8&0xff00 | __x<<8&0xff0000 | __x<<24;+}++static __inline uint64_t __bswap64(uint64_t __x)+{+	return __bswap32(__x)+0ULL<<32 | __bswap32(__x>>32);+}++#if __BYTE_ORDER == __LITTLE_ENDIAN+#define htobe16(x) __bswap16(x)+#define be16toh(x) __bswap16(x)+#define htobe32(x) __bswap32(x)+#define be32toh(x) __bswap32(x)+#define htobe64(x) __bswap64(x)+#define be64toh(x) __bswap64(x)+#define htole16(x) (uint16_t)(x)+#define le16toh(x) (uint16_t)(x)+#define htole32(x) (uint32_t)(x)+#define le32toh(x) (uint32_t)(x)+#define htole64(x) (uint64_t)(x)+#define le64toh(x) (uint64_t)(x)+#else+#define htobe16(x) (uint16_t)(x)+#define be16toh(x) (uint16_t)(x)+#define htobe32(x) (uint32_t)(x)+#define be32toh(x) (uint32_t)(x)+#define htobe64(x) (uint64_t)(x)+#define be64toh(x) (uint64_t)(x)+#define htole16(x) __bswap16(x)+#define le16toh(x) __bswap16(x)+#define htole32(x) __bswap32(x)+#define le32toh(x) __bswap32(x)+#define htole64(x) __bswap64(x)+#define le64toh(x) __bswap64(x)+#endif++#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE)+#if __BYTE_ORDER == __LITTLE_ENDIAN+#define betoh16(x) __bswap16(x)+#define betoh32(x) __bswap32(x)+#define betoh64(x) __bswap64(x)+#define letoh16(x) (uint16_t)(x)+#define letoh32(x) (uint32_t)(x)+#define letoh64(x) (uint64_t)(x)+#else+#define betoh16(x) (uint16_t)(x)+#define betoh32(x) (uint32_t)(x)+#define betoh64(x) (uint64_t)(x)+#define letoh16(x) __bswap16(x)+#define letoh32(x) __bswap32(x)+#define letoh64(x) __bswap64(x)+#endif+#endif++#endif
+ musl-include/arm/err.h view
@@ -0,0 +1,25 @@+#ifndef _ERR_H+#define _ERR_H++#include <features.h>+#include <stdarg.h>++#ifdef __cplusplus+extern "C" {+#endif++void warn(const char *, ...);+void vwarn(const char *, va_list);+void warnx(const char *, ...);+void vwarnx(const char *, va_list);++_Noreturn void err(int, const char *, ...);+_Noreturn void verr(int, const char *, va_list);+_Noreturn void errx(int, const char *, ...);+_Noreturn void verrx(int, const char *, va_list);++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/arm/errno.h view
@@ -0,0 +1,27 @@+#ifndef	_ERRNO_H+#define _ERRNO_H++#ifdef __cplusplus+extern "C" {+#endif++#include <features.h>++#include <bits/errno.h>++#ifdef __GNUC__+__attribute__((const))+#endif+int *__errno_location(void);+#define errno (*__errno_location())++#ifdef _GNU_SOURCE+extern char *program_invocation_short_name, *program_invocation_name;+#endif++#ifdef __cplusplus+}+#endif++#endif+
+ musl-include/arm/fcntl.h view
@@ -0,0 +1,218 @@+#ifndef	_FCNTL_H+#define	_FCNTL_H++#ifdef __cplusplus+extern "C" {+#endif++#include <features.h>++#define __NEED_off_t+#define __NEED_pid_t+#define __NEED_mode_t++#ifdef _GNU_SOURCE+#define __NEED_size_t+#define __NEED_ssize_t+#define __NEED_struct_iovec+#endif++#include <bits/alltypes.h>++#include <bits/fcntl.h>++struct flock {+	short l_type;+	short l_whence;+	off_t l_start;+	off_t l_len;+	pid_t l_pid;+};++int creat(const char *, mode_t);+int fcntl(int, int, ...);+int open(const char *, int, ...);+int openat(int, const char *, int, ...);+int posix_fadvise(int, off_t, off_t, int);+int posix_fallocate(int, off_t, off_t);++#define O_SEARCH   O_PATH+#define O_EXEC     O_PATH+#define O_TTY_INIT 0++#define O_ACCMODE (03|O_SEARCH)+#define O_RDONLY  00+#define O_WRONLY  01+#define O_RDWR    02++#define F_OFD_GETLK 36+#define F_OFD_SETLK 37+#define F_OFD_SETLKW 38++#define F_DUPFD_CLOEXEC 1030++#define F_RDLCK 0+#define F_WRLCK 1+#define F_UNLCK 2++#define FD_CLOEXEC 1++#define AT_FDCWD (-100)+#define AT_SYMLINK_NOFOLLOW 0x100+#define AT_REMOVEDIR 0x200+#define AT_SYMLINK_FOLLOW 0x400+#define AT_EACCESS 0x200++#define POSIX_FADV_NORMAL     0+#define POSIX_FADV_RANDOM     1+#define POSIX_FADV_SEQUENTIAL 2+#define POSIX_FADV_WILLNEED   3+#ifndef POSIX_FADV_DONTNEED+#define POSIX_FADV_DONTNEED   4+#define POSIX_FADV_NOREUSE    5+#endif++#undef SEEK_SET+#undef SEEK_CUR+#undef SEEK_END+#define SEEK_SET 0+#define SEEK_CUR 1+#define SEEK_END 2++#ifndef S_IRUSR+#define S_ISUID 04000+#define S_ISGID 02000+#define S_ISVTX 01000+#define S_IRUSR 0400+#define S_IWUSR 0200+#define S_IXUSR 0100+#define S_IRWXU 0700+#define S_IRGRP 0040+#define S_IWGRP 0020+#define S_IXGRP 0010+#define S_IRWXG 0070+#define S_IROTH 0004+#define S_IWOTH 0002+#define S_IXOTH 0001+#define S_IRWXO 0007+#endif++#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE)+#define AT_NO_AUTOMOUNT 0x800+#define AT_EMPTY_PATH 0x1000+#define AT_STATX_SYNC_TYPE 0x6000+#define AT_STATX_SYNC_AS_STAT 0x0000+#define AT_STATX_FORCE_SYNC 0x2000+#define AT_STATX_DONT_SYNC 0x4000+#define AT_RECURSIVE 0x8000++#define FAPPEND O_APPEND+#define FFSYNC O_SYNC+#define FASYNC O_ASYNC+#define FNONBLOCK O_NONBLOCK+#define FNDELAY O_NDELAY++#define F_OK 0+#define R_OK 4+#define W_OK 2+#define X_OK 1+#define F_ULOCK 0+#define F_LOCK  1+#define F_TLOCK 2+#define F_TEST  3++#define F_SETLEASE	1024+#define F_GETLEASE	1025+#define F_NOTIFY	1026+#define F_CANCELLK	1029+#define F_SETPIPE_SZ	1031+#define F_GETPIPE_SZ	1032+#define F_ADD_SEALS	1033+#define F_GET_SEALS	1034++#define F_SEAL_SEAL	0x0001+#define F_SEAL_SHRINK	0x0002+#define F_SEAL_GROW	0x0004+#define F_SEAL_WRITE	0x0008+#define F_SEAL_FUTURE_WRITE	0x0010++#define F_GET_RW_HINT		1035+#define F_SET_RW_HINT		1036+#define F_GET_FILE_RW_HINT	1037+#define F_SET_FILE_RW_HINT	1038++#define RWF_WRITE_LIFE_NOT_SET	0+#define RWH_WRITE_LIFE_NONE	1+#define RWH_WRITE_LIFE_SHORT	2+#define RWH_WRITE_LIFE_MEDIUM	3+#define RWH_WRITE_LIFE_LONG	4+#define RWH_WRITE_LIFE_EXTREME	5++#define DN_ACCESS	0x00000001+#define DN_MODIFY	0x00000002+#define DN_CREATE	0x00000004+#define DN_DELETE	0x00000008+#define DN_RENAME	0x00000010+#define DN_ATTRIB	0x00000020+#define DN_MULTISHOT	0x80000000++int lockf(int, int, off_t);+#endif++#if defined(_GNU_SOURCE)+#define F_OWNER_TID 0+#define F_OWNER_PID 1+#define F_OWNER_PGRP 2+#define F_OWNER_GID 2+struct file_handle {+	unsigned handle_bytes;+	int handle_type;+	unsigned char f_handle[];+};+struct f_owner_ex {+	int type;+	pid_t pid;+};+#define FALLOC_FL_KEEP_SIZE 1+#define FALLOC_FL_PUNCH_HOLE 2+#define MAX_HANDLE_SZ 128+#define SYNC_FILE_RANGE_WAIT_BEFORE 1+#define SYNC_FILE_RANGE_WRITE 2+#define SYNC_FILE_RANGE_WAIT_AFTER 4+#define SPLICE_F_MOVE 1+#define SPLICE_F_NONBLOCK 2+#define SPLICE_F_MORE 4+#define SPLICE_F_GIFT 8+int fallocate(int, int, off_t, off_t);+int name_to_handle_at(int, const char *, struct file_handle *, int *, int);+int open_by_handle_at(int, struct file_handle *, int);+ssize_t readahead(int, off_t, size_t);+int sync_file_range(int, off_t, off_t, unsigned);+ssize_t vmsplice(int, const struct iovec *, size_t, unsigned);+ssize_t splice(int, off_t *, int, off_t *, size_t, unsigned);+ssize_t tee(int, int, size_t, unsigned);+#define loff_t off_t+#endif++#if defined(_LARGEFILE64_SOURCE)+#define F_GETLK64 F_GETLK+#define F_SETLK64 F_SETLK+#define F_SETLKW64 F_SETLKW+#define flock64 flock+#define open64 open+#define openat64 openat+#define creat64 creat+#define lockf64 lockf+#define posix_fadvise64 posix_fadvise+#define posix_fallocate64 posix_fallocate+#define off64_t off_t+#if defined(_GNU_SOURCE)+#define fallocate64 fallocate+#endif+#endif++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/arm/features.h view
@@ -0,0 +1,40 @@+#ifndef _FEATURES_H+#define _FEATURES_H++#if defined(_ALL_SOURCE) && !defined(_GNU_SOURCE)+#define _GNU_SOURCE 1+#endif++#if defined(_DEFAULT_SOURCE) && !defined(_BSD_SOURCE)+#define _BSD_SOURCE 1+#endif++#if !defined(_POSIX_SOURCE) && !defined(_POSIX_C_SOURCE) \+ && !defined(_XOPEN_SOURCE) && !defined(_GNU_SOURCE) \+ && !defined(_BSD_SOURCE) && !defined(__STRICT_ANSI__)+#define _BSD_SOURCE 1+#define _XOPEN_SOURCE 700+#endif++#if __STDC_VERSION__ >= 199901L+#define __restrict restrict+#elif !defined(__GNUC__)+#define __restrict+#endif++#if __STDC_VERSION__ >= 199901L || defined(__cplusplus)+#define __inline inline+#elif !defined(__GNUC__)+#define __inline+#endif++#if __STDC_VERSION__ >= 201112L+#elif defined(__GNUC__)+#define _Noreturn __attribute__((__noreturn__))+#else+#define _Noreturn+#endif++#define __REDIR(x,y) __typeof__(x) x __asm__(#y)++#endif
+ musl-include/arm/fenv.h view
@@ -0,0 +1,28 @@+#ifndef _FENV_H+#define _FENV_H++#ifdef __cplusplus+extern "C" {+#endif++#include <bits/fenv.h>++int feclearexcept(int);+int fegetexceptflag(fexcept_t *, int);+int feraiseexcept(int);+int fesetexceptflag(const fexcept_t *, int);+int fetestexcept(int);++int fegetround(void);+int fesetround(int);++int fegetenv(fenv_t *);+int feholdexcept(fenv_t *);+int fesetenv(const fenv_t *);+int feupdateenv(const fenv_t *);++#ifdef __cplusplus+}+#endif+#endif+
+ musl-include/arm/float.h view
@@ -0,0 +1,52 @@+#ifndef _FLOAT_H+#define _FLOAT_H++#ifdef __cplusplus+extern "C" {+#endif++int __flt_rounds(void);+#define FLT_ROUNDS (__flt_rounds())++#define FLT_RADIX 2++#define FLT_TRUE_MIN 1.40129846432481707092e-45F+#define FLT_MIN 1.17549435082228750797e-38F+#define FLT_MAX 3.40282346638528859812e+38F+#define FLT_EPSILON 1.1920928955078125e-07F++#define FLT_MANT_DIG 24+#define FLT_MIN_EXP (-125)+#define FLT_MAX_EXP 128+#define FLT_HAS_SUBNORM 1++#define FLT_DIG 6+#define FLT_DECIMAL_DIG 9+#define FLT_MIN_10_EXP (-37)+#define FLT_MAX_10_EXP 38++#define DBL_TRUE_MIN 4.94065645841246544177e-324+#define DBL_MIN 2.22507385850720138309e-308+#define DBL_MAX 1.79769313486231570815e+308+#define DBL_EPSILON 2.22044604925031308085e-16++#define DBL_MANT_DIG 53+#define DBL_MIN_EXP (-1021)+#define DBL_MAX_EXP 1024+#define DBL_HAS_SUBNORM 1++#define DBL_DIG 15+#define DBL_DECIMAL_DIG 17+#define DBL_MIN_10_EXP (-307)+#define DBL_MAX_10_EXP 308++#define LDBL_HAS_SUBNORM 1+#define LDBL_DECIMAL_DIG DECIMAL_DIG++#include <bits/float.h>++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/arm/fmtmsg.h view
@@ -0,0 +1,47 @@+#ifndef _FMTMSG_H+#define _FMTMSG_H++#ifdef __cplusplus+extern "C" {+#endif++#define MM_HARD		1+#define MM_SOFT		2+#define MM_FIRM		4++#define MM_APPL		8+#define MM_UTIL		16+#define MM_OPSYS	32++#define MM_RECOVER	64+#define MM_NRECOV	128++#define MM_PRINT	256+#define MM_CONSOLE	512++#define MM_NULLMC	0L++#define MM_HALT		1+#define MM_ERROR	2+#define MM_WARNING	3+#define MM_INFO		4+#define MM_NOSEV	0++#define MM_OK		0+#define MM_NOTOK	(-1)+#define MM_NOMSG	1+#define MM_NOCON	4++#define MM_NULLLBL	((char*)0)+#define MM_NULLTXT	((char*)0)+#define MM_NULLACT	((char*)0)+#define MM_NULLTAG	((char*)0)+#define MM_NULLSEV	0++int fmtmsg(long, const char *, int, const char *, const char *, const char *);++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/arm/fnmatch.h view
@@ -0,0 +1,24 @@+#ifndef	_FNMATCH_H+#define	_FNMATCH_H++#ifdef __cplusplus+extern "C" {+#endif++#define	FNM_PATHNAME 0x1+#define	FNM_NOESCAPE 0x2+#define	FNM_PERIOD   0x4+#define	FNM_LEADING_DIR	0x8           +#define	FNM_CASEFOLD	0x10+#define	FNM_FILE_NAME	FNM_PATHNAME++#define	FNM_NOMATCH 1+#define FNM_NOSYS   (-1)++int fnmatch(const char *, const char *, int);++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/arm/ftw.h view
@@ -0,0 +1,41 @@+#ifndef _FTW_H+#define	_FTW_H++#ifdef __cplusplus+extern "C" {+#endif++#include <features.h>+#include <sys/stat.h>++#define FTW_F   1+#define FTW_D   2+#define FTW_DNR 3+#define FTW_NS  4+#define FTW_SL  5+#define FTW_DP  6+#define FTW_SLN 7++#define FTW_PHYS  1+#define FTW_MOUNT 2+#define FTW_CHDIR 4+#define FTW_DEPTH 8++struct FTW {+	int base;+	int level;+};++int ftw(const char *, int (*)(const char *, const struct stat *, int), int);+int nftw(const char *, int (*)(const char *, const struct stat *, int, struct FTW *), int, int);++#if defined(_LARGEFILE64_SOURCE)+#define ftw64 ftw+#define nftw64 nftw+#endif++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/arm/getopt.h view
@@ -0,0 +1,30 @@+#ifndef _GETOPT_H+#define _GETOPT_H++#ifdef __cplusplus+extern "C" {+#endif++int getopt(int, char * const [], const char *);+extern char *optarg;+extern int optind, opterr, optopt, optreset;++struct option {+	const char *name;+	int has_arg;+	int *flag;+	int val;+};++int getopt_long(int, char *const *, const char *, const struct option *, int *);+int getopt_long_only(int, char *const *, const char *, const struct option *, int *);++#define no_argument        0+#define required_argument  1+#define optional_argument  2++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/arm/glob.h view
@@ -0,0 +1,52 @@+#ifndef	_GLOB_H+#define	_GLOB_H++#ifdef __cplusplus+extern "C" {+#endif++#include <features.h>++#define __NEED_size_t++#include <bits/alltypes.h>++typedef struct {+	size_t gl_pathc;+	char **gl_pathv;+	size_t gl_offs;+	int __dummy1;+	void *__dummy2[5];+} glob_t;++int  glob(const char *__restrict, int, int (*)(const char *, int), glob_t *__restrict);+void globfree(glob_t *);++#define GLOB_ERR      0x01+#define GLOB_MARK     0x02+#define GLOB_NOSORT   0x04+#define GLOB_DOOFFS   0x08+#define GLOB_NOCHECK  0x10+#define GLOB_APPEND   0x20+#define GLOB_NOESCAPE 0x40+#define	GLOB_PERIOD   0x80++#define GLOB_TILDE       0x1000+#define GLOB_TILDE_CHECK 0x4000++#define GLOB_NOSPACE 1+#define GLOB_ABORTED 2+#define GLOB_NOMATCH 3+#define GLOB_NOSYS   4++#if defined(_LARGEFILE64_SOURCE)+#define glob64 glob+#define globfree64 globfree+#define glob64_t glob_t+#endif++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/arm/grp.h view
@@ -0,0 +1,53 @@+#ifndef	_GRP_H+#define	_GRP_H++#ifdef __cplusplus+extern "C" {+#endif++#include <features.h>++#define __NEED_size_t+#define __NEED_gid_t++#ifdef _GNU_SOURCE+#define __NEED_FILE+#endif++#include <bits/alltypes.h>++struct group {+	char *gr_name;+	char *gr_passwd;+	gid_t gr_gid;+	char **gr_mem;+};++struct group  *getgrgid(gid_t);+struct group  *getgrnam(const char *);++int getgrgid_r(gid_t, struct group *, char *, size_t, struct group **);+int getgrnam_r(const char *, struct group *, char *, size_t, struct group **);++#if defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) || defined(_BSD_SOURCE)+struct group  *getgrent(void);+void           endgrent(void);+void           setgrent(void);+#endif++#ifdef _GNU_SOURCE+struct group  *fgetgrent(FILE *);+int putgrent(const struct group *, FILE *);+#endif++#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE)+int getgrouplist(const char *, gid_t, gid_t *, int *);+int setgroups(size_t, const gid_t *);+int initgroups(const char *, gid_t);+#endif++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/arm/iconv.h view
@@ -0,0 +1,24 @@+#ifndef _ICONV_H+#define _ICONV_H++#ifdef __cplusplus+extern "C" {+#endif++#include <features.h>++#define __NEED_size_t++#include <bits/alltypes.h>++typedef void *iconv_t;++iconv_t iconv_open(const char *, const char *);+size_t iconv(iconv_t, char **__restrict, size_t *__restrict, char **__restrict, size_t *__restrict);+int iconv_close(iconv_t);++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/arm/ifaddrs.h view
@@ -0,0 +1,35 @@+#ifndef _IFADDRS_H+#define _IFADDRS_H++#ifdef __cplusplus+extern "C" {+#endif++#include <features.h>+#include <netinet/in.h>+#include <sys/socket.h>++struct ifaddrs {+	struct ifaddrs *ifa_next;+	char *ifa_name;+	unsigned ifa_flags;+	struct sockaddr *ifa_addr;+	struct sockaddr *ifa_netmask;+	union {+		struct sockaddr *ifu_broadaddr;+		struct sockaddr *ifu_dstaddr;+	} ifa_ifu;+	void *ifa_data;+};+#define ifa_broadaddr ifa_ifu.ifu_broadaddr+#define ifa_dstaddr ifa_ifu.ifu_dstaddr++void freeifaddrs(struct ifaddrs *);+int getifaddrs(struct ifaddrs **);++#ifdef __cplusplus+}+#endif++#endif+
+ musl-include/arm/inttypes.h view
@@ -0,0 +1,229 @@+#ifndef _INTTYPES_H+#define _INTTYPES_H++#ifdef __cplusplus+extern "C" {+#endif++#include <features.h>+#include <stdint.h>++#define __NEED_wchar_t+#include <bits/alltypes.h>++typedef struct { intmax_t quot, rem; } imaxdiv_t;++intmax_t imaxabs(intmax_t);+imaxdiv_t imaxdiv(intmax_t, intmax_t);++intmax_t strtoimax(const char *__restrict, char **__restrict, int);+uintmax_t strtoumax(const char *__restrict, char **__restrict, int);++intmax_t wcstoimax(const wchar_t *__restrict, wchar_t **__restrict, int);+uintmax_t wcstoumax(const wchar_t *__restrict, wchar_t **__restrict, int);++#if UINTPTR_MAX == UINT64_MAX+#define __PRI64  "l"+#define __PRIPTR "l"+#else+#define __PRI64  "ll"+#define __PRIPTR ""+#endif++#define PRId8  "d"+#define PRId16 "d"+#define PRId32 "d"+#define PRId64 __PRI64 "d"++#define PRIdLEAST8  "d"+#define PRIdLEAST16 "d"+#define PRIdLEAST32 "d"+#define PRIdLEAST64 __PRI64 "d"++#define PRIdFAST8  "d"+#define PRIdFAST16 "d"+#define PRIdFAST32 "d"+#define PRIdFAST64 __PRI64 "d"++#define PRIi8  "i"+#define PRIi16 "i"+#define PRIi32 "i"+#define PRIi64 __PRI64 "i"++#define PRIiLEAST8  "i"+#define PRIiLEAST16 "i"+#define PRIiLEAST32 "i"+#define PRIiLEAST64 __PRI64 "i"++#define PRIiFAST8  "i"+#define PRIiFAST16 "i"+#define PRIiFAST32 "i"+#define PRIiFAST64 __PRI64 "i"++#define PRIo8  "o"+#define PRIo16 "o"+#define PRIo32 "o"+#define PRIo64 __PRI64 "o"++#define PRIoLEAST8  "o"+#define PRIoLEAST16 "o"+#define PRIoLEAST32 "o"+#define PRIoLEAST64 __PRI64 "o"++#define PRIoFAST8  "o"+#define PRIoFAST16 "o"+#define PRIoFAST32 "o"+#define PRIoFAST64 __PRI64 "o"++#define PRIu8  "u"+#define PRIu16 "u"+#define PRIu32 "u"+#define PRIu64 __PRI64 "u"++#define PRIuLEAST8  "u"+#define PRIuLEAST16 "u"+#define PRIuLEAST32 "u"+#define PRIuLEAST64 __PRI64 "u"++#define PRIuFAST8  "u"+#define PRIuFAST16 "u"+#define PRIuFAST32 "u"+#define PRIuFAST64 __PRI64 "u"++#define PRIx8  "x"+#define PRIx16 "x"+#define PRIx32 "x"+#define PRIx64 __PRI64 "x"++#define PRIxLEAST8  "x"+#define PRIxLEAST16 "x"+#define PRIxLEAST32 "x"+#define PRIxLEAST64 __PRI64 "x"++#define PRIxFAST8  "x"+#define PRIxFAST16 "x"+#define PRIxFAST32 "x"+#define PRIxFAST64 __PRI64 "x"++#define PRIX8  "X"+#define PRIX16 "X"+#define PRIX32 "X"+#define PRIX64 __PRI64 "X"++#define PRIXLEAST8  "X"+#define PRIXLEAST16 "X"+#define PRIXLEAST32 "X"+#define PRIXLEAST64 __PRI64 "X"++#define PRIXFAST8  "X"+#define PRIXFAST16 "X"+#define PRIXFAST32 "X"+#define PRIXFAST64 __PRI64 "X"++#define PRIdMAX __PRI64 "d"+#define PRIiMAX __PRI64 "i"+#define PRIoMAX __PRI64 "o"+#define PRIuMAX __PRI64 "u"+#define PRIxMAX __PRI64 "x"+#define PRIXMAX __PRI64 "X"++#define PRIdPTR __PRIPTR "d"+#define PRIiPTR __PRIPTR "i"+#define PRIoPTR __PRIPTR "o"+#define PRIuPTR __PRIPTR "u"+#define PRIxPTR __PRIPTR "x"+#define PRIXPTR __PRIPTR "X"++#define SCNd8   "hhd"+#define SCNd16  "hd"+#define SCNd32  "d"+#define SCNd64  __PRI64 "d"++#define SCNdLEAST8  "hhd"+#define SCNdLEAST16 "hd"+#define SCNdLEAST32 "d"+#define SCNdLEAST64 __PRI64 "d"++#define SCNdFAST8  "hhd"+#define SCNdFAST16 "d"+#define SCNdFAST32 "d"+#define SCNdFAST64 __PRI64 "d"++#define SCNi8   "hhi"+#define SCNi16  "hi"+#define SCNi32  "i"+#define SCNi64  __PRI64 "i"++#define SCNiLEAST8  "hhi"+#define SCNiLEAST16 "hi"+#define SCNiLEAST32 "i"+#define SCNiLEAST64 __PRI64 "i"++#define SCNiFAST8  "hhi"+#define SCNiFAST16 "i"+#define SCNiFAST32 "i"+#define SCNiFAST64 __PRI64 "i"++#define SCNu8   "hhu"+#define SCNu16  "hu"+#define SCNu32  "u"+#define SCNu64  __PRI64 "u"++#define SCNuLEAST8  "hhu"+#define SCNuLEAST16 "hu"+#define SCNuLEAST32 "u"+#define SCNuLEAST64 __PRI64 "u"++#define SCNuFAST8 "hhu"+#define SCNuFAST16 "u"+#define SCNuFAST32 "u"+#define SCNuFAST64 __PRI64 "u"++#define SCNo8   "hho"+#define SCNo16  "ho"+#define SCNo32  "o"+#define SCNo64  __PRI64 "o"++#define SCNoLEAST8  "hho"+#define SCNoLEAST16 "ho"+#define SCNoLEAST32 "o"+#define SCNoLEAST64 __PRI64 "o"++#define SCNoFAST8  "hho"+#define SCNoFAST16 "o"+#define SCNoFAST32 "o"+#define SCNoFAST64 __PRI64 "o"++#define SCNx8   "hhx"+#define SCNx16  "hx"+#define SCNx32  "x"+#define SCNx64  __PRI64 "x"++#define SCNxLEAST8  "hhx"+#define SCNxLEAST16 "hx"+#define SCNxLEAST32 "x"+#define SCNxLEAST64 __PRI64 "x"++#define SCNxFAST8  "hhx"+#define SCNxFAST16 "x"+#define SCNxFAST32 "x"+#define SCNxFAST64 __PRI64 "x"++#define SCNdMAX __PRI64 "d"+#define SCNiMAX __PRI64 "i"+#define SCNoMAX __PRI64 "o"+#define SCNuMAX __PRI64 "u"+#define SCNxMAX __PRI64 "x"++#define SCNdPTR __PRIPTR "d"+#define SCNiPTR __PRIPTR "i"+#define SCNoPTR __PRIPTR "o"+#define SCNuPTR __PRIPTR "u"+#define SCNxPTR __PRIPTR "x"++#ifdef __cplusplus+}+#endif++#endif+
+ musl-include/arm/iso646.h view
@@ -0,0 +1,20 @@+#ifndef _ISO646_H+#define _ISO646_H++#ifndef __cplusplus++#define and    &&+#define and_eq &=+#define bitand &+#define bitor  |+#define compl  ~+#define not    !+#define not_eq !=+#define or     ||+#define or_eq  |=+#define xor    ^+#define xor_eq ^=++#endif++#endif
+ musl-include/arm/langinfo.h view
@@ -0,0 +1,98 @@+#ifndef _LANGINFO_H+#define _LANGINFO_H++#ifdef __cplusplus+extern "C" {+#endif++#include <features.h>+#include <nl_types.h>++#define __NEED_locale_t++#include <bits/alltypes.h>++#define ABDAY_1 0x20000+#define ABDAY_2 0x20001+#define ABDAY_3 0x20002+#define ABDAY_4 0x20003+#define ABDAY_5 0x20004+#define ABDAY_6 0x20005+#define ABDAY_7 0x20006++#define DAY_1 0x20007+#define DAY_2 0x20008+#define DAY_3 0x20009+#define DAY_4 0x2000A+#define DAY_5 0x2000B+#define DAY_6 0x2000C+#define DAY_7 0x2000D++#define ABMON_1 0x2000E+#define ABMON_2 0x2000F+#define ABMON_3 0x20010+#define ABMON_4 0x20011+#define ABMON_5 0x20012+#define ABMON_6 0x20013+#define ABMON_7 0x20014+#define ABMON_8 0x20015+#define ABMON_9 0x20016+#define ABMON_10 0x20017+#define ABMON_11 0x20018+#define ABMON_12 0x20019++#define MON_1 0x2001A+#define MON_2 0x2001B+#define MON_3 0x2001C+#define MON_4 0x2001D+#define MON_5 0x2001E+#define MON_6 0x2001F+#define MON_7 0x20020+#define MON_8 0x20021+#define MON_9 0x20022+#define MON_10 0x20023+#define MON_11 0x20024+#define MON_12 0x20025++#define AM_STR 0x20026+#define PM_STR 0x20027++#define D_T_FMT 0x20028+#define D_FMT 0x20029+#define T_FMT 0x2002A+#define T_FMT_AMPM 0x2002B++#define ERA 0x2002C+#define ERA_D_FMT 0x2002E+#define ALT_DIGITS 0x2002F+#define ERA_D_T_FMT 0x20030+#define ERA_T_FMT 0x20031++#define CODESET 14++#define CRNCYSTR 0x4000F++#define RADIXCHAR 0x10000+#define THOUSEP 0x10001+#define YESEXPR 0x50000+#define NOEXPR 0x50001++#define _NL_LOCALE_NAME(cat) (((cat)<<16) | 0xffff)++#if defined(_GNU_SOURCE)+#define NL_LOCALE_NAME(cat) _NL_LOCALE_NAME(cat)+#endif++#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE)+#define YESSTR 0x50002+#define NOSTR 0x50003+#endif++char *nl_langinfo(nl_item);+char *nl_langinfo_l(nl_item, locale_t);++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/arm/lastlog.h view
@@ -0,0 +1,1 @@+#include <utmp.h>
+ musl-include/arm/libgen.h view
@@ -0,0 +1,15 @@+#ifndef _LIBGEN_H+#define _LIBGEN_H++#ifdef __cplusplus+extern "C" {+#endif++char *dirname(char *);+char *basename(char *);++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/arm/libintl.h view
@@ -0,0 +1,33 @@+#ifndef _LIBINTL_H+#define _LIBINTL_H++#ifdef __cplusplus+extern "C" {+#endif++#define __USE_GNU_GETTEXT 1+#define __GNU_GETTEXT_SUPPORTED_REVISION(major) ((major) == 0 ? 1 : -1)++#if __GNUC__ >= 3+#define __fa(n) __attribute__ ((__format_arg__ (n)))+#else+#define __fa(n)+#endif++char *gettext(const char *) __fa(1);+char *dgettext(const char *, const char *) __fa(2);+char *dcgettext(const char *, const char *, int) __fa(2);+char *ngettext(const char *, const char *, unsigned long) __fa(1) __fa(2);+char *dngettext(const char *, const char *, const char *, unsigned long) __fa(2) __fa(3);+char *dcngettext(const char *, const char *, const char *, unsigned long, int) __fa(2) __fa(3);+char *textdomain(const char *);+char *bindtextdomain (const char *, const char *);+char *bind_textdomain_codeset(const char *, const char *);++#undef __fa++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/arm/limits.h view
@@ -0,0 +1,166 @@+#ifndef _LIMITS_H+#define _LIMITS_H++#include <features.h>++#include <bits/alltypes.h> /* __LONG_MAX */++/* Support signed or unsigned plain-char */++#if '\xff' > 0+#define CHAR_MIN 0+#define CHAR_MAX 255+#else+#define CHAR_MIN (-128)+#define CHAR_MAX 127+#endif++#define CHAR_BIT 8+#define SCHAR_MIN (-128)+#define SCHAR_MAX 127+#define UCHAR_MAX 255+#define SHRT_MIN  (-1-0x7fff)+#define SHRT_MAX  0x7fff+#define USHRT_MAX 0xffff+#define INT_MIN  (-1-0x7fffffff)+#define INT_MAX  0x7fffffff+#define UINT_MAX 0xffffffffU+#define LONG_MIN (-LONG_MAX-1)+#define LONG_MAX __LONG_MAX+#define ULONG_MAX (2UL*LONG_MAX+1)+#define LLONG_MIN (-LLONG_MAX-1)+#define LLONG_MAX  0x7fffffffffffffffLL+#define ULLONG_MAX (2ULL*LLONG_MAX+1)++#define MB_LEN_MAX 4++#if defined(_POSIX_SOURCE) || defined(_POSIX_C_SOURCE) \+ || defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) || defined(_BSD_SOURCE)++#include <bits/limits.h>++#define PIPE_BUF 4096+#define FILESIZEBITS 64+#ifndef NAME_MAX+#define NAME_MAX 255+#endif+#define PATH_MAX 4096+#define NGROUPS_MAX 32+#define ARG_MAX 131072+#define IOV_MAX 1024+#define SYMLOOP_MAX 40+#define WORD_BIT 32+#define SSIZE_MAX LONG_MAX+#define TZNAME_MAX 6+#define TTY_NAME_MAX 32+#define HOST_NAME_MAX 255++#if LONG_MAX == 0x7fffffffL+#define LONG_BIT 32+#else+#define LONG_BIT 64+#endif++/* Implementation choices... */++#define PTHREAD_KEYS_MAX 128+#define PTHREAD_STACK_MIN 2048+#define PTHREAD_DESTRUCTOR_ITERATIONS 4+#define SEM_VALUE_MAX 0x7fffffff+#define SEM_NSEMS_MAX 256+#define DELAYTIMER_MAX 0x7fffffff+#define MQ_PRIO_MAX 32768+#define LOGIN_NAME_MAX 256++/* Arbitrary numbers... */++#define BC_BASE_MAX 99+#define BC_DIM_MAX 2048+#define BC_SCALE_MAX 99+#define BC_STRING_MAX 1000+#define CHARCLASS_NAME_MAX 14+#define COLL_WEIGHTS_MAX 2+#define EXPR_NEST_MAX 32+#define LINE_MAX 4096+#define RE_DUP_MAX 255++#define NL_ARGMAX 9+#define NL_MSGMAX 32767+#define NL_SETMAX 255+#define NL_TEXTMAX 2048++#endif++#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE) || defined(_XOPEN_SOURCE)++#ifdef PAGESIZE+#define PAGE_SIZE PAGESIZE+#endif+#define NZERO 20+#define NL_LANGMAX 32++#endif++#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE) \+ || (defined(_XOPEN_SOURCE) && _XOPEN_SOURCE+0 < 700)++#define NL_NMAX 16++#endif++/* POSIX/SUS requirements follow. These numbers come directly+ * from SUS and have nothing to do with the host system. */++#define _POSIX_AIO_LISTIO_MAX   2+#define _POSIX_AIO_MAX          1+#define _POSIX_ARG_MAX          4096+#define _POSIX_CHILD_MAX        25+#define _POSIX_CLOCKRES_MIN     20000000+#define _POSIX_DELAYTIMER_MAX   32+#define _POSIX_HOST_NAME_MAX    255+#define _POSIX_LINK_MAX         8+#define _POSIX_LOGIN_NAME_MAX   9+#define _POSIX_MAX_CANON        255+#define _POSIX_MAX_INPUT        255+#define _POSIX_MQ_OPEN_MAX      8+#define _POSIX_MQ_PRIO_MAX      32+#define _POSIX_NAME_MAX         14+#define _POSIX_NGROUPS_MAX      8+#define _POSIX_OPEN_MAX         20+#define _POSIX_PATH_MAX         256+#define _POSIX_PIPE_BUF         512+#define _POSIX_RE_DUP_MAX       255+#define _POSIX_RTSIG_MAX        8+#define _POSIX_SEM_NSEMS_MAX    256+#define _POSIX_SEM_VALUE_MAX    32767+#define _POSIX_SIGQUEUE_MAX     32+#define _POSIX_SSIZE_MAX        32767+#define _POSIX_STREAM_MAX       8+#define _POSIX_SS_REPL_MAX      4+#define _POSIX_SYMLINK_MAX      255+#define _POSIX_SYMLOOP_MAX      8+#define _POSIX_THREAD_DESTRUCTOR_ITERATIONS 4+#define _POSIX_THREAD_KEYS_MAX  128+#define _POSIX_THREAD_THREADS_MAX 64+#define _POSIX_TIMER_MAX        32+#define _POSIX_TRACE_EVENT_NAME_MAX 30+#define _POSIX_TRACE_NAME_MAX   8+#define _POSIX_TRACE_SYS_MAX    8+#define _POSIX_TRACE_USER_EVENT_MAX 32+#define _POSIX_TTY_NAME_MAX     9+#define _POSIX_TZNAME_MAX       6+#define _POSIX2_BC_BASE_MAX     99+#define _POSIX2_BC_DIM_MAX      2048+#define _POSIX2_BC_SCALE_MAX    99+#define _POSIX2_BC_STRING_MAX   1000+#define _POSIX2_CHARCLASS_NAME_MAX 14+#define _POSIX2_COLL_WEIGHTS_MAX 2+#define _POSIX2_EXPR_NEST_MAX   32+#define _POSIX2_LINE_MAX        2048+#define _POSIX2_RE_DUP_MAX      255++#define _XOPEN_IOV_MAX          16+#define _XOPEN_NAME_MAX         255+#define _XOPEN_PATH_MAX         1024++#endif
+ musl-include/arm/link.h view
@@ -0,0 +1,53 @@+#ifndef _LINK_H+#define _LINK_H++#ifdef __cplusplus+extern "C" {+#endif++#include <elf.h>+#define __NEED_size_t+#define __NEED_uint32_t+#include <bits/alltypes.h>++#if UINTPTR_MAX > 0xffffffff+#define ElfW(type) Elf64_ ## type+#else+#define ElfW(type) Elf32_ ## type+#endif++#include <bits/link.h>++struct dl_phdr_info {+	ElfW(Addr) dlpi_addr;+	const char *dlpi_name;+	const ElfW(Phdr) *dlpi_phdr;+	ElfW(Half) dlpi_phnum;+	unsigned long long int dlpi_adds;+	unsigned long long int dlpi_subs;+	size_t dlpi_tls_modid;+	void *dlpi_tls_data;+};++struct link_map {+	ElfW(Addr) l_addr;+	char *l_name;+	ElfW(Dyn) *l_ld;+	struct link_map *l_next, *l_prev;+};++struct r_debug {+	int r_version;+	struct link_map *r_map;+	ElfW(Addr) r_brk;+	enum { RT_CONSISTENT, RT_ADD, RT_DELETE } r_state;+	ElfW(Addr) r_ldbase;+};++int dl_iterate_phdr(int (*)(struct dl_phdr_info *, size_t, void *), void *);++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/arm/locale.h view
@@ -0,0 +1,88 @@+#ifndef	_LOCALE_H+#define	_LOCALE_H++#ifdef __cplusplus+extern "C" {+#endif++#include <features.h>++#if __cplusplus >= 201103L+#define NULL nullptr+#elif defined(__cplusplus)+#define NULL 0L+#else+#define NULL ((void*)0)+#endif++#define LC_CTYPE    0+#define LC_NUMERIC  1+#define LC_TIME     2+#define LC_COLLATE  3+#define LC_MONETARY 4+#define LC_MESSAGES 5+#define LC_ALL      6++struct lconv {+	char *decimal_point;+	char *thousands_sep;+	char *grouping;++	char *int_curr_symbol;+	char *currency_symbol;+	char *mon_decimal_point;+	char *mon_thousands_sep;+	char *mon_grouping;+	char *positive_sign;+	char *negative_sign;+	char int_frac_digits;+	char frac_digits;+	char p_cs_precedes;+	char p_sep_by_space;+	char n_cs_precedes;+	char n_sep_by_space;+	char p_sign_posn;+	char n_sign_posn;+	char int_p_cs_precedes;+	char int_p_sep_by_space;+	char int_n_cs_precedes;+	char int_n_sep_by_space;+	char int_p_sign_posn;+	char int_n_sign_posn;+};+++char *setlocale (int, const char *);+struct lconv *localeconv(void);+++#if defined(_POSIX_SOURCE) || defined(_POSIX_C_SOURCE) \+ || defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) || defined(_BSD_SOURCE)++#define __NEED_locale_t++#include <bits/alltypes.h>++#define LC_GLOBAL_LOCALE ((locale_t)-1)++#define LC_CTYPE_MASK    (1<<LC_CTYPE)+#define LC_NUMERIC_MASK  (1<<LC_NUMERIC)+#define LC_TIME_MASK     (1<<LC_TIME)+#define LC_COLLATE_MASK  (1<<LC_COLLATE)+#define LC_MONETARY_MASK (1<<LC_MONETARY)+#define LC_MESSAGES_MASK (1<<LC_MESSAGES)+#define LC_ALL_MASK      0x7fffffff++locale_t duplocale(locale_t);+void freelocale(locale_t);+locale_t newlocale(int, const char *, locale_t);+locale_t uselocale(locale_t);++#endif+++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/arm/malloc.h view
@@ -0,0 +1,25 @@+#ifndef _MALLOC_H+#define _MALLOC_H++#ifdef __cplusplus+extern "C" {+#endif++#define __NEED_size_t++#include <bits/alltypes.h>++void *malloc (size_t);+void *calloc (size_t, size_t);+void *realloc (void *, size_t);+void free (void *);+void *valloc (size_t);+void *memalign(size_t, size_t);++size_t malloc_usable_size(void *);++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/arm/math.h view
@@ -0,0 +1,442 @@+#ifndef _MATH_H+#define _MATH_H++#ifdef __cplusplus+extern "C" {+#endif++#include <features.h>++#define __NEED_float_t+#define __NEED_double_t+#include <bits/alltypes.h>++#if 100*__GNUC__+__GNUC_MINOR__ >= 303+#define NAN       __builtin_nanf("")+#define INFINITY  __builtin_inff()+#else+#define NAN       (0.0f/0.0f)+#define INFINITY  1e5000f+#endif++#define HUGE_VALF INFINITY+#define HUGE_VAL  ((double)INFINITY)+#define HUGE_VALL ((long double)INFINITY)++#define MATH_ERRNO  1+#define MATH_ERREXCEPT 2+#define math_errhandling 2++#define FP_ILOGBNAN (-1-0x7fffffff)+#define FP_ILOGB0 FP_ILOGBNAN++#define FP_NAN       0+#define FP_INFINITE  1+#define FP_ZERO      2+#define FP_SUBNORMAL 3+#define FP_NORMAL    4++#ifdef __FP_FAST_FMA+#define FP_FAST_FMA 1+#endif++#ifdef __FP_FAST_FMAF+#define FP_FAST_FMAF 1+#endif++#ifdef __FP_FAST_FMAL+#define FP_FAST_FMAL 1+#endif++int __fpclassify(double);+int __fpclassifyf(float);+int __fpclassifyl(long double);++static __inline unsigned __FLOAT_BITS(float __f)+{+	union {float __f; unsigned __i;} __u;+	__u.__f = __f;+	return __u.__i;+}+static __inline unsigned long long __DOUBLE_BITS(double __f)+{+	union {double __f; unsigned long long __i;} __u;+	__u.__f = __f;+	return __u.__i;+}++#define fpclassify(x) ( \+	sizeof(x) == sizeof(float) ? __fpclassifyf(x) : \+	sizeof(x) == sizeof(double) ? __fpclassify(x) : \+	__fpclassifyl(x) )++#define isinf(x) ( \+	sizeof(x) == sizeof(float) ? (__FLOAT_BITS(x) & 0x7fffffff) == 0x7f800000 : \+	sizeof(x) == sizeof(double) ? (__DOUBLE_BITS(x) & -1ULL>>1) == 0x7ffULL<<52 : \+	__fpclassifyl(x) == FP_INFINITE)++#define isnan(x) ( \+	sizeof(x) == sizeof(float) ? (__FLOAT_BITS(x) & 0x7fffffff) > 0x7f800000 : \+	sizeof(x) == sizeof(double) ? (__DOUBLE_BITS(x) & -1ULL>>1) > 0x7ffULL<<52 : \+	__fpclassifyl(x) == FP_NAN)++#define isnormal(x) ( \+	sizeof(x) == sizeof(float) ? ((__FLOAT_BITS(x)+0x00800000) & 0x7fffffff) >= 0x01000000 : \+	sizeof(x) == sizeof(double) ? ((__DOUBLE_BITS(x)+(1ULL<<52)) & -1ULL>>1) >= 1ULL<<53 : \+	__fpclassifyl(x) == FP_NORMAL)++#define isfinite(x) ( \+	sizeof(x) == sizeof(float) ? (__FLOAT_BITS(x) & 0x7fffffff) < 0x7f800000 : \+	sizeof(x) == sizeof(double) ? (__DOUBLE_BITS(x) & -1ULL>>1) < 0x7ffULL<<52 : \+	__fpclassifyl(x) > FP_INFINITE)++int __signbit(double);+int __signbitf(float);+int __signbitl(long double);++#define signbit(x) ( \+	sizeof(x) == sizeof(float) ? (int)(__FLOAT_BITS(x)>>31) : \+	sizeof(x) == sizeof(double) ? (int)(__DOUBLE_BITS(x)>>63) : \+	__signbitl(x) )++#define isunordered(x,y) (isnan((x)) ? ((void)(y),1) : isnan((y)))++#define __ISREL_DEF(rel, op, type) \+static __inline int __is##rel(type __x, type __y) \+{ return !isunordered(__x,__y) && __x op __y; }++__ISREL_DEF(lessf, <, float_t)+__ISREL_DEF(less, <, double_t)+__ISREL_DEF(lessl, <, long double)+__ISREL_DEF(lessequalf, <=, float_t)+__ISREL_DEF(lessequal, <=, double_t)+__ISREL_DEF(lessequall, <=, long double)+__ISREL_DEF(lessgreaterf, !=, float_t)+__ISREL_DEF(lessgreater, !=, double_t)+__ISREL_DEF(lessgreaterl, !=, long double)+__ISREL_DEF(greaterf, >, float_t)+__ISREL_DEF(greater, >, double_t)+__ISREL_DEF(greaterl, >, long double)+__ISREL_DEF(greaterequalf, >=, float_t)+__ISREL_DEF(greaterequal, >=, double_t)+__ISREL_DEF(greaterequall, >=, long double)++#define __tg_pred_2(x, y, p) ( \+	sizeof((x)+(y)) == sizeof(float) ? p##f(x, y) : \+	sizeof((x)+(y)) == sizeof(double) ? p(x, y) : \+	p##l(x, y) )++#define isless(x, y)            __tg_pred_2(x, y, __isless)+#define islessequal(x, y)       __tg_pred_2(x, y, __islessequal)+#define islessgreater(x, y)     __tg_pred_2(x, y, __islessgreater)+#define isgreater(x, y)         __tg_pred_2(x, y, __isgreater)+#define isgreaterequal(x, y)    __tg_pred_2(x, y, __isgreaterequal)++double      acos(double);+float       acosf(float);+long double acosl(long double);++double      acosh(double);+float       acoshf(float);+long double acoshl(long double);++double      asin(double);+float       asinf(float);+long double asinl(long double);++double      asinh(double);+float       asinhf(float);+long double asinhl(long double);++double      atan(double);+float       atanf(float);+long double atanl(long double);++double      atan2(double, double);+float       atan2f(float, float);+long double atan2l(long double, long double);++double      atanh(double);+float       atanhf(float);+long double atanhl(long double);++double      cbrt(double);+float       cbrtf(float);+long double cbrtl(long double);++double      ceil(double);+float       ceilf(float);+long double ceill(long double);++double      copysign(double, double);+float       copysignf(float, float);+long double copysignl(long double, long double);++double      cos(double);+float       cosf(float);+long double cosl(long double);++double      cosh(double);+float       coshf(float);+long double coshl(long double);++double      erf(double);+float       erff(float);+long double erfl(long double);++double      erfc(double);+float       erfcf(float);+long double erfcl(long double);++double      exp(double);+float       expf(float);+long double expl(long double);++double      exp2(double);+float       exp2f(float);+long double exp2l(long double);++double      expm1(double);+float       expm1f(float);+long double expm1l(long double);++double      fabs(double);+float       fabsf(float);+long double fabsl(long double);++double      fdim(double, double);+float       fdimf(float, float);+long double fdiml(long double, long double);++double      floor(double);+float       floorf(float);+long double floorl(long double);++double      fma(double, double, double);+float       fmaf(float, float, float);+long double fmal(long double, long double, long double);++double      fmax(double, double);+float       fmaxf(float, float);+long double fmaxl(long double, long double);++double      fmin(double, double);+float       fminf(float, float);+long double fminl(long double, long double);++double      fmod(double, double);+float       fmodf(float, float);+long double fmodl(long double, long double);++double      frexp(double, int *);+float       frexpf(float, int *);+long double frexpl(long double, int *);++double      hypot(double, double);+float       hypotf(float, float);+long double hypotl(long double, long double);++int         ilogb(double);+int         ilogbf(float);+int         ilogbl(long double);++double      ldexp(double, int);+float       ldexpf(float, int);+long double ldexpl(long double, int);++double      lgamma(double);+float       lgammaf(float);+long double lgammal(long double);++long long   llrint(double);+long long   llrintf(float);+long long   llrintl(long double);++long long   llround(double);+long long   llroundf(float);+long long   llroundl(long double);++double      log(double);+float       logf(float);+long double logl(long double);++double      log10(double);+float       log10f(float);+long double log10l(long double);++double      log1p(double);+float       log1pf(float);+long double log1pl(long double);++double      log2(double);+float       log2f(float);+long double log2l(long double);++double      logb(double);+float       logbf(float);+long double logbl(long double);++long        lrint(double);+long        lrintf(float);+long        lrintl(long double);++long        lround(double);+long        lroundf(float);+long        lroundl(long double);++double      modf(double, double *);+float       modff(float, float *);+long double modfl(long double, long double *);++double      nan(const char *);+float       nanf(const char *);+long double nanl(const char *);++double      nearbyint(double);+float       nearbyintf(float);+long double nearbyintl(long double);++double      nextafter(double, double);+float       nextafterf(float, float);+long double nextafterl(long double, long double);++double      nexttoward(double, long double);+float       nexttowardf(float, long double);+long double nexttowardl(long double, long double);++double      pow(double, double);+float       powf(float, float);+long double powl(long double, long double);++double      remainder(double, double);+float       remainderf(float, float);+long double remainderl(long double, long double);++double      remquo(double, double, int *);+float       remquof(float, float, int *);+long double remquol(long double, long double, int *);++double      rint(double);+float       rintf(float);+long double rintl(long double);++double      round(double);+float       roundf(float);+long double roundl(long double);++double      scalbln(double, long);+float       scalblnf(float, long);+long double scalblnl(long double, long);++double      scalbn(double, int);+float       scalbnf(float, int);+long double scalbnl(long double, int);++double      sin(double);+float       sinf(float);+long double sinl(long double);++double      sinh(double);+float       sinhf(float);+long double sinhl(long double);++double      sqrt(double);+float       sqrtf(float);+long double sqrtl(long double);++double      tan(double);+float       tanf(float);+long double tanl(long double);++double      tanh(double);+float       tanhf(float);+long double tanhl(long double);++double      tgamma(double);+float       tgammaf(float);+long double tgammal(long double);++double      trunc(double);+float       truncf(float);+long double truncl(long double);+++#if defined(_XOPEN_SOURCE) || defined(_BSD_SOURCE)+#undef  MAXFLOAT+#define MAXFLOAT        3.40282346638528859812e+38F+#endif++#if defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) || defined(_BSD_SOURCE)+#define M_E             2.7182818284590452354   /* e */+#define M_LOG2E         1.4426950408889634074   /* log_2 e */+#define M_LOG10E        0.43429448190325182765  /* log_10 e */+#define M_LN2           0.69314718055994530942  /* log_e 2 */+#define M_LN10          2.30258509299404568402  /* log_e 10 */+#define M_PI            3.14159265358979323846  /* pi */+#define M_PI_2          1.57079632679489661923  /* pi/2 */+#define M_PI_4          0.78539816339744830962  /* pi/4 */+#define M_1_PI          0.31830988618379067154  /* 1/pi */+#define M_2_PI          0.63661977236758134308  /* 2/pi */+#define M_2_SQRTPI      1.12837916709551257390  /* 2/sqrt(pi) */+#define M_SQRT2         1.41421356237309504880  /* sqrt(2) */+#define M_SQRT1_2       0.70710678118654752440  /* 1/sqrt(2) */++extern int signgam;++double      j0(double);+double      j1(double);+double      jn(int, double);++double      y0(double);+double      y1(double);+double      yn(int, double);+#endif++#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE)+#define HUGE            3.40282346638528859812e+38F++double      drem(double, double);+float       dremf(float, float);++int         finite(double);+int         finitef(float);++double      scalb(double, double);+float       scalbf(float, float);++double      significand(double);+float       significandf(float);++double      lgamma_r(double, int*);+float       lgammaf_r(float, int*);++float       j0f(float);+float       j1f(float);+float       jnf(int, float);++float       y0f(float);+float       y1f(float);+float       ynf(int, float);+#endif++#ifdef _GNU_SOURCE+long double lgammal_r(long double, int*);++void        sincos(double, double*, double*);+void        sincosf(float, float*, float*);+void        sincosl(long double, long double*, long double*);++double      exp10(double);+float       exp10f(float);+long double exp10l(long double);++double      pow10(double);+float       pow10f(float);+long double pow10l(long double);+#endif++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/arm/memory.h view
@@ -0,0 +1,1 @@+#include <string.h>
+ musl-include/arm/mntent.h view
@@ -0,0 +1,43 @@+#ifndef _MNTENT_H+#define _MNTENT_H++#ifdef __cplusplus+extern "C" {+#endif++#define __NEED_FILE+#include <bits/alltypes.h>++#define MOUNTED "/etc/mtab"++#define MNTTYPE_IGNORE	"ignore"+#define MNTTYPE_NFS	"nfs"+#define MNTTYPE_SWAP	"swap"+#define MNTOPT_DEFAULTS	"defaults"+#define MNTOPT_RO	"ro"+#define MNTOPT_RW	"rw"+#define MNTOPT_SUID	"suid"+#define MNTOPT_NOSUID	"nosuid"+#define MNTOPT_NOAUTO	"noauto"++struct mntent {+	char *mnt_fsname;+	char *mnt_dir;+	char *mnt_type;+	char *mnt_opts;+	int mnt_freq;+	int mnt_passno;+};++FILE *setmntent(const char *, const char *);+int endmntent(FILE *);+struct mntent *getmntent(FILE *);+struct mntent *getmntent_r(FILE *, struct mntent *, char *, int);+int addmntent(FILE *, const struct mntent *);+char *hasmntopt(const struct mntent *, const char *);++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/arm/monetary.h view
@@ -0,0 +1,23 @@+#ifndef _MONETARY_H+#define _MONETARY_H++#ifdef __cplusplus+extern "C" {+#endif++#include <features.h>++#define __NEED_ssize_t+#define __NEED_size_t+#define __NEED_locale_t++#include <bits/alltypes.h>++ssize_t strfmon(char *__restrict, size_t, const char *__restrict, ...);+ssize_t strfmon_l(char *__restrict, size_t, locale_t, const char *__restrict, ...);++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/arm/mqueue.h view
@@ -0,0 +1,41 @@+#ifndef _MQUEUE_H+#define _MQUEUE_H+#ifdef __cplusplus+extern "C" {+#endif++#include <features.h>++#define __NEED_size_t+#define __NEED_ssize_t+#define __NEED_pthread_attr_t+#define __NEED_time_t+#define __NEED_struct_timespec+#include <bits/alltypes.h>++typedef int mqd_t;+struct mq_attr {+	long mq_flags, mq_maxmsg, mq_msgsize, mq_curmsgs, __unused[4];+};+struct sigevent;++int mq_close(mqd_t);+int mq_getattr(mqd_t, struct mq_attr *);+int mq_notify(mqd_t, const struct sigevent *);+mqd_t mq_open(const char *, int, ...);+ssize_t mq_receive(mqd_t, char *, size_t, unsigned *);+int mq_send(mqd_t, const char *, size_t, unsigned);+int mq_setattr(mqd_t, const struct mq_attr *__restrict, struct mq_attr *__restrict);+ssize_t mq_timedreceive(mqd_t, char *__restrict, size_t, unsigned *__restrict, const struct timespec *__restrict);+int mq_timedsend(mqd_t, const char *, size_t, unsigned, const struct timespec *);+int mq_unlink(const char *);++#if _REDIR_TIME64+__REDIR(mq_timedreceive, __mq_timedreceive_time64);+__REDIR(mq_timedsend, __mq_timedsend_time64);+#endif++#ifdef __cplusplus+}+#endif+#endif
+ musl-include/arm/net/ethernet.h view
@@ -0,0 +1,55 @@+#ifndef _NET_ETHERNET_H+#define _NET_ETHERNET_H++#ifdef __cplusplus+extern "C" {+#endif++#include <stdint.h>+#include <sys/types.h>+#include <netinet/if_ether.h>++struct ether_addr {+	uint8_t ether_addr_octet[ETH_ALEN];+};++struct ether_header {+	uint8_t  ether_dhost[ETH_ALEN];+	uint8_t  ether_shost[ETH_ALEN];+	uint16_t ether_type;+};++#define	ETHERTYPE_PUP		0x0200+#define ETHERTYPE_SPRITE	0x0500+#define	ETHERTYPE_IP		0x0800+#define	ETHERTYPE_ARP		0x0806+#define	ETHERTYPE_REVARP	0x8035+#define ETHERTYPE_AT		0x809B+#define ETHERTYPE_AARP		0x80F3+#define	ETHERTYPE_VLAN		0x8100+#define ETHERTYPE_IPX		0x8137+#define	ETHERTYPE_IPV6		0x86dd+#define ETHERTYPE_LOOPBACK	0x9000+++#define	ETHER_ADDR_LEN	ETH_ALEN+#define	ETHER_TYPE_LEN	2+#define	ETHER_CRC_LEN	4+#define	ETHER_HDR_LEN	ETH_HLEN+#define	ETHER_MIN_LEN	(ETH_ZLEN + ETHER_CRC_LEN)+#define	ETHER_MAX_LEN	(ETH_FRAME_LEN + ETHER_CRC_LEN)++#define	ETHER_IS_VALID_LEN(foo)	\+	((foo) >= ETHER_MIN_LEN && (foo) <= ETHER_MAX_LEN)++#define	ETHERTYPE_TRAIL		0x1000+#define	ETHERTYPE_NTRAILER	16++#define	ETHERMTU	ETH_DATA_LEN+#define	ETHERMIN	(ETHER_MIN_LEN - ETHER_HDR_LEN - ETHER_CRC_LEN)++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/arm/net/if.h view
@@ -0,0 +1,141 @@+#ifndef _NET_IF_H+#define _NET_IF_H++#ifdef __cplusplus+extern "C" {+#endif++#include <features.h>++#define IF_NAMESIZE 16++struct if_nameindex {+	unsigned int if_index;+	char *if_name;+};++unsigned int if_nametoindex (const char *);+char *if_indextoname (unsigned int, char *);+struct if_nameindex *if_nameindex (void);+void if_freenameindex (struct if_nameindex *);+++++#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE)++#include <sys/socket.h>++#define IFF_UP	0x1+#define IFF_BROADCAST 0x2+#define IFF_DEBUG 0x4+#define IFF_LOOPBACK 0x8+#define IFF_POINTOPOINT 0x10+#define IFF_NOTRAILERS 0x20+#define IFF_RUNNING 0x40+#define IFF_NOARP 0x80+#define IFF_PROMISC 0x100+#define IFF_ALLMULTI 0x200+#define IFF_MASTER 0x400+#define IFF_SLAVE 0x800+#define IFF_MULTICAST 0x1000+#define IFF_PORTSEL 0x2000+#define IFF_AUTOMEDIA 0x4000+#define IFF_DYNAMIC 0x8000+#define IFF_LOWER_UP 0x10000+#define IFF_DORMANT 0x20000+#define IFF_ECHO 0x40000+#define IFF_VOLATILE (IFF_LOOPBACK|IFF_POINTOPOINT|IFF_BROADCAST| \+        IFF_ECHO|IFF_MASTER|IFF_SLAVE|IFF_RUNNING|IFF_LOWER_UP|IFF_DORMANT)++struct ifaddr {+	struct sockaddr ifa_addr;+	union {+		struct sockaddr	ifu_broadaddr;+		struct sockaddr	ifu_dstaddr;+	} ifa_ifu;+	struct iface *ifa_ifp;+	struct ifaddr *ifa_next;+};++#define ifa_broadaddr	ifa_ifu.ifu_broadaddr+#define ifa_dstaddr	ifa_ifu.ifu_dstaddr++struct ifmap {+	unsigned long int mem_start;+	unsigned long int mem_end;+	unsigned short int base_addr;+	unsigned char irq;+	unsigned char dma;+	unsigned char port;+};++#define IFHWADDRLEN	6+#define IFNAMSIZ	IF_NAMESIZE++struct ifreq {+	union {+		char ifrn_name[IFNAMSIZ];+	} ifr_ifrn;+	union {+		struct sockaddr ifru_addr;+		struct sockaddr ifru_dstaddr;+		struct sockaddr ifru_broadaddr;+		struct sockaddr ifru_netmask;+		struct sockaddr ifru_hwaddr;+		short int ifru_flags;+		int ifru_ivalue;+		int ifru_mtu;+		struct ifmap ifru_map;+		char ifru_slave[IFNAMSIZ];+		char ifru_newname[IFNAMSIZ];+		char *ifru_data;+	} ifr_ifru;+};++#define ifr_name	ifr_ifrn.ifrn_name+#define ifr_hwaddr	ifr_ifru.ifru_hwaddr+#define ifr_addr	ifr_ifru.ifru_addr+#define ifr_dstaddr	ifr_ifru.ifru_dstaddr+#define ifr_broadaddr	ifr_ifru.ifru_broadaddr+#define ifr_netmask	ifr_ifru.ifru_netmask+#define ifr_flags	ifr_ifru.ifru_flags+#define ifr_metric	ifr_ifru.ifru_ivalue+#define ifr_mtu		ifr_ifru.ifru_mtu+#define ifr_map		ifr_ifru.ifru_map+#define ifr_slave	ifr_ifru.ifru_slave+#define ifr_data	ifr_ifru.ifru_data+#define ifr_ifindex	ifr_ifru.ifru_ivalue+#define ifr_bandwidth	ifr_ifru.ifru_ivalue+#define ifr_qlen	ifr_ifru.ifru_ivalue+#define ifr_newname	ifr_ifru.ifru_newname+#define _IOT_ifreq	_IOT(_IOTS(char),IFNAMSIZ,_IOTS(char),16,0,0)+#define _IOT_ifreq_short _IOT(_IOTS(char),IFNAMSIZ,_IOTS(short),1,0,0)+#define _IOT_ifreq_int	_IOT(_IOTS(char),IFNAMSIZ,_IOTS(int),1,0,0)++struct ifconf {+	int ifc_len;		+	union {+		char *ifcu_buf;+		struct ifreq *ifcu_req;+	} ifc_ifcu;+};++#define ifc_buf		ifc_ifcu.ifcu_buf+#define ifc_req		ifc_ifcu.ifcu_req+#define _IOT_ifconf _IOT(_IOTS(struct ifconf),1,0,0,0,0)++#define __UAPI_DEF_IF_IFCONF                                    0+#define __UAPI_DEF_IF_IFMAP                                     0+#define __UAPI_DEF_IF_IFNAMSIZ                                  0+#define __UAPI_DEF_IF_IFREQ                                     0+#define __UAPI_DEF_IF_NET_DEVICE_FLAGS                          0+#define __UAPI_DEF_IF_NET_DEVICE_FLAGS_LOWER_UP_DORMANT_ECHO    0++#endif++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/arm/net/if_arp.h view
@@ -0,0 +1,142 @@+/* Nonstandard header */+#ifndef _NET_IF_ARP_H+#define _NET_IF_ARP_H+#ifdef __cplusplus+extern "C" {+#endif++#include <inttypes.h>+#include <sys/types.h>+#include <sys/socket.h>++#define MAX_ADDR_LEN	7++#define	ARPOP_REQUEST	1+#define	ARPOP_REPLY	2+#define	ARPOP_RREQUEST	3+#define	ARPOP_RREPLY	4+#define	ARPOP_InREQUEST	8+#define	ARPOP_InREPLY	9+#define	ARPOP_NAK	10++struct arphdr {+	uint16_t ar_hrd;+	uint16_t ar_pro;+	uint8_t ar_hln;+	uint8_t ar_pln;+	uint16_t ar_op;+};+++#define ARPHRD_NETROM	0+#define ARPHRD_ETHER 	1+#define	ARPHRD_EETHER	2+#define	ARPHRD_AX25	3+#define	ARPHRD_PRONET	4+#define	ARPHRD_CHAOS	5+#define	ARPHRD_IEEE802	6+#define	ARPHRD_ARCNET	7+#define	ARPHRD_APPLETLK	8+#define	ARPHRD_DLCI	15+#define	ARPHRD_ATM	19+#define	ARPHRD_METRICOM	23+#define ARPHRD_IEEE1394	24+#define ARPHRD_EUI64		27+#define ARPHRD_INFINIBAND	32+#define ARPHRD_SLIP	256+#define ARPHRD_CSLIP	257+#define ARPHRD_SLIP6	258+#define ARPHRD_CSLIP6	259+#define ARPHRD_RSRVD	260+#define ARPHRD_ADAPT	264+#define ARPHRD_ROSE	270+#define ARPHRD_X25	271+#define ARPHRD_HWX25	272+#define ARPHRD_CAN	280+#define ARPHRD_PPP	512+#define ARPHRD_CISCO	513+#define ARPHRD_HDLC	ARPHRD_CISCO+#define ARPHRD_LAPB	516+#define ARPHRD_DDCMP	517+#define	ARPHRD_RAWHDLC	518+#define ARPHRD_RAWIP	519++#define ARPHRD_TUNNEL	768+#define ARPHRD_TUNNEL6	769+#define ARPHRD_FRAD	770+#define ARPHRD_SKIP	771+#define ARPHRD_LOOPBACK	772+#define ARPHRD_LOCALTLK 773+#define ARPHRD_FDDI	774+#define ARPHRD_BIF	775+#define ARPHRD_SIT	776+#define ARPHRD_IPDDP	777+#define ARPHRD_IPGRE	778+#define ARPHRD_PIMREG	779+#define ARPHRD_HIPPI	780+#define ARPHRD_ASH	781+#define ARPHRD_ECONET	782+#define ARPHRD_IRDA	783+#define ARPHRD_FCPP	784+#define ARPHRD_FCAL	785+#define ARPHRD_FCPL	786+#define ARPHRD_FCFABRIC 787+#define ARPHRD_IEEE802_TR 800+#define ARPHRD_IEEE80211 801+#define ARPHRD_IEEE80211_PRISM 802+#define ARPHRD_IEEE80211_RADIOTAP 803+#define ARPHRD_IEEE802154 804+#define ARPHRD_IEEE802154_MONITOR 805+#define ARPHRD_PHONET 820+#define ARPHRD_PHONET_PIPE 821+#define ARPHRD_CAIF 822+#define ARPHRD_IP6GRE 823+#define ARPHRD_NETLINK 824+#define ARPHRD_6LOWPAN 825+#define ARPHRD_VSOCKMON 826++#define ARPHRD_VOID	  0xFFFF+#define ARPHRD_NONE	  0xFFFE++struct arpreq {+	struct sockaddr arp_pa;+	struct sockaddr arp_ha;+	int arp_flags;+	struct sockaddr arp_netmask;+	char arp_dev[16];+};++struct arpreq_old {+	struct sockaddr arp_pa;+	struct sockaddr arp_ha;+	int arp_flags;+	struct sockaddr arp_netmask;+};++#define ATF_COM		0x02+#define	ATF_PERM	0x04+#define	ATF_PUBL	0x08+#define	ATF_USETRAILERS	0x10+#define ATF_NETMASK     0x20+#define ATF_DONTPUB	0x40+#define ATF_MAGIC	0x80++#define ARPD_UPDATE	0x01+#define ARPD_LOOKUP	0x02+#define ARPD_FLUSH	0x03++struct arpd_request {+	unsigned short req;+	uint32_t ip;+	unsigned long dev;+	unsigned long stamp;+	unsigned long updated;+	unsigned char ha[MAX_ADDR_LEN];+};++++#ifdef __cplusplus+}+#endif+#endif
+ musl-include/arm/net/route.h view
@@ -0,0 +1,124 @@+#ifndef _NET_ROUTE_H+#define _NET_ROUTE_H++#ifdef __cplusplus+extern "C" {+#endif++#include <stdint.h>+#include <sys/socket.h>+#include <sys/types.h>+#include <netinet/in.h>+++struct rtentry {+	unsigned long int rt_pad1;+	struct sockaddr rt_dst;+	struct sockaddr rt_gateway;+	struct sockaddr rt_genmask;+	unsigned short int rt_flags;+	short int rt_pad2;+	unsigned long int rt_pad3;+	unsigned char rt_tos;+	unsigned char rt_class;+	short int rt_pad4[sizeof(long)/2-1];+	short int rt_metric;+	char *rt_dev;+	unsigned long int rt_mtu;+	unsigned long int rt_window;+	unsigned short int rt_irtt;+};++#define rt_mss	rt_mtu+++struct in6_rtmsg {+	struct in6_addr rtmsg_dst;+	struct in6_addr rtmsg_src;+	struct in6_addr rtmsg_gateway;+	uint32_t rtmsg_type;+	uint16_t rtmsg_dst_len;+	uint16_t rtmsg_src_len;+	uint32_t rtmsg_metric;+	unsigned long int rtmsg_info;+	uint32_t rtmsg_flags;+	int rtmsg_ifindex;+};+++#define	RTF_UP		0x0001+#define	RTF_GATEWAY	0x0002++#define	RTF_HOST	0x0004+#define RTF_REINSTATE	0x0008+#define	RTF_DYNAMIC	0x0010+#define	RTF_MODIFIED	0x0020+#define RTF_MTU		0x0040+#define RTF_MSS		RTF_MTU+#define RTF_WINDOW	0x0080+#define RTF_IRTT	0x0100+#define RTF_REJECT	0x0200+#define	RTF_STATIC	0x0400+#define	RTF_XRESOLVE	0x0800+#define RTF_NOFORWARD   0x1000+#define RTF_THROW	0x2000+#define RTF_NOPMTUDISC  0x4000++#define RTF_DEFAULT	0x00010000+#define RTF_ALLONLINK	0x00020000+#define RTF_ADDRCONF	0x00040000++#define RTF_LINKRT	0x00100000+#define RTF_NONEXTHOP	0x00200000++#define RTF_CACHE	0x01000000+#define RTF_FLOW	0x02000000+#define RTF_POLICY	0x04000000++#define RTCF_VALVE	0x00200000+#define RTCF_MASQ	0x00400000+#define RTCF_NAT	0x00800000+#define RTCF_DOREDIRECT 0x01000000+#define RTCF_LOG	0x02000000+#define RTCF_DIRECTSRC	0x04000000++#define RTF_LOCAL	0x80000000+#define RTF_INTERFACE	0x40000000+#define RTF_MULTICAST	0x20000000+#define RTF_BROADCAST	0x10000000+#define RTF_NAT		0x08000000++#define RTF_ADDRCLASSMASK	0xF8000000+#define RT_ADDRCLASS(flags)	((uint32_t) flags >> 23)++#define RT_TOS(tos)		((tos) & IPTOS_TOS_MASK)++#define RT_LOCALADDR(flags)	((flags & RTF_ADDRCLASSMASK) \+				 == (RTF_LOCAL|RTF_INTERFACE))++#define RT_CLASS_UNSPEC		0+#define RT_CLASS_DEFAULT	253++#define RT_CLASS_MAIN		254+#define RT_CLASS_LOCAL		255+#define RT_CLASS_MAX		255+++#define RTMSG_ACK		NLMSG_ACK+#define RTMSG_OVERRUN		NLMSG_OVERRUN++#define RTMSG_NEWDEVICE		0x11+#define RTMSG_DELDEVICE		0x12+#define RTMSG_NEWROUTE		0x21+#define RTMSG_DELROUTE		0x22+#define RTMSG_NEWRULE		0x31+#define RTMSG_DELRULE		0x32+#define RTMSG_CONTROL		0x40++#define RTMSG_AR_FAILED		0x51++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/arm/netdb.h view
@@ -0,0 +1,157 @@+#ifndef	_NETDB_H+#define	_NETDB_H++#ifdef __cplusplus+extern "C" {+#endif++#include <features.h>+#include <netinet/in.h>++#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE)+#define __NEED_size_t+#include <bits/alltypes.h>+#endif++struct addrinfo {+	int ai_flags;+	int ai_family;+	int ai_socktype;+	int ai_protocol;+	socklen_t ai_addrlen;+	struct sockaddr *ai_addr;+	char *ai_canonname;+	struct addrinfo *ai_next;+};++#define AI_PASSIVE      0x01+#define AI_CANONNAME    0x02+#define AI_NUMERICHOST  0x04+#define AI_V4MAPPED     0x08+#define AI_ALL          0x10+#define AI_ADDRCONFIG   0x20+#define AI_NUMERICSERV  0x400+++#define NI_NUMERICHOST  0x01+#define NI_NUMERICSERV  0x02+#define NI_NOFQDN       0x04+#define NI_NAMEREQD     0x08+#define NI_DGRAM        0x10+#define NI_NUMERICSCOPE 0x100++#define EAI_BADFLAGS   -1+#define EAI_NONAME     -2+#define EAI_AGAIN      -3+#define EAI_FAIL       -4+#define EAI_NODATA     -5+#define EAI_FAMILY     -6+#define EAI_SOCKTYPE   -7+#define EAI_SERVICE    -8+#define EAI_MEMORY     -10+#define EAI_SYSTEM     -11+#define EAI_OVERFLOW   -12++int getaddrinfo (const char *__restrict, const char *__restrict, const struct addrinfo *__restrict, struct addrinfo **__restrict);+void freeaddrinfo (struct addrinfo *);+int getnameinfo (const struct sockaddr *__restrict, socklen_t, char *__restrict, socklen_t, char *__restrict, socklen_t, int);+const char *gai_strerror(int);+++/* Legacy functions follow (marked OBsolete in SUS) */++struct netent {+	char *n_name;+	char **n_aliases;+	int n_addrtype;+	uint32_t n_net;+};++struct hostent {+	char *h_name;+	char **h_aliases;+	int h_addrtype;+	int h_length;+	char **h_addr_list;+};+#define h_addr h_addr_list[0]++struct servent {+	char *s_name;+	char **s_aliases;+	int s_port;+	char *s_proto;+};++struct protoent {+	char *p_name;+	char **p_aliases;+	int p_proto;+};++void sethostent (int);+void endhostent (void);+struct hostent *gethostent (void);++void setnetent (int);+void endnetent (void);+struct netent *getnetent (void);+struct netent *getnetbyaddr (uint32_t, int);+struct netent *getnetbyname (const char *);++void setservent (int);+void endservent (void);+struct servent *getservent (void);+struct servent *getservbyname (const char *, const char *);+struct servent *getservbyport (int, const char *);++void setprotoent (int);+void endprotoent (void);+struct protoent *getprotoent (void);+struct protoent *getprotobyname (const char *);+struct protoent *getprotobynumber (int);++#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE) || defined(_POSIX_SOURCE) \+ || (defined(_POSIX_C_SOURCE) && _POSIX_C_SOURCE+0 < 200809L) \+ || (defined(_XOPEN_SOURCE) && _XOPEN_SOURCE+0 < 700)+struct hostent *gethostbyname (const char *);+struct hostent *gethostbyaddr (const void *, socklen_t, int);+#ifdef __GNUC__+__attribute__((const))+#endif+int *__h_errno_location(void);+#define h_errno (*__h_errno_location())+#define HOST_NOT_FOUND 1+#define TRY_AGAIN      2+#define NO_RECOVERY    3+#define NO_DATA        4+#define NO_ADDRESS     NO_DATA+#endif++#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE)+void herror(const char *);+const char *hstrerror(int);+int gethostbyname_r(const char *, struct hostent *, char *, size_t, struct hostent **, int *);+int gethostbyname2_r(const char *, int, struct hostent *, char *, size_t, struct hostent **, int *);+struct hostent *gethostbyname2(const char *, int);+int gethostbyaddr_r(const void *, socklen_t, int, struct hostent *, char *, size_t, struct hostent **, int *);+int getservbyport_r(int, const char *, struct servent *, char *, size_t, struct servent **);+int getservbyname_r(const char *, const char *, struct servent *, char *, size_t, struct servent **);+#define EAI_NODATA     -5+#define EAI_ADDRFAMILY -9+#define EAI_INPROGRESS -100+#define EAI_CANCELED   -101+#define EAI_NOTCANCELED -102+#define EAI_ALLDONE    -103+#define EAI_INTR       -104+#define EAI_IDN_ENCODE -105+#define NI_MAXHOST 255+#define NI_MAXSERV 32+#endif+++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/arm/netinet/ether.h view
@@ -0,0 +1,22 @@+#ifndef _NETINET_ETHER_H+#define _NETINET_ETHER_H++#ifdef __cplusplus+extern "C" {+#endif++#include <netinet/if_ether.h>++char *ether_ntoa (const struct ether_addr *);+struct ether_addr *ether_aton (const char *);+char *ether_ntoa_r (const struct ether_addr *, char *);+struct ether_addr *ether_aton_r (const char *, struct ether_addr *);+int ether_line(const char *, struct ether_addr *, char *);+int ether_ntohost(char *, const struct ether_addr *);+int ether_hostton(const char *, struct ether_addr *);++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/arm/netinet/icmp6.h view
@@ -0,0 +1,305 @@+#ifndef _NETINET_ICMP6_H+#define _NETINET_ICMP6_H++#ifdef __cplusplus+extern "C" {+#endif++#include <stdint.h>+#include <string.h>+#include <sys/types.h>+#include <netinet/in.h>++#define ICMP6_FILTER 1++#define ICMP6_FILTER_BLOCK		1+#define ICMP6_FILTER_PASS		2+#define ICMP6_FILTER_BLOCKOTHERS	3+#define ICMP6_FILTER_PASSONLY		4++struct icmp6_filter {+	uint32_t icmp6_filt[8];+};++struct icmp6_hdr {+	uint8_t     icmp6_type;+	uint8_t     icmp6_code;+	uint16_t    icmp6_cksum;+	union {+		uint32_t  icmp6_un_data32[1];+		uint16_t  icmp6_un_data16[2];+		uint8_t   icmp6_un_data8[4];+	} icmp6_dataun;+};++#define icmp6_data32    icmp6_dataun.icmp6_un_data32+#define icmp6_data16    icmp6_dataun.icmp6_un_data16+#define icmp6_data8     icmp6_dataun.icmp6_un_data8+#define icmp6_pptr      icmp6_data32[0]+#define icmp6_mtu       icmp6_data32[0]+#define icmp6_id        icmp6_data16[0]+#define icmp6_seq       icmp6_data16[1]+#define icmp6_maxdelay  icmp6_data16[0]++#define ICMP6_DST_UNREACH             1+#define ICMP6_PACKET_TOO_BIG          2+#define ICMP6_TIME_EXCEEDED           3+#define ICMP6_PARAM_PROB              4++#define ICMP6_INFOMSG_MASK  0x80++#define ICMP6_ECHO_REQUEST          128+#define ICMP6_ECHO_REPLY            129+#define MLD_LISTENER_QUERY          130+#define MLD_LISTENER_REPORT         131+#define MLD_LISTENER_REDUCTION      132++#define ICMP6_DST_UNREACH_NOROUTE     0+#define ICMP6_DST_UNREACH_ADMIN       1+#define ICMP6_DST_UNREACH_BEYONDSCOPE 2+#define ICMP6_DST_UNREACH_ADDR        3+#define ICMP6_DST_UNREACH_NOPORT      4++#define ICMP6_TIME_EXCEED_TRANSIT     0+#define ICMP6_TIME_EXCEED_REASSEMBLY  1++#define ICMP6_PARAMPROB_HEADER        0+#define ICMP6_PARAMPROB_NEXTHEADER    1+#define ICMP6_PARAMPROB_OPTION        2++#define ICMP6_FILTER_WILLPASS(type, filterp) \+	((((filterp)->icmp6_filt[(type) >> 5]) & (1 << ((type) & 31))) == 0)++#define ICMP6_FILTER_WILLBLOCK(type, filterp) \+	((((filterp)->icmp6_filt[(type) >> 5]) & (1 << ((type) & 31))) != 0)++#define ICMP6_FILTER_SETPASS(type, filterp) \+	((((filterp)->icmp6_filt[(type) >> 5]) &= ~(1 << ((type) & 31))))++#define ICMP6_FILTER_SETBLOCK(type, filterp) \+	((((filterp)->icmp6_filt[(type) >> 5]) |=  (1 << ((type) & 31))))++#define ICMP6_FILTER_SETPASSALL(filterp) \+	memset (filterp, 0, sizeof (struct icmp6_filter));++#define ICMP6_FILTER_SETBLOCKALL(filterp) \+	memset (filterp, 0xFF, sizeof (struct icmp6_filter));++#define ND_ROUTER_SOLICIT           133+#define ND_ROUTER_ADVERT            134+#define ND_NEIGHBOR_SOLICIT         135+#define ND_NEIGHBOR_ADVERT          136+#define ND_REDIRECT                 137++struct nd_router_solicit {+	struct icmp6_hdr  nd_rs_hdr;+};++#define nd_rs_type               nd_rs_hdr.icmp6_type+#define nd_rs_code               nd_rs_hdr.icmp6_code+#define nd_rs_cksum              nd_rs_hdr.icmp6_cksum+#define nd_rs_reserved           nd_rs_hdr.icmp6_data32[0]++struct nd_router_advert {+	struct icmp6_hdr  nd_ra_hdr;+	uint32_t   nd_ra_reachable;+	uint32_t   nd_ra_retransmit;+};++#define nd_ra_type               nd_ra_hdr.icmp6_type+#define nd_ra_code               nd_ra_hdr.icmp6_code+#define nd_ra_cksum              nd_ra_hdr.icmp6_cksum+#define nd_ra_curhoplimit        nd_ra_hdr.icmp6_data8[0]+#define nd_ra_flags_reserved     nd_ra_hdr.icmp6_data8[1]+#define ND_RA_FLAG_MANAGED       0x80+#define ND_RA_FLAG_OTHER         0x40+#define ND_RA_FLAG_HOME_AGENT    0x20+#define nd_ra_router_lifetime    nd_ra_hdr.icmp6_data16[1]++struct nd_neighbor_solicit {+	struct icmp6_hdr  nd_ns_hdr;+	struct in6_addr   nd_ns_target;+};++#define nd_ns_type               nd_ns_hdr.icmp6_type+#define nd_ns_code               nd_ns_hdr.icmp6_code+#define nd_ns_cksum              nd_ns_hdr.icmp6_cksum+#define nd_ns_reserved           nd_ns_hdr.icmp6_data32[0]++struct nd_neighbor_advert {+	struct icmp6_hdr  nd_na_hdr;+	struct in6_addr   nd_na_target;+};++#define nd_na_type               nd_na_hdr.icmp6_type+#define nd_na_code               nd_na_hdr.icmp6_code+#define nd_na_cksum              nd_na_hdr.icmp6_cksum+#define nd_na_flags_reserved     nd_na_hdr.icmp6_data32[0]+#if     __BYTE_ORDER == __BIG_ENDIAN+#define ND_NA_FLAG_ROUTER        0x80000000+#define ND_NA_FLAG_SOLICITED     0x40000000+#define ND_NA_FLAG_OVERRIDE      0x20000000+#else+#define ND_NA_FLAG_ROUTER        0x00000080+#define ND_NA_FLAG_SOLICITED     0x00000040+#define ND_NA_FLAG_OVERRIDE      0x00000020+#endif++struct nd_redirect {+	struct icmp6_hdr  nd_rd_hdr;+	struct in6_addr   nd_rd_target;+	struct in6_addr   nd_rd_dst;+};++#define nd_rd_type               nd_rd_hdr.icmp6_type+#define nd_rd_code               nd_rd_hdr.icmp6_code+#define nd_rd_cksum              nd_rd_hdr.icmp6_cksum+#define nd_rd_reserved           nd_rd_hdr.icmp6_data32[0]++struct nd_opt_hdr {+	uint8_t  nd_opt_type;+	uint8_t  nd_opt_len;+};++#define ND_OPT_SOURCE_LINKADDR		1+#define ND_OPT_TARGET_LINKADDR		2+#define ND_OPT_PREFIX_INFORMATION	3+#define ND_OPT_REDIRECTED_HEADER	4+#define ND_OPT_MTU			5+#define ND_OPT_RTR_ADV_INTERVAL		7+#define ND_OPT_HOME_AGENT_INFO		8++struct nd_opt_prefix_info {+	uint8_t   nd_opt_pi_type;+	uint8_t   nd_opt_pi_len;+	uint8_t   nd_opt_pi_prefix_len;+	uint8_t   nd_opt_pi_flags_reserved;+	uint32_t  nd_opt_pi_valid_time;+	uint32_t  nd_opt_pi_preferred_time;+	uint32_t  nd_opt_pi_reserved2;+	struct in6_addr  nd_opt_pi_prefix;+};++#define ND_OPT_PI_FLAG_ONLINK	0x80+#define ND_OPT_PI_FLAG_AUTO	0x40+#define ND_OPT_PI_FLAG_RADDR	0x20++struct nd_opt_rd_hdr {+	uint8_t   nd_opt_rh_type;+	uint8_t   nd_opt_rh_len;+	uint16_t  nd_opt_rh_reserved1;+	uint32_t  nd_opt_rh_reserved2;+};++struct nd_opt_mtu {+	uint8_t   nd_opt_mtu_type;+	uint8_t   nd_opt_mtu_len;+	uint16_t  nd_opt_mtu_reserved;+	uint32_t  nd_opt_mtu_mtu;+};++struct mld_hdr {+	struct icmp6_hdr    mld_icmp6_hdr;+	struct in6_addr     mld_addr;+};++#define mld_type        mld_icmp6_hdr.icmp6_type+#define mld_code        mld_icmp6_hdr.icmp6_code+#define mld_cksum       mld_icmp6_hdr.icmp6_cksum+#define mld_maxdelay    mld_icmp6_hdr.icmp6_data16[0]+#define mld_reserved    mld_icmp6_hdr.icmp6_data16[1]++#define ICMP6_ROUTER_RENUMBERING    138++struct icmp6_router_renum {+	struct icmp6_hdr    rr_hdr;+	uint8_t             rr_segnum;+	uint8_t             rr_flags;+	uint16_t            rr_maxdelay;+	uint32_t            rr_reserved;+};++#define rr_type		rr_hdr.icmp6_type+#define rr_code         rr_hdr.icmp6_code+#define rr_cksum        rr_hdr.icmp6_cksum+#define rr_seqnum       rr_hdr.icmp6_data32[0]++#define ICMP6_RR_FLAGS_TEST             0x80+#define ICMP6_RR_FLAGS_REQRESULT        0x40+#define ICMP6_RR_FLAGS_FORCEAPPLY       0x20+#define ICMP6_RR_FLAGS_SPECSITE         0x10+#define ICMP6_RR_FLAGS_PREVDONE         0x08++struct rr_pco_match {+	uint8_t             rpm_code;+	uint8_t             rpm_len;+	uint8_t             rpm_ordinal;+	uint8_t             rpm_matchlen;+	uint8_t             rpm_minlen;+	uint8_t             rpm_maxlen;+	uint16_t            rpm_reserved;+	struct in6_addr     rpm_prefix;+};++#define RPM_PCO_ADD             1+#define RPM_PCO_CHANGE          2+#define RPM_PCO_SETGLOBAL       3++struct rr_pco_use {+	uint8_t             rpu_uselen;+	uint8_t             rpu_keeplen;+	uint8_t             rpu_ramask;+	uint8_t             rpu_raflags;+	uint32_t            rpu_vltime;+	uint32_t            rpu_pltime;+	uint32_t            rpu_flags;+	struct in6_addr     rpu_prefix;+};++#define ICMP6_RR_PCOUSE_RAFLAGS_ONLINK  0x20+#define ICMP6_RR_PCOUSE_RAFLAGS_AUTO    0x10++#if __BYTE_ORDER == __BIG_ENDIAN+#define ICMP6_RR_PCOUSE_FLAGS_DECRVLTIME 0x80000000+#define ICMP6_RR_PCOUSE_FLAGS_DECRPLTIME 0x40000000+#else+#define ICMP6_RR_PCOUSE_FLAGS_DECRVLTIME 0x80+#define ICMP6_RR_PCOUSE_FLAGS_DECRPLTIME 0x40+#endif++struct rr_result {+	uint16_t            rrr_flags;+	uint8_t             rrr_ordinal;+	uint8_t             rrr_matchedlen;+	uint32_t            rrr_ifid;+	struct in6_addr     rrr_prefix;+};++#if __BYTE_ORDER == __BIG_ENDIAN+#define ICMP6_RR_RESULT_FLAGS_OOB       0x0002+#define ICMP6_RR_RESULT_FLAGS_FORBIDDEN 0x0001+#else+#define ICMP6_RR_RESULT_FLAGS_OOB       0x0200+#define ICMP6_RR_RESULT_FLAGS_FORBIDDEN 0x0100+#endif++struct nd_opt_adv_interval {+	uint8_t   nd_opt_adv_interval_type;+	uint8_t   nd_opt_adv_interval_len;+	uint16_t  nd_opt_adv_interval_reserved;+	uint32_t  nd_opt_adv_interval_ival;+};++struct nd_opt_home_agent_info {+	uint8_t   nd_opt_home_agent_info_type;+	uint8_t   nd_opt_home_agent_info_len;+	uint16_t  nd_opt_home_agent_info_reserved;+	uint16_t  nd_opt_home_agent_info_preference;+	uint16_t  nd_opt_home_agent_info_lifetime;+};++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/arm/netinet/if_ether.h view
@@ -0,0 +1,149 @@+#ifndef _NETINET_IF_ETHER_H+#define _NETINET_IF_ETHER_H++#include <stdint.h>+#include <sys/types.h>++#define ETH_ALEN	6+#define ETH_TLEN	2+#define ETH_HLEN	14+#define ETH_ZLEN	60+#define ETH_DATA_LEN	1500+#define ETH_FRAME_LEN	1514+#define ETH_FCS_LEN	4+#define ETH_MIN_MTU	68+#define ETH_MAX_MTU	0xFFFFU++#define ETH_P_LOOP	0x0060+#define ETH_P_PUP	0x0200+#define ETH_P_PUPAT	0x0201+#define ETH_P_TSN	0x22F0+#define ETH_P_ERSPAN2	0x22EB+#define ETH_P_IP	0x0800+#define ETH_P_X25	0x0805+#define ETH_P_ARP	0x0806+#define	ETH_P_BPQ	0x08FF+#define ETH_P_IEEEPUP	0x0a00+#define ETH_P_IEEEPUPAT	0x0a01+#define ETH_P_BATMAN	0x4305+#define ETH_P_DEC       0x6000+#define ETH_P_DNA_DL    0x6001+#define ETH_P_DNA_RC    0x6002+#define ETH_P_DNA_RT    0x6003+#define ETH_P_LAT       0x6004+#define ETH_P_DIAG      0x6005+#define ETH_P_CUST      0x6006+#define ETH_P_SCA       0x6007+#define ETH_P_TEB	0x6558+#define ETH_P_RARP      0x8035+#define ETH_P_ATALK	0x809B+#define ETH_P_AARP	0x80F3+#define ETH_P_8021Q	0x8100+#define ETH_P_IPX	0x8137+#define ETH_P_IPV6	0x86DD+#define ETH_P_PAUSE	0x8808+#define ETH_P_SLOW	0x8809+#define ETH_P_WCCP	0x883E+#define ETH_P_MPLS_UC	0x8847+#define ETH_P_MPLS_MC	0x8848+#define ETH_P_ATMMPOA	0x884c+#define ETH_P_PPP_DISC	0x8863+#define ETH_P_PPP_SES	0x8864+#define ETH_P_LINK_CTL	0x886c+#define ETH_P_ATMFATE	0x8884+#define ETH_P_PAE	0x888E+#define ETH_P_AOE	0x88A2+#define ETH_P_8021AD	0x88A8+#define ETH_P_802_EX1	0x88B5+#define ETH_P_ERSPAN	0x88BE+#define ETH_P_PREAUTH	0x88C7+#define ETH_P_TIPC	0x88CA+#define ETH_P_LLDP	0x88CC+#define ETH_P_MRP	0x88E3+#define ETH_P_MACSEC	0x88E5+#define ETH_P_8021AH	0x88E7+#define ETH_P_MVRP	0x88F5+#define ETH_P_1588	0x88F7+#define ETH_P_NCSI	0x88F8+#define ETH_P_PRP	0x88FB+#define ETH_P_CFM	0x8902+#define ETH_P_FCOE	0x8906+#define ETH_P_TDLS	0x890D+#define ETH_P_FIP	0x8914+#define ETH_P_IBOE	0x8915+#define ETH_P_80221	0x8917+#define ETH_P_HSR	0x892F+#define ETH_P_NSH	0x894F+#define ETH_P_LOOPBACK	0x9000+#define ETH_P_QINQ1	0x9100+#define ETH_P_QINQ2	0x9200+#define ETH_P_QINQ3	0x9300+#define ETH_P_EDSA	0xDADA+#define ETH_P_DSA_8021Q	0xDADB+#define ETH_P_IFE	0xED3E+#define ETH_P_AF_IUCV	0xFBFB++#define ETH_P_802_3_MIN	0x0600++#define ETH_P_802_3	0x0001+#define ETH_P_AX25	0x0002+#define ETH_P_ALL	0x0003+#define ETH_P_802_2	0x0004+#define ETH_P_SNAP	0x0005+#define ETH_P_DDCMP     0x0006+#define ETH_P_WAN_PPP   0x0007+#define ETH_P_PPP_MP    0x0008+#define ETH_P_LOCALTALK 0x0009+#define ETH_P_CAN	0x000C+#define ETH_P_CANFD	0x000D+#define ETH_P_PPPTALK	0x0010+#define ETH_P_TR_802_2	0x0011+#define ETH_P_MOBITEX	0x0015+#define ETH_P_CONTROL	0x0016+#define ETH_P_IRDA	0x0017+#define ETH_P_ECONET	0x0018+#define ETH_P_HDLC	0x0019+#define ETH_P_ARCNET	0x001A+#define ETH_P_DSA	0x001B+#define ETH_P_TRAILER	0x001C+#define ETH_P_PHONET	0x00F5+#define ETH_P_IEEE802154 0x00F6+#define ETH_P_CAIF	0x00F7+#define ETH_P_XDSA	0x00F8+#define ETH_P_MAP	0x00F9++struct ethhdr {+	uint8_t h_dest[ETH_ALEN];+	uint8_t h_source[ETH_ALEN];+	uint16_t h_proto;+};++#include <net/ethernet.h>+#include <net/if_arp.h>++struct	ether_arp {+	struct	arphdr ea_hdr;+	uint8_t arp_sha[ETH_ALEN];+	uint8_t arp_spa[4];+	uint8_t arp_tha[ETH_ALEN];+	uint8_t arp_tpa[4];+};+#define	arp_hrd	ea_hdr.ar_hrd+#define	arp_pro	ea_hdr.ar_pro+#define	arp_hln	ea_hdr.ar_hln+#define	arp_pln	ea_hdr.ar_pln+#define	arp_op	ea_hdr.ar_op++#define ETHER_MAP_IP_MULTICAST(ipaddr, enaddr) \+do { \+	(enaddr)[0] = 0x01; \+	(enaddr)[1] = 0x00; \+	(enaddr)[2] = 0x5e; \+	(enaddr)[3] = ((uint8_t *)ipaddr)[1] & 0x7f; \+	(enaddr)[4] = ((uint8_t *)ipaddr)[2]; \+	(enaddr)[5] = ((uint8_t *)ipaddr)[3]; \+} while(0)++#define __UAPI_DEF_ETHHDR       0++#endif
+ musl-include/arm/netinet/igmp.h view
@@ -0,0 +1,45 @@+#ifndef _NETINET_IGMP_H+#define _NETINET_IGMP_H++#include <stdint.h>+#include <netinet/in.h>++struct igmp {+	uint8_t igmp_type;+	uint8_t igmp_code;+	uint16_t igmp_cksum;+	struct in_addr igmp_group;+};++#define IGMP_MINLEN			8++#define IGMP_MEMBERSHIP_QUERY   	0x11+#define IGMP_V1_MEMBERSHIP_REPORT	0x12+#define IGMP_V2_MEMBERSHIP_REPORT	0x16+#define IGMP_V2_LEAVE_GROUP		0x17++#define IGMP_DVMRP			0x13+#define IGMP_PIM			0x14+#define IGMP_TRACE			0x15++#define IGMP_MTRACE_RESP		0x1e+#define IGMP_MTRACE			0x1f++#define IGMP_MAX_HOST_REPORT_DELAY	10+#define IGMP_TIMER_SCALE		10++#define IGMP_DELAYING_MEMBER	1+#define IGMP_IDLE_MEMBER	2+#define IGMP_LAZY_MEMBER	3+#define IGMP_SLEEPING_MEMBER	4+#define IGMP_AWAKENING_MEMBER	5++#define IGMP_v1_ROUTER		1+#define IGMP_v2_ROUTER		2++#define IGMP_HOST_MEMBERSHIP_QUERY	IGMP_MEMBERSHIP_QUERY+#define IGMP_HOST_MEMBERSHIP_REPORT	IGMP_V1_MEMBERSHIP_REPORT+#define IGMP_HOST_NEW_MEMBERSHIP_REPORT	IGMP_V2_MEMBERSHIP_REPORT+#define IGMP_HOST_LEAVE_MESSAGE		IGMP_V2_LEAVE_GROUP++#endif
+ musl-include/arm/netinet/in.h view
@@ -0,0 +1,417 @@+#ifndef	_NETINET_IN_H+#define	_NETINET_IN_H++#ifdef __cplusplus+extern "C" {+#endif++#include <features.h>+#include <inttypes.h>+#include <sys/socket.h>++typedef uint16_t in_port_t;+typedef uint32_t in_addr_t;+struct in_addr { in_addr_t s_addr; };++struct sockaddr_in {+	sa_family_t sin_family;+	in_port_t sin_port;+	struct in_addr sin_addr;+	uint8_t sin_zero[8];+};++struct in6_addr {+	union {+		uint8_t __s6_addr[16];+		uint16_t __s6_addr16[8];+		uint32_t __s6_addr32[4];+	} __in6_union;+};+#define s6_addr __in6_union.__s6_addr+#define s6_addr16 __in6_union.__s6_addr16+#define s6_addr32 __in6_union.__s6_addr32++struct sockaddr_in6 {+	sa_family_t     sin6_family;+	in_port_t       sin6_port;+	uint32_t        sin6_flowinfo;+	struct in6_addr sin6_addr;+	uint32_t        sin6_scope_id;+};++struct ipv6_mreq {+	struct in6_addr ipv6mr_multiaddr;+	unsigned        ipv6mr_interface;+};++#define INADDR_ANY        ((in_addr_t) 0x00000000)+#define INADDR_BROADCAST  ((in_addr_t) 0xffffffff)+#define INADDR_NONE       ((in_addr_t) 0xffffffff)+#define INADDR_LOOPBACK   ((in_addr_t) 0x7f000001)+#define INADDR_DUMMY      ((in_addr_t) 0xc0000008)++#define INADDR_UNSPEC_GROUP     ((in_addr_t) 0xe0000000)+#define INADDR_ALLHOSTS_GROUP   ((in_addr_t) 0xe0000001)+#define INADDR_ALLRTRS_GROUP    ((in_addr_t) 0xe0000002)+#define INADDR_ALLSNOOPERS_GROUP ((in_addr_t) 0xe000006a)+#define INADDR_MAX_LOCAL_GROUP  ((in_addr_t) 0xe00000ff)++#define IN6ADDR_ANY_INIT      { { { 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 } } }+#define IN6ADDR_LOOPBACK_INIT { { { 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1 } } }++extern const struct in6_addr in6addr_any, in6addr_loopback;++#define INET_ADDRSTRLEN  16+#define INET6_ADDRSTRLEN 46++uint32_t htonl(uint32_t);+uint16_t htons(uint16_t);+uint32_t ntohl(uint32_t);+uint16_t ntohs(uint16_t);++#define IPPORT_RESERVED 1024++#define IPPROTO_IP       0+#define IPPROTO_HOPOPTS  0+#define IPPROTO_ICMP     1+#define IPPROTO_IGMP     2+#define IPPROTO_IPIP     4+#define IPPROTO_TCP      6+#define IPPROTO_EGP      8+#define IPPROTO_PUP      12+#define IPPROTO_UDP      17+#define IPPROTO_IDP      22+#define IPPROTO_TP       29+#define IPPROTO_DCCP     33+#define IPPROTO_IPV6     41+#define IPPROTO_ROUTING  43+#define IPPROTO_FRAGMENT 44+#define IPPROTO_RSVP     46+#define IPPROTO_GRE      47+#define IPPROTO_ESP      50+#define IPPROTO_AH       51+#define IPPROTO_ICMPV6   58+#define IPPROTO_NONE     59+#define IPPROTO_DSTOPTS  60+#define IPPROTO_MTP      92+#define IPPROTO_BEETPH   94+#define IPPROTO_ENCAP    98+#define IPPROTO_PIM      103+#define IPPROTO_COMP     108+#define IPPROTO_SCTP     132+#define IPPROTO_MH       135+#define IPPROTO_UDPLITE  136+#define IPPROTO_MPLS     137+#define IPPROTO_ETHERNET 143+#define IPPROTO_RAW      255+#define IPPROTO_MPTCP    262+#define IPPROTO_MAX      263++#define IN6_IS_ADDR_UNSPECIFIED(a) \+        (((uint32_t *) (a))[0] == 0 && ((uint32_t *) (a))[1] == 0 && \+         ((uint32_t *) (a))[2] == 0 && ((uint32_t *) (a))[3] == 0)++#define IN6_IS_ADDR_LOOPBACK(a) \+        (((uint32_t *) (a))[0] == 0 && ((uint32_t *) (a))[1] == 0 && \+         ((uint32_t *) (a))[2] == 0 && \+         ((uint8_t *) (a))[12] == 0 && ((uint8_t *) (a))[13] == 0 && \+         ((uint8_t *) (a))[14] == 0 && ((uint8_t *) (a))[15] == 1 )++#define IN6_IS_ADDR_MULTICAST(a) (((uint8_t *) (a))[0] == 0xff)++#define IN6_IS_ADDR_LINKLOCAL(a) \+        ((((uint8_t *) (a))[0]) == 0xfe && (((uint8_t *) (a))[1] & 0xc0) == 0x80)++#define IN6_IS_ADDR_SITELOCAL(a) \+        ((((uint8_t *) (a))[0]) == 0xfe && (((uint8_t *) (a))[1] & 0xc0) == 0xc0)++#define IN6_IS_ADDR_V4MAPPED(a) \+        (((uint32_t *) (a))[0] == 0 && ((uint32_t *) (a))[1] == 0 && \+         ((uint8_t *) (a))[8] == 0 && ((uint8_t *) (a))[9] == 0 && \+         ((uint8_t *) (a))[10] == 0xff && ((uint8_t *) (a))[11] == 0xff)++#define IN6_IS_ADDR_V4COMPAT(a) \+        (((uint32_t *) (a))[0] == 0 && ((uint32_t *) (a))[1] == 0 && \+         ((uint32_t *) (a))[2] == 0 && ((uint8_t *) (a))[15] > 1)++#define IN6_IS_ADDR_MC_NODELOCAL(a) \+        (IN6_IS_ADDR_MULTICAST(a) && ((((uint8_t *) (a))[1] & 0xf) == 0x1))++#define IN6_IS_ADDR_MC_LINKLOCAL(a) \+        (IN6_IS_ADDR_MULTICAST(a) && ((((uint8_t *) (a))[1] & 0xf) == 0x2))++#define IN6_IS_ADDR_MC_SITELOCAL(a) \+        (IN6_IS_ADDR_MULTICAST(a) && ((((uint8_t *) (a))[1] & 0xf) == 0x5))++#define IN6_IS_ADDR_MC_ORGLOCAL(a) \+        (IN6_IS_ADDR_MULTICAST(a) && ((((uint8_t *) (a))[1] & 0xf) == 0x8))++#define IN6_IS_ADDR_MC_GLOBAL(a) \+        (IN6_IS_ADDR_MULTICAST(a) && ((((uint8_t *) (a))[1] & 0xf) == 0xe))++#define __ARE_4_EQUAL(a,b) \+	(!( (0[a]-0[b]) | (1[a]-1[b]) | (2[a]-2[b]) | (3[a]-3[b]) ))+#define IN6_ARE_ADDR_EQUAL(a,b) \+	__ARE_4_EQUAL((const uint32_t *)(a), (const uint32_t *)(b))++#define	IN_CLASSA(a)		((((in_addr_t)(a)) & 0x80000000) == 0)+#define	IN_CLASSA_NET		0xff000000+#define	IN_CLASSA_NSHIFT	24+#define	IN_CLASSA_HOST		(0xffffffff & ~IN_CLASSA_NET)+#define	IN_CLASSA_MAX		128+#define	IN_CLASSB(a)		((((in_addr_t)(a)) & 0xc0000000) == 0x80000000)+#define	IN_CLASSB_NET		0xffff0000+#define	IN_CLASSB_NSHIFT	16+#define	IN_CLASSB_HOST		(0xffffffff & ~IN_CLASSB_NET)+#define	IN_CLASSB_MAX		65536+#define	IN_CLASSC(a)		((((in_addr_t)(a)) & 0xe0000000) == 0xc0000000)+#define	IN_CLASSC_NET		0xffffff00+#define	IN_CLASSC_NSHIFT	8+#define	IN_CLASSC_HOST		(0xffffffff & ~IN_CLASSC_NET)+#define	IN_CLASSD(a)		((((in_addr_t)(a)) & 0xf0000000) == 0xe0000000)+#define	IN_MULTICAST(a)		IN_CLASSD(a)+#define	IN_EXPERIMENTAL(a)	((((in_addr_t)(a)) & 0xe0000000) == 0xe0000000)+#define	IN_BADCLASS(a)		((((in_addr_t)(a)) & 0xf0000000) == 0xf0000000)++#define IN_LOOPBACKNET 127+++#define IP_TOS             1+#define IP_TTL             2+#define IP_HDRINCL         3+#define IP_OPTIONS         4+#define IP_ROUTER_ALERT    5+#define IP_RECVOPTS        6+#define IP_RETOPTS         7+#define IP_PKTINFO         8+#define IP_PKTOPTIONS      9+#define IP_PMTUDISC        10+#define IP_MTU_DISCOVER    10+#define IP_RECVERR         11+#define IP_RECVTTL         12+#define IP_RECVTOS         13+#define IP_MTU             14+#define IP_FREEBIND        15+#define IP_IPSEC_POLICY    16+#define IP_XFRM_POLICY     17+#define IP_PASSSEC         18+#define IP_TRANSPARENT     19+#define IP_ORIGDSTADDR     20+#define IP_RECVORIGDSTADDR IP_ORIGDSTADDR+#define IP_MINTTL          21+#define IP_NODEFRAG        22+#define IP_CHECKSUM        23+#define IP_BIND_ADDRESS_NO_PORT 24+#define IP_RECVFRAGSIZE    25+#define IP_RECVERR_RFC4884 26+#define IP_MULTICAST_IF    32+#define IP_MULTICAST_TTL   33+#define IP_MULTICAST_LOOP  34+#define IP_ADD_MEMBERSHIP  35+#define IP_DROP_MEMBERSHIP 36+#define IP_UNBLOCK_SOURCE  37+#define IP_BLOCK_SOURCE    38+#define IP_ADD_SOURCE_MEMBERSHIP  39+#define IP_DROP_SOURCE_MEMBERSHIP 40+#define IP_MSFILTER        41+#define IP_MULTICAST_ALL   49+#define IP_UNICAST_IF      50++#define IP_RECVRETOPTS IP_RETOPTS++#define IP_PMTUDISC_DONT   0+#define IP_PMTUDISC_WANT   1+#define IP_PMTUDISC_DO     2+#define IP_PMTUDISC_PROBE  3+#define IP_PMTUDISC_INTERFACE 4+#define IP_PMTUDISC_OMIT   5++#define IP_DEFAULT_MULTICAST_TTL        1+#define IP_DEFAULT_MULTICAST_LOOP       1+#define IP_MAX_MEMBERSHIPS              20++struct ip_opts {+	struct in_addr ip_dst;+	char ip_opts[40];+};++#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE)++#define MCAST_JOIN_GROUP   42+#define MCAST_BLOCK_SOURCE 43+#define MCAST_UNBLOCK_SOURCE      44+#define MCAST_LEAVE_GROUP  45+#define MCAST_JOIN_SOURCE_GROUP   46+#define MCAST_LEAVE_SOURCE_GROUP  47+#define MCAST_MSFILTER     48++#define MCAST_EXCLUDE 0+#define MCAST_INCLUDE 1++struct ip_mreq {+	struct in_addr imr_multiaddr;+	struct in_addr imr_interface;+};++struct ip_mreqn {+	struct in_addr imr_multiaddr;+	struct in_addr imr_address;+	int imr_ifindex;+};++struct ip_mreq_source {+	struct in_addr imr_multiaddr;+	struct in_addr imr_interface;+	struct in_addr imr_sourceaddr;+};++struct ip_msfilter {+	struct in_addr imsf_multiaddr;+	struct in_addr imsf_interface;+	uint32_t imsf_fmode;+	uint32_t imsf_numsrc;+	struct in_addr imsf_slist[1];+};+#define IP_MSFILTER_SIZE(numsrc) \+	(sizeof(struct ip_msfilter) - sizeof(struct in_addr) \+	+ (numsrc) * sizeof(struct in_addr))++struct group_req {+	uint32_t gr_interface;+	struct sockaddr_storage gr_group;+};++struct group_source_req {+	uint32_t gsr_interface;+	struct sockaddr_storage gsr_group;+	struct sockaddr_storage gsr_source;+};++struct group_filter {+	uint32_t gf_interface;+	struct sockaddr_storage gf_group;+	uint32_t gf_fmode;+	uint32_t gf_numsrc;+	struct sockaddr_storage gf_slist[1];+};+#define GROUP_FILTER_SIZE(numsrc) \+	(sizeof(struct group_filter) - sizeof(struct sockaddr_storage) \+	+ (numsrc) * sizeof(struct sockaddr_storage))++struct in_pktinfo {+	int ipi_ifindex;+	struct in_addr ipi_spec_dst;+	struct in_addr ipi_addr;+};++struct in6_pktinfo {+	struct in6_addr ipi6_addr;+	unsigned ipi6_ifindex;+};++struct ip6_mtuinfo {+	struct sockaddr_in6 ip6m_addr;+	uint32_t ip6m_mtu;+};+#endif++#define IPV6_ADDRFORM           1+#define IPV6_2292PKTINFO        2+#define IPV6_2292HOPOPTS        3+#define IPV6_2292DSTOPTS        4+#define IPV6_2292RTHDR          5+#define IPV6_2292PKTOPTIONS     6+#define IPV6_CHECKSUM           7+#define IPV6_2292HOPLIMIT       8+#define IPV6_NEXTHOP            9+#define IPV6_AUTHHDR            10+#define IPV6_UNICAST_HOPS       16+#define IPV6_MULTICAST_IF       17+#define IPV6_MULTICAST_HOPS     18+#define IPV6_MULTICAST_LOOP     19+#define IPV6_JOIN_GROUP         20+#define IPV6_LEAVE_GROUP        21+#define IPV6_ROUTER_ALERT       22+#define IPV6_MTU_DISCOVER       23+#define IPV6_MTU                24+#define IPV6_RECVERR            25+#define IPV6_V6ONLY             26+#define IPV6_JOIN_ANYCAST       27+#define IPV6_LEAVE_ANYCAST      28+#define IPV6_MULTICAST_ALL      29+#define IPV6_ROUTER_ALERT_ISOLATE 30+#define IPV6_IPSEC_POLICY       34+#define IPV6_XFRM_POLICY        35+#define IPV6_HDRINCL            36++#define IPV6_RECVPKTINFO        49+#define IPV6_PKTINFO            50+#define IPV6_RECVHOPLIMIT       51+#define IPV6_HOPLIMIT           52+#define IPV6_RECVHOPOPTS        53+#define IPV6_HOPOPTS            54+#define IPV6_RTHDRDSTOPTS       55+#define IPV6_RECVRTHDR          56+#define IPV6_RTHDR              57+#define IPV6_RECVDSTOPTS        58+#define IPV6_DSTOPTS            59+#define IPV6_RECVPATHMTU        60+#define IPV6_PATHMTU            61+#define IPV6_DONTFRAG           62+#define IPV6_RECVTCLASS         66+#define IPV6_TCLASS             67+#define IPV6_AUTOFLOWLABEL      70+#define IPV6_ADDR_PREFERENCES   72+#define IPV6_MINHOPCOUNT        73+#define IPV6_ORIGDSTADDR        74+#define IPV6_RECVORIGDSTADDR    IPV6_ORIGDSTADDR+#define IPV6_TRANSPARENT        75+#define IPV6_UNICAST_IF         76+#define IPV6_RECVFRAGSIZE       77+#define IPV6_FREEBIND           78++#define IPV6_ADD_MEMBERSHIP     IPV6_JOIN_GROUP+#define IPV6_DROP_MEMBERSHIP    IPV6_LEAVE_GROUP+#define IPV6_RXHOPOPTS          IPV6_HOPOPTS+#define IPV6_RXDSTOPTS          IPV6_DSTOPTS++#define IPV6_PMTUDISC_DONT      0+#define IPV6_PMTUDISC_WANT      1+#define IPV6_PMTUDISC_DO        2+#define IPV6_PMTUDISC_PROBE     3+#define IPV6_PMTUDISC_INTERFACE 4+#define IPV6_PMTUDISC_OMIT      5++#define IPV6_PREFER_SRC_TMP            0x0001+#define IPV6_PREFER_SRC_PUBLIC         0x0002+#define IPV6_PREFER_SRC_PUBTMP_DEFAULT 0x0100+#define IPV6_PREFER_SRC_COA            0x0004+#define IPV6_PREFER_SRC_HOME           0x0400+#define IPV6_PREFER_SRC_CGA            0x0008+#define IPV6_PREFER_SRC_NONCGA         0x0800++#define IPV6_RTHDR_LOOSE        0+#define IPV6_RTHDR_STRICT       1++#define IPV6_RTHDR_TYPE_0       0++#define __UAPI_DEF_IN_ADDR      0+#define __UAPI_DEF_IN_IPPROTO   0+#define __UAPI_DEF_IN_PKTINFO   0+#define __UAPI_DEF_IP_MREQ      0+#define __UAPI_DEF_SOCKADDR_IN  0+#define __UAPI_DEF_IN_CLASS     0+#define __UAPI_DEF_IN6_ADDR     0+#define __UAPI_DEF_IN6_ADDR_ALT 0+#define __UAPI_DEF_SOCKADDR_IN6 0+#define __UAPI_DEF_IPV6_MREQ    0+#define __UAPI_DEF_IPPROTO_V6   0+#define __UAPI_DEF_IPV6_OPTIONS 0+#define __UAPI_DEF_IN6_PKTINFO  0+#define __UAPI_DEF_IP6_MTUINFO  0++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/arm/netinet/in_systm.h view
@@ -0,0 +1,9 @@+#ifndef _NETINET_IN_SYSTM_H+#define _NETINET_IN_SYSTM_H++#include <stdint.h>++typedef uint16_t n_short;+typedef uint32_t n_long, n_time;++#endif
+ musl-include/arm/netinet/ip.h view
@@ -0,0 +1,199 @@+#ifndef _NETINET_IP_H+#define _NETINET_IP_H++#ifdef __cplusplus+extern "C" {+#endif++#include <stdint.h>+#include <netinet/in.h>++struct timestamp {+	uint8_t len;+	uint8_t ptr;+#if __BYTE_ORDER == __LITTLE_ENDIAN+	unsigned int flags:4;+	unsigned int overflow:4;+#else+	unsigned int overflow:4;+	unsigned int flags:4;+#endif+	uint32_t data[9];+  };++struct iphdr {+#if __BYTE_ORDER == __LITTLE_ENDIAN+	unsigned int ihl:4;+	unsigned int version:4;+#else+	unsigned int version:4;+	unsigned int ihl:4;+#endif+	uint8_t tos;+	uint16_t tot_len;+	uint16_t id;+	uint16_t frag_off;+	uint8_t ttl;+	uint8_t protocol;+	uint16_t check;+	uint32_t saddr;+	uint32_t daddr;+};++struct ip {+#if __BYTE_ORDER == __LITTLE_ENDIAN+	unsigned int ip_hl:4;+	unsigned int ip_v:4;+#else+	unsigned int ip_v:4;+	unsigned int ip_hl:4;+#endif+	uint8_t ip_tos;+	uint16_t ip_len;+	uint16_t ip_id;+	uint16_t ip_off;+	uint8_t ip_ttl;+	uint8_t ip_p;+	uint16_t ip_sum;+	struct in_addr ip_src, ip_dst;+};++#define	IP_RF 0x8000+#define	IP_DF 0x4000+#define	IP_MF 0x2000+#define	IP_OFFMASK 0x1fff++struct ip_timestamp {+	uint8_t ipt_code;+	uint8_t ipt_len;+	uint8_t ipt_ptr;+#if __BYTE_ORDER == __LITTLE_ENDIAN+	unsigned int ipt_flg:4;+	unsigned int ipt_oflw:4;+#else+	unsigned int ipt_oflw:4;+	unsigned int ipt_flg:4;+#endif+	uint32_t data[9];+};++#define	IPVERSION	4+#define	IP_MAXPACKET	65535++#define	IPTOS_ECN_MASK		0x03+#define	IPTOS_ECN(x)		((x) & IPTOS_ECN_MASK)+#define	IPTOS_ECN_NOT_ECT	0x00+#define	IPTOS_ECN_ECT1		0x01+#define	IPTOS_ECN_ECT0		0x02+#define	IPTOS_ECN_CE		0x03++#define	IPTOS_DSCP_MASK		0xfc+#define	IPTOS_DSCP(x)		((x) & IPTOS_DSCP_MASK)+#define	IPTOS_DSCP_AF11		0x28+#define	IPTOS_DSCP_AF12		0x30+#define	IPTOS_DSCP_AF13		0x38+#define	IPTOS_DSCP_AF21		0x48+#define	IPTOS_DSCP_AF22		0x50+#define	IPTOS_DSCP_AF23		0x58+#define	IPTOS_DSCP_AF31		0x68+#define	IPTOS_DSCP_AF32		0x70+#define	IPTOS_DSCP_AF33		0x78+#define	IPTOS_DSCP_AF41		0x88+#define	IPTOS_DSCP_AF42		0x90+#define	IPTOS_DSCP_AF43		0x98+#define	IPTOS_DSCP_EF		0xb8++#define	IPTOS_CLASS_MASK	0xe0+#define	IPTOS_CLASS(x)		((x) & IPTOS_CLASS_MASK)+#define	IPTOS_CLASS_CS0		0x00+#define	IPTOS_CLASS_CS1		0x20+#define	IPTOS_CLASS_CS2		0x40+#define	IPTOS_CLASS_CS3		0x60+#define	IPTOS_CLASS_CS4		0x80+#define	IPTOS_CLASS_CS5		0xa0+#define	IPTOS_CLASS_CS6		0xc0+#define	IPTOS_CLASS_CS7		0xe0+#define	IPTOS_CLASS_DEFAULT	IPTOS_CLASS_CS0++#define	IPTOS_TOS_MASK		0x1E+#define	IPTOS_TOS(tos)		((tos) & IPTOS_TOS_MASK)+#define	IPTOS_LOWDELAY		0x10+#define	IPTOS_THROUGHPUT	0x08+#define	IPTOS_RELIABILITY	0x04+#define	IPTOS_LOWCOST		0x02+#define	IPTOS_MINCOST		IPTOS_LOWCOST++#define	IPTOS_PREC_MASK			0xe0+#define	IPTOS_PREC(tos)                ((tos) & IPTOS_PREC_MASK)+#define	IPTOS_PREC_NETCONTROL		0xe0+#define	IPTOS_PREC_INTERNETCONTROL	0xc0+#define	IPTOS_PREC_CRITIC_ECP		0xa0+#define	IPTOS_PREC_FLASHOVERRIDE	0x80+#define	IPTOS_PREC_FLASH		0x60+#define	IPTOS_PREC_IMMEDIATE		0x40+#define	IPTOS_PREC_PRIORITY		0x20+#define	IPTOS_PREC_ROUTINE		0x00++#define	IPOPT_COPY		0x80+#define	IPOPT_CLASS_MASK	0x60+#define	IPOPT_NUMBER_MASK	0x1f++#define	IPOPT_COPIED(o)		((o) & IPOPT_COPY)+#define	IPOPT_CLASS(o)		((o) & IPOPT_CLASS_MASK)+#define	IPOPT_NUMBER(o)		((o) & IPOPT_NUMBER_MASK)++#define	IPOPT_CONTROL		0x00+#define	IPOPT_RESERVED1		0x20+#define	IPOPT_DEBMEAS		0x40+#define	IPOPT_MEASUREMENT       IPOPT_DEBMEAS+#define	IPOPT_RESERVED2		0x60++#define	IPOPT_EOL		0+#define	IPOPT_END		IPOPT_EOL+#define	IPOPT_NOP		1+#define	IPOPT_NOOP		IPOPT_NOP++#define	IPOPT_RR		7+#define	IPOPT_TS		68+#define	IPOPT_TIMESTAMP		IPOPT_TS+#define	IPOPT_SECURITY		130+#define	IPOPT_SEC		IPOPT_SECURITY+#define	IPOPT_LSRR		131+#define	IPOPT_SATID		136+#define	IPOPT_SID		IPOPT_SATID+#define	IPOPT_SSRR		137+#define	IPOPT_RA		148++#define	IPOPT_OPTVAL		0+#define	IPOPT_OLEN		1+#define	IPOPT_OFFSET		2+#define	IPOPT_MINOFF		4++#define	MAX_IPOPTLEN		40++#define	IPOPT_TS_TSONLY		0+#define	IPOPT_TS_TSANDADDR	1+#define	IPOPT_TS_PRESPEC	3++#define	IPOPT_SECUR_UNCLASS	0x0000+#define	IPOPT_SECUR_CONFID	0xf135+#define	IPOPT_SECUR_EFTO	0x789a+#define	IPOPT_SECUR_MMMM	0xbc4d+#define	IPOPT_SECUR_RESTR	0xaf13+#define	IPOPT_SECUR_SECRET	0xd788+#define	IPOPT_SECUR_TOPSECRET	0x6bc5++#define	MAXTTL		255+#define	IPDEFTTL	64+#define	IPFRAGTTL	60+#define	IPTTLDEC	1++#define	IP_MSS		576++#define __UAPI_DEF_IPHDR	0++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/arm/netinet/ip6.h view
@@ -0,0 +1,141 @@+#ifndef _NETINET_IP6_H+#define _NETINET_IP6_H++#ifdef __cplusplus+extern "C" {+#endif++#include <stdint.h>+#include <netinet/in.h>++struct ip6_hdr {+	union {+		struct ip6_hdrctl {+			uint32_t ip6_un1_flow;+			uint16_t ip6_un1_plen;+			uint8_t  ip6_un1_nxt;+			uint8_t  ip6_un1_hlim;+		} ip6_un1;+		uint8_t ip6_un2_vfc;+	} ip6_ctlun;+	struct in6_addr ip6_src;+	struct in6_addr ip6_dst;+};++#define ip6_vfc   ip6_ctlun.ip6_un2_vfc+#define ip6_flow  ip6_ctlun.ip6_un1.ip6_un1_flow+#define ip6_plen  ip6_ctlun.ip6_un1.ip6_un1_plen+#define ip6_nxt   ip6_ctlun.ip6_un1.ip6_un1_nxt+#define ip6_hlim  ip6_ctlun.ip6_un1.ip6_un1_hlim+#define ip6_hops  ip6_ctlun.ip6_un1.ip6_un1_hlim++struct ip6_ext {+	uint8_t  ip6e_nxt;+	uint8_t  ip6e_len;+};++struct ip6_hbh {+	uint8_t  ip6h_nxt;+	uint8_t  ip6h_len;+};++struct ip6_dest {+	uint8_t  ip6d_nxt;+	uint8_t  ip6d_len;+};++struct ip6_rthdr {+	uint8_t  ip6r_nxt;+	uint8_t  ip6r_len;+	uint8_t  ip6r_type;+	uint8_t  ip6r_segleft;+};++struct ip6_rthdr0 {+	uint8_t  ip6r0_nxt;+	uint8_t  ip6r0_len;+	uint8_t  ip6r0_type;+	uint8_t  ip6r0_segleft;+	uint8_t  ip6r0_reserved;+	uint8_t  ip6r0_slmap[3];+	struct in6_addr ip6r0_addr[];+};++struct ip6_frag {+	uint8_t   ip6f_nxt;+	uint8_t   ip6f_reserved;+	uint16_t  ip6f_offlg;+	uint32_t  ip6f_ident;+};++#if __BYTE_ORDER == __BIG_ENDIAN+#define IP6F_OFF_MASK       0xfff8+#define IP6F_RESERVED_MASK  0x0006+#define IP6F_MORE_FRAG      0x0001+#else+#define IP6F_OFF_MASK       0xf8ff+#define IP6F_RESERVED_MASK  0x0600+#define IP6F_MORE_FRAG      0x0100+#endif++struct ip6_opt {+	uint8_t  ip6o_type;+	uint8_t  ip6o_len;+};++#define IP6OPT_TYPE(o)		((o) & 0xc0)+#define IP6OPT_TYPE_SKIP	0x00+#define IP6OPT_TYPE_DISCARD	0x40+#define IP6OPT_TYPE_FORCEICMP	0x80+#define IP6OPT_TYPE_ICMP	0xc0+#define IP6OPT_TYPE_MUTABLE	0x20++#define IP6OPT_PAD1	0+#define IP6OPT_PADN	1++#define IP6OPT_JUMBO		0xc2+#define IP6OPT_NSAP_ADDR	0xc3+#define IP6OPT_TUNNEL_LIMIT	0x04+#define IP6OPT_ROUTER_ALERT	0x05++struct ip6_opt_jumbo {+	uint8_t  ip6oj_type;+	uint8_t  ip6oj_len;+	uint8_t  ip6oj_jumbo_len[4];+};+#define IP6OPT_JUMBO_LEN	6++struct ip6_opt_nsap {+	uint8_t  ip6on_type;+	uint8_t  ip6on_len;+	uint8_t  ip6on_src_nsap_len;+	uint8_t  ip6on_dst_nsap_len;+};++struct ip6_opt_tunnel {+	uint8_t  ip6ot_type;+	uint8_t  ip6ot_len;+	uint8_t  ip6ot_encap_limit;+};++struct ip6_opt_router {+	uint8_t  ip6or_type;+	uint8_t  ip6or_len;+	uint8_t  ip6or_value[2];+};++#if __BYTE_ORDER == __BIG_ENDIAN+#define IP6_ALERT_MLD	0x0000+#define IP6_ALERT_RSVP	0x0001+#define IP6_ALERT_AN	0x0002+#else+#define IP6_ALERT_MLD	0x0000+#define IP6_ALERT_RSVP	0x0100+#define IP6_ALERT_AN	0x0200+#endif++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/arm/netinet/ip_icmp.h view
@@ -0,0 +1,193 @@+#ifndef _NETINET_IP_ICMP_H+#define _NETINET_IP_ICMP_H++#include <stdint.h>+#include <netinet/in.h>+#include <netinet/ip.h>++#ifdef __cplusplus+extern "C" {+#endif++struct icmphdr {+	uint8_t type;+	uint8_t code;+	uint16_t checksum;+	union {+		struct {+			uint16_t id;+			uint16_t sequence;+		} echo;+		uint32_t gateway;+		struct {+			uint16_t __unused;+			uint16_t mtu;+		} frag;+		uint8_t reserved[4];+	} un;+};++#define ICMP_ECHOREPLY		0+#define ICMP_DEST_UNREACH	3+#define ICMP_SOURCE_QUENCH	4+#define ICMP_REDIRECT		5+#define ICMP_ECHO		8+#define ICMP_TIME_EXCEEDED	11+#define ICMP_PARAMETERPROB	12+#define ICMP_TIMESTAMP		13+#define ICMP_TIMESTAMPREPLY	14+#define ICMP_INFO_REQUEST	15+#define ICMP_INFO_REPLY		16+#define ICMP_ADDRESS		17+#define ICMP_ADDRESSREPLY	18+#define NR_ICMP_TYPES		18+++#define ICMP_NET_UNREACH	0+#define ICMP_HOST_UNREACH	1+#define ICMP_PROT_UNREACH	2+#define ICMP_PORT_UNREACH	3+#define ICMP_FRAG_NEEDED	4+#define ICMP_SR_FAILED		5+#define ICMP_NET_UNKNOWN	6+#define ICMP_HOST_UNKNOWN	7+#define ICMP_HOST_ISOLATED	8+#define ICMP_NET_ANO		9+#define ICMP_HOST_ANO		10+#define ICMP_NET_UNR_TOS	11+#define ICMP_HOST_UNR_TOS	12+#define ICMP_PKT_FILTERED	13+#define ICMP_PREC_VIOLATION	14+#define ICMP_PREC_CUTOFF	15+#define NR_ICMP_UNREACH		15++#define ICMP_REDIR_NET		0+#define ICMP_REDIR_HOST		1+#define ICMP_REDIR_NETTOS	2+#define ICMP_REDIR_HOSTTOS	3++#define ICMP_EXC_TTL		0+#define ICMP_EXC_FRAGTIME	1+++struct icmp_ra_addr {+	uint32_t ira_addr;+	uint32_t ira_preference;+};++struct icmp {+	uint8_t  icmp_type;+	uint8_t  icmp_code;+	uint16_t icmp_cksum;+	union {+		uint8_t ih_pptr;+		struct in_addr ih_gwaddr;+		struct ih_idseq {+			uint16_t icd_id;+			uint16_t icd_seq;+		} ih_idseq;+		uint32_t ih_void;++		struct ih_pmtu {+			uint16_t ipm_void;+			uint16_t ipm_nextmtu;+		} ih_pmtu;++		struct ih_rtradv {+			uint8_t irt_num_addrs;+			uint8_t irt_wpa;+			uint16_t irt_lifetime;+		} ih_rtradv;+	} icmp_hun;+	union {+		struct {+			uint32_t its_otime;+			uint32_t its_rtime;+			uint32_t its_ttime;+		} id_ts;+		struct {+			struct ip idi_ip;+		} id_ip;+		struct icmp_ra_addr id_radv;+		uint32_t   id_mask;+		uint8_t    id_data[1];+	} icmp_dun;+};++#define	icmp_pptr	icmp_hun.ih_pptr+#define	icmp_gwaddr	icmp_hun.ih_gwaddr+#define	icmp_id		icmp_hun.ih_idseq.icd_id+#define	icmp_seq	icmp_hun.ih_idseq.icd_seq+#define	icmp_void	icmp_hun.ih_void+#define	icmp_pmvoid	icmp_hun.ih_pmtu.ipm_void+#define	icmp_nextmtu	icmp_hun.ih_pmtu.ipm_nextmtu+#define	icmp_num_addrs	icmp_hun.ih_rtradv.irt_num_addrs+#define	icmp_wpa	icmp_hun.ih_rtradv.irt_wpa+#define	icmp_lifetime	icmp_hun.ih_rtradv.irt_lifetime+#define	icmp_otime	icmp_dun.id_ts.its_otime+#define	icmp_rtime	icmp_dun.id_ts.its_rtime+#define	icmp_ttime	icmp_dun.id_ts.its_ttime+#define	icmp_ip		icmp_dun.id_ip.idi_ip+#define	icmp_radv	icmp_dun.id_radv+#define	icmp_mask	icmp_dun.id_mask+#define	icmp_data	icmp_dun.id_data++#define	ICMP_MINLEN	8+#define	ICMP_TSLEN	(8 + 3 * sizeof (n_time))+#define	ICMP_MASKLEN	12+#define	ICMP_ADVLENMIN	(8 + sizeof (struct ip) + 8)+#define	ICMP_ADVLEN(p)	(8 + ((p)->icmp_ip.ip_hl << 2) + 8)++#define	ICMP_UNREACH		3+#define	ICMP_SOURCEQUENCH	4+#define	ICMP_ROUTERADVERT	9+#define	ICMP_ROUTERSOLICIT	10+#define	ICMP_TIMXCEED		11+#define	ICMP_PARAMPROB		12+#define	ICMP_TSTAMP		13+#define	ICMP_TSTAMPREPLY	14+#define	ICMP_IREQ		15+#define	ICMP_IREQREPLY		16+#define	ICMP_MASKREQ		17+#define	ICMP_MASKREPLY		18+#define	ICMP_MAXTYPE		18++#define	ICMP_UNREACH_NET	        0+#define	ICMP_UNREACH_HOST	        1+#define	ICMP_UNREACH_PROTOCOL	        2+#define	ICMP_UNREACH_PORT	        3+#define	ICMP_UNREACH_NEEDFRAG	        4+#define	ICMP_UNREACH_SRCFAIL	        5+#define	ICMP_UNREACH_NET_UNKNOWN        6+#define	ICMP_UNREACH_HOST_UNKNOWN       7+#define	ICMP_UNREACH_ISOLATED	        8+#define	ICMP_UNREACH_NET_PROHIB	        9+#define	ICMP_UNREACH_HOST_PROHIB        10+#define	ICMP_UNREACH_TOSNET	        11+#define	ICMP_UNREACH_TOSHOST	        12+#define	ICMP_UNREACH_FILTER_PROHIB      13+#define	ICMP_UNREACH_HOST_PRECEDENCE    14+#define	ICMP_UNREACH_PRECEDENCE_CUTOFF  15++#define	ICMP_REDIRECT_NET	0+#define	ICMP_REDIRECT_HOST	1+#define	ICMP_REDIRECT_TOSNET	2+#define	ICMP_REDIRECT_TOSHOST	3++#define	ICMP_TIMXCEED_INTRANS	0+#define	ICMP_TIMXCEED_REASS	1++#define	ICMP_PARAMPROB_OPTABSENT 1++#define	ICMP_INFOTYPE(type) \+	((type) == ICMP_ECHOREPLY || (type) == ICMP_ECHO || \+	(type) == ICMP_ROUTERADVERT || (type) == ICMP_ROUTERSOLICIT || \+	(type) == ICMP_TSTAMP || (type) == ICMP_TSTAMPREPLY || \+	(type) == ICMP_IREQ || (type) == ICMP_IREQREPLY || \+	(type) == ICMP_MASKREQ || (type) == ICMP_MASKREPLY)++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/arm/netinet/tcp.h view
@@ -0,0 +1,305 @@+#ifndef _NETINET_TCP_H+#define _NETINET_TCP_H++#include <features.h>++#define TCP_NODELAY 1+#define TCP_MAXSEG	 2+#define TCP_CORK	 3+#define TCP_KEEPIDLE	 4+#define TCP_KEEPINTVL	 5+#define TCP_KEEPCNT	 6+#define TCP_SYNCNT	 7+#define TCP_LINGER2	 8+#define TCP_DEFER_ACCEPT 9+#define TCP_WINDOW_CLAMP 10+#define TCP_INFO	 11+#define	TCP_QUICKACK	 12+#define TCP_CONGESTION	 13+#define TCP_MD5SIG	 14+#define TCP_THIN_LINEAR_TIMEOUTS 16+#define TCP_THIN_DUPACK  17+#define TCP_USER_TIMEOUT 18+#define TCP_REPAIR       19+#define TCP_REPAIR_QUEUE 20+#define TCP_QUEUE_SEQ    21+#define TCP_REPAIR_OPTIONS 22+#define TCP_FASTOPEN     23+#define TCP_TIMESTAMP    24+#define TCP_NOTSENT_LOWAT 25+#define TCP_CC_INFO      26+#define TCP_SAVE_SYN     27+#define TCP_SAVED_SYN    28+#define TCP_REPAIR_WINDOW 29+#define TCP_FASTOPEN_CONNECT 30+#define TCP_ULP          31+#define TCP_MD5SIG_EXT   32+#define TCP_FASTOPEN_KEY 33+#define TCP_FASTOPEN_NO_COOKIE 34+#define TCP_ZEROCOPY_RECEIVE   35+#define TCP_INQ          36+#define TCP_TX_DELAY     37++#define TCP_CM_INQ TCP_INQ++#define TCP_ESTABLISHED  1+#define TCP_SYN_SENT     2+#define TCP_SYN_RECV     3+#define TCP_FIN_WAIT1    4+#define TCP_FIN_WAIT2    5+#define TCP_TIME_WAIT    6+#define TCP_CLOSE        7+#define TCP_CLOSE_WAIT   8+#define TCP_LAST_ACK     9+#define TCP_LISTEN       10+#define TCP_CLOSING      11++enum {+	TCP_NLA_PAD,+	TCP_NLA_BUSY,+	TCP_NLA_RWND_LIMITED,+	TCP_NLA_SNDBUF_LIMITED,+	TCP_NLA_DATA_SEGS_OUT,+	TCP_NLA_TOTAL_RETRANS,+	TCP_NLA_PACING_RATE,+	TCP_NLA_DELIVERY_RATE,+	TCP_NLA_SND_CWND,+	TCP_NLA_REORDERING,+	TCP_NLA_MIN_RTT,+	TCP_NLA_RECUR_RETRANS,+	TCP_NLA_DELIVERY_RATE_APP_LMT,+	TCP_NLA_SNDQ_SIZE,+	TCP_NLA_CA_STATE,+	TCP_NLA_SND_SSTHRESH,+	TCP_NLA_DELIVERED,+	TCP_NLA_DELIVERED_CE,+	TCP_NLA_BYTES_SENT,+	TCP_NLA_BYTES_RETRANS,+	TCP_NLA_DSACK_DUPS,+	TCP_NLA_REORD_SEEN,+	TCP_NLA_SRTT,+	TCP_NLA_TIMEOUT_REHASH,+	TCP_NLA_BYTES_NOTSENT,+	TCP_NLA_EDT,+	TCP_NLA_TTL,+};++#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE)+#define TCPOPT_EOL              0+#define TCPOPT_NOP              1+#define TCPOPT_MAXSEG           2+#define TCPOPT_WINDOW           3+#define TCPOPT_SACK_PERMITTED   4+#define TCPOPT_SACK             5+#define TCPOPT_TIMESTAMP        8+#define TCPOLEN_SACK_PERMITTED  2+#define TCPOLEN_WINDOW          3+#define TCPOLEN_MAXSEG          4+#define TCPOLEN_TIMESTAMP       10++#define SOL_TCP 6++#include <sys/types.h>+#include <sys/socket.h>+#include <stdint.h>++typedef uint32_t tcp_seq;++#define TH_FIN 0x01+#define TH_SYN 0x02+#define TH_RST 0x04+#define TH_PUSH 0x08+#define TH_ACK 0x10+#define TH_URG 0x20++struct tcphdr {+#ifdef _GNU_SOURCE+#ifdef __GNUC__+	__extension__+#endif+	union { struct {++	uint16_t source;+	uint16_t dest;+	uint32_t seq;+	uint32_t ack_seq;+#if __BYTE_ORDER == __LITTLE_ENDIAN+	uint16_t res1:4;+	uint16_t doff:4;+	uint16_t fin:1;+	uint16_t syn:1;+	uint16_t rst:1;+	uint16_t psh:1;+	uint16_t ack:1;+	uint16_t urg:1;+	uint16_t res2:2;+#else+	uint16_t doff:4;+	uint16_t res1:4;+	uint16_t res2:2;+	uint16_t urg:1;+	uint16_t ack:1;+	uint16_t psh:1;+	uint16_t rst:1;+	uint16_t syn:1;+	uint16_t fin:1;+#endif+	uint16_t window;+	uint16_t check;+	uint16_t urg_ptr;++	}; struct {+#endif++	uint16_t th_sport;+	uint16_t th_dport;+	uint32_t th_seq;+	uint32_t th_ack;+#if __BYTE_ORDER == __LITTLE_ENDIAN+	uint8_t th_x2:4;+	uint8_t th_off:4;+#else+	uint8_t th_off:4;+	uint8_t th_x2:4;+#endif+	uint8_t th_flags;+	uint16_t th_win;+	uint16_t th_sum;+	uint16_t th_urp;++#ifdef _GNU_SOURCE+	}; };+#endif+};+#endif++#ifdef _GNU_SOURCE+#define TCPI_OPT_TIMESTAMPS	1+#define TCPI_OPT_SACK		2+#define TCPI_OPT_WSCALE		4+#define TCPI_OPT_ECN		8++#define TCP_CA_Open		0+#define TCP_CA_Disorder		1+#define TCP_CA_CWR		2+#define TCP_CA_Recovery		3+#define TCP_CA_Loss		4++enum tcp_fastopen_client_fail {+	TFO_STATUS_UNSPEC,+	TFO_COOKIE_UNAVAILABLE,+	TFO_DATA_NOT_ACKED,+	TFO_SYN_RETRANSMITTED,+};++struct tcp_info {+	uint8_t tcpi_state;+	uint8_t tcpi_ca_state;+	uint8_t tcpi_retransmits;+	uint8_t tcpi_probes;+	uint8_t tcpi_backoff;+	uint8_t tcpi_options;+	uint8_t tcpi_snd_wscale : 4, tcpi_rcv_wscale : 4;+	uint8_t tcpi_delivery_rate_app_limited : 1, tcpi_fastopen_client_fail : 2;+	uint32_t tcpi_rto;+	uint32_t tcpi_ato;+	uint32_t tcpi_snd_mss;+	uint32_t tcpi_rcv_mss;+	uint32_t tcpi_unacked;+	uint32_t tcpi_sacked;+	uint32_t tcpi_lost;+	uint32_t tcpi_retrans;+	uint32_t tcpi_fackets;+	uint32_t tcpi_last_data_sent;+	uint32_t tcpi_last_ack_sent;+	uint32_t tcpi_last_data_recv;+	uint32_t tcpi_last_ack_recv;+	uint32_t tcpi_pmtu;+	uint32_t tcpi_rcv_ssthresh;+	uint32_t tcpi_rtt;+	uint32_t tcpi_rttvar;+	uint32_t tcpi_snd_ssthresh;+	uint32_t tcpi_snd_cwnd;+	uint32_t tcpi_advmss;+	uint32_t tcpi_reordering;+	uint32_t tcpi_rcv_rtt;+	uint32_t tcpi_rcv_space;+	uint32_t tcpi_total_retrans;+	uint64_t tcpi_pacing_rate;+	uint64_t tcpi_max_pacing_rate;+	uint64_t tcpi_bytes_acked;+	uint64_t tcpi_bytes_received;+	uint32_t tcpi_segs_out;+	uint32_t tcpi_segs_in;+	uint32_t tcpi_notsent_bytes;+	uint32_t tcpi_min_rtt;+	uint32_t tcpi_data_segs_in;+	uint32_t tcpi_data_segs_out;+	uint64_t tcpi_delivery_rate;+	uint64_t tcpi_busy_time;+	uint64_t tcpi_rwnd_limited;+	uint64_t tcpi_sndbuf_limited;+	uint32_t tcpi_delivered;+	uint32_t tcpi_delivered_ce;+	uint64_t tcpi_bytes_sent;+	uint64_t tcpi_bytes_retrans;+	uint32_t tcpi_dsack_dups;+	uint32_t tcpi_reord_seen;+	uint32_t tcpi_rcv_ooopack;+	uint32_t tcpi_snd_wnd;+};++#define TCP_MD5SIG_MAXKEYLEN    80++#define TCP_MD5SIG_FLAG_PREFIX  0x1+#define TCP_MD5SIG_FLAG_IFINDEX 0x2++struct tcp_md5sig {+	struct sockaddr_storage tcpm_addr;+	uint8_t tcpm_flags;+	uint8_t tcpm_prefixlen;+	uint16_t tcpm_keylen;+	int tcpm_ifindex;+	uint8_t tcpm_key[TCP_MD5SIG_MAXKEYLEN];+};++struct tcp_diag_md5sig {+	uint8_t tcpm_family;+	uint8_t tcpm_prefixlen;+	uint16_t tcpm_keylen;+	uint32_t tcpm_addr[4];+	uint8_t tcpm_key[TCP_MD5SIG_MAXKEYLEN];+};++#define TCP_REPAIR_ON		1+#define TCP_REPAIR_OFF		0+#define TCP_REPAIR_OFF_NO_WP	-1++struct tcp_repair_window {+	uint32_t snd_wl1;+	uint32_t snd_wnd;+	uint32_t max_window;+	uint32_t rcv_wnd;+	uint32_t rcv_wup;+};++#define TCP_RECEIVE_ZEROCOPY_FLAG_TLB_CLEAN_HINT 0x1++struct tcp_zerocopy_receive {+	uint64_t address;+	uint32_t length;+	uint32_t recv_skip_hint;+	uint32_t inq;+	int32_t err;+	uint64_t copybuf_address;+	int32_t copybuf_len;+	uint32_t flags;+	uint64_t msg_control;+	uint64_t msg_controllen;+	uint32_t msg_flags;+	uint32_t reserved;+};++#endif++#endif
+ musl-include/arm/netinet/udp.h view
@@ -0,0 +1,46 @@+#ifndef _NETINET_UDP_H+#define _NETINET_UDP_H++#ifdef __cplusplus+extern "C" {+#endif++#include <features.h>+#include <stdint.h>++#ifdef _GNU_SOURCE+#define uh_sport source+#define uh_dport dest+#define uh_ulen len+#define uh_sum check+#endif++struct udphdr {+	uint16_t uh_sport;+	uint16_t uh_dport;+	uint16_t uh_ulen;+	uint16_t uh_sum;+};++#define UDP_CORK	1+#define UDP_ENCAP	100+#define UDP_NO_CHECK6_TX 101+#define UDP_NO_CHECK6_RX 102+#define UDP_SEGMENT	103+#define UDP_GRO		104++#define UDP_ENCAP_ESPINUDP_NON_IKE 1+#define UDP_ENCAP_ESPINUDP	2+#define UDP_ENCAP_L2TPINUDP	3+#define UDP_ENCAP_GTP0		4+#define UDP_ENCAP_GTP1U		5+#define UDP_ENCAP_RXRPC		6+#define TCP_ENCAP_ESPINTCP	7++#define SOL_UDP            17++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/arm/netpacket/packet.h view
@@ -0,0 +1,62 @@+#ifndef _NETPACKET_PACKET_H+#define _NETPACKET_PACKET_H++#ifdef __cplusplus+extern "C" {+#endif++struct sockaddr_ll {+	unsigned short sll_family, sll_protocol;+	int sll_ifindex;+	unsigned short sll_hatype;+	unsigned char sll_pkttype, sll_halen;+	unsigned char sll_addr[8];+};++struct packet_mreq {+	int mr_ifindex;+	unsigned short int mr_type,  mr_alen;+	unsigned char mr_address[8];+};++#define PACKET_HOST		0+#define PACKET_BROADCAST	1+#define PACKET_MULTICAST	2+#define PACKET_OTHERHOST	3+#define PACKET_OUTGOING		4+#define PACKET_LOOPBACK		5+#define PACKET_FASTROUTE	6++#define PACKET_ADD_MEMBERSHIP		1+#define PACKET_DROP_MEMBERSHIP		2+#define	PACKET_RECV_OUTPUT		3+#define	PACKET_RX_RING			5+#define	PACKET_STATISTICS		6+#define PACKET_COPY_THRESH		7+#define PACKET_AUXDATA			8+#define PACKET_ORIGDEV			9+#define PACKET_VERSION			10+#define PACKET_HDRLEN			11+#define PACKET_RESERVE			12+#define PACKET_TX_RING			13+#define PACKET_LOSS			14+#define PACKET_VNET_HDR			15+#define PACKET_TX_TIMESTAMP		16+#define PACKET_TIMESTAMP		17+#define PACKET_FANOUT			18+#define PACKET_TX_HAS_OFF		19+#define PACKET_QDISC_BYPASS		20+#define PACKET_ROLLOVER_STATS		21+#define PACKET_FANOUT_DATA		22+#define PACKET_IGNORE_OUTGOING		23++#define PACKET_MR_MULTICAST	0+#define PACKET_MR_PROMISC	1+#define PACKET_MR_ALLMULTI	2+#define PACKET_MR_UNICAST	3++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/arm/nl_types.h view
@@ -0,0 +1,22 @@+#ifndef _NL_TYPES_H+#define _NL_TYPES_H++#ifdef __cplusplus+extern "C" {+#endif++#define NL_SETD 1+#define NL_CAT_LOCALE 1++typedef int nl_item;+typedef void *nl_catd;++nl_catd catopen (const char *, int);+char *catgets (nl_catd, int, int, const char *);+int catclose (nl_catd);++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/arm/paths.h view
@@ -0,0 +1,31 @@+#ifndef _PATHS_H+#define _PATHS_H++#define	_PATH_DEFPATH "/usr/local/bin:/bin:/usr/bin"+#define	_PATH_STDPATH "/bin:/usr/bin:/sbin:/usr/sbin"++#define	_PATH_BSHELL	"/bin/sh"+#define	_PATH_CONSOLE	"/dev/console"+#define	_PATH_DEVNULL	"/dev/null"+#define	_PATH_KLOG	"/proc/kmsg"+#define	_PATH_LASTLOG	"/var/log/lastlog"+#define	_PATH_MAILDIR	"/var/mail"+#define	_PATH_MAN	"/usr/share/man"+#define	_PATH_MNTTAB	"/etc/fstab"+#define	_PATH_MOUNTED	"/etc/mtab"+#define	_PATH_NOLOGIN	"/etc/nologin"+#define	_PATH_SENDMAIL	"/usr/sbin/sendmail"+#define	_PATH_SHADOW	"/etc/shadow"+#define	_PATH_SHELLS	"/etc/shells"+#define	_PATH_TTY	"/dev/tty"+#define _PATH_UTMP	"/dev/null/utmp"+#define	_PATH_VI	"/usr/bin/vi"+#define _PATH_WTMP	"/dev/null/wtmp"++#define	_PATH_DEV	"/dev/"+#define	_PATH_TMP	"/tmp/"+#define	_PATH_VARDB	"/var/lib/misc/"+#define	_PATH_VARRUN	"/var/run/"+#define	_PATH_VARTMP	"/var/tmp/"++#endif
+ musl-include/arm/poll.h view
@@ -0,0 +1,57 @@+#ifndef	_POLL_H+#define	_POLL_H++#ifdef __cplusplus+extern "C" {+#endif++#include <features.h>++#include <bits/poll.h>++#define POLLIN     0x001+#define POLLPRI    0x002+#define POLLOUT    0x004+#define POLLERR    0x008+#define POLLHUP    0x010+#define POLLNVAL   0x020+#define POLLRDNORM 0x040+#define POLLRDBAND 0x080+#ifndef POLLWRNORM+#define POLLWRNORM 0x100+#define POLLWRBAND 0x200+#endif+#ifndef POLLMSG+#define POLLMSG    0x400+#define POLLRDHUP  0x2000+#endif++typedef unsigned long nfds_t;++struct pollfd {+	int fd;+	short events;+	short revents;+};++int poll (struct pollfd *, nfds_t, int);++#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE)+#define __NEED_time_t+#define __NEED_struct_timespec+#define __NEED_sigset_t+#include <bits/alltypes.h>+int ppoll(struct pollfd *, nfds_t, const struct timespec *, const sigset_t *);+#endif++#if _REDIR_TIME64+#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE)+__REDIR(ppoll, __ppoll_time64);+#endif+#endif++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/arm/pthread.h view
@@ -0,0 +1,244 @@+#ifndef _PTHREAD_H+#define _PTHREAD_H+#ifdef __cplusplus+extern "C" {+#endif++#include <features.h>++#define __NEED_time_t+#define __NEED_clockid_t+#define __NEED_struct_timespec+#define __NEED_sigset_t+#define __NEED_pthread_t+#define __NEED_pthread_attr_t+#define __NEED_pthread_mutexattr_t+#define __NEED_pthread_condattr_t+#define __NEED_pthread_rwlockattr_t+#define __NEED_pthread_barrierattr_t+#define __NEED_pthread_mutex_t+#define __NEED_pthread_cond_t+#define __NEED_pthread_rwlock_t+#define __NEED_pthread_barrier_t+#define __NEED_pthread_spinlock_t+#define __NEED_pthread_key_t+#define __NEED_pthread_once_t+#define __NEED_size_t++#include <bits/alltypes.h>++#include <sched.h>+#include <time.h>++#define PTHREAD_CREATE_JOINABLE 0+#define PTHREAD_CREATE_DETACHED 1++#define PTHREAD_MUTEX_NORMAL 0+#define PTHREAD_MUTEX_DEFAULT 0+#define PTHREAD_MUTEX_RECURSIVE 1+#define PTHREAD_MUTEX_ERRORCHECK 2++#define PTHREAD_MUTEX_STALLED 0+#define PTHREAD_MUTEX_ROBUST 1++#define PTHREAD_PRIO_NONE 0+#define PTHREAD_PRIO_INHERIT 1+#define PTHREAD_PRIO_PROTECT 2++#define PTHREAD_INHERIT_SCHED 0+#define PTHREAD_EXPLICIT_SCHED 1++#define PTHREAD_SCOPE_SYSTEM 0+#define PTHREAD_SCOPE_PROCESS 1++#define PTHREAD_PROCESS_PRIVATE 0+#define PTHREAD_PROCESS_SHARED 1+++#define PTHREAD_MUTEX_INITIALIZER {{{0}}}+#define PTHREAD_RWLOCK_INITIALIZER {{{0}}}+#define PTHREAD_COND_INITIALIZER {{{0}}}+#define PTHREAD_ONCE_INIT 0+++#define PTHREAD_CANCEL_ENABLE 0+#define PTHREAD_CANCEL_DISABLE 1+#define PTHREAD_CANCEL_MASKED 2++#define PTHREAD_CANCEL_DEFERRED 0+#define PTHREAD_CANCEL_ASYNCHRONOUS 1++#define PTHREAD_CANCELED ((void *)-1)+++#define PTHREAD_BARRIER_SERIAL_THREAD (-1)+++#define PTHREAD_NULL ((pthread_t)0)+++int pthread_create(pthread_t *__restrict, const pthread_attr_t *__restrict, void *(*)(void *), void *__restrict);+int pthread_detach(pthread_t);+_Noreturn void pthread_exit(void *);+int pthread_join(pthread_t, void **);++#ifdef __GNUC__+__attribute__((const))+#endif+pthread_t pthread_self(void);++int pthread_equal(pthread_t, pthread_t);+#ifndef __cplusplus+#define pthread_equal(x,y) ((x)==(y))+#endif++int pthread_setcancelstate(int, int *);+int pthread_setcanceltype(int, int *);+void pthread_testcancel(void);+int pthread_cancel(pthread_t);++int pthread_getschedparam(pthread_t, int *__restrict, struct sched_param *__restrict);+int pthread_setschedparam(pthread_t, int, const struct sched_param *);+int pthread_setschedprio(pthread_t, int);++int pthread_once(pthread_once_t *, void (*)(void));++int pthread_mutex_init(pthread_mutex_t *__restrict, const pthread_mutexattr_t *__restrict);+int pthread_mutex_lock(pthread_mutex_t *);+int pthread_mutex_unlock(pthread_mutex_t *);+int pthread_mutex_trylock(pthread_mutex_t *);+int pthread_mutex_timedlock(pthread_mutex_t *__restrict, const struct timespec *__restrict);+int pthread_mutex_destroy(pthread_mutex_t *);+int pthread_mutex_consistent(pthread_mutex_t *);++int pthread_mutex_getprioceiling(const pthread_mutex_t *__restrict, int *__restrict);+int pthread_mutex_setprioceiling(pthread_mutex_t *__restrict, int, int *__restrict);++int pthread_cond_init(pthread_cond_t *__restrict, const pthread_condattr_t *__restrict);+int pthread_cond_destroy(pthread_cond_t *);+int pthread_cond_wait(pthread_cond_t *__restrict, pthread_mutex_t *__restrict);+int pthread_cond_timedwait(pthread_cond_t *__restrict, pthread_mutex_t *__restrict, const struct timespec *__restrict);+int pthread_cond_broadcast(pthread_cond_t *);+int pthread_cond_signal(pthread_cond_t *);++int pthread_rwlock_init(pthread_rwlock_t *__restrict, const pthread_rwlockattr_t *__restrict);+int pthread_rwlock_destroy(pthread_rwlock_t *);+int pthread_rwlock_rdlock(pthread_rwlock_t *);+int pthread_rwlock_tryrdlock(pthread_rwlock_t *);+int pthread_rwlock_timedrdlock(pthread_rwlock_t *__restrict, const struct timespec *__restrict);+int pthread_rwlock_wrlock(pthread_rwlock_t *);+int pthread_rwlock_trywrlock(pthread_rwlock_t *);+int pthread_rwlock_timedwrlock(pthread_rwlock_t *__restrict, const struct timespec *__restrict);+int pthread_rwlock_unlock(pthread_rwlock_t *);++int pthread_spin_init(pthread_spinlock_t *, int);+int pthread_spin_destroy(pthread_spinlock_t *);+int pthread_spin_lock(pthread_spinlock_t *);+int pthread_spin_trylock(pthread_spinlock_t *);+int pthread_spin_unlock(pthread_spinlock_t *);++int pthread_barrier_init(pthread_barrier_t *__restrict, const pthread_barrierattr_t *__restrict, unsigned);+int pthread_barrier_destroy(pthread_barrier_t *);+int pthread_barrier_wait(pthread_barrier_t *);++int pthread_key_create(pthread_key_t *, void (*)(void *));+int pthread_key_delete(pthread_key_t);+void *pthread_getspecific(pthread_key_t);+int pthread_setspecific(pthread_key_t, const void *);++int pthread_attr_init(pthread_attr_t *);+int pthread_attr_destroy(pthread_attr_t *);++int pthread_attr_getguardsize(const pthread_attr_t *__restrict, size_t *__restrict);+int pthread_attr_setguardsize(pthread_attr_t *, size_t);+int pthread_attr_getstacksize(const pthread_attr_t *__restrict, size_t *__restrict);+int pthread_attr_setstacksize(pthread_attr_t *, size_t);+int pthread_attr_getdetachstate(const pthread_attr_t *, int *);+int pthread_attr_setdetachstate(pthread_attr_t *, int);+int pthread_attr_getstack(const pthread_attr_t *__restrict, void **__restrict, size_t *__restrict);+int pthread_attr_setstack(pthread_attr_t *, void *, size_t);+int pthread_attr_getscope(const pthread_attr_t *__restrict, int *__restrict);+int pthread_attr_setscope(pthread_attr_t *, int);+int pthread_attr_getschedpolicy(const pthread_attr_t *__restrict, int *__restrict);+int pthread_attr_setschedpolicy(pthread_attr_t *, int);+int pthread_attr_getschedparam(const pthread_attr_t *__restrict, struct sched_param *__restrict);+int pthread_attr_setschedparam(pthread_attr_t *__restrict, const struct sched_param *__restrict);+int pthread_attr_getinheritsched(const pthread_attr_t *__restrict, int *__restrict);+int pthread_attr_setinheritsched(pthread_attr_t *, int);++int pthread_mutexattr_destroy(pthread_mutexattr_t *);+int pthread_mutexattr_getprioceiling(const pthread_mutexattr_t *__restrict, int *__restrict);+int pthread_mutexattr_getprotocol(const pthread_mutexattr_t *__restrict, int *__restrict);+int pthread_mutexattr_getpshared(const pthread_mutexattr_t *__restrict, int *__restrict);+int pthread_mutexattr_getrobust(const pthread_mutexattr_t *__restrict, int *__restrict);+int pthread_mutexattr_gettype(const pthread_mutexattr_t *__restrict, int *__restrict);+int pthread_mutexattr_init(pthread_mutexattr_t *);+int pthread_mutexattr_setprioceiling(pthread_mutexattr_t *, int);+int pthread_mutexattr_setprotocol(pthread_mutexattr_t *, int);+int pthread_mutexattr_setpshared(pthread_mutexattr_t *, int);+int pthread_mutexattr_setrobust(pthread_mutexattr_t *, int);+int pthread_mutexattr_settype(pthread_mutexattr_t *, int);++int pthread_condattr_init(pthread_condattr_t *);+int pthread_condattr_destroy(pthread_condattr_t *);+int pthread_condattr_setclock(pthread_condattr_t *, clockid_t);+int pthread_condattr_setpshared(pthread_condattr_t *, int);+int pthread_condattr_getclock(const pthread_condattr_t *__restrict, clockid_t *__restrict);+int pthread_condattr_getpshared(const pthread_condattr_t *__restrict, int *__restrict);++int pthread_rwlockattr_init(pthread_rwlockattr_t *);+int pthread_rwlockattr_destroy(pthread_rwlockattr_t *);+int pthread_rwlockattr_setpshared(pthread_rwlockattr_t *, int);+int pthread_rwlockattr_getpshared(const pthread_rwlockattr_t *__restrict, int *__restrict);++int pthread_barrierattr_destroy(pthread_barrierattr_t *);+int pthread_barrierattr_getpshared(const pthread_barrierattr_t *__restrict, int *__restrict);+int pthread_barrierattr_init(pthread_barrierattr_t *);+int pthread_barrierattr_setpshared(pthread_barrierattr_t *, int);++int pthread_atfork(void (*)(void), void (*)(void), void (*)(void));++int pthread_getconcurrency(void);+int pthread_setconcurrency(int);++int pthread_getcpuclockid(pthread_t, clockid_t *);++struct __ptcb {+	void (*__f)(void *);+	void *__x;+	struct __ptcb *__next;+};++void _pthread_cleanup_push(struct __ptcb *, void (*)(void *), void *);+void _pthread_cleanup_pop(struct __ptcb *, int);++#define pthread_cleanup_push(f, x) do { struct __ptcb __cb; _pthread_cleanup_push(&__cb, f, x);+#define pthread_cleanup_pop(r) _pthread_cleanup_pop(&__cb, (r)); } while(0)++#ifdef _GNU_SOURCE+struct cpu_set_t;+int pthread_getaffinity_np(pthread_t, size_t, struct cpu_set_t *);+int pthread_setaffinity_np(pthread_t, size_t, const struct cpu_set_t *);+int pthread_getattr_np(pthread_t, pthread_attr_t *);+int pthread_setname_np(pthread_t, const char *);+int pthread_getname_np(pthread_t, char *, size_t);+int pthread_getattr_default_np(pthread_attr_t *);+int pthread_setattr_default_np(const pthread_attr_t *);+int pthread_tryjoin_np(pthread_t, void **);+int pthread_timedjoin_np(pthread_t, void **, const struct timespec *);+#endif++#if _REDIR_TIME64+__REDIR(pthread_mutex_timedlock, __pthread_mutex_timedlock_time64);+__REDIR(pthread_cond_timedwait, __pthread_cond_timedwait_time64);+__REDIR(pthread_rwlock_timedrdlock, __pthread_rwlock_timedrdlock_time64);+__REDIR(pthread_rwlock_timedwrlock, __pthread_rwlock_timedwrlock_time64);+#ifdef _GNU_SOURCE+__REDIR(pthread_timedjoin_np, __pthread_timedjoin_np_time64);+#endif+#endif++#ifdef __cplusplus+}+#endif+#endif
+ musl-include/arm/pty.h view
@@ -0,0 +1,18 @@+#ifndef	_PTY_H+#define	_PTY_H++#ifdef __cplusplus+extern "C" {+#endif++#include <termios.h>+#include <sys/ioctl.h>++int openpty(int *, int *, char *, const struct termios *, const struct winsize *);+int forkpty(int *, char *, const struct termios *, const struct winsize *);++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/arm/pwd.h view
@@ -0,0 +1,50 @@+#ifndef _PWD_H+#define _PWD_H++#ifdef __cplusplus+extern "C" {+#endif++#include <features.h>++#define __NEED_size_t+#define __NEED_uid_t+#define __NEED_gid_t++#ifdef _GNU_SOURCE+#define __NEED_FILE+#endif++#include <bits/alltypes.h>++struct passwd {+	char *pw_name;+	char *pw_passwd;+	uid_t pw_uid;+	gid_t pw_gid;+	char *pw_gecos;+	char *pw_dir;+	char *pw_shell;+};++#if defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) || defined(_BSD_SOURCE)+void setpwent (void);+void endpwent (void);+struct passwd *getpwent (void);+#endif++struct passwd *getpwuid (uid_t);+struct passwd *getpwnam (const char *);+int getpwuid_r (uid_t, struct passwd *, char *, size_t, struct passwd **);+int getpwnam_r (const char *, struct passwd *, char *, size_t, struct passwd **);++#ifdef _GNU_SOURCE+struct passwd *fgetpwent(FILE *);+int putpwent(const struct passwd *, FILE *);+#endif++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/arm/regex.h view
@@ -0,0 +1,62 @@+#ifndef _REGEX_H+#define _REGEX_H++#ifdef __cplusplus+extern "C" {+#endif++#include <features.h>++#define __NEED_regoff_t+#define __NEED_size_t++#include <bits/alltypes.h>++typedef struct re_pattern_buffer {+	size_t re_nsub;+	void *__opaque, *__padding[4];+	size_t __nsub2;+	char __padding2;+} regex_t;++typedef struct {+	regoff_t rm_so;+	regoff_t rm_eo;+} regmatch_t;++#define REG_EXTENDED    1+#define REG_ICASE       2+#define REG_NEWLINE     4+#define REG_NOSUB       8++#define REG_NOTBOL      1+#define REG_NOTEOL      2++#define REG_OK          0+#define REG_NOMATCH     1+#define REG_BADPAT      2+#define REG_ECOLLATE    3+#define REG_ECTYPE      4+#define REG_EESCAPE     5+#define REG_ESUBREG     6+#define REG_EBRACK      7+#define REG_EPAREN      8+#define REG_EBRACE      9+#define REG_BADBR       10+#define REG_ERANGE      11+#define REG_ESPACE      12+#define REG_BADRPT      13++#define REG_ENOSYS      -1++int regcomp(regex_t *__restrict, const char *__restrict, int);+int regexec(const regex_t *__restrict, const char *__restrict, size_t, regmatch_t *__restrict, int);+void regfree(regex_t *);++size_t regerror(int, const regex_t *__restrict, char *__restrict, size_t);++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/arm/resolv.h view
@@ -0,0 +1,142 @@+#ifndef _RESOLV_H+#define _RESOLV_H++#include <stdint.h>+#include <arpa/nameser.h>+#include <netinet/in.h>++#ifdef __cplusplus+extern "C" {+#endif++#define MAXNS			3+#define MAXDFLSRCH		3+#define MAXDNSRCH		6+#define LOCALDOMAINPARTS	2++#define RES_TIMEOUT		5+#define MAXRESOLVSORT		10+#define RES_MAXNDOTS		15+#define RES_MAXRETRANS		30+#define RES_MAXRETRY		5+#define RES_DFLRETRY		2+#define RES_MAXTIME		65535++/* unused; purely for broken apps */+typedef struct __res_state {+	int retrans;+	int retry;+	unsigned long options;+	int nscount;+	struct sockaddr_in nsaddr_list[MAXNS];+# define nsaddr	nsaddr_list[0]+	unsigned short id;+	char *dnsrch[MAXDNSRCH+1];+	char defdname[256];+	unsigned long pfcode;+	unsigned ndots:4;+	unsigned nsort:4;+	unsigned ipv6_unavail:1;+	unsigned unused:23;+	struct {+		struct in_addr addr;+		uint32_t mask;+	} sort_list[MAXRESOLVSORT];+	void *qhook;+	void *rhook;+	int res_h_errno;+	int _vcsock;+	unsigned _flags;+	union {+		char pad[52];+		struct {+			uint16_t		nscount;+			uint16_t		nsmap[MAXNS];+			int			nssocks[MAXNS];+			uint16_t		nscount6;+			uint16_t		nsinit;+			struct sockaddr_in6	*nsaddrs[MAXNS];+			unsigned int		_initstamp[2];+		} _ext;+	} _u;+} *res_state;++#define	__RES	19960801++#ifndef _PATH_RESCONF+#define _PATH_RESCONF        "/etc/resolv.conf"+#endif++struct res_sym {+	int number;+	char *name;+	char *humanname;+};++#define	RES_F_VC	0x00000001+#define	RES_F_CONN	0x00000002+#define RES_F_EDNS0ERR	0x00000004++#define	RES_EXHAUSTIVE	0x00000001++#define RES_INIT	0x00000001+#define RES_DEBUG	0x00000002+#define RES_AAONLY	0x00000004+#define RES_USEVC	0x00000008+#define RES_PRIMARY	0x00000010+#define RES_IGNTC	0x00000020+#define RES_RECURSE	0x00000040+#define RES_DEFNAMES	0x00000080+#define RES_STAYOPEN	0x00000100+#define RES_DNSRCH	0x00000200+#define	RES_INSECURE1	0x00000400+#define	RES_INSECURE2	0x00000800+#define	RES_NOALIASES	0x00001000+#define	RES_USE_INET6	0x00002000+#define RES_ROTATE	0x00004000+#define	RES_NOCHECKNAME	0x00008000+#define	RES_KEEPTSIG	0x00010000+#define	RES_BLAST	0x00020000+#define RES_USEBSTRING	0x00040000+#define RES_NOIP6DOTINT	0x00080000+#define RES_USE_EDNS0	0x00100000+#define RES_SNGLKUP	0x00200000+#define RES_SNGLKUPREOP	0x00400000+#define RES_USE_DNSSEC	0x00800000++#define RES_DEFAULT	(RES_RECURSE|RES_DEFNAMES|RES_DNSRCH|RES_NOIP6DOTINT)++#define RES_PRF_STATS	0x00000001+#define RES_PRF_UPDATE	0x00000002+#define RES_PRF_CLASS   0x00000004+#define RES_PRF_CMD	0x00000008+#define RES_PRF_QUES	0x00000010+#define RES_PRF_ANS	0x00000020+#define RES_PRF_AUTH	0x00000040+#define RES_PRF_ADD	0x00000080+#define RES_PRF_HEAD1	0x00000100+#define RES_PRF_HEAD2	0x00000200+#define RES_PRF_TTLID	0x00000400+#define RES_PRF_HEADX	0x00000800+#define RES_PRF_QUERY	0x00001000+#define RES_PRF_REPLY	0x00002000+#define RES_PRF_INIT	0x00004000++struct __res_state *__res_state(void);+#define _res (*__res_state())++int res_init(void);+int res_query(const char *, int, int, unsigned char *, int);+int res_querydomain(const char *, const char *, int, int, unsigned char *, int);+int res_search(const char *, int, int, unsigned char *, int);+int res_mkquery(int, const char *, int, int, const unsigned char *, int, const unsigned char*, unsigned char *, int);+int res_send(const unsigned char *, int, unsigned char *, int);+int dn_comp(const char *, unsigned char *, int, unsigned char **, unsigned char **);+int dn_expand(const unsigned char *, const unsigned char *, const unsigned char *, char *, int);+int dn_skipname(const unsigned char *, const unsigned char *);++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/arm/sched.h view
@@ -0,0 +1,148 @@+#ifndef _SCHED_H+#define _SCHED_H+#ifdef __cplusplus+extern "C" {+#endif++#include <features.h>++#define __NEED_struct_timespec+#define __NEED_pid_t+#define __NEED_time_t++#ifdef _GNU_SOURCE+#define __NEED_size_t+#endif++#include <bits/alltypes.h>++struct sched_param {+	int sched_priority;+	int __reserved1;+#if _REDIR_TIME64+	long __reserved2[4];+#else+	struct {+		time_t __reserved1;+		long __reserved2;+	} __reserved2[2];+#endif+	int __reserved3;+};++int    sched_get_priority_max(int);+int    sched_get_priority_min(int);+int    sched_getparam(pid_t, struct sched_param *);+int    sched_getscheduler(pid_t);+int    sched_rr_get_interval(pid_t, struct timespec *);+int    sched_setparam(pid_t, const struct sched_param *);+int    sched_setscheduler(pid_t, int, const struct sched_param *);+int     sched_yield(void);++#define SCHED_OTHER 0+#define SCHED_FIFO 1+#define SCHED_RR 2+#define SCHED_BATCH 3+#define SCHED_IDLE 5+#define SCHED_DEADLINE 6+#define SCHED_RESET_ON_FORK 0x40000000++#ifdef _GNU_SOURCE+#define CSIGNAL		0x000000ff+#define CLONE_NEWTIME	0x00000080+#define CLONE_VM	0x00000100+#define CLONE_FS	0x00000200+#define CLONE_FILES	0x00000400+#define CLONE_SIGHAND	0x00000800+#define CLONE_PIDFD	0x00001000+#define CLONE_PTRACE	0x00002000+#define CLONE_VFORK	0x00004000+#define CLONE_PARENT	0x00008000+#define CLONE_THREAD	0x00010000+#define CLONE_NEWNS	0x00020000+#define CLONE_SYSVSEM	0x00040000+#define CLONE_SETTLS	0x00080000+#define CLONE_PARENT_SETTID	0x00100000+#define CLONE_CHILD_CLEARTID	0x00200000+#define CLONE_DETACHED	0x00400000+#define CLONE_UNTRACED	0x00800000+#define CLONE_CHILD_SETTID	0x01000000+#define CLONE_NEWCGROUP	0x02000000+#define CLONE_NEWUTS	0x04000000+#define CLONE_NEWIPC	0x08000000+#define CLONE_NEWUSER	0x10000000+#define CLONE_NEWPID	0x20000000+#define CLONE_NEWNET	0x40000000+#define CLONE_IO	0x80000000+int clone (int (*)(void *), void *, int, void *, ...);+int unshare(int);+int setns(int, int);++void *memcpy(void *__restrict, const void *__restrict, size_t);+int memcmp(const void *, const void *, size_t);+void *memset (void *, int, size_t);+void *calloc(size_t, size_t);+void free(void *);++typedef struct cpu_set_t { unsigned long __bits[128/sizeof(long)]; } cpu_set_t;+int __sched_cpucount(size_t, const cpu_set_t *);+int sched_getcpu(void);+int sched_getaffinity(pid_t, size_t, cpu_set_t *);+int sched_setaffinity(pid_t, size_t, const cpu_set_t *);++#define __CPU_op_S(i, size, set, op) ( (i)/8U >= (size) ? 0 : \+	(((unsigned long *)(set))[(i)/8/sizeof(long)] op (1UL<<((i)%(8*sizeof(long))))) )++#define CPU_SET_S(i, size, set) __CPU_op_S(i, size, set, |=)+#define CPU_CLR_S(i, size, set) __CPU_op_S(i, size, set, &=~)+#define CPU_ISSET_S(i, size, set) __CPU_op_S(i, size, set, &)++#define __CPU_op_func_S(func, op) \+static __inline void __CPU_##func##_S(size_t __size, cpu_set_t *__dest, \+	const cpu_set_t *__src1, const cpu_set_t *__src2) \+{ \+	size_t __i; \+	for (__i=0; __i<__size/sizeof(long); __i++) \+		((unsigned long *)__dest)[__i] = ((unsigned long *)__src1)[__i] \+			op ((unsigned long *)__src2)[__i] ; \+}++__CPU_op_func_S(AND, &)+__CPU_op_func_S(OR, |)+__CPU_op_func_S(XOR, ^)++#define CPU_AND_S(a,b,c,d) __CPU_AND_S(a,b,c,d)+#define CPU_OR_S(a,b,c,d) __CPU_OR_S(a,b,c,d)+#define CPU_XOR_S(a,b,c,d) __CPU_XOR_S(a,b,c,d)++#define CPU_COUNT_S(size,set) __sched_cpucount(size,set)+#define CPU_ZERO_S(size,set) memset(set,0,size)+#define CPU_EQUAL_S(size,set1,set2) (!memcmp(set1,set2,size))++#define CPU_ALLOC_SIZE(n) (sizeof(long) * ( (n)/(8*sizeof(long)) \+	+ ((n)%(8*sizeof(long)) + 8*sizeof(long)-1)/(8*sizeof(long)) ) )+#define CPU_ALLOC(n) ((cpu_set_t *)calloc(1,CPU_ALLOC_SIZE(n)))+#define CPU_FREE(set) free(set)++#define CPU_SETSIZE 1024++#define CPU_SET(i, set) CPU_SET_S(i,sizeof(cpu_set_t),set)+#define CPU_CLR(i, set) CPU_CLR_S(i,sizeof(cpu_set_t),set)+#define CPU_ISSET(i, set) CPU_ISSET_S(i,sizeof(cpu_set_t),set)+#define CPU_AND(d,s1,s2) CPU_AND_S(sizeof(cpu_set_t),d,s1,s2)+#define CPU_OR(d,s1,s2) CPU_OR_S(sizeof(cpu_set_t),d,s1,s2)+#define CPU_XOR(d,s1,s2) CPU_XOR_S(sizeof(cpu_set_t),d,s1,s2)+#define CPU_COUNT(set) CPU_COUNT_S(sizeof(cpu_set_t),set)+#define CPU_ZERO(set) CPU_ZERO_S(sizeof(cpu_set_t),set)+#define CPU_EQUAL(s1,s2) CPU_EQUAL_S(sizeof(cpu_set_t),s1,s2)++#endif++#if _REDIR_TIME64+__REDIR(sched_rr_get_interval, __sched_rr_get_interval_time64);+#endif++#ifdef __cplusplus+}+#endif+#endif
+ musl-include/arm/scsi/scsi.h view
@@ -0,0 +1,150 @@+#ifndef _SCSI_SCSI_H+#define _SCSI_SCSI_H++#define TEST_UNIT_READY 0x00+#define REZERO_UNIT 0x01+#define REQUEST_SENSE 0x03+#define FORMAT_UNIT 0x04+#define READ_BLOCK_LIMITS 0x05+#define REASSIGN_BLOCKS 0x07+#define READ_6 0x08+#define WRITE_6 0x0a+#define SEEK_6 0x0b+#define READ_REVERSE 0x0f+#define WRITE_FILEMARKS 0x10+#define SPACE 0x11+#define INQUIRY 0x12+#define RECOVER_BUFFERED_DATA 0x14+#define MODE_SELECT 0x15+#define RESERVE 0x16+#define RELEASE 0x17+#define COPY 0x18+#define ERASE 0x19+#define MODE_SENSE 0x1a+#define START_STOP 0x1b+#define RECEIVE_DIAGNOSTIC 0x1c+#define SEND_DIAGNOSTIC 0x1d+#define ALLOW_MEDIUM_REMOVAL 0x1e+#define SET_WINDOW 0x24+#define READ_CAPACITY 0x25+#define READ_10 0x28+#define WRITE_10 0x2a+#define SEEK_10 0x2b+#define WRITE_VERIFY 0x2e+#define VERIFY 0x2f+#define SEARCH_HIGH 0x30+#define SEARCH_EQUAL 0x31+#define SEARCH_LOW 0x32+#define SET_LIMITS 0x33+#define PRE_FETCH 0x34+#define READ_POSITION 0x34+#define SYNCHRONIZE_CACHE 0x35+#define LOCK_UNLOCK_CACHE 0x36+#define READ_DEFECT_DATA 0x37+#define MEDIUM_SCAN 0x38+#define COMPARE 0x39+#define COPY_VERIFY 0x3a+#define WRITE_BUFFER 0x3b+#define READ_BUFFER 0x3c+#define UPDATE_BLOCK 0x3d+#define READ_LONG 0x3e+#define WRITE_LONG 0x3f+#define CHANGE_DEFINITION 0x40+#define WRITE_SAME 0x41+#define READ_TOC 0x43+#define LOG_SELECT 0x4c+#define LOG_SENSE 0x4d+#define MODE_SELECT_10 0x55+#define RESERVE_10 0x56+#define RELEASE_10 0x57+#define MODE_SENSE_10 0x5a+#define PERSISTENT_RESERVE_IN 0x5e+#define PERSISTENT_RESERVE_OUT 0x5f+#define MOVE_MEDIUM 0xa5+#define READ_12 0xa8+#define WRITE_12 0xaa+#define WRITE_VERIFY_12 0xae+#define SEARCH_HIGH_12 0xb0+#define SEARCH_EQUAL_12 0xb1+#define SEARCH_LOW_12 0xb2+#define READ_ELEMENT_STATUS 0xb8+#define SEND_VOLUME_TAG 0xb6+#define WRITE_LONG_2 0xea+#define GOOD 0x00+#define CHECK_CONDITION 0x01+#define CONDITION_GOOD 0x02+#define BUSY 0x04+#define INTERMEDIATE_GOOD 0x08+#define INTERMEDIATE_C_GOOD 0x0a+#define RESERVATION_CONFLICT 0x0c+#define COMMAND_TERMINATED 0x11+#define QUEUE_FULL 0x14+#define STATUS_MASK 0x3e+#define NO_SENSE 0x00+#define RECOVERED_ERROR 0x01+#define NOT_READY 0x02+#define MEDIUM_ERROR 0x03+#define HARDWARE_ERROR 0x04+#define ILLEGAL_REQUEST 0x05+#define UNIT_ATTENTION 0x06+#define DATA_PROTECT 0x07+#define BLANK_CHECK 0x08+#define COPY_ABORTED 0x0a+#define ABORTED_COMMAND 0x0b+#define VOLUME_OVERFLOW 0x0d+#define MISCOMPARE 0x0e+#define TYPE_DISK 0x00+#define TYPE_TAPE 0x01+#define TYPE_PROCESSOR 0x03+#define TYPE_WORM 0x04+#define TYPE_ROM 0x05+#define TYPE_SCANNER 0x06+#define TYPE_MOD 0x07+#define TYPE_MEDIUM_CHANGER 0x08+#define TYPE_ENCLOSURE 0x0d+#define TYPE_NO_LUN 0x7f+#define COMMAND_COMPLETE 0x00+#define EXTENDED_MESSAGE 0x01+#define EXTENDED_MODIFY_DATA_POINTER 0x00+#define EXTENDED_SDTR 0x01+#define EXTENDED_EXTENDED_IDENTIFY 0x02+#define EXTENDED_WDTR 0x03+#define SAVE_POINTERS 0x02+#define RESTORE_POINTERS 0x03+#define DISCONNECT 0x04+#define INITIATOR_ERROR 0x05+#define ABORT 0x06+#define MESSAGE_REJECT 0x07+#define NOP 0x08+#define MSG_PARITY_ERROR 0x09+#define LINKED_CMD_COMPLETE 0x0a+#define LINKED_FLG_CMD_COMPLETE 0x0b+#define BUS_DEVICE_RESET 0x0c+#define INITIATE_RECOVERY 0x0f+#define RELEASE_RECOVERY 0x10+#define SIMPLE_QUEUE_TAG 0x20+#define HEAD_OF_QUEUE_TAG 0x21+#define ORDERED_QUEUE_TAG 0x22+#define SCSI_IOCTL_GET_IDLUN 0x5382+#define SCSI_IOCTL_TAGGED_ENABLE 0x5383+#define SCSI_IOCTL_TAGGED_DISABLE 0x5384+#define SCSI_IOCTL_PROBE_HOST 0x5385+#define SCSI_IOCTL_GET_BUS_NUMBER 0x5386++struct ccs_modesel_head {+	unsigned char _r1;+	unsigned char medium;+	unsigned char _r2;+	unsigned char block_desc_length;+	unsigned char density;+	unsigned char number_blocks_hi;+	unsigned char number_blocks_med;+	unsigned char number_blocks_lo;+	unsigned char _r3;+	unsigned char block_length_hi;+	unsigned char block_length_med;+	unsigned char block_length_lo;+};++#endif+
+ musl-include/arm/scsi/scsi_ioctl.h view
@@ -0,0 +1,11 @@+#ifndef _SCSI_IOCTL_H+#define _SCSI_IOCTL_H+#define SCSI_IOCTL_SEND_COMMAND 1+#define SCSI_IOCTL_TEST_UNIT_READY 2+#define SCSI_IOCTL_BENCHMARK_COMMAND 3+#define SCSI_IOCTL_SYNC 4+#define SCSI_IOCTL_START_UNIT 5+#define SCSI_IOCTL_STOP_UNIT 6+#define SCSI_IOCTL_DOORLOCK 0x5380+#define SCSI_IOCTL_DOORUNLOCK 0x5381+#endif
+ musl-include/arm/scsi/sg.h view
@@ -0,0 +1,129 @@+#ifndef _SCSI_SG_H+#define _SCSI_SG_H++#define SG_DXFER_NONE -1+#define SG_DXFER_TO_DEV -2+#define SG_DXFER_FROM_DEV -3+#define SG_DXFER_TO_FROM_DEV -4+#define SG_FLAG_DIRECT_IO 1+#define SG_FLAG_LUN_INHIBIT 2+#define SG_FLAG_NO_DXFER 0x10000+#define SG_INFO_OK_MASK 0x1+#define SG_INFO_OK 0x0+#define SG_INFO_CHECK 0x1+#define SG_INFO_DIRECT_IO_MASK 0x6+#define SG_INFO_INDIRECT_IO 0x0+#define SG_INFO_DIRECT_IO 0x2+#define SG_INFO_MIXED_IO 0x4+#define SG_EMULATED_HOST 0x2203+#define SG_SET_TRANSFORM 0x2204+#define SG_GET_TRANSFORM 0x2205+#define SG_SET_RESERVED_SIZE 0x2275+#define SG_GET_RESERVED_SIZE 0x2272+#define SG_GET_SCSI_ID 0x2276+#define SG_SET_FORCE_LOW_DMA 0x2279+#define SG_GET_LOW_DMA 0x227a+#define SG_SET_FORCE_PACK_ID 0x227b+#define SG_GET_PACK_ID 0x227c+#define SG_GET_NUM_WAITING 0x227d+#define SG_GET_SG_TABLESIZE 0x227F+#define SG_GET_VERSION_NUM 0x2282+#define SG_SCSI_RESET 0x2284+#define SG_SCSI_RESET_NOTHING 0+#define SG_SCSI_RESET_DEVICE 1+#define SG_SCSI_RESET_BUS 2+#define SG_SCSI_RESET_HOST 3+#define SG_IO 0x2285+#define SG_GET_REQUEST_TABLE 0x2286+#define SG_SET_KEEP_ORPHAN 0x2287+#define SG_GET_KEEP_ORPHAN 0x2288+#define SG_SCATTER_SZ (8 * 4096)+#define SG_DEFAULT_RETRIES 1+#define SG_DEF_FORCE_LOW_DMA 0+#define SG_DEF_FORCE_PACK_ID 0+#define SG_DEF_KEEP_ORPHAN 0+#define SG_DEF_RESERVED_SIZE SG_SCATTER_SZ+#define SG_MAX_QUEUE 16+#define SG_BIG_BUFF SG_DEF_RESERVED_SIZE+#define SG_MAX_SENSE 16+#define SG_SET_TIMEOUT 0x2201+#define SG_GET_TIMEOUT 0x2202+#define SG_GET_COMMAND_Q 0x2270+#define SG_SET_COMMAND_Q 0x2271+#define SG_SET_DEBUG 0x227e+#define SG_NEXT_CMD_LEN 0x2283+#define SG_DEFAULT_TIMEOUT (60*100) /* 60*HZ */+#define SG_DEF_COMMAND_Q 0+#define SG_DEF_UNDERRUN_FLAG 0++typedef struct sg_iovec {+	void *iov_base;+	unsigned long iov_len;+} sg_iovec_t;++typedef struct sg_io_hdr { +	int interface_id; +	int dxfer_direction; +	unsigned char cmd_len;+	unsigned char mx_sb_len;+	unsigned short iovec_count;+	unsigned dxfer_len;+	void *dxferp;+	unsigned char *cmdp;+	unsigned char *sbp;+	unsigned timeout;+	unsigned flags;+	int pack_id;+	void *usr_ptr;+	unsigned char status;+	unsigned char masked_status;+	unsigned char msg_status;+	unsigned char sb_len_wr;+	unsigned short host_status;+	unsigned short driver_status;+	int resid; +	unsigned int duration;+	unsigned int info;+} sg_io_hdr_t;++struct sg_scsi_id {+	int host_no;+	int channel;+	int scsi_id;+	int lun;+	int scsi_type;+	short h_cmd_per_lun;+	short d_queue_depth;+	int unused[2];+};++typedef struct sg_req_info {+	char req_state;+	char orphan;+	char sg_io_owned;+	char problem;+	int pack_id;+	void *usr_ptr;+	unsigned duration; +	int unused; +} sg_req_info_t;++typedef struct sg_io_hdr Sg_io_hdr;+typedef struct sg_io_vec Sg_io_vec;+typedef struct sg_scsi_id Sg_scsi_id;+typedef struct sg_req_info Sg_req_info;++struct sg_header {+	int pack_len;+	int reply_len;+	int pack_id;+	int result;+	unsigned twelve_byte:1;+	unsigned target_status:5;+	unsigned host_status:8;+	unsigned driver_status:8;+	unsigned other_flags:10;+	unsigned char sense_buffer[SG_MAX_SENSE];+};++#endif
+ musl-include/arm/search.h view
@@ -0,0 +1,63 @@+#ifndef _SEARCH_H+#define _SEARCH_H++#ifdef __cplusplus+extern "C" {+#endif++#include <features.h>++#define __NEED_size_t+#include <bits/alltypes.h>++typedef enum { FIND, ENTER } ACTION;+typedef enum { preorder, postorder, endorder, leaf } VISIT;++typedef struct entry {+	char *key;+	void *data;+} ENTRY;++int hcreate(size_t);+void hdestroy(void);+ENTRY *hsearch(ENTRY, ACTION);++#ifdef _GNU_SOURCE+struct hsearch_data {+	struct __tab *__tab;+	unsigned int __unused1;+	unsigned int __unused2;+};++int hcreate_r(size_t, struct hsearch_data *);+void hdestroy_r(struct hsearch_data *);+int hsearch_r(ENTRY, ACTION, ENTRY **, struct hsearch_data *);+#endif++void insque(void *, void *);+void remque(void *);++void *lsearch(const void *, void *, size_t *, size_t,+	int (*)(const void *, const void *));+void *lfind(const void *, const void *, size_t *, size_t,+	int (*)(const void *, const void *));++void *tdelete(const void *__restrict, void **__restrict, int(*)(const void *, const void *));+void *tfind(const void *, void *const *, int(*)(const void *, const void *));+void *tsearch(const void *, void **, int (*)(const void *, const void *));+void twalk(const void *, void (*)(const void *, VISIT, int));++#ifdef _GNU_SOURCE+struct qelem {+	struct qelem *q_forw, *q_back;+	char q_data[1];+};++void tdestroy(void *, void (*)(void *));+#endif++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/arm/semaphore.h view
@@ -0,0 +1,39 @@+#ifndef _SEMAPHORE_H+#define _SEMAPHORE_H+#ifdef __cplusplus+extern "C" {+#endif++#include <features.h>++#define __NEED_time_t+#define __NEED_struct_timespec+#include <bits/alltypes.h>++#include <fcntl.h>++#define SEM_FAILED ((sem_t *)0)++typedef struct {+	volatile int __val[4*sizeof(long)/sizeof(int)];+} sem_t;++int    sem_close(sem_t *);+int    sem_destroy(sem_t *);+int    sem_getvalue(sem_t *__restrict, int *__restrict);+int    sem_init(sem_t *, int, unsigned);+sem_t *sem_open(const char *, int, ...);+int    sem_post(sem_t *);+int    sem_timedwait(sem_t *__restrict, const struct timespec *__restrict);+int    sem_trywait(sem_t *);+int    sem_unlink(const char *);+int    sem_wait(sem_t *);++#if _REDIR_TIME64+__REDIR(sem_timedwait, __sem_timedwait_time64);+#endif++#ifdef __cplusplus+}+#endif+#endif
+ musl-include/arm/setjmp.h view
@@ -0,0 +1,49 @@+#ifndef	_SETJMP_H+#define	_SETJMP_H++#ifdef __cplusplus+extern "C" {+#endif++#include <features.h>++#include <bits/setjmp.h>++typedef struct __jmp_buf_tag {+	__jmp_buf __jb;+	unsigned long __fl;+	unsigned long __ss[128/sizeof(long)];+} jmp_buf[1];++#if __GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 1)+#define __setjmp_attr __attribute__((__returns_twice__))+#else+#define __setjmp_attr+#endif++#if defined(_POSIX_SOURCE) || defined(_POSIX_C_SOURCE) \+ || defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) \+ || defined(_BSD_SOURCE)+typedef jmp_buf sigjmp_buf;+int sigsetjmp (sigjmp_buf, int) __setjmp_attr;+_Noreturn void siglongjmp (sigjmp_buf, int);+#endif++#if defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) \+ || defined(_BSD_SOURCE)+int _setjmp (jmp_buf) __setjmp_attr;+_Noreturn void _longjmp (jmp_buf, int);+#endif++int setjmp (jmp_buf) __setjmp_attr;+_Noreturn void longjmp (jmp_buf, int);++#define setjmp setjmp++#undef __setjmp_attr++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/arm/shadow.h view
@@ -0,0 +1,44 @@+#ifndef _SHADOW_H+#define _SHADOW_H++#ifdef __cplusplus+extern "C" {+#endif++#define	__NEED_FILE+#define __NEED_size_t++#include <bits/alltypes.h>++#define	SHADOW "/etc/shadow"++struct spwd {+	char *sp_namp;+	char *sp_pwdp;+	long sp_lstchg;+	long sp_min;+	long sp_max;+	long sp_warn;+	long sp_inact;+	long sp_expire;+	unsigned long sp_flag;+};++void setspent(void);+void endspent(void);+struct spwd *getspent(void);+struct spwd *fgetspent(FILE *);+struct spwd *sgetspent(const char *);+int putspent(const struct spwd *, FILE *);++struct spwd *getspnam(const char *);+int getspnam_r(const char *, struct spwd *, char *, size_t, struct spwd **);++int lckpwdf(void);+int ulckpwdf(void);++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/arm/signal.h view
@@ -0,0 +1,304 @@+#ifndef _SIGNAL_H+#define _SIGNAL_H++#ifdef __cplusplus+extern "C" {+#endif++#include <features.h>++#if defined(_POSIX_SOURCE) || defined(_POSIX_C_SOURCE) \+ || defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) \+ || defined(_BSD_SOURCE)++#ifdef _GNU_SOURCE+#define __ucontext ucontext+#endif++#define __NEED_size_t+#define __NEED_pid_t+#define __NEED_uid_t+#define __NEED_struct_timespec+#define __NEED_pthread_t+#define __NEED_pthread_attr_t+#define __NEED_time_t+#define __NEED_clock_t+#define __NEED_sigset_t++#include <bits/alltypes.h>++#define SIG_BLOCK     0+#define SIG_UNBLOCK   1+#define SIG_SETMASK   2++#define SI_ASYNCNL (-60)+#define SI_TKILL (-6)+#define SI_SIGIO (-5)+#define SI_ASYNCIO (-4)+#define SI_MESGQ (-3)+#define SI_TIMER (-2)+#define SI_QUEUE (-1)+#define SI_USER 0+#define SI_KERNEL 128++typedef struct sigaltstack stack_t;++#endif++#include <bits/signal.h>++#if defined(_POSIX_SOURCE) || defined(_POSIX_C_SOURCE) \+ || defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) \+ || defined(_BSD_SOURCE)++#define SIG_HOLD ((void (*)(int)) 2)++#define FPE_INTDIV 1+#define FPE_INTOVF 2+#define FPE_FLTDIV 3+#define FPE_FLTOVF 4+#define FPE_FLTUND 5+#define FPE_FLTRES 6+#define FPE_FLTINV 7+#define FPE_FLTSUB 8++#define ILL_ILLOPC 1+#define ILL_ILLOPN 2+#define ILL_ILLADR 3+#define ILL_ILLTRP 4+#define ILL_PRVOPC 5+#define ILL_PRVREG 6+#define ILL_COPROC 7+#define ILL_BADSTK 8++#define SEGV_MAPERR 1+#define SEGV_ACCERR 2+#define SEGV_BNDERR 3+#define SEGV_PKUERR 4+#define SEGV_MTEAERR 8+#define SEGV_MTESERR 9++#define BUS_ADRALN 1+#define BUS_ADRERR 2+#define BUS_OBJERR 3+#define BUS_MCEERR_AR 4+#define BUS_MCEERR_AO 5++#define CLD_EXITED 1+#define CLD_KILLED 2+#define CLD_DUMPED 3+#define CLD_TRAPPED 4+#define CLD_STOPPED 5+#define CLD_CONTINUED 6++union sigval {+	int sival_int;+	void *sival_ptr;+};++typedef struct {+#ifdef __SI_SWAP_ERRNO_CODE+	int si_signo, si_code, si_errno;+#else+	int si_signo, si_errno, si_code;+#endif+	union {+		char __pad[128 - 2*sizeof(int) - sizeof(long)];+		struct {+			union {+				struct {+					pid_t si_pid;+					uid_t si_uid;+				} __piduid;+				struct {+					int si_timerid;+					int si_overrun;+				} __timer;+			} __first;+			union {+				union sigval si_value;+				struct {+					int si_status;+					clock_t si_utime, si_stime;+				} __sigchld;+			} __second;+		} __si_common;+		struct {+			void *si_addr;+			short si_addr_lsb;+			union {+				struct {+					void *si_lower;+					void *si_upper;+				} __addr_bnd;+				unsigned si_pkey;+			} __first;+		} __sigfault;+		struct {+			long si_band;+			int si_fd;+		} __sigpoll;+		struct {+			void *si_call_addr;+			int si_syscall;+			unsigned si_arch;+		} __sigsys;+	} __si_fields;+} siginfo_t;+#define si_pid     __si_fields.__si_common.__first.__piduid.si_pid+#define si_uid     __si_fields.__si_common.__first.__piduid.si_uid+#define si_status  __si_fields.__si_common.__second.__sigchld.si_status+#define si_utime   __si_fields.__si_common.__second.__sigchld.si_utime+#define si_stime   __si_fields.__si_common.__second.__sigchld.si_stime+#define si_value   __si_fields.__si_common.__second.si_value+#define si_addr    __si_fields.__sigfault.si_addr+#define si_addr_lsb __si_fields.__sigfault.si_addr_lsb+#define si_lower   __si_fields.__sigfault.__first.__addr_bnd.si_lower+#define si_upper   __si_fields.__sigfault.__first.__addr_bnd.si_upper+#define si_pkey    __si_fields.__sigfault.__first.si_pkey+#define si_band    __si_fields.__sigpoll.si_band+#define si_fd      __si_fields.__sigpoll.si_fd+#define si_timerid __si_fields.__si_common.__first.__timer.si_timerid+#define si_overrun __si_fields.__si_common.__first.__timer.si_overrun+#define si_ptr     si_value.sival_ptr+#define si_int     si_value.sival_int+#define si_call_addr __si_fields.__sigsys.si_call_addr+#define si_syscall __si_fields.__sigsys.si_syscall+#define si_arch    __si_fields.__sigsys.si_arch++struct sigaction {+	union {+		void (*sa_handler)(int);+		void (*sa_sigaction)(int, siginfo_t *, void *);+	} __sa_handler;+	sigset_t sa_mask;+	int sa_flags;+	void (*sa_restorer)(void);+};+#define sa_handler   __sa_handler.sa_handler+#define sa_sigaction __sa_handler.sa_sigaction++#define SA_UNSUPPORTED 0x00000400+#define SA_EXPOSE_TAGBITS 0x00000800++struct sigevent {+	union sigval sigev_value;+	int sigev_signo;+	int sigev_notify;+	union {+		char __pad[64 - 2*sizeof(int) - sizeof(union sigval)];+		pid_t sigev_notify_thread_id;+		struct {+			void (*sigev_notify_function)(union sigval);+			pthread_attr_t *sigev_notify_attributes;+		} __sev_thread;+	} __sev_fields;+};++#define sigev_notify_thread_id __sev_fields.sigev_notify_thread_id+#define sigev_notify_function __sev_fields.__sev_thread.sigev_notify_function+#define sigev_notify_attributes __sev_fields.__sev_thread.sigev_notify_attributes++#define SIGEV_SIGNAL 0+#define SIGEV_NONE 1+#define SIGEV_THREAD 2+#define SIGEV_THREAD_ID 4++int __libc_current_sigrtmin(void);+int __libc_current_sigrtmax(void);++#define SIGRTMIN  (__libc_current_sigrtmin())+#define SIGRTMAX  (__libc_current_sigrtmax())++int kill(pid_t, int);++int sigemptyset(sigset_t *);+int sigfillset(sigset_t *);+int sigaddset(sigset_t *, int);+int sigdelset(sigset_t *, int);+int sigismember(const sigset_t *, int);++int sigprocmask(int, const sigset_t *__restrict, sigset_t *__restrict);+int sigsuspend(const sigset_t *);+int sigaction(int, const struct sigaction *__restrict, struct sigaction *__restrict);+int sigpending(sigset_t *);+int sigwait(const sigset_t *__restrict, int *__restrict);+int sigwaitinfo(const sigset_t *__restrict, siginfo_t *__restrict);+int sigtimedwait(const sigset_t *__restrict, siginfo_t *__restrict, const struct timespec *__restrict);+int sigqueue(pid_t, int, union sigval);++int pthread_sigmask(int, const sigset_t *__restrict, sigset_t *__restrict);+int pthread_kill(pthread_t, int);++void psiginfo(const siginfo_t *, const char *);+void psignal(int, const char *);++#endif++#if defined(_XOPEN_SOURCE) || defined(_BSD_SOURCE) || defined(_GNU_SOURCE)+int killpg(pid_t, int);+int sigaltstack(const stack_t *__restrict, stack_t *__restrict);+int sighold(int);+int sigignore(int);+int siginterrupt(int, int);+int sigpause(int);+int sigrelse(int);+void (*sigset(int, void (*)(int)))(int);+#define TRAP_BRKPT 1+#define TRAP_TRACE 2+#define TRAP_BRANCH 3+#define TRAP_HWBKPT 4+#define TRAP_UNK 5+#define POLL_IN 1+#define POLL_OUT 2+#define POLL_MSG 3+#define POLL_ERR 4+#define POLL_PRI 5+#define POLL_HUP 6+#define SS_ONSTACK    1+#define SS_DISABLE    2+#define SS_AUTODISARM (1U << 31)+#define SS_FLAG_BITS SS_AUTODISARM+#endif++#if defined(_BSD_SOURCE) || defined(_GNU_SOURCE)+#define NSIG _NSIG+typedef void (*sig_t)(int);++#define SYS_SECCOMP 1+#define SYS_USER_DISPATCH 2+#endif++#ifdef _GNU_SOURCE+typedef void (*sighandler_t)(int);+void (*bsd_signal(int, void (*)(int)))(int);+int sigisemptyset(const sigset_t *);+int sigorset (sigset_t *, const sigset_t *, const sigset_t *);+int sigandset(sigset_t *, const sigset_t *, const sigset_t *);++#define SA_NOMASK SA_NODEFER+#define SA_ONESHOT SA_RESETHAND+#endif++#define SIG_ERR  ((void (*)(int))-1)+#define SIG_DFL  ((void (*)(int)) 0)+#define SIG_IGN  ((void (*)(int)) 1)++typedef int sig_atomic_t;++void (*signal(int, void (*)(int)))(int);+int raise(int);++#if _REDIR_TIME64+#if defined(_POSIX_SOURCE) || defined(_POSIX_C_SOURCE) \+ || defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) \+ || defined(_BSD_SOURCE)+__REDIR(sigtimedwait, __sigtimedwait_time64);+#endif+#endif++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/arm/spawn.h view
@@ -0,0 +1,83 @@+#ifndef _SPAWN_H+#define _SPAWN_H++#ifdef __cplusplus+extern "C" {+#endif++#include <features.h>++#define __NEED_mode_t+#define __NEED_pid_t+#define __NEED_sigset_t++#include <bits/alltypes.h>++struct sched_param;++#define POSIX_SPAWN_RESETIDS 1+#define POSIX_SPAWN_SETPGROUP 2+#define POSIX_SPAWN_SETSIGDEF 4+#define POSIX_SPAWN_SETSIGMASK 8+#define POSIX_SPAWN_SETSCHEDPARAM 16+#define POSIX_SPAWN_SETSCHEDULER 32+#define POSIX_SPAWN_USEVFORK 64+#define POSIX_SPAWN_SETSID 128++typedef struct {+	int __flags;+	pid_t __pgrp;+	sigset_t __def, __mask;+	int __prio, __pol;+	void *__fn;+	char __pad[64-sizeof(void *)];+} posix_spawnattr_t;++typedef struct {+	int __pad0[2];+	void *__actions;+	int __pad[16];+} posix_spawn_file_actions_t;++int posix_spawn(pid_t *__restrict, const char *__restrict, const posix_spawn_file_actions_t *,+	const posix_spawnattr_t *__restrict, char *const *__restrict, char *const *__restrict);+int posix_spawnp(pid_t *__restrict, const char *__restrict, const posix_spawn_file_actions_t *,+	const posix_spawnattr_t *__restrict, char *const *__restrict, char *const *__restrict);++int posix_spawnattr_init(posix_spawnattr_t *);+int posix_spawnattr_destroy(posix_spawnattr_t *);++int posix_spawnattr_setflags(posix_spawnattr_t *, short);+int posix_spawnattr_getflags(const posix_spawnattr_t *__restrict, short *__restrict);++int posix_spawnattr_setpgroup(posix_spawnattr_t *, pid_t);+int posix_spawnattr_getpgroup(const posix_spawnattr_t *__restrict, pid_t *__restrict);++int posix_spawnattr_setsigmask(posix_spawnattr_t *__restrict, const sigset_t *__restrict);+int posix_spawnattr_getsigmask(const posix_spawnattr_t *__restrict, sigset_t *__restrict);++int posix_spawnattr_setsigdefault(posix_spawnattr_t *__restrict, const sigset_t *__restrict);+int posix_spawnattr_getsigdefault(const posix_spawnattr_t *__restrict, sigset_t *__restrict);++int posix_spawnattr_setschedparam(posix_spawnattr_t *__restrict, const struct sched_param *__restrict);+int posix_spawnattr_getschedparam(const posix_spawnattr_t *__restrict, struct sched_param *__restrict);+int posix_spawnattr_setschedpolicy(posix_spawnattr_t *, int);+int posix_spawnattr_getschedpolicy(const posix_spawnattr_t *__restrict, int *__restrict);++int posix_spawn_file_actions_init(posix_spawn_file_actions_t *);+int posix_spawn_file_actions_destroy(posix_spawn_file_actions_t *);++int posix_spawn_file_actions_addopen(posix_spawn_file_actions_t *__restrict, int, const char *__restrict, int, mode_t);+int posix_spawn_file_actions_addclose(posix_spawn_file_actions_t *, int);+int posix_spawn_file_actions_adddup2(posix_spawn_file_actions_t *, int, int);++#if defined(_BSD_SOURCE) || defined(_GNU_SOURCE)+int posix_spawn_file_actions_addchdir_np(posix_spawn_file_actions_t *__restrict, const char *__restrict);+int posix_spawn_file_actions_addfchdir_np(posix_spawn_file_actions_t *, int);+#endif++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/arm/stdalign.h view
@@ -0,0 +1,20 @@+#ifndef _STDALIGN_H+#define _STDALIGN_H++#ifndef __cplusplus++/* this whole header only works in C11 or with compiler extensions */+#if __STDC_VERSION__ < 201112L && defined( __GNUC__)+#define _Alignas(t) __attribute__((__aligned__(t)))+#define _Alignof(t) __alignof__(t)+#endif++#define alignas _Alignas+#define alignof _Alignof++#endif++#define __alignas_is_defined 1+#define __alignof_is_defined 1++#endif
+ musl-include/arm/stdarg.h view
@@ -0,0 +1,21 @@+#ifndef _STDARG_H+#define _STDARG_H++#ifdef __cplusplus+extern "C" {+#endif++#define __NEED_va_list++#include <bits/alltypes.h>++#define va_start(v,l)   __builtin_va_start(v,l)+#define va_end(v)       __builtin_va_end(v)+#define va_arg(v,l)     __builtin_va_arg(v,l)+#define va_copy(d,s)    __builtin_va_copy(d,s)++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/arm/stdbool.h view
@@ -0,0 +1,14 @@+#ifndef _STDBOOL_H+#define _STDBOOL_H++#ifndef __cplusplus++#define true 1+#define false 0+#define bool _Bool++#endif++#define __bool_true_false_are_defined 1++#endif
+ musl-include/arm/stdc-predef.h view
@@ -0,0 +1,18 @@+#ifndef _STDC_PREDEF_H+#define _STDC_PREDEF_H++#define __STDC_ISO_10646__ 201206L++#if !defined(__GCC_IEC_559) || __GCC_IEC_559 > 0+#define __STDC_IEC_559__ 1+#endif++#if !defined(__STDC_UTF_16__)+#define __STDC_UTF_16__ 1+#endif++#if !defined(__STDC_UTF_32__)+#define __STDC_UTF_32__ 1+#endif++#endif
+ musl-include/arm/stddef.h view
@@ -0,0 +1,27 @@+#ifndef _STDDEF_H+#define _STDDEF_H++#if __cplusplus >= 201103L+#define NULL nullptr+#elif defined(__cplusplus)+#define NULL 0L+#else+#define NULL ((void*)0)+#endif++#define __NEED_ptrdiff_t+#define __NEED_size_t+#define __NEED_wchar_t+#if __STDC_VERSION__ >= 201112L || __cplusplus >= 201103L+#define __NEED_max_align_t+#endif++#include <bits/alltypes.h>++#if __GNUC__ > 3+#define offsetof(type, member) __builtin_offsetof(type, member)+#else+#define offsetof(type, member) ((size_t)( (char *)&(((type *)0)->member) - (char *)0 ))+#endif++#endif
+ musl-include/arm/stdint.h view
@@ -0,0 +1,117 @@+#ifndef _STDINT_H+#define _STDINT_H++#define __NEED_int8_t+#define __NEED_int16_t+#define __NEED_int32_t+#define __NEED_int64_t++#define __NEED_uint8_t+#define __NEED_uint16_t+#define __NEED_uint32_t+#define __NEED_uint64_t++#define __NEED_intptr_t+#define __NEED_uintptr_t++#define __NEED_intmax_t+#define __NEED_uintmax_t++#include <bits/alltypes.h>++typedef int8_t int_fast8_t;+typedef int64_t int_fast64_t;++typedef int8_t  int_least8_t;+typedef int16_t int_least16_t;+typedef int32_t int_least32_t;+typedef int64_t int_least64_t;++typedef uint8_t uint_fast8_t;+typedef uint64_t uint_fast64_t;++typedef uint8_t  uint_least8_t;+typedef uint16_t uint_least16_t;+typedef uint32_t uint_least32_t;+typedef uint64_t uint_least64_t;++#define INT8_MIN   (-1-0x7f)+#define INT16_MIN  (-1-0x7fff)+#define INT32_MIN  (-1-0x7fffffff)+#define INT64_MIN  (-1-0x7fffffffffffffff)++#define INT8_MAX   (0x7f)+#define INT16_MAX  (0x7fff)+#define INT32_MAX  (0x7fffffff)+#define INT64_MAX  (0x7fffffffffffffff)++#define UINT8_MAX  (0xff)+#define UINT16_MAX (0xffff)+#define UINT32_MAX (0xffffffffu)+#define UINT64_MAX (0xffffffffffffffffu)++#define INT_FAST8_MIN   INT8_MIN+#define INT_FAST64_MIN  INT64_MIN++#define INT_LEAST8_MIN   INT8_MIN+#define INT_LEAST16_MIN  INT16_MIN+#define INT_LEAST32_MIN  INT32_MIN+#define INT_LEAST64_MIN  INT64_MIN++#define INT_FAST8_MAX   INT8_MAX+#define INT_FAST64_MAX  INT64_MAX++#define INT_LEAST8_MAX   INT8_MAX+#define INT_LEAST16_MAX  INT16_MAX+#define INT_LEAST32_MAX  INT32_MAX+#define INT_LEAST64_MAX  INT64_MAX++#define UINT_FAST8_MAX  UINT8_MAX+#define UINT_FAST64_MAX UINT64_MAX++#define UINT_LEAST8_MAX  UINT8_MAX+#define UINT_LEAST16_MAX UINT16_MAX+#define UINT_LEAST32_MAX UINT32_MAX+#define UINT_LEAST64_MAX UINT64_MAX++#define INTMAX_MIN  INT64_MIN+#define INTMAX_MAX  INT64_MAX+#define UINTMAX_MAX UINT64_MAX++#define WINT_MIN 0U+#define WINT_MAX UINT32_MAX++#if L'\0'-1 > 0+#define WCHAR_MAX (0xffffffffu+L'\0')+#define WCHAR_MIN (0+L'\0')+#else+#define WCHAR_MAX (0x7fffffff+L'\0')+#define WCHAR_MIN (-1-0x7fffffff+L'\0')+#endif++#define SIG_ATOMIC_MIN  INT32_MIN+#define SIG_ATOMIC_MAX  INT32_MAX++#include <bits/stdint.h>++#define INT8_C(c)  c+#define INT16_C(c) c+#define INT32_C(c) c++#define UINT8_C(c)  c+#define UINT16_C(c) c+#define UINT32_C(c) c ## U++#if UINTPTR_MAX == UINT64_MAX+#define INT64_C(c) c ## L+#define UINT64_C(c) c ## UL+#define INTMAX_C(c)  c ## L+#define UINTMAX_C(c) c ## UL+#else+#define INT64_C(c) c ## LL+#define UINT64_C(c) c ## ULL+#define INTMAX_C(c)  c ## LL+#define UINTMAX_C(c) c ## ULL+#endif++#endif
+ musl-include/arm/stdio.h view
@@ -0,0 +1,224 @@+#ifndef _STDIO_H+#define _STDIO_H++#ifdef __cplusplus+extern "C" {+#endif++#include <features.h>++#define __NEED_FILE+#define __NEED___isoc_va_list+#define __NEED_size_t++#if __STDC_VERSION__ < 201112L+#define __NEED_struct__IO_FILE+#endif++#if defined(_POSIX_SOURCE) || defined(_POSIX_C_SOURCE) \+ || defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) \+ || defined(_BSD_SOURCE)+#define __NEED_ssize_t+#define __NEED_off_t+#define __NEED_va_list+#endif++#include <bits/alltypes.h>++#if __cplusplus >= 201103L+#define NULL nullptr+#elif defined(__cplusplus)+#define NULL 0L+#else+#define NULL ((void*)0)+#endif++#undef EOF+#define EOF (-1)++#undef SEEK_SET+#undef SEEK_CUR+#undef SEEK_END+#define SEEK_SET 0+#define SEEK_CUR 1+#define SEEK_END 2++#define _IOFBF 0+#define _IOLBF 1+#define _IONBF 2++#define BUFSIZ 1024+#define FILENAME_MAX 4096+#define FOPEN_MAX 1000+#define TMP_MAX 10000+#define L_tmpnam 20++typedef union _G_fpos64_t {+	char __opaque[16];+	long long __lldata;+	double __align;+} fpos_t;++extern FILE *const stdin;+extern FILE *const stdout;+extern FILE *const stderr;++#define stdin  (stdin)+#define stdout (stdout)+#define stderr (stderr)++FILE *fopen(const char *__restrict, const char *__restrict);+FILE *freopen(const char *__restrict, const char *__restrict, FILE *__restrict);+int fclose(FILE *);++int remove(const char *);+int rename(const char *, const char *);++int feof(FILE *);+int ferror(FILE *);+int fflush(FILE *);+void clearerr(FILE *);++int fseek(FILE *, long, int);+long ftell(FILE *);+void rewind(FILE *);++int fgetpos(FILE *__restrict, fpos_t *__restrict);+int fsetpos(FILE *, const fpos_t *);++size_t fread(void *__restrict, size_t, size_t, FILE *__restrict);+size_t fwrite(const void *__restrict, size_t, size_t, FILE *__restrict);++int fgetc(FILE *);+int getc(FILE *);+int getchar(void);+int ungetc(int, FILE *);++int fputc(int, FILE *);+int putc(int, FILE *);+int putchar(int);++char *fgets(char *__restrict, int, FILE *__restrict);+#if __STDC_VERSION__ < 201112L+char *gets(char *);+#endif++int fputs(const char *__restrict, FILE *__restrict);+int puts(const char *);++int printf(const char *__restrict, ...);+int fprintf(FILE *__restrict, const char *__restrict, ...);+int sprintf(char *__restrict, const char *__restrict, ...);+int snprintf(char *__restrict, size_t, const char *__restrict, ...);++int vprintf(const char *__restrict, __isoc_va_list);+int vfprintf(FILE *__restrict, const char *__restrict, __isoc_va_list);+int vsprintf(char *__restrict, const char *__restrict, __isoc_va_list);+int vsnprintf(char *__restrict, size_t, const char *__restrict, __isoc_va_list);++int scanf(const char *__restrict, ...);+int fscanf(FILE *__restrict, const char *__restrict, ...);+int sscanf(const char *__restrict, const char *__restrict, ...);+int vscanf(const char *__restrict, __isoc_va_list);+int vfscanf(FILE *__restrict, const char *__restrict, __isoc_va_list);+int vsscanf(const char *__restrict, const char *__restrict, __isoc_va_list);++void perror(const char *);++int setvbuf(FILE *__restrict, char *__restrict, int, size_t);+void setbuf(FILE *__restrict, char *__restrict);++char *tmpnam(char *);+FILE *tmpfile(void);++#if defined(_POSIX_SOURCE) || defined(_POSIX_C_SOURCE) \+ || defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) \+ || defined(_BSD_SOURCE)+FILE *fmemopen(void *__restrict, size_t, const char *__restrict);+FILE *open_memstream(char **, size_t *);+FILE *fdopen(int, const char *);+FILE *popen(const char *, const char *);+int pclose(FILE *);+int fileno(FILE *);+int fseeko(FILE *, off_t, int);+off_t ftello(FILE *);+int dprintf(int, const char *__restrict, ...);+int vdprintf(int, const char *__restrict, __isoc_va_list);+void flockfile(FILE *);+int ftrylockfile(FILE *);+void funlockfile(FILE *);+int getc_unlocked(FILE *);+int getchar_unlocked(void);+int putc_unlocked(int, FILE *);+int putchar_unlocked(int);+ssize_t getdelim(char **__restrict, size_t *__restrict, int, FILE *__restrict);+ssize_t getline(char **__restrict, size_t *__restrict, FILE *__restrict);+int renameat(int, const char *, int, const char *);+char *ctermid(char *);+#define L_ctermid 20+#endif+++#if defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) \+ || defined(_BSD_SOURCE)+#define P_tmpdir "/tmp"+char *tempnam(const char *, const char *);+#endif++#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE)+#define L_cuserid 20+char *cuserid(char *);+void setlinebuf(FILE *);+void setbuffer(FILE *, char *, size_t);+int fgetc_unlocked(FILE *);+int fputc_unlocked(int, FILE *);+int fflush_unlocked(FILE *);+size_t fread_unlocked(void *, size_t, size_t, FILE *);+size_t fwrite_unlocked(const void *, size_t, size_t, FILE *);+void clearerr_unlocked(FILE *);+int feof_unlocked(FILE *);+int ferror_unlocked(FILE *);+int fileno_unlocked(FILE *);+int getw(FILE *);+int putw(int, FILE *);+char *fgetln(FILE *, size_t *);+int asprintf(char **, const char *, ...);+int vasprintf(char **, const char *, __isoc_va_list);+#endif++#ifdef _GNU_SOURCE+char *fgets_unlocked(char *, int, FILE *);+int fputs_unlocked(const char *, FILE *);++typedef ssize_t (cookie_read_function_t)(void *, char *, size_t);+typedef ssize_t (cookie_write_function_t)(void *, const char *, size_t);+typedef int (cookie_seek_function_t)(void *, off_t *, int);+typedef int (cookie_close_function_t)(void *);++typedef struct _IO_cookie_io_functions_t {+	cookie_read_function_t *read;+	cookie_write_function_t *write;+	cookie_seek_function_t *seek;+	cookie_close_function_t *close;+} cookie_io_functions_t;++FILE *fopencookie(void *, const char *, cookie_io_functions_t);+#endif++#if defined(_LARGEFILE64_SOURCE)+#define tmpfile64 tmpfile+#define fopen64 fopen+#define freopen64 freopen+#define fseeko64 fseeko+#define ftello64 ftello+#define fgetpos64 fgetpos+#define fsetpos64 fsetpos+#define fpos64_t fpos_t+#define off64_t off_t+#endif++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/arm/stdio_ext.h view
@@ -0,0 +1,34 @@+#ifndef _STDIO_EXT_H+#define _STDIO_EXT_H++#ifdef __cplusplus+extern "C" {+#endif++#include <stdio.h>++#define FSETLOCKING_QUERY 0+#define FSETLOCKING_INTERNAL 1+#define FSETLOCKING_BYCALLER 2++void _flushlbf(void);+int __fsetlocking(FILE *, int);+int __fwriting(FILE *);+int __freading(FILE *);+int __freadable(FILE *);+int __fwritable(FILE *);+int __flbf(FILE *);+size_t __fbufsize(FILE *);+size_t __fpending(FILE *);+int __fpurge(FILE *);++size_t __freadahead(FILE *);+const char *__freadptr(FILE *, size_t *);+void __freadptrinc(FILE *, size_t);+void __fseterr(FILE *);++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/arm/stdlib.h view
@@ -0,0 +1,179 @@+#ifndef _STDLIB_H+#define _STDLIB_H++#ifdef __cplusplus+extern "C" {+#endif++#include <features.h>++#if __cplusplus >= 201103L+#define NULL nullptr+#elif defined(__cplusplus)+#define NULL 0L+#else+#define NULL ((void*)0)+#endif++#define __NEED_size_t+#define __NEED_wchar_t++#include <bits/alltypes.h>++int atoi (const char *);+long atol (const char *);+long long atoll (const char *);+double atof (const char *);++float strtof (const char *__restrict, char **__restrict);+double strtod (const char *__restrict, char **__restrict);+long double strtold (const char *__restrict, char **__restrict);++long strtol (const char *__restrict, char **__restrict, int);+unsigned long strtoul (const char *__restrict, char **__restrict, int);+long long strtoll (const char *__restrict, char **__restrict, int);+unsigned long long strtoull (const char *__restrict, char **__restrict, int);++int rand (void);+void srand (unsigned);++void *malloc (size_t);+void *calloc (size_t, size_t);+void *realloc (void *, size_t);+void free (void *);+void *aligned_alloc(size_t, size_t);++_Noreturn void abort (void);+int atexit (void (*) (void));+_Noreturn void exit (int);+_Noreturn void _Exit (int);+int at_quick_exit (void (*) (void));+_Noreturn void quick_exit (int);++char *getenv (const char *);++int system (const char *);++void *bsearch (const void *, const void *, size_t, size_t, int (*)(const void *, const void *));+void qsort (void *, size_t, size_t, int (*)(const void *, const void *));++int abs (int);+long labs (long);+long long llabs (long long);++typedef struct { int quot, rem; } div_t;+typedef struct { long quot, rem; } ldiv_t;+typedef struct { long long quot, rem; } lldiv_t;++div_t div (int, int);+ldiv_t ldiv (long, long);+lldiv_t lldiv (long long, long long);++int mblen (const char *, size_t);+int mbtowc (wchar_t *__restrict, const char *__restrict, size_t);+int wctomb (char *, wchar_t);+size_t mbstowcs (wchar_t *__restrict, const char *__restrict, size_t);+size_t wcstombs (char *__restrict, const wchar_t *__restrict, size_t);++#define EXIT_FAILURE 1+#define EXIT_SUCCESS 0++size_t __ctype_get_mb_cur_max(void);+#define MB_CUR_MAX (__ctype_get_mb_cur_max())++#define RAND_MAX (0x7fffffff)+++#if defined(_POSIX_SOURCE) || defined(_POSIX_C_SOURCE) \+ || defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) \+ || defined(_BSD_SOURCE)++#define WNOHANG    1+#define WUNTRACED  2++#define WEXITSTATUS(s) (((s) & 0xff00) >> 8)+#define WTERMSIG(s) ((s) & 0x7f)+#define WSTOPSIG(s) WEXITSTATUS(s)+#define WIFEXITED(s) (!WTERMSIG(s))+#define WIFSTOPPED(s) ((short)((((s)&0xffff)*0x10001U)>>8) > 0x7f00)+#define WIFSIGNALED(s) (((s)&0xffff)-1U < 0xffu)++int posix_memalign (void **, size_t, size_t);+int setenv (const char *, const char *, int);+int unsetenv (const char *);+int mkstemp (char *);+int mkostemp (char *, int);+char *mkdtemp (char *);+int getsubopt (char **, char *const *, char **);+int rand_r (unsigned *);++#endif+++#if defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) \+ || defined(_BSD_SOURCE)+char *realpath (const char *__restrict, char *__restrict);+long int random (void);+void srandom (unsigned int);+char *initstate (unsigned int, char *, size_t);+char *setstate (char *);+int putenv (char *);+int posix_openpt (int);+int grantpt (int);+int unlockpt (int);+char *ptsname (int);+char *l64a (long);+long a64l (const char *);+void setkey (const char *);+double drand48 (void);+double erand48 (unsigned short [3]);+long int lrand48 (void);+long int nrand48 (unsigned short [3]);+long mrand48 (void);+long jrand48 (unsigned short [3]);+void srand48 (long);+unsigned short *seed48 (unsigned short [3]);+void lcong48 (unsigned short [7]);+#endif++#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE)+#include <alloca.h>+char *mktemp (char *);+int mkstemps (char *, int);+int mkostemps (char *, int, int);+void *valloc (size_t);+void *memalign(size_t, size_t);+int getloadavg(double *, int);+int clearenv(void);+#define WCOREDUMP(s) ((s) & 0x80)+#define WIFCONTINUED(s) ((s) == 0xffff)+void *reallocarray (void *, size_t, size_t);+void qsort_r (void *, size_t, size_t, int (*)(const void *, const void *, void *), void *);+#endif++#ifdef _GNU_SOURCE+int ptsname_r(int, char *, size_t);+char *ecvt(double, int, int *, int *);+char *fcvt(double, int, int *, int *);+char *gcvt(double, int, char *);+char *secure_getenv(const char *);+struct __locale_struct;+float strtof_l(const char *__restrict, char **__restrict, struct __locale_struct *);+double strtod_l(const char *__restrict, char **__restrict, struct __locale_struct *);+long double strtold_l(const char *__restrict, char **__restrict, struct __locale_struct *);+#endif++#if defined(_LARGEFILE64_SOURCE)+#define mkstemp64 mkstemp+#define mkostemp64 mkostemp+#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE)+#define mkstemps64 mkstemps+#define mkostemps64 mkostemps+#endif+#endif++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/arm/stdnoreturn.h view
@@ -0,0 +1,7 @@+#ifndef _STDNORETURN_H+#define _STDNORETURN_H+#ifndef __cplusplus+#include <features.h>+#define noreturn _Noreturn+#endif+#endif
+ musl-include/arm/string.h view
@@ -0,0 +1,104 @@+#ifndef	_STRING_H+#define	_STRING_H++#ifdef __cplusplus+extern "C" {+#endif++#include <features.h>++#if __cplusplus >= 201103L+#define NULL nullptr+#elif defined(__cplusplus)+#define NULL 0L+#else+#define NULL ((void*)0)+#endif++#define __NEED_size_t+#if defined(_POSIX_SOURCE) || defined(_POSIX_C_SOURCE) \+ || defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) \+ || defined(_BSD_SOURCE)+#define __NEED_locale_t+#endif++#include <bits/alltypes.h>++void *memcpy (void *__restrict, const void *__restrict, size_t);+void *memmove (void *, const void *, size_t);+void *memset (void *, int, size_t);+int memcmp (const void *, const void *, size_t);+void *memchr (const void *, int, size_t);++char *strcpy (char *__restrict, const char *__restrict);+char *strncpy (char *__restrict, const char *__restrict, size_t);++char *strcat (char *__restrict, const char *__restrict);+char *strncat (char *__restrict, const char *__restrict, size_t);++int strcmp (const char *, const char *);+int strncmp (const char *, const char *, size_t);++int strcoll (const char *, const char *);+size_t strxfrm (char *__restrict, const char *__restrict, size_t);++char *strchr (const char *, int);+char *strrchr (const char *, int);++size_t strcspn (const char *, const char *);+size_t strspn (const char *, const char *);+char *strpbrk (const char *, const char *);+char *strstr (const char *, const char *);+char *strtok (char *__restrict, const char *__restrict);++size_t strlen (const char *);++char *strerror (int);++#if defined(_BSD_SOURCE) || defined(_GNU_SOURCE)+#include <strings.h>+#endif++#if defined(_POSIX_SOURCE) || defined(_POSIX_C_SOURCE) \+ || defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) \+ || defined(_BSD_SOURCE)+char *strtok_r (char *__restrict, const char *__restrict, char **__restrict);+int strerror_r (int, char *, size_t);+char *stpcpy(char *__restrict, const char *__restrict);+char *stpncpy(char *__restrict, const char *__restrict, size_t);+size_t strnlen (const char *, size_t);+char *strdup (const char *);+char *strndup (const char *, size_t);+char *strsignal(int);+char *strerror_l (int, locale_t);+int strcoll_l (const char *, const char *, locale_t);+size_t strxfrm_l (char *__restrict, const char *__restrict, size_t, locale_t);+void *memmem(const void *, size_t, const void *, size_t);+#endif++#if defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) \+ || defined(_BSD_SOURCE)+void *memccpy (void *__restrict, const void *__restrict, int, size_t);+#endif++#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE)+char *strsep(char **, const char *);+size_t strlcat (char *, const char *, size_t);+size_t strlcpy (char *, const char *, size_t);+void explicit_bzero (void *, size_t);+#endif++#ifdef _GNU_SOURCE+#define	strdupa(x)	strcpy(alloca(strlen(x)+1),x)+int strverscmp (const char *, const char *);+char *strchrnul(const char *, int);+char *strcasestr(const char *, const char *);+void *memrchr(const void *, int, size_t);+void *mempcpy(void *, const void *, size_t);+#endif++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/arm/strings.h view
@@ -0,0 +1,40 @@+#ifndef	_STRINGS_H+#define	_STRINGS_H++#ifdef __cplusplus+extern "C" {+#endif++#include <features.h>++#define __NEED_size_t+#define __NEED_locale_t+#include <bits/alltypes.h>++#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE) || defined(_POSIX_SOURCE) \+ || (defined(_POSIX_C_SOURCE) && _POSIX_C_SOURCE+0 < 200809L) \+ || (defined(_XOPEN_SOURCE) && _XOPEN_SOURCE+0 < 700)+int bcmp (const void *, const void *, size_t);+void bcopy (const void *, void *, size_t);+void bzero (void *, size_t);+char *index (const char *, int);+char *rindex (const char *, int);+#endif++#if defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE)  || defined(_BSD_SOURCE)+int ffs (int);+int ffsl (long);+int ffsll (long long);+#endif++int strcasecmp (const char *, const char *);+int strncasecmp (const char *, const char *, size_t);++int strcasecmp_l (const char *, const char *, locale_t);+int strncasecmp_l (const char *, const char *, size_t, locale_t);++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/arm/stropts.h view
@@ -0,0 +1,139 @@+#ifndef _STROPTS_H+#define _STROPTS_H++#ifdef __cplusplus+extern "C" {+#endif++#define __SID		('S' << 8)++#define I_NREAD		(__SID | 1)+#define I_PUSH		(__SID | 2)+#define I_POP		(__SID | 3)+#define I_LOOK		(__SID | 4)+#define I_FLUSH		(__SID | 5)+#define I_SRDOPT	(__SID | 6)+#define I_GRDOPT	(__SID | 7)+#define I_STR		(__SID | 8)+#define I_SETSIG	(__SID | 9)+#define I_GETSIG	(__SID |10)+#define I_FIND		(__SID |11)+#define I_LINK		(__SID |12)+#define I_UNLINK	(__SID |13)+#define I_PEEK		(__SID |15)+#define I_FDINSERT	(__SID |16)+#define I_SENDFD	(__SID |17)+#define I_RECVFD	(__SID |14)+#define I_SWROPT	(__SID |19)+#define I_GWROPT	(__SID |20)+#define I_LIST		(__SID |21)+#define I_PLINK		(__SID |22)+#define I_PUNLINK	(__SID |23)+#define I_FLUSHBAND	(__SID |28)+#define I_CKBAND	(__SID |29)+#define I_GETBAND	(__SID |30)+#define I_ATMARK	(__SID |31)+#define I_SETCLTIME	(__SID |32)+#define I_GETCLTIME	(__SID |33)+#define I_CANPUT	(__SID |34)++#define FMNAMESZ	8++#define FLUSHR		0x01+#define FLUSHW		0x02+#define FLUSHRW		0x03+#define FLUSHBAND	0x04++#define S_INPUT		0x0001+#define S_HIPRI		0x0002+#define S_OUTPUT	0x0004+#define S_MSG		0x0008+#define S_ERROR		0x0010+#define S_HANGUP	0x0020+#define S_RDNORM	0x0040+#define S_WRNORM	S_OUTPUT+#define S_RDBAND	0x0080+#define S_WRBAND	0x0100+#define S_BANDURG	0x0200++#define RS_HIPRI	0x01++#define RNORM		0x0000+#define RMSGD		0x0001+#define RMSGN		0x0002+#define RPROTDAT	0x0004+#define RPROTDIS	0x0008+#define RPROTNORM	0x0010+#define RPROTMASK	0x001C++#define SNDZERO		0x001+#define SNDPIPE		0x002++#define ANYMARK		0x01+#define LASTMARK	0x02++#define MUXID_ALL	(-1)++#define MSG_HIPRI	0x01+#define MSG_ANY		0x02+#define MSG_BAND	0x04++#define MORECTL		1+#define MOREDATA	2++struct bandinfo {+	unsigned char bi_pri;+	int bi_flag;+};++struct strbuf {+	int maxlen;+	int len;+	char *buf;+};++struct strpeek {+	struct strbuf ctlbuf;+	struct strbuf databuf;+	unsigned flags;+};++struct strfdinsert {+	struct strbuf ctlbuf;+	struct strbuf databuf;+	unsigned flags;+	int fildes;+	int offset;+};++struct strioctl {+	int ic_cmd;+	int ic_timout;+	int ic_len;+	char *ic_dp;+};++struct strrecvfd {+	int fd;+	int uid;+	int gid;+	char __fill[8];+};++struct str_mlist {+	char l_name[FMNAMESZ + 1];+};++struct str_list {+	int sl_nmods;+	struct str_mlist *sl_modlist;+};++int isastream(int);+int ioctl(int, int, ...);++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/arm/sys/acct.h view
@@ -0,0 +1,72 @@+#ifndef _SYS_ACCT_H+#define _SYS_ACCT_H++#ifdef __cplusplus+extern "C" {+#endif++#include <features.h>+#include <time.h>+#include <stdint.h>++#define ACCT_COMM 16++typedef uint16_t comp_t;++struct acct {+	char ac_flag;+	uint16_t ac_uid;+	uint16_t ac_gid;+	uint16_t ac_tty;+	uint32_t ac_btime;+	comp_t ac_utime;+	comp_t ac_stime;+	comp_t ac_etime;+	comp_t ac_mem;+	comp_t ac_io;+	comp_t ac_rw;+	comp_t ac_minflt;+	comp_t ac_majflt;+	comp_t ac_swaps;+	uint32_t ac_exitcode;+	char ac_comm[ACCT_COMM+1];+	char ac_pad[10];+};+++struct acct_v3 {+	char ac_flag;+	char ac_version;+	uint16_t ac_tty;+	uint32_t ac_exitcode;+	uint32_t ac_uid;+	uint32_t ac_gid;+	uint32_t ac_pid;+	uint32_t ac_ppid;+	uint32_t ac_btime;+	float ac_etime;+	comp_t ac_utime;+	comp_t ac_stime;+	comp_t ac_mem;+	comp_t ac_io;+	comp_t ac_rw;+	comp_t ac_minflt;+	comp_t ac_majflt;+	comp_t ac_swaps;+	char ac_comm[ACCT_COMM];+};++#define AFORK 1+#define ASU 2+#define ACORE 8+#define AXSIG 16+#define ACCT_BYTEORDER (128*(__BYTE_ORDER==__BIG_ENDIAN))+#define AHZ 100++int acct(const char *);++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/arm/sys/auxv.h view
@@ -0,0 +1,17 @@+#ifndef _SYS_AUXV_H+#define _SYS_AUXV_H++#ifdef __cplusplus+extern "C" {+#endif++#include <elf.h>+#include <bits/hwcap.h>++unsigned long getauxval(unsigned long);++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/arm/sys/cachectl.h view
@@ -0,0 +1,22 @@+#ifndef _SYS_CACHECTL_H+#define _SYS_CACHECTL_H++#ifdef __cplusplus+extern "C" {+#endif++#define ICACHE (1<<0)+#define DCACHE (1<<1)+#define BCACHE (ICACHE|DCACHE)+#define CACHEABLE 0+#define UNCACHEABLE 1+ +int cachectl(void *, int, int);+int cacheflush(void *, int, int);+int _flush_cache(void *, int, int);++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/arm/sys/dir.h view
@@ -0,0 +1,2 @@+#include <dirent.h>+#define direct dirent
+ musl-include/arm/sys/epoll.h view
@@ -0,0 +1,69 @@+#ifndef	_SYS_EPOLL_H+#define	_SYS_EPOLL_H++#ifdef __cplusplus+extern "C" {+#endif++#include <stdint.h>+#include <sys/types.h>+#include <fcntl.h>++#define __NEED_sigset_t++#include <bits/alltypes.h>++#define EPOLL_CLOEXEC O_CLOEXEC+#define EPOLL_NONBLOCK O_NONBLOCK++enum EPOLL_EVENTS { __EPOLL_DUMMY };+#define EPOLLIN 0x001+#define EPOLLPRI 0x002+#define EPOLLOUT 0x004+#define EPOLLRDNORM 0x040+#define EPOLLNVAL 0x020+#define EPOLLRDBAND 0x080+#define EPOLLWRNORM 0x100+#define EPOLLWRBAND 0x200+#define EPOLLMSG 0x400+#define EPOLLERR 0x008+#define EPOLLHUP 0x010+#define EPOLLRDHUP 0x2000+#define EPOLLEXCLUSIVE (1U<<28)+#define EPOLLWAKEUP (1U<<29)+#define EPOLLONESHOT (1U<<30)+#define EPOLLET (1U<<31)++#define EPOLL_CTL_ADD 1+#define EPOLL_CTL_DEL 2+#define EPOLL_CTL_MOD 3++typedef union epoll_data {+	void *ptr;+	int fd;+	uint32_t u32;+	uint64_t u64;+} epoll_data_t;++struct epoll_event {+	uint32_t events;+	epoll_data_t data;+}+#ifdef __x86_64__+__attribute__ ((__packed__))+#endif+;+++int epoll_create(int);+int epoll_create1(int);+int epoll_ctl(int, int, int, struct epoll_event *);+int epoll_wait(int, struct epoll_event *, int, int);+int epoll_pwait(int, struct epoll_event *, int, int, const sigset_t *);+++#ifdef __cplusplus+}+#endif++#endif /* sys/epoll.h */
+ musl-include/arm/sys/errno.h view
@@ -0,0 +1,2 @@+#warning redirecting incorrect #include <sys/errno.h> to <errno.h>+#include <errno.h>
+ musl-include/arm/sys/eventfd.h view
@@ -0,0 +1,26 @@+#ifndef _SYS_EVENTFD_H+#define _SYS_EVENTFD_H++#ifdef __cplusplus+extern "C" {+#endif++#include <stdint.h>+#include <fcntl.h>++typedef uint64_t eventfd_t;++#define EFD_SEMAPHORE 1+#define EFD_CLOEXEC O_CLOEXEC+#define EFD_NONBLOCK O_NONBLOCK++int eventfd(unsigned int, int);+int eventfd_read(int, eventfd_t *);+int eventfd_write(int, eventfd_t);+++#ifdef __cplusplus+}+#endif++#endif /* sys/eventfd.h */
+ musl-include/arm/sys/fanotify.h view
@@ -0,0 +1,111 @@+#ifndef _FANOTIFY_H+#define _FANOTIFY_H++#ifdef __cplusplus+extern "C" {+#endif++#include <sys/statfs.h>++struct fanotify_event_metadata {+	unsigned event_len;+	unsigned char vers;+	unsigned char reserved;+	unsigned short metadata_len;+	unsigned long long mask+#ifdef __GNUC__+	__attribute__((__aligned__(8)))+#endif+	;+	int fd;+	int pid;+};++struct fanotify_event_info_header {+	unsigned char info_type;+	unsigned char pad;+	unsigned short len;+};++struct fanotify_event_info_fid {+	struct fanotify_event_info_header hdr;+	fsid_t fsid;+	unsigned char handle[];+};++struct fanotify_response {+	int fd;+	unsigned response;+};++#define FAN_ACCESS 0x01+#define FAN_MODIFY 0x02+#define FAN_ATTRIB 0x04+#define FAN_CLOSE_WRITE 0x08+#define FAN_CLOSE_NOWRITE 0x10+#define FAN_OPEN 0x20+#define FAN_MOVED_FROM 0x40+#define FAN_MOVED_TO 0x80+#define FAN_CREATE 0x100+#define FAN_DELETE 0x200+#define FAN_DELETE_SELF 0x400+#define FAN_MOVE_SELF 0x800+#define FAN_OPEN_EXEC 0x1000+#define FAN_Q_OVERFLOW 0x4000+#define FAN_OPEN_PERM 0x10000+#define FAN_ACCESS_PERM 0x20000+#define FAN_OPEN_EXEC_PERM 0x40000+#define FAN_DIR_MODIFY 0x00080000+#define FAN_EVENT_ON_CHILD 0x08000000+#define FAN_ONDIR 0x40000000+#define FAN_CLOSE (FAN_CLOSE_WRITE | FAN_CLOSE_NOWRITE)+#define FAN_MOVE (FAN_MOVED_FROM | FAN_MOVED_TO)+#define FAN_CLOEXEC 0x01+#define FAN_NONBLOCK 0x02+#define FAN_CLASS_NOTIF 0+#define FAN_CLASS_CONTENT 0x04+#define FAN_CLASS_PRE_CONTENT 0x08+#define FAN_ALL_CLASS_BITS (FAN_CLASS_NOTIF | FAN_CLASS_CONTENT | FAN_CLASS_PRE_CONTENT)+#define FAN_UNLIMITED_QUEUE 0x10+#define FAN_UNLIMITED_MARKS 0x20+#define FAN_ENABLE_AUDIT 0x40+#define FAN_REPORT_TID 0x100+#define FAN_REPORT_FID 0x200+#define FAN_REPORT_DIR_FID 0x00000400+#define FAN_REPORT_NAME 0x00000800+#define FAN_REPORT_DFID_NAME (FAN_REPORT_DIR_FID | FAN_REPORT_NAME)+#define FAN_ALL_INIT_FLAGS (FAN_CLOEXEC | FAN_NONBLOCK | FAN_ALL_CLASS_BITS | FAN_UNLIMITED_QUEUE | FAN_UNLIMITED_MARKS)+#define FAN_MARK_ADD 0x01+#define FAN_MARK_REMOVE 0x02+#define FAN_MARK_DONT_FOLLOW 0x04+#define FAN_MARK_ONLYDIR 0x08+#define FAN_MARK_IGNORED_MASK 0x20+#define FAN_MARK_IGNORED_SURV_MODIFY 0x40+#define FAN_MARK_FLUSH 0x80+#define FAN_MARK_INODE 0x00+#define FAN_MARK_MOUNT 0x10+#define FAN_MARK_FILESYSTEM 0x100+#define FAN_MARK_TYPE_MASK (FAN_MARK_INODE | FAN_MARK_MOUNT | FAN_MARK_FILESYSTEM)+#define FAN_ALL_MARK_FLAGS (FAN_MARK_ADD | FAN_MARK_REMOVE | FAN_MARK_DONT_FOLLOW | FAN_MARK_ONLYDIR | FAN_MARK_MOUNT | FAN_MARK_IGNORED_MASK | FAN_MARK_IGNORED_SURV_MODIFY | FAN_MARK_FLUSH)+#define FAN_ALL_EVENTS (FAN_ACCESS | FAN_MODIFY | FAN_CLOSE | FAN_OPEN)+#define FAN_ALL_PERM_EVENTS (FAN_OPEN_PERM | FAN_ACCESS_PERM)+#define FAN_ALL_OUTGOING_EVENTS (FAN_ALL_EVENTS | FAN_ALL_PERM_EVENTS | FAN_Q_OVERFLOW)+#define FANOTIFY_METADATA_VERSION 3+#define FAN_EVENT_INFO_TYPE_FID 1+#define FAN_EVENT_INFO_TYPE_DFID_NAME 2+#define FAN_EVENT_INFO_TYPE_DFID 3+#define FAN_ALLOW 0x01+#define FAN_DENY 0x02+#define FAN_AUDIT 0x10+#define FAN_NOFD -1+#define FAN_EVENT_METADATA_LEN (sizeof(struct fanotify_event_metadata))+#define FAN_EVENT_NEXT(meta, len) ((len) -= (meta)->event_len, (struct fanotify_event_metadata*)(((char *)(meta)) + (meta)->event_len))+#define FAN_EVENT_OK(meta, len) ((long)(len) >= (long)FAN_EVENT_METADATA_LEN && (long)(meta)->event_len >= (long)FAN_EVENT_METADATA_LEN && (long)(meta)->event_len <= (long)(len))++int fanotify_init(unsigned, unsigned);+int fanotify_mark(int, unsigned, unsigned long long, int, const char *);++#ifdef __cplusplus+}+#endif+#endif
+ musl-include/arm/sys/fcntl.h view
@@ -0,0 +1,2 @@+#warning redirecting incorrect #include <sys/fcntl.h> to <fcntl.h>+#include <fcntl.h>
+ musl-include/arm/sys/file.h view
@@ -0,0 +1,21 @@+#ifndef _SYS_FILE_H+#define _SYS_FILE_H+#ifdef __cplusplus+extern "C" {+#endif++#define LOCK_SH	1+#define LOCK_EX	2+#define LOCK_NB	4+#define LOCK_UN	8++#define L_SET 0+#define L_INCR 1+#define L_XTND 2++int flock(int, int);++#ifdef __cplusplus+}+#endif+#endif
+ musl-include/arm/sys/fsuid.h view
@@ -0,0 +1,20 @@+#ifndef _SYS_FSUID_H+#define _SYS_FSUID_H++#ifdef __cplusplus+extern "C" {+#endif++#define __NEED_uid_t+#define __NEED_gid_t++#include <bits/alltypes.h>++int setfsuid(uid_t);+int setfsgid(gid_t);++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/arm/sys/inotify.h view
@@ -0,0 +1,58 @@+#ifndef _SYS_INOTIFY_H+#define _SYS_INOTIFY_H++#ifdef __cplusplus+extern "C" {+#endif++#include <stdint.h>+#include <fcntl.h>++struct inotify_event {+	int wd;+	uint32_t mask, cookie, len;+	char name[];+};++#define IN_CLOEXEC O_CLOEXEC+#define IN_NONBLOCK O_NONBLOCK++#define IN_ACCESS        0x00000001+#define IN_MODIFY        0x00000002+#define IN_ATTRIB        0x00000004+#define IN_CLOSE_WRITE   0x00000008+#define IN_CLOSE_NOWRITE 0x00000010+#define IN_CLOSE         (IN_CLOSE_WRITE | IN_CLOSE_NOWRITE)+#define IN_OPEN          0x00000020+#define IN_MOVED_FROM    0x00000040+#define IN_MOVED_TO      0x00000080+#define IN_MOVE          (IN_MOVED_FROM | IN_MOVED_TO)+#define IN_CREATE        0x00000100+#define IN_DELETE        0x00000200+#define IN_DELETE_SELF   0x00000400+#define IN_MOVE_SELF     0x00000800+#define IN_ALL_EVENTS    0x00000fff++#define IN_UNMOUNT       0x00002000+#define IN_Q_OVERFLOW    0x00004000+#define IN_IGNORED       0x00008000++#define IN_ONLYDIR       0x01000000+#define IN_DONT_FOLLOW   0x02000000+#define IN_EXCL_UNLINK   0x04000000+#define IN_MASK_CREATE   0x10000000+#define IN_MASK_ADD      0x20000000++#define IN_ISDIR         0x40000000+#define IN_ONESHOT       0x80000000++int inotify_init(void);+int inotify_init1(int);+int inotify_add_watch(int, const char *, uint32_t);+int inotify_rm_watch(int, int);++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/arm/sys/io.h view
@@ -0,0 +1,17 @@+#ifndef	_SYS_IO_H+#define	_SYS_IO_H+#ifdef __cplusplus+extern "C" {+#endif++#include <features.h>++#include <bits/io.h>++int iopl(int);+int ioperm(unsigned long, unsigned long, int);++#ifdef __cplusplus+}+#endif+#endif
+ musl-include/arm/sys/ioctl.h view
@@ -0,0 +1,120 @@+#ifndef	_SYS_IOCTL_H+#define	_SYS_IOCTL_H+#ifdef __cplusplus+extern "C" {+#endif++#define __NEED_struct_winsize++#include <bits/alltypes.h>+#include <bits/ioctl.h>++#define N_TTY           0+#define N_SLIP          1+#define N_MOUSE         2+#define N_PPP           3+#define N_STRIP         4+#define N_AX25          5+#define N_X25           6+#define N_6PACK         7+#define N_MASC          8+#define N_R3964         9+#define N_PROFIBUS_FDL  10+#define N_IRDA          11+#define N_SMSBLOCK      12+#define N_HDLC          13+#define N_SYNC_PPP      14+#define N_HCI           15+#define N_GIGASET_M101  16+#define N_SLCAN         17+#define N_PPS           18+#define N_V253          19+#define N_CAIF          20+#define N_GSM0710       21+#define N_TI_WL         22+#define N_TRACESINK     23+#define N_TRACEROUTER   24+#define N_NCI           25+#define N_SPEAKUP       26+#define N_NULL          27++#define TIOCPKT_DATA       0+#define TIOCPKT_FLUSHREAD  1+#define TIOCPKT_FLUSHWRITE 2+#define TIOCPKT_STOP       4+#define TIOCPKT_START      8+#define TIOCPKT_NOSTOP    16+#define TIOCPKT_DOSTOP    32+#define TIOCPKT_IOCTL     64++#define TIOCSER_TEMT 1++#define SIOCADDRT          0x890B+#define SIOCDELRT          0x890C+#define SIOCRTMSG          0x890D++#define SIOCGIFNAME        0x8910+#define SIOCSIFLINK        0x8911+#define SIOCGIFCONF        0x8912+#define SIOCGIFFLAGS       0x8913+#define SIOCSIFFLAGS       0x8914+#define SIOCGIFADDR        0x8915+#define SIOCSIFADDR        0x8916+#define SIOCGIFDSTADDR     0x8917+#define SIOCSIFDSTADDR     0x8918+#define SIOCGIFBRDADDR     0x8919+#define SIOCSIFBRDADDR     0x891a+#define SIOCGIFNETMASK     0x891b+#define SIOCSIFNETMASK     0x891c+#define SIOCGIFMETRIC      0x891d+#define SIOCSIFMETRIC      0x891e+#define SIOCGIFMEM         0x891f+#define SIOCSIFMEM         0x8920+#define SIOCGIFMTU         0x8921+#define SIOCSIFMTU         0x8922+#define SIOCSIFNAME        0x8923+#define SIOCSIFHWADDR      0x8924+#define SIOCGIFENCAP       0x8925+#define SIOCSIFENCAP       0x8926+#define SIOCGIFHWADDR      0x8927+#define SIOCGIFSLAVE       0x8929+#define SIOCSIFSLAVE       0x8930+#define SIOCADDMULTI       0x8931+#define SIOCDELMULTI       0x8932+#define SIOCGIFINDEX       0x8933+#define SIOGIFINDEX        SIOCGIFINDEX+#define SIOCSIFPFLAGS      0x8934+#define SIOCGIFPFLAGS      0x8935+#define SIOCDIFADDR        0x8936+#define SIOCSIFHWBROADCAST 0x8937+#define SIOCGIFCOUNT       0x8938++#define SIOCGIFBR          0x8940+#define SIOCSIFBR          0x8941++#define SIOCGIFTXQLEN      0x8942+#define SIOCSIFTXQLEN      0x8943++#define SIOCDARP           0x8953+#define SIOCGARP           0x8954+#define SIOCSARP           0x8955++#define SIOCDRARP          0x8960+#define SIOCGRARP          0x8961+#define SIOCSRARP          0x8962++#define SIOCGIFMAP         0x8970+#define SIOCSIFMAP         0x8971++#define SIOCADDDLCI        0x8980+#define SIOCDELDLCI        0x8981++#define SIOCDEVPRIVATE     0x89F0+#define SIOCPROTOPRIVATE   0x89E0++int ioctl (int, int, ...);++#ifdef __cplusplus+}+#endif+#endif
+ musl-include/arm/sys/ipc.h view
@@ -0,0 +1,42 @@+#ifndef _SYS_IPC_H+#define _SYS_IPC_H+#ifdef __cplusplus+extern "C" {+#endif++#include <features.h>++#define __NEED_uid_t+#define __NEED_gid_t+#define __NEED_mode_t+#define __NEED_key_t++#include <bits/alltypes.h>++#define __ipc_perm_key __key+#define __ipc_perm_seq __seq++#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE)+#define __key key+#define __seq seq+#endif++#include <bits/ipc.h>+#include <bits/ipcstat.h>++#define IPC_CREAT  01000+#define IPC_EXCL   02000+#define IPC_NOWAIT 04000++#define IPC_RMID 0+#define IPC_SET  1+#define IPC_INFO 3++#define IPC_PRIVATE ((key_t) 0)++key_t ftok (const char *, int);++#ifdef __cplusplus+}+#endif+#endif
+ musl-include/arm/sys/kd.h view
@@ -0,0 +1,1 @@+#include <bits/kd.h>
+ musl-include/arm/sys/klog.h view
@@ -0,0 +1,14 @@+#ifndef	_SYS_KLOG_H+#define	_SYS_KLOG_H++#ifdef __cplusplus+extern "C" {+#endif++int klogctl (int, char *, int);++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/arm/sys/membarrier.h view
@@ -0,0 +1,21 @@+#ifndef _SYS_MEMBARRIER_H+#define _SYS_MEMBARRIER_H++#define MEMBARRIER_CMD_QUERY 0+#define MEMBARRIER_CMD_GLOBAL 1+#define MEMBARRIER_CMD_GLOBAL_EXPEDITED 2+#define MEMBARRIER_CMD_REGISTER_GLOBAL_EXPEDITED 4+#define MEMBARRIER_CMD_PRIVATE_EXPEDITED 8+#define MEMBARRIER_CMD_REGISTER_PRIVATE_EXPEDITED 16+#define MEMBARRIER_CMD_PRIVATE_EXPEDITED_SYNC_CORE 32+#define MEMBARRIER_CMD_REGISTER_PRIVATE_EXPEDITED_SYNC_CORE 64+#define MEMBARRIER_CMD_PRIVATE_EXPEDITED_RSEQ 128+#define MEMBARRIER_CMD_REGISTER_PRIVATE_EXPEDITED_RSEQ 256++#define MEMBARRIER_CMD_SHARED MEMBARRIER_CMD_GLOBAL++#define MEMBARRIER_CMD_FLAG_CPU 1++int membarrier(int, int);++#endif
+ musl-include/arm/sys/mman.h view
@@ -0,0 +1,152 @@+#ifndef	_SYS_MMAN_H+#define	_SYS_MMAN_H+#ifdef __cplusplus+extern "C" {+#endif++#include <features.h>++#define __NEED_mode_t+#define __NEED_size_t+#define __NEED_off_t++#if defined(_GNU_SOURCE)+#define __NEED_ssize_t+#endif++#include <bits/alltypes.h>++#define MAP_FAILED ((void *) -1)++#define MAP_SHARED     0x01+#define MAP_PRIVATE    0x02+#define MAP_SHARED_VALIDATE 0x03+#define MAP_TYPE       0x0f+#define MAP_FIXED      0x10+#define MAP_ANON       0x20+#define MAP_ANONYMOUS  MAP_ANON+#define MAP_NORESERVE  0x4000+#define MAP_GROWSDOWN  0x0100+#define MAP_DENYWRITE  0x0800+#define MAP_EXECUTABLE 0x1000+#define MAP_LOCKED     0x2000+#define MAP_POPULATE   0x8000+#define MAP_NONBLOCK   0x10000+#define MAP_STACK      0x20000+#define MAP_HUGETLB    0x40000+#define MAP_SYNC       0x80000+#define MAP_FIXED_NOREPLACE 0x100000+#define MAP_FILE       0++#define MAP_HUGE_SHIFT 26+#define MAP_HUGE_MASK  0x3f+#define MAP_HUGE_16KB  (14 << 26)+#define MAP_HUGE_64KB  (16 << 26)+#define MAP_HUGE_512KB (19 << 26)+#define MAP_HUGE_1MB   (20 << 26)+#define MAP_HUGE_2MB   (21 << 26)+#define MAP_HUGE_8MB   (23 << 26)+#define MAP_HUGE_16MB  (24 << 26)+#define MAP_HUGE_32MB  (25 << 26)+#define MAP_HUGE_256MB (28 << 26)+#define MAP_HUGE_512MB (29 << 26)+#define MAP_HUGE_1GB   (30 << 26)+#define MAP_HUGE_2GB   (31 << 26)+#define MAP_HUGE_16GB  (34U << 26)++#define PROT_NONE      0+#define PROT_READ      1+#define PROT_WRITE     2+#define PROT_EXEC      4+#define PROT_GROWSDOWN 0x01000000+#define PROT_GROWSUP   0x02000000++#define MS_ASYNC       1+#define MS_INVALIDATE  2+#define MS_SYNC        4++#define MCL_CURRENT    1+#define MCL_FUTURE     2+#define MCL_ONFAULT    4++#define POSIX_MADV_NORMAL     0+#define POSIX_MADV_RANDOM     1+#define POSIX_MADV_SEQUENTIAL 2+#define POSIX_MADV_WILLNEED   3+#define POSIX_MADV_DONTNEED   4++#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE)+#define MADV_NORMAL      0+#define MADV_RANDOM      1+#define MADV_SEQUENTIAL  2+#define MADV_WILLNEED    3+#define MADV_DONTNEED    4+#define MADV_FREE        8+#define MADV_REMOVE      9+#define MADV_DONTFORK    10+#define MADV_DOFORK      11+#define MADV_MERGEABLE   12+#define MADV_UNMERGEABLE 13+#define MADV_HUGEPAGE    14+#define MADV_NOHUGEPAGE  15+#define MADV_DONTDUMP    16+#define MADV_DODUMP      17+#define MADV_WIPEONFORK  18+#define MADV_KEEPONFORK  19+#define MADV_COLD        20+#define MADV_PAGEOUT     21+#define MADV_HWPOISON    100+#define MADV_SOFT_OFFLINE 101+#endif++#ifdef _GNU_SOURCE+#define MREMAP_MAYMOVE 1+#define MREMAP_FIXED 2+#define MREMAP_DONTUNMAP 4++#define MLOCK_ONFAULT 0x01++#define MFD_CLOEXEC 0x0001U+#define MFD_ALLOW_SEALING 0x0002U+#define MFD_HUGETLB 0x0004U+#endif++#include <bits/mman.h>++void *mmap (void *, size_t, int, int, int, off_t);+int munmap (void *, size_t);++int mprotect (void *, size_t, int);+int msync (void *, size_t, int);++int posix_madvise (void *, size_t, int);++int mlock (const void *, size_t);+int munlock (const void *, size_t);+int mlockall (int);+int munlockall (void);++#ifdef _GNU_SOURCE+void *mremap (void *, size_t, size_t, int, ...);+int remap_file_pages (void *, size_t, int, size_t, int);+int memfd_create (const char *, unsigned);+int mlock2 (const void *, size_t, unsigned);+#endif++#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE)+int madvise (void *, size_t, int);+int mincore (void *, size_t, unsigned char *);+#endif++int shm_open (const char *, int, mode_t);+int shm_unlink (const char *);++#if defined(_LARGEFILE64_SOURCE)+#define mmap64 mmap+#define off64_t off_t+#endif++#ifdef __cplusplus+}+#endif+#endif
+ musl-include/arm/sys/mount.h view
@@ -0,0 +1,75 @@+#ifndef _SYS_MOUNT_H+#define _SYS_MOUNT_H++#ifdef __cplusplus+extern "C" {+#endif++#include <sys/ioctl.h>++#define BLKROSET   _IO(0x12, 93)+#define BLKROGET   _IO(0x12, 94)+#define BLKRRPART  _IO(0x12, 95)+#define BLKGETSIZE _IO(0x12, 96)+#define BLKFLSBUF  _IO(0x12, 97)+#define BLKRASET   _IO(0x12, 98)+#define BLKRAGET   _IO(0x12, 99)+#define BLKFRASET  _IO(0x12,100)+#define BLKFRAGET  _IO(0x12,101)+#define BLKSECTSET _IO(0x12,102)+#define BLKSECTGET _IO(0x12,103)+#define BLKSSZGET  _IO(0x12,104)+#define BLKBSZGET  _IOR(0x12,112,size_t)+#define BLKBSZSET  _IOW(0x12,113,size_t)+#define BLKGETSIZE64 _IOR(0x12,114,size_t)++#define MS_RDONLY      1+#define MS_NOSUID      2+#define MS_NODEV       4+#define MS_NOEXEC      8+#define MS_SYNCHRONOUS 16+#define MS_REMOUNT     32+#define MS_MANDLOCK    64+#define MS_DIRSYNC     128+#define MS_NOSYMFOLLOW 256+#define MS_NOATIME     1024+#define MS_NODIRATIME  2048+#define MS_BIND        4096+#define MS_MOVE        8192+#define MS_REC         16384+#define MS_SILENT      32768+#define MS_POSIXACL    (1<<16)+#define MS_UNBINDABLE  (1<<17)+#define MS_PRIVATE     (1<<18)+#define MS_SLAVE       (1<<19)+#define MS_SHARED      (1<<20)+#define MS_RELATIME    (1<<21)+#define MS_KERNMOUNT   (1<<22)+#define MS_I_VERSION   (1<<23)+#define MS_STRICTATIME (1<<24)+#define MS_LAZYTIME    (1<<25)+#define MS_NOREMOTELOCK (1<<27)+#define MS_NOSEC       (1<<28)+#define MS_BORN        (1<<29)+#define MS_ACTIVE      (1<<30)+#define MS_NOUSER      (1U<<31)++#define MS_RMT_MASK (MS_RDONLY|MS_SYNCHRONOUS|MS_MANDLOCK|MS_I_VERSION|MS_LAZYTIME)++#define MS_MGC_VAL 0xc0ed0000+#define MS_MGC_MSK 0xffff0000++#define MNT_FORCE       1+#define MNT_DETACH      2+#define MNT_EXPIRE      4+#define UMOUNT_NOFOLLOW 8++int mount(const char *, const char *, const char *, unsigned long, const void *);+int umount(const char *);+int umount2(const char *, int);++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/arm/sys/msg.h view
@@ -0,0 +1,53 @@+#ifndef _SYS_MSG_H+#define _SYS_MSG_H++#ifdef __cplusplus+extern "C" {+#endif++#include <sys/ipc.h>++#define __NEED_pid_t+#define __NEED_key_t+#define __NEED_time_t+#define __NEED_size_t+#define __NEED_ssize_t++#include <bits/alltypes.h>++typedef unsigned long msgqnum_t;+typedef unsigned long msglen_t;++#include <bits/msg.h>++#define __msg_cbytes msg_cbytes++#define MSG_NOERROR 010000+#define MSG_EXCEPT  020000++#define MSG_STAT (11 | (IPC_STAT & 0x100))+#define MSG_INFO 12+#define MSG_STAT_ANY (13 | (IPC_STAT & 0x100))++struct msginfo {+	int msgpool, msgmap, msgmax, msgmnb, msgmni, msgssz, msgtql;+	unsigned short msgseg;+};++int msgctl (int, int, struct msqid_ds *);+int msgget (key_t, int);+ssize_t msgrcv (int, void *, size_t, long, int);+int msgsnd (int, const void *, size_t, int);++#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE)+struct msgbuf {+	long mtype;+	char mtext[1];+};+#endif++#ifdef __cplusplus+}+#endif++#endif
+ musl-include/arm/sys/mtio.h view
@@ -0,0 +1,188 @@+#ifndef _SYS_MTIO_H+#define _SYS_MTIO_H++#include <sys/types.h>+#include <sys/ioctl.h>++struct mtop {+	short mt_op;+	int mt_count;+};++#define _IOT_mtop _IOT (_IOTS (short), 1, _IOTS (int), 1, 0, 0)+#define _IOT_mtget _IOT (_IOTS (long), 7, 0, 0, 0, 0)+#define _IOT_mtpos _IOT_SIMPLE (long)+#define _IOT_mtconfiginfo _IOT (_IOTS (long), 2, _IOTS (short), 3, _IOTS (long), 1)+++#define MTRESET 0+#define MTFSF	1+#define MTBSF	2+#define MTFSR	3+#define MTBSR	4+#define MTWEOF	5+#define MTREW	6+#define MTOFFL	7+#define MTNOP	8+#define MTRETEN 9+#define MTBSFM	10+#define MTFSFM  11+#define MTEOM	12+#define MTERASE 13+#define MTRAS1  14+#define MTRAS2	15+#define MTRAS3  16+#define MTSETBLK 20+#define MTSETDENSITY 21+#define MTSEEK	22+#define MTTELL	23+#define MTSETDRVBUFFER 24+#define MTFSS	25+#define MTBSS	26+#define MTWSM	27+#define MTLOCK  28+#define MTUNLOCK 29+#define MTLOAD  30+#define MTUNLOAD 31+#define MTCOMPRESSION 32+#define MTSETPART 33+#define MTMKPART  34++struct mtget {+	long mt_type;+	long mt_resid;+	long mt_dsreg;+	long mt_gstat;+	long mt_erreg;+	int mt_fileno;+	int mt_blkno;+};++#define MT_ISUNKNOWN		0x01+#define MT_ISQIC02		0x02+#define MT_ISWT5150		0x03+#define MT_ISARCHIVE_5945L2	0x04+#define MT_ISCMSJ500		0x05+#define MT_ISTDC3610		0x06+#define MT_ISARCHIVE_VP60I	0x07+#define MT_ISARCHIVE_2150L	0x08+#define MT_ISARCHIVE_2060L	0x09+#define MT_ISARCHIVESC499	0x0A+#define MT_ISQIC02_ALL_FEATURES	0x0F+#define MT_ISWT5099EEN24	0x11+#define MT_ISTEAC_MT2ST		0x12+#define MT_ISEVEREX_FT40A	0x32+#define MT_ISDDS1		0x51+#define MT_ISDDS2		0x52+#define MT_ISSCSI1		0x71+#define MT_ISSCSI2		0x72+#define MT_ISFTAPE_UNKNOWN	0x800000+#define MT_ISFTAPE_FLAG		0x800000++struct mt_tape_info {+	long t_type;+	char *t_name;+};++#define MT_TAPE_INFO \+{									      \+	{MT_ISUNKNOWN,		"Unknown type of tape device"},		      \+	{MT_ISQIC02,		"Generic QIC-02 tape streamer"},	      \+	{MT_ISWT5150,		"Wangtek 5150, QIC-150"},		      \+	{MT_ISARCHIVE_5945L2,	"Archive 5945L-2"},			      \+	{MT_ISCMSJ500,		"CMS Jumbo 500"},			      \+	{MT_ISTDC3610,		"Tandberg TDC 3610, QIC-24"},		      \+	{MT_ISARCHIVE_VP60I,	"Archive VP60i, QIC-02"},		      \+	{MT_ISARCHIVE_2150L,	"Archive Viper 2150L"},			      \+	{MT_ISARCHIVE_2060L,	"Archive Viper 2060L"},			      \+	{MT_ISARCHIVESC499,	"Archive SC-499 QIC-36 controller"},	      \+	{MT_ISQIC02_ALL_FEATURES, "Generic QIC-02 tape, all features"},	      \+	{MT_ISWT5099EEN24,	"Wangtek 5099-een24, 60MB"},		      \+	{MT_ISTEAC_MT2ST,	"Teac MT-2ST 155mb data cassette drive"},     \+	{MT_ISEVEREX_FT40A,	"Everex FT40A, QIC-40"},		      \+	{MT_ISSCSI1,		"Generic SCSI-1 tape"},			      \+	{MT_ISSCSI2,		"Generic SCSI-2 tape"},			      \+	{0, 0}								      \+}++struct mtpos {+	long mt_blkno;+};++struct mtconfiginfo  {+	long mt_type;+	long ifc_type;+	unsigned short irqnr;+	unsigned short dmanr;+	unsigned short port;+	unsigned long debug;+	unsigned have_dens:1;+	unsigned have_bsf:1;+	unsigned have_fsr:1;+	unsigned have_bsr:1;+	unsigned have_eod:1;+	unsigned have_seek:1;+	unsigned have_tell:1;+	unsigned have_ras1:1;+	unsigned have_ras2:1;+	unsigned have_ras3:1;+	unsigned have_qfa:1;+	unsigned pad1:5;+	char reserved[10];+};++#define	MTIOCTOP _IOW('m', 1, struct mtop)+#define	MTIOCGET _IOR('m', 2, struct mtget)+#define	MTIOCPOS _IOR('m', 3, struct mtpos)++#define	MTIOCGETCONFIG	_IOR('m', 4, struct mtconfiginfo)+#define	MTIOCSETCONFIG	_IOW('m', 5, struct mtconfiginfo)++#define GMT_EOF(x)              ((x) & 0x80000000)+#define GMT_BOT(x)              ((x) & 0x40000000)+#define GMT_EOT(x)              ((x) & 0x20000000)+#define GMT_SM(x)               ((x) & 0x10000000)+#define GMT_EOD(x)              ((x) & 0x08000000)+#define GMT_WR_PROT(x)          ((x) & 0x04000000)+#define GMT_ONLINE(x)           ((x) & 0x01000000)+#define GMT_D_6250(x)           ((x) & 0x00800000)+#define GMT_D_1600(x)           ((x) & 0x00400000)+#define GMT_D_800(x)            ((x) & 0x00200000)+#define GMT_DR_OPEN(x)          ((x) & 0x00040000)+#define GMT_IM_REP_EN(x)        ((x) & 0x00010000)++#define MT_ST_BLKSIZE_SHIFT	0+#define MT_ST_BLKSIZE_MASK	0xffffff+#define MT_ST_DENSITY_SHIFT	24+#define MT_ST_DENSITY_MASK	0xff000000+#define MT_ST_SOFTERR_SHIFT	0+#define MT_ST_SOFTERR_MASK	0xffff+#define MT_ST_OPTIONS		0xf0000000+#define MT_ST_BOOLEANS		0x10000000+#define MT_ST_SETBOOLEANS	0x30000000+#define MT_ST_CLEARBOOLEANS	0x40000000+#define MT_ST_WRITE_THRESHOLD	0x20000000+#define MT_ST_DEF_BLKSIZE	0x50000000+#define MT_ST_DEF_OPTIONS	0x60000000+#define MT_ST_BUFFER_WRITES	0x1+#define MT_ST_ASYNC_WRITES	0x2+#define MT_ST_READ_AHEAD	0x4+#define MT_ST_DEBUGGING		0x8+#define MT_ST_TWO_FM		0x10+#define MT_ST_FAST_MTEOM	0x20+#define MT_ST_AUTO_LOCK		0x40+#define MT_ST_DEF_WRITES	0x80+#define MT_ST_CAN_BSR		0x100+#define MT_ST_NO_BLKLIMS	0x200+#define MT_ST_CAN_PARTITIONS    0x400+#define MT_ST_SCSI2LOGICAL      0x800+#define MT_ST_CLEAR_DEFAULT	0xfffff+#define MT_ST_DEF_DENSITY	(MT_ST_DEF_OPTIONS | 0x100000)+#define MT_ST_DEF_COMPRESSION	(MT_ST_DEF_OPTIONS | 0x200000)+#define MT_ST_DEF_DRVBUFFER	(MT_ST_DEF_OPTIONS | 0x300000)+#define MT_ST_HPLOADER_OFFSET 10000+#ifndef DEFTAPE+# define DEFTAPE	"/dev/tape"+#endif++#endif
+ musl-include/arm/sys/param.h view

file too large to diff

+ musl-include/arm/sys/personality.h view

file too large to diff

+ musl-include/arm/sys/poll.h view

file too large to diff

+ musl-include/arm/sys/prctl.h view

file too large to diff

+ musl-include/arm/sys/procfs.h view

file too large to diff

+ musl-include/arm/sys/ptrace.h view

file too large to diff

+ musl-include/arm/sys/quota.h view

file too large to diff

+ musl-include/arm/sys/random.h view

file too large to diff

+ musl-include/arm/sys/reboot.h view

file too large to diff

+ musl-include/arm/sys/reg.h view

file too large to diff

+ musl-include/arm/sys/resource.h view

file too large to diff

+ musl-include/arm/sys/select.h view

file too large to diff

+ musl-include/arm/sys/sem.h view

file too large to diff

+ musl-include/arm/sys/sendfile.h view

file too large to diff

+ musl-include/arm/sys/shm.h view

file too large to diff

+ musl-include/arm/sys/signal.h view

file too large to diff

+ musl-include/arm/sys/signalfd.h view

file too large to diff

+ musl-include/arm/sys/socket.h view

file too large to diff

+ musl-include/arm/sys/soundcard.h view

file too large to diff

+ musl-include/arm/sys/stat.h view

file too large to diff

+ musl-include/arm/sys/statfs.h view

file too large to diff

+ musl-include/arm/sys/statvfs.h view

file too large to diff

+ musl-include/arm/sys/stropts.h view

file too large to diff

+ musl-include/arm/sys/swap.h view

file too large to diff

+ musl-include/arm/sys/syscall.h view

file too large to diff

+ musl-include/arm/sys/sysinfo.h view

file too large to diff

+ musl-include/arm/sys/syslog.h view

file too large to diff

+ musl-include/arm/sys/sysmacros.h view

file too large to diff

+ musl-include/arm/sys/termios.h view

file too large to diff

+ musl-include/arm/sys/time.h view

file too large to diff

+ musl-include/arm/sys/timeb.h view

file too large to diff

+ musl-include/arm/sys/timerfd.h view

file too large to diff

+ musl-include/arm/sys/times.h view

file too large to diff

+ musl-include/arm/sys/timex.h view

file too large to diff

+ musl-include/arm/sys/ttydefaults.h view

file too large to diff

+ musl-include/arm/sys/types.h view

file too large to diff

+ musl-include/arm/sys/ucontext.h view

file too large to diff

+ musl-include/arm/sys/uio.h view

file too large to diff

+ musl-include/arm/sys/un.h view

file too large to diff

+ musl-include/arm/sys/user.h view

file too large to diff

+ musl-include/arm/sys/utsname.h view

file too large to diff

+ musl-include/arm/sys/vfs.h view

file too large to diff

+ musl-include/arm/sys/vt.h view

file too large to diff

+ musl-include/arm/sys/wait.h view

file too large to diff

+ musl-include/arm/sys/xattr.h view

file too large to diff

+ musl-include/arm/syscall.h view

file too large to diff

+ musl-include/arm/sysexits.h view

file too large to diff

+ musl-include/arm/syslog.h view

file too large to diff

+ musl-include/arm/tar.h view

file too large to diff

+ musl-include/arm/termios.h view

file too large to diff

+ musl-include/arm/tgmath.h view

file too large to diff

+ musl-include/arm/threads.h view

file too large to diff

+ musl-include/arm/time.h view

file too large to diff

+ musl-include/arm/uchar.h view

file too large to diff

+ musl-include/arm/ucontext.h view

file too large to diff

+ musl-include/arm/ulimit.h view

file too large to diff

+ musl-include/arm/unistd.h view

file too large to diff

+ musl-include/arm/utime.h view

file too large to diff

+ musl-include/arm/utmp.h view

file too large to diff

+ musl-include/arm/utmpx.h view

file too large to diff

+ musl-include/arm/values.h view

file too large to diff

+ musl-include/arm/wait.h view

file too large to diff

+ musl-include/arm/wchar.h view

file too large to diff

+ musl-include/arm/wctype.h view

file too large to diff

+ musl-include/arm/wordexp.h view

file too large to diff

+ musl-include/i386/aio.h view

file too large to diff

+ musl-include/i386/alloca.h view

file too large to diff

+ musl-include/i386/ar.h view

file too large to diff

+ musl-include/i386/arpa/ftp.h view

file too large to diff

+ musl-include/i386/arpa/inet.h view

file too large to diff

+ musl-include/i386/arpa/nameser.h view

file too large to diff

+ musl-include/i386/arpa/nameser_compat.h view

file too large to diff

+ musl-include/i386/arpa/telnet.h view

file too large to diff

+ musl-include/i386/arpa/tftp.h view

file too large to diff

+ musl-include/i386/assert.h view

file too large to diff

+ musl-include/i386/bits/alltypes.h view

file too large to diff

+ musl-include/i386/bits/dirent.h view

file too large to diff

+ musl-include/i386/bits/errno.h view

file too large to diff

+ musl-include/i386/bits/fcntl.h view

file too large to diff

+ musl-include/i386/bits/fenv.h view

file too large to diff

+ musl-include/i386/bits/float.h view

file too large to diff

+ musl-include/i386/bits/hwcap.h view

file too large to diff

+ musl-include/i386/bits/io.h view

file too large to diff

+ musl-include/i386/bits/ioctl.h view

file too large to diff

+ musl-include/i386/bits/ioctl_fix.h view

file too large to diff

+ musl-include/i386/bits/ipc.h view

file too large to diff

+ musl-include/i386/bits/ipcstat.h view

file too large to diff

+ musl-include/i386/bits/kd.h view

file too large to diff

+ musl-include/i386/bits/limits.h view

file too large to diff

+ musl-include/i386/bits/link.h view

file too large to diff

+ musl-include/i386/bits/mman.h view

file too large to diff

+ musl-include/i386/bits/msg.h view

file too large to diff

+ musl-include/i386/bits/poll.h view

file too large to diff

+ musl-include/i386/bits/posix.h view

file too large to diff

+ musl-include/i386/bits/ptrace.h view

file too large to diff

+ musl-include/i386/bits/reg.h view

file too large to diff

+ musl-include/i386/bits/resource.h view

file too large to diff

+ musl-include/i386/bits/sem.h view

file too large to diff

+ musl-include/i386/bits/setjmp.h view

file too large to diff

+ musl-include/i386/bits/shm.h view

file too large to diff

+ musl-include/i386/bits/signal.h view

file too large to diff

+ musl-include/i386/bits/socket.h view

file too large to diff

+ musl-include/i386/bits/soundcard.h view

file too large to diff

+ musl-include/i386/bits/stat.h view

file too large to diff

+ musl-include/i386/bits/statfs.h view

file too large to diff

+ musl-include/i386/bits/stdint.h view

file too large to diff

+ musl-include/i386/bits/syscall.h view

file too large to diff

+ musl-include/i386/bits/termios.h view

file too large to diff

+ musl-include/i386/bits/user.h view

file too large to diff

+ musl-include/i386/bits/vt.h view

file too large to diff

+ musl-include/i386/byteswap.h view

file too large to diff

+ musl-include/i386/complex.h view

file too large to diff

+ musl-include/i386/cpio.h view

file too large to diff

+ musl-include/i386/crypt.h view

file too large to diff

+ musl-include/i386/ctype.h view

file too large to diff

+ musl-include/i386/dirent.h view

file too large to diff

+ musl-include/i386/dlfcn.h view

file too large to diff

+ musl-include/i386/elf.h view

file too large to diff

+ musl-include/i386/endian.h view

file too large to diff

+ musl-include/i386/err.h view

file too large to diff

+ musl-include/i386/errno.h view

file too large to diff

+ musl-include/i386/fcntl.h view

file too large to diff

+ musl-include/i386/features.h view

file too large to diff

+ musl-include/i386/fenv.h view

file too large to diff

+ musl-include/i386/float.h view

file too large to diff

+ musl-include/i386/fmtmsg.h view

file too large to diff

+ musl-include/i386/fnmatch.h view

file too large to diff

+ musl-include/i386/ftw.h view

file too large to diff

+ musl-include/i386/getopt.h view

file too large to diff

+ musl-include/i386/glob.h view

file too large to diff

+ musl-include/i386/grp.h view

file too large to diff

+ musl-include/i386/iconv.h view

file too large to diff

+ musl-include/i386/ifaddrs.h view

file too large to diff

+ musl-include/i386/inttypes.h view

file too large to diff

+ musl-include/i386/iso646.h view

file too large to diff

+ musl-include/i386/langinfo.h view

file too large to diff

+ musl-include/i386/lastlog.h view

file too large to diff

+ musl-include/i386/libgen.h view

file too large to diff

+ musl-include/i386/libintl.h view

file too large to diff

+ musl-include/i386/limits.h view

file too large to diff

+ musl-include/i386/link.h view

file too large to diff

+ musl-include/i386/locale.h view

file too large to diff

+ musl-include/i386/malloc.h view

file too large to diff

+ musl-include/i386/math.h view

file too large to diff

+ musl-include/i386/memory.h view

file too large to diff

+ musl-include/i386/mntent.h view

file too large to diff

+ musl-include/i386/monetary.h view

file too large to diff

+ musl-include/i386/mqueue.h view

file too large to diff

+ musl-include/i386/net/ethernet.h view

file too large to diff

+ musl-include/i386/net/if.h view

file too large to diff

+ musl-include/i386/net/if_arp.h view

file too large to diff

+ musl-include/i386/net/route.h view

file too large to diff

+ musl-include/i386/netdb.h view

file too large to diff

+ musl-include/i386/netinet/ether.h view

file too large to diff

+ musl-include/i386/netinet/icmp6.h view

file too large to diff

+ musl-include/i386/netinet/if_ether.h view

file too large to diff

+ musl-include/i386/netinet/igmp.h view

file too large to diff

+ musl-include/i386/netinet/in.h view

file too large to diff

+ musl-include/i386/netinet/in_systm.h view

file too large to diff

+ musl-include/i386/netinet/ip.h view

file too large to diff

+ musl-include/i386/netinet/ip6.h view

file too large to diff

+ musl-include/i386/netinet/ip_icmp.h view

file too large to diff

+ musl-include/i386/netinet/tcp.h view

file too large to diff

+ musl-include/i386/netinet/udp.h view

file too large to diff

+ musl-include/i386/netpacket/packet.h view

file too large to diff

+ musl-include/i386/nl_types.h view

file too large to diff

+ musl-include/i386/paths.h view

file too large to diff

+ musl-include/i386/poll.h view

file too large to diff

+ musl-include/i386/pthread.h view

file too large to diff

+ musl-include/i386/pty.h view

file too large to diff

+ musl-include/i386/pwd.h view

file too large to diff

+ musl-include/i386/regex.h view

file too large to diff

+ musl-include/i386/resolv.h view

file too large to diff

+ musl-include/i386/sched.h view

file too large to diff

+ musl-include/i386/scsi/scsi.h view

file too large to diff

+ musl-include/i386/scsi/scsi_ioctl.h view

file too large to diff

+ musl-include/i386/scsi/sg.h view

file too large to diff

+ musl-include/i386/search.h view

file too large to diff

+ musl-include/i386/semaphore.h view

file too large to diff

+ musl-include/i386/setjmp.h view

file too large to diff

+ musl-include/i386/shadow.h view

file too large to diff

+ musl-include/i386/signal.h view

file too large to diff

+ musl-include/i386/spawn.h view

file too large to diff

+ musl-include/i386/stdalign.h view

file too large to diff

+ musl-include/i386/stdarg.h view

file too large to diff

+ musl-include/i386/stdbool.h view

file too large to diff

+ musl-include/i386/stdc-predef.h view

file too large to diff

+ musl-include/i386/stddef.h view

file too large to diff

+ musl-include/i386/stdint.h view

file too large to diff

+ musl-include/i386/stdio.h view

file too large to diff

+ musl-include/i386/stdio_ext.h view

file too large to diff

+ musl-include/i386/stdlib.h view

file too large to diff

+ musl-include/i386/stdnoreturn.h view

file too large to diff

+ musl-include/i386/string.h view

file too large to diff

+ musl-include/i386/strings.h view

file too large to diff

+ musl-include/i386/stropts.h view

file too large to diff

+ musl-include/i386/sys/acct.h view

file too large to diff

+ musl-include/i386/sys/auxv.h view

file too large to diff

+ musl-include/i386/sys/cachectl.h view

file too large to diff

+ musl-include/i386/sys/dir.h view

file too large to diff

+ musl-include/i386/sys/epoll.h view

file too large to diff

+ musl-include/i386/sys/errno.h view

file too large to diff

+ musl-include/i386/sys/eventfd.h view

file too large to diff

+ musl-include/i386/sys/fanotify.h view

file too large to diff

+ musl-include/i386/sys/fcntl.h view

file too large to diff

+ musl-include/i386/sys/file.h view

file too large to diff

+ musl-include/i386/sys/fsuid.h view

file too large to diff

+ musl-include/i386/sys/inotify.h view

file too large to diff

+ musl-include/i386/sys/io.h view

file too large to diff

+ musl-include/i386/sys/ioctl.h view

file too large to diff

+ musl-include/i386/sys/ipc.h view

file too large to diff

+ musl-include/i386/sys/kd.h view

file too large to diff

+ musl-include/i386/sys/klog.h view

file too large to diff

+ musl-include/i386/sys/membarrier.h view

file too large to diff

+ musl-include/i386/sys/mman.h view

file too large to diff

+ musl-include/i386/sys/mount.h view

file too large to diff

+ musl-include/i386/sys/msg.h view

file too large to diff

+ musl-include/i386/sys/mtio.h view

file too large to diff

+ musl-include/i386/sys/param.h view

file too large to diff

+ musl-include/i386/sys/personality.h view

file too large to diff

+ musl-include/i386/sys/poll.h view

file too large to diff

+ musl-include/i386/sys/prctl.h view

file too large to diff

+ musl-include/i386/sys/procfs.h view

file too large to diff

+ musl-include/i386/sys/ptrace.h view

file too large to diff

+ musl-include/i386/sys/quota.h view

file too large to diff

+ musl-include/i386/sys/random.h view

file too large to diff

+ musl-include/i386/sys/reboot.h view

file too large to diff

+ musl-include/i386/sys/reg.h view

file too large to diff

+ musl-include/i386/sys/resource.h view

file too large to diff

+ musl-include/i386/sys/select.h view

file too large to diff

+ musl-include/i386/sys/sem.h view

file too large to diff

+ musl-include/i386/sys/sendfile.h view

file too large to diff

+ musl-include/i386/sys/shm.h view

file too large to diff

+ musl-include/i386/sys/signal.h view

file too large to diff

+ musl-include/i386/sys/signalfd.h view

file too large to diff

+ musl-include/i386/sys/socket.h view

file too large to diff

+ musl-include/i386/sys/soundcard.h view

file too large to diff

+ musl-include/i386/sys/stat.h view

file too large to diff

+ musl-include/i386/sys/statfs.h view

file too large to diff

+ musl-include/i386/sys/statvfs.h view

file too large to diff

+ musl-include/i386/sys/stropts.h view

file too large to diff

+ musl-include/i386/sys/swap.h view

file too large to diff

+ musl-include/i386/sys/syscall.h view

file too large to diff

+ musl-include/i386/sys/sysinfo.h view

file too large to diff

+ musl-include/i386/sys/syslog.h view

file too large to diff

+ musl-include/i386/sys/sysmacros.h view

file too large to diff

+ musl-include/i386/sys/termios.h view

file too large to diff

+ musl-include/i386/sys/time.h view

file too large to diff

+ musl-include/i386/sys/timeb.h view

file too large to diff

+ musl-include/i386/sys/timerfd.h view

file too large to diff

+ musl-include/i386/sys/times.h view

file too large to diff

+ musl-include/i386/sys/timex.h view

file too large to diff

+ musl-include/i386/sys/ttydefaults.h view

file too large to diff

+ musl-include/i386/sys/types.h view

file too large to diff

+ musl-include/i386/sys/ucontext.h view

file too large to diff

+ musl-include/i386/sys/uio.h view

file too large to diff

+ musl-include/i386/sys/un.h view

file too large to diff

+ musl-include/i386/sys/user.h view

file too large to diff

+ musl-include/i386/sys/utsname.h view

file too large to diff

+ musl-include/i386/sys/vfs.h view

file too large to diff

+ musl-include/i386/sys/vt.h view

file too large to diff

+ musl-include/i386/sys/wait.h view

file too large to diff

+ musl-include/i386/sys/xattr.h view

file too large to diff

+ musl-include/i386/syscall.h view

file too large to diff

+ musl-include/i386/sysexits.h view

file too large to diff

+ musl-include/i386/syslog.h view

file too large to diff

+ musl-include/i386/tar.h view

file too large to diff

+ musl-include/i386/termios.h view

file too large to diff

+ musl-include/i386/tgmath.h view

file too large to diff

+ musl-include/i386/threads.h view

file too large to diff

+ musl-include/i386/time.h view

file too large to diff

+ musl-include/i386/uchar.h view

file too large to diff

+ musl-include/i386/ucontext.h view

file too large to diff

+ musl-include/i386/ulimit.h view

file too large to diff

+ musl-include/i386/unistd.h view

file too large to diff

+ musl-include/i386/utime.h view

file too large to diff

+ musl-include/i386/utmp.h view

file too large to diff

+ musl-include/i386/utmpx.h view

file too large to diff

+ musl-include/i386/values.h view

file too large to diff

+ musl-include/i386/wait.h view

file too large to diff

+ musl-include/i386/wchar.h view

file too large to diff

+ musl-include/i386/wctype.h view

file too large to diff

+ musl-include/i386/wordexp.h view

file too large to diff

+ musl-include/x86_64/aio.h view

file too large to diff

+ musl-include/x86_64/alloca.h view

file too large to diff

+ musl-include/x86_64/ar.h view

file too large to diff

+ musl-include/x86_64/arpa/ftp.h view

file too large to diff

+ musl-include/x86_64/arpa/inet.h view

file too large to diff

+ musl-include/x86_64/arpa/nameser.h view

file too large to diff

+ musl-include/x86_64/arpa/nameser_compat.h view

file too large to diff

+ musl-include/x86_64/arpa/telnet.h view

file too large to diff

+ musl-include/x86_64/arpa/tftp.h view

file too large to diff

+ musl-include/x86_64/assert.h view

file too large to diff

+ musl-include/x86_64/bits/alltypes.h view

file too large to diff

+ musl-include/x86_64/bits/dirent.h view

file too large to diff

+ musl-include/x86_64/bits/errno.h view

file too large to diff

+ musl-include/x86_64/bits/fcntl.h view

file too large to diff

+ musl-include/x86_64/bits/fenv.h view

file too large to diff

+ musl-include/x86_64/bits/float.h view

file too large to diff

+ musl-include/x86_64/bits/hwcap.h view

file too large to diff

+ musl-include/x86_64/bits/io.h view

file too large to diff

+ musl-include/x86_64/bits/ioctl.h view

file too large to diff

+ musl-include/x86_64/bits/ioctl_fix.h view

file too large to diff

+ musl-include/x86_64/bits/ipc.h view

file too large to diff

+ musl-include/x86_64/bits/ipcstat.h view

file too large to diff

+ musl-include/x86_64/bits/kd.h view

file too large to diff

+ musl-include/x86_64/bits/limits.h view

file too large to diff

+ musl-include/x86_64/bits/link.h view

file too large to diff

+ musl-include/x86_64/bits/mman.h view

file too large to diff

+ musl-include/x86_64/bits/msg.h view

file too large to diff

+ musl-include/x86_64/bits/poll.h view

file too large to diff

+ musl-include/x86_64/bits/posix.h view

file too large to diff

+ musl-include/x86_64/bits/ptrace.h view

file too large to diff

+ musl-include/x86_64/bits/reg.h view

file too large to diff

+ musl-include/x86_64/bits/resource.h view

file too large to diff

+ musl-include/x86_64/bits/sem.h view

file too large to diff

+ musl-include/x86_64/bits/setjmp.h view

file too large to diff

+ musl-include/x86_64/bits/shm.h view

file too large to diff

+ musl-include/x86_64/bits/signal.h view

file too large to diff

+ musl-include/x86_64/bits/socket.h view

file too large to diff

+ musl-include/x86_64/bits/soundcard.h view

file too large to diff

+ musl-include/x86_64/bits/stat.h view

file too large to diff

+ musl-include/x86_64/bits/statfs.h view

file too large to diff

+ musl-include/x86_64/bits/stdint.h view

file too large to diff

+ musl-include/x86_64/bits/syscall.h view

file too large to diff

+ musl-include/x86_64/bits/termios.h view

file too large to diff

+ musl-include/x86_64/bits/user.h view

file too large to diff

+ musl-include/x86_64/bits/vt.h view

file too large to diff

+ musl-include/x86_64/byteswap.h view

file too large to diff

+ musl-include/x86_64/complex.h view

file too large to diff

+ musl-include/x86_64/cpio.h view

file too large to diff

+ musl-include/x86_64/crypt.h view

file too large to diff

+ musl-include/x86_64/ctype.h view

file too large to diff

+ musl-include/x86_64/dirent.h view

file too large to diff

+ musl-include/x86_64/dlfcn.h view

file too large to diff

+ musl-include/x86_64/elf.h view

file too large to diff

+ musl-include/x86_64/endian.h view

file too large to diff

+ musl-include/x86_64/err.h view

file too large to diff

+ musl-include/x86_64/errno.h view

file too large to diff

+ musl-include/x86_64/fcntl.h view

file too large to diff

+ musl-include/x86_64/features.h view

file too large to diff

+ musl-include/x86_64/fenv.h view

file too large to diff

+ musl-include/x86_64/float.h view

file too large to diff

+ musl-include/x86_64/fmtmsg.h view

file too large to diff

+ musl-include/x86_64/fnmatch.h view

file too large to diff

+ musl-include/x86_64/ftw.h view

file too large to diff

+ musl-include/x86_64/getopt.h view

file too large to diff

+ musl-include/x86_64/glob.h view

file too large to diff

+ musl-include/x86_64/grp.h view

file too large to diff

+ musl-include/x86_64/iconv.h view

file too large to diff

+ musl-include/x86_64/ifaddrs.h view

file too large to diff

+ musl-include/x86_64/inttypes.h view

file too large to diff

+ musl-include/x86_64/iso646.h view

file too large to diff

+ musl-include/x86_64/langinfo.h view

file too large to diff

+ musl-include/x86_64/lastlog.h view

file too large to diff

+ musl-include/x86_64/libgen.h view

file too large to diff

+ musl-include/x86_64/libintl.h view

file too large to diff

+ musl-include/x86_64/limits.h view

file too large to diff

+ musl-include/x86_64/link.h view

file too large to diff

+ musl-include/x86_64/locale.h view

file too large to diff

+ musl-include/x86_64/malloc.h view

file too large to diff

+ musl-include/x86_64/math.h view

file too large to diff

+ musl-include/x86_64/memory.h view

file too large to diff

+ musl-include/x86_64/mntent.h view

file too large to diff

+ musl-include/x86_64/monetary.h view

file too large to diff

+ musl-include/x86_64/mqueue.h view

file too large to diff

+ musl-include/x86_64/net/ethernet.h view

file too large to diff

+ musl-include/x86_64/net/if.h view

file too large to diff

+ musl-include/x86_64/net/if_arp.h view

file too large to diff

+ musl-include/x86_64/net/route.h view

file too large to diff

+ musl-include/x86_64/netdb.h view

file too large to diff

+ musl-include/x86_64/netinet/ether.h view

file too large to diff

+ musl-include/x86_64/netinet/icmp6.h view

file too large to diff

+ musl-include/x86_64/netinet/if_ether.h view

file too large to diff

+ musl-include/x86_64/netinet/igmp.h view

file too large to diff

+ musl-include/x86_64/netinet/in.h view

file too large to diff

+ musl-include/x86_64/netinet/in_systm.h view

file too large to diff

+ musl-include/x86_64/netinet/ip.h view

file too large to diff

+ musl-include/x86_64/netinet/ip6.h view

file too large to diff

+ musl-include/x86_64/netinet/ip_icmp.h view

file too large to diff

+ musl-include/x86_64/netinet/tcp.h view

file too large to diff

+ musl-include/x86_64/netinet/udp.h view

file too large to diff

+ musl-include/x86_64/netpacket/packet.h view

file too large to diff

+ musl-include/x86_64/nl_types.h view

file too large to diff

+ musl-include/x86_64/paths.h view

file too large to diff

+ musl-include/x86_64/poll.h view

file too large to diff

+ musl-include/x86_64/pthread.h view

file too large to diff

+ musl-include/x86_64/pty.h view

file too large to diff

+ musl-include/x86_64/pwd.h view

file too large to diff

+ musl-include/x86_64/regex.h view

file too large to diff

+ musl-include/x86_64/resolv.h view

file too large to diff

+ musl-include/x86_64/sched.h view

file too large to diff

+ musl-include/x86_64/scsi/scsi.h view

file too large to diff

+ musl-include/x86_64/scsi/scsi_ioctl.h view

file too large to diff

+ musl-include/x86_64/scsi/sg.h view

file too large to diff

+ musl-include/x86_64/search.h view

file too large to diff

+ musl-include/x86_64/semaphore.h view

file too large to diff

+ musl-include/x86_64/setjmp.h view

file too large to diff

+ musl-include/x86_64/shadow.h view

file too large to diff

+ musl-include/x86_64/signal.h view

file too large to diff

+ musl-include/x86_64/spawn.h view

file too large to diff

+ musl-include/x86_64/stdalign.h view

file too large to diff

+ musl-include/x86_64/stdarg.h view

file too large to diff

+ musl-include/x86_64/stdbool.h view

file too large to diff

+ musl-include/x86_64/stdc-predef.h view

file too large to diff

+ musl-include/x86_64/stddef.h view

file too large to diff

+ musl-include/x86_64/stdint.h view

file too large to diff

+ musl-include/x86_64/stdio.h view

file too large to diff

+ musl-include/x86_64/stdio_ext.h view

file too large to diff

+ musl-include/x86_64/stdlib.h view

file too large to diff

+ musl-include/x86_64/stdnoreturn.h view

file too large to diff

+ musl-include/x86_64/string.h view

file too large to diff

+ musl-include/x86_64/strings.h view

file too large to diff

+ musl-include/x86_64/stropts.h view

file too large to diff

+ musl-include/x86_64/sys/acct.h view

file too large to diff

+ musl-include/x86_64/sys/auxv.h view

file too large to diff

+ musl-include/x86_64/sys/cachectl.h view

file too large to diff

+ musl-include/x86_64/sys/dir.h view

file too large to diff

+ musl-include/x86_64/sys/epoll.h view

file too large to diff

+ musl-include/x86_64/sys/errno.h view

file too large to diff

+ musl-include/x86_64/sys/eventfd.h view

file too large to diff

+ musl-include/x86_64/sys/fanotify.h view

file too large to diff

+ musl-include/x86_64/sys/fcntl.h view

file too large to diff

+ musl-include/x86_64/sys/file.h view

file too large to diff

+ musl-include/x86_64/sys/fsuid.h view

file too large to diff

+ musl-include/x86_64/sys/inotify.h view

file too large to diff

+ musl-include/x86_64/sys/io.h view

file too large to diff

+ musl-include/x86_64/sys/ioctl.h view

file too large to diff

+ musl-include/x86_64/sys/ipc.h view

file too large to diff

+ musl-include/x86_64/sys/kd.h view

file too large to diff

+ musl-include/x86_64/sys/klog.h view

file too large to diff

+ musl-include/x86_64/sys/membarrier.h view

file too large to diff

+ musl-include/x86_64/sys/mman.h view

file too large to diff

+ musl-include/x86_64/sys/mount.h view

file too large to diff

+ musl-include/x86_64/sys/msg.h view

file too large to diff

+ musl-include/x86_64/sys/mtio.h view

file too large to diff

+ musl-include/x86_64/sys/param.h view

file too large to diff

+ musl-include/x86_64/sys/personality.h view

file too large to diff

+ musl-include/x86_64/sys/poll.h view

file too large to diff

+ musl-include/x86_64/sys/prctl.h view

file too large to diff

+ musl-include/x86_64/sys/procfs.h view

file too large to diff

+ musl-include/x86_64/sys/ptrace.h view

file too large to diff

+ musl-include/x86_64/sys/quota.h view

file too large to diff

+ musl-include/x86_64/sys/random.h view

file too large to diff

+ musl-include/x86_64/sys/reboot.h view

file too large to diff

+ musl-include/x86_64/sys/reg.h view

file too large to diff

+ musl-include/x86_64/sys/resource.h view

file too large to diff

+ musl-include/x86_64/sys/select.h view

file too large to diff

+ musl-include/x86_64/sys/sem.h view

file too large to diff

+ musl-include/x86_64/sys/sendfile.h view

file too large to diff

+ musl-include/x86_64/sys/shm.h view

file too large to diff

+ musl-include/x86_64/sys/signal.h view

file too large to diff

+ musl-include/x86_64/sys/signalfd.h view

file too large to diff

+ musl-include/x86_64/sys/socket.h view

file too large to diff

+ musl-include/x86_64/sys/soundcard.h view

file too large to diff

+ musl-include/x86_64/sys/stat.h view

file too large to diff

+ musl-include/x86_64/sys/statfs.h view

file too large to diff

+ musl-include/x86_64/sys/statvfs.h view

file too large to diff

+ musl-include/x86_64/sys/stropts.h view

file too large to diff

+ musl-include/x86_64/sys/swap.h view

file too large to diff

+ musl-include/x86_64/sys/syscall.h view

file too large to diff

+ musl-include/x86_64/sys/sysinfo.h view

file too large to diff

+ musl-include/x86_64/sys/syslog.h view

file too large to diff

+ musl-include/x86_64/sys/sysmacros.h view

file too large to diff

+ musl-include/x86_64/sys/termios.h view

file too large to diff

+ musl-include/x86_64/sys/time.h view

file too large to diff

+ musl-include/x86_64/sys/timeb.h view

file too large to diff

+ musl-include/x86_64/sys/timerfd.h view

file too large to diff

+ musl-include/x86_64/sys/times.h view

file too large to diff

+ musl-include/x86_64/sys/timex.h view

file too large to diff

+ musl-include/x86_64/sys/ttydefaults.h view

file too large to diff

+ musl-include/x86_64/sys/types.h view

file too large to diff

+ musl-include/x86_64/sys/ucontext.h view

file too large to diff

+ musl-include/x86_64/sys/uio.h view

file too large to diff

+ musl-include/x86_64/sys/un.h view

file too large to diff

+ musl-include/x86_64/sys/user.h view

file too large to diff

+ musl-include/x86_64/sys/utsname.h view

file too large to diff

+ musl-include/x86_64/sys/vfs.h view

file too large to diff

+ musl-include/x86_64/sys/vt.h view

file too large to diff

+ musl-include/x86_64/sys/wait.h view

file too large to diff

+ musl-include/x86_64/sys/xattr.h view

file too large to diff

+ musl-include/x86_64/syscall.h view

file too large to diff

+ musl-include/x86_64/sysexits.h view

file too large to diff

+ musl-include/x86_64/syslog.h view

file too large to diff

+ musl-include/x86_64/tar.h view

file too large to diff

+ musl-include/x86_64/termios.h view

file too large to diff

+ musl-include/x86_64/tgmath.h view

file too large to diff

+ musl-include/x86_64/threads.h view

file too large to diff

+ musl-include/x86_64/time.h view

file too large to diff

+ musl-include/x86_64/uchar.h view

file too large to diff

+ musl-include/x86_64/ucontext.h view

file too large to diff

+ musl-include/x86_64/ulimit.h view

file too large to diff

+ musl-include/x86_64/unistd.h view

file too large to diff

+ musl-include/x86_64/utime.h view

file too large to diff

+ musl-include/x86_64/utmp.h view

file too large to diff

+ musl-include/x86_64/utmpx.h view

file too large to diff

+ musl-include/x86_64/values.h view

file too large to diff

+ musl-include/x86_64/wait.h view

file too large to diff

+ musl-include/x86_64/wchar.h view

file too large to diff

+ musl-include/x86_64/wctype.h view

file too large to diff

+ musl-include/x86_64/wordexp.h view

file too large to diff

+ src-internal/Data/Digraph.hs view

file too large to diff

+ src-internal/HsBindgen.hs view

file too large to diff

+ src-internal/HsBindgen/Artefact.hs view

file too large to diff

+ src-internal/HsBindgen/ArtefactM.hs view

file too large to diff

+ src-internal/HsBindgen/Backend.hs view

file too large to diff

+ src-internal/HsBindgen/Backend/Category.hs view

file too large to diff

+ src-internal/HsBindgen/Backend/Category/ApplyChoice.hs view

file too large to diff

+ src-internal/HsBindgen/Backend/Extensions.hs view

file too large to diff

+ src-internal/HsBindgen/Backend/Global.hs view

file too large to diff

+ src-internal/HsBindgen/Backend/Hs/AST.hs view

file too large to diff

+ src-internal/HsBindgen/Backend/Hs/AST/CompletePragma.hs view

file too large to diff

+ src-internal/HsBindgen/Backend/Hs/AST/Strategy.hs view

file too large to diff

+ src-internal/HsBindgen/Backend/Hs/CallConv.hs view

file too large to diff

+ src-internal/HsBindgen/Backend/Hs/Haddock/Documentation.hs view

file too large to diff

+ src-internal/HsBindgen/Backend/Hs/Haddock/Translation.hs view

file too large to diff

+ src-internal/HsBindgen/Backend/Hs/Name.hs view

file too large to diff

+ src-internal/HsBindgen/Backend/Hs/Origin.hs view

file too large to diff

+ src-internal/HsBindgen/Backend/Hs/Translation.hs view

file too large to diff

+ src-internal/HsBindgen/Backend/Hs/Translation/Field.hs view

file too large to diff

+ src-internal/HsBindgen/Backend/Hs/Translation/ForeignImport.hs view

file too large to diff

+ src-internal/HsBindgen/Backend/Hs/Translation/Function.hs view

file too large to diff

+ src-internal/HsBindgen/Backend/Hs/Translation/Instances.hs view

file too large to diff

+ src-internal/HsBindgen/Backend/Hs/Translation/Monad.hs view

file too large to diff

+ src-internal/HsBindgen/Backend/Hs/Translation/Newtype.hs view

file too large to diff

+ src-internal/HsBindgen/Backend/Hs/Translation/Structure.hs view

file too large to diff

+ src-internal/HsBindgen/Backend/Hs/Translation/ToFromFunPtr.hs view

file too large to diff

+ src-internal/HsBindgen/Backend/Hs/Translation/Union.hs view

file too large to diff

+ src-internal/HsBindgen/Backend/HsModule/Names.hs view

file too large to diff

+ src-internal/HsBindgen/Backend/HsModule/Pretty.hs view

file too large to diff

+ src-internal/HsBindgen/Backend/HsModule/Pretty/CAPI.hs view

file too large to diff

+ src-internal/HsBindgen/Backend/HsModule/Pretty/Comment.hs view

file too large to diff

+ src-internal/HsBindgen/Backend/HsModule/Pretty/Common.hs view

file too large to diff

+ src-internal/HsBindgen/Backend/HsModule/Pretty/Decl.hs view

file too large to diff

+ src-internal/HsBindgen/Backend/HsModule/Pretty/Expr.hs view

file too large to diff

+ src-internal/HsBindgen/Backend/HsModule/Pretty/Type.hs view

file too large to diff

+ src-internal/HsBindgen/Backend/HsModule/Render.hs view

file too large to diff

+ src-internal/HsBindgen/Backend/HsModule/Translation.hs view

file too large to diff

+ src-internal/HsBindgen/Backend/HsModule/Translation/Doxygen.hs view

file too large to diff

+ src-internal/HsBindgen/Backend/Level.hs view

file too large to diff

+ src-internal/HsBindgen/Backend/Runtime.hs view

file too large to diff

+ src-internal/HsBindgen/Backend/SHs/AST.hs view

file too large to diff

+ src-internal/HsBindgen/Backend/SHs/AST/Expr.hs view

file too large to diff

+ src-internal/HsBindgen/Backend/SHs/AST/Type.hs view

file too large to diff

+ src-internal/HsBindgen/Backend/SHs/Simplify.hs view

file too large to diff

+ src-internal/HsBindgen/Backend/SHs/Translation.hs view

file too large to diff

+ src-internal/HsBindgen/Backend/SHs/Translation/Common.hs view

file too large to diff

+ src-internal/HsBindgen/Backend/SHs/Translation/MapFunction.hs view

file too large to diff

+ src-internal/HsBindgen/Backend/TH/Translation.hs view

file too large to diff

+ src-internal/HsBindgen/Backend/UniqueSymbol.hs view

file too large to diff

+ src-internal/HsBindgen/BindingSpec.hs view

file too large to diff

+ src-internal/HsBindgen/BindingSpec/Gen.hs view

file too large to diff

+ src-internal/HsBindgen/BindingSpec/Private/Common.hs view

file too large to diff

+ src-internal/HsBindgen/BindingSpec/Private/Stdlib.hs view

file too large to diff

+ src-internal/HsBindgen/BindingSpec/Private/V1.hs view

file too large to diff

+ src-internal/HsBindgen/BindingSpec/Private/Version.hs view

file too large to diff

+ src-internal/HsBindgen/Boot.hs view

file too large to diff

+ src-internal/HsBindgen/Cache.hs view

file too large to diff

+ src-internal/HsBindgen/Clang.hs view

file too large to diff

+ src-internal/HsBindgen/Clang/CompareVersions.hs view

file too large to diff

+ src-internal/HsBindgen/Clang/Discover.hs view

file too large to diff

+ src-internal/HsBindgen/Clang/ExtraClangArgs.hs view

file too large to diff

+ src-internal/HsBindgen/Clang/Macos.hs view

file too large to diff

+ src-internal/HsBindgen/Clang/Tokens.hs view

file too large to diff

+ src-internal/HsBindgen/Config.hs view

file too large to diff

+ src-internal/HsBindgen/Config/ClangArgs.hs view

file too large to diff

+ src-internal/HsBindgen/Config/Internal.hs view

file too large to diff

+ src-internal/HsBindgen/Config/MangleCandidate.hs view

file too large to diff

+ src-internal/HsBindgen/Config/MangleCandidate/ReservedNames.hs view

file too large to diff

+ src-internal/HsBindgen/Config/Prelims.hs view

file too large to diff

+ src-internal/HsBindgen/Doxygen.hs view

file too large to diff

+ src-internal/HsBindgen/Eff.hs view

file too large to diff

+ src-internal/HsBindgen/Errors.hs view

file too large to diff

+ src-internal/HsBindgen/Frontend.hs view

file too large to diff

+ src-internal/HsBindgen/Frontend/Analysis.hs view

file too large to diff

+ src-internal/HsBindgen/Frontend/Analysis/DeclIndex.hs view

file too large to diff

+ src-internal/HsBindgen/Frontend/Analysis/DeclIndex/ResolveMacro.hs view

file too large to diff

+ src-internal/HsBindgen/Frontend/Analysis/DeclUseGraph.hs view

file too large to diff

+ src-internal/HsBindgen/Frontend/Analysis/DeclUseGraph/Construction.hs view

file too large to diff

+ src-internal/HsBindgen/Frontend/Analysis/DeclUseGraph/Definition.hs view

file too large to diff

+ src-internal/HsBindgen/Frontend/Analysis/DeclUseGraph/Query.hs view

file too large to diff

+ src-internal/HsBindgen/Frontend/Analysis/Deps.hs view

file too large to diff

+ src-internal/HsBindgen/Frontend/Analysis/IncludeGraph.hs view

file too large to diff

+ src-internal/HsBindgen/Frontend/Analysis/Typedefs.hs view

file too large to diff

+ src-internal/HsBindgen/Frontend/Analysis/UnnamedIdUsage.hs view

file too large to diff

+ src-internal/HsBindgen/Frontend/Analysis/UseDeclGraph.hs view

file too large to diff

+ src-internal/HsBindgen/Frontend/DeclMeta.hs view

file too large to diff

+ src-internal/HsBindgen/Frontend/LanguageC.hs view

file too large to diff

+ src-internal/HsBindgen/Frontend/LanguageC/Error.hs view

file too large to diff

+ src-internal/HsBindgen/Frontend/LanguageC/Monad.hs view

file too large to diff

+ src-internal/HsBindgen/Frontend/LanguageC/PartialAST.hs view

file too large to diff

+ src-internal/HsBindgen/Frontend/LanguageC/PartialAST/FromLanC.hs view

file too large to diff

+ src-internal/HsBindgen/Frontend/LanguageC/PartialAST/ToBindgen.hs view

file too large to diff

+ src-internal/HsBindgen/Frontend/Pass/AdjustTypes.hs view

file too large to diff

+ src-internal/HsBindgen/Frontend/Pass/AdjustTypes/IsPass.hs view

file too large to diff

+ src-internal/HsBindgen/Frontend/Pass/ConstructTranslationUnit.hs view

file too large to diff

+ src-internal/HsBindgen/Frontend/Pass/ConstructTranslationUnit/IsPass.hs view

file too large to diff

+ src-internal/HsBindgen/Frontend/Pass/EnrichComments.hs view

file too large to diff

+ src-internal/HsBindgen/Frontend/Pass/EnrichComments/IsPass.hs view

file too large to diff

+ src-internal/HsBindgen/Frontend/Pass/FillUnnamedIds.hs view

file too large to diff

+ src-internal/HsBindgen/Frontend/Pass/FillUnnamedIds/ChooseNames.hs view

file too large to diff

+ src-internal/HsBindgen/Frontend/Pass/FillUnnamedIds/IsPass.hs view

file too large to diff

+ src-internal/HsBindgen/Frontend/Pass/Final.hs view

file too large to diff

+ src-internal/HsBindgen/Frontend/Pass/MangleNames.hs view

file too large to diff

+ src-internal/HsBindgen/Frontend/Pass/MangleNames/CreateNames.hs view

file too large to diff

+ src-internal/HsBindgen/Frontend/Pass/MangleNames/DetectClashes.hs view

file too large to diff

+ src-internal/HsBindgen/Frontend/Pass/MangleNames/Error.hs view

file too large to diff

+ src-internal/HsBindgen/Frontend/Pass/MangleNames/IsPass.hs view

file too large to diff

+ src-internal/HsBindgen/Frontend/Pass/MangleNames/Names.hs view

file too large to diff

+ src-internal/HsBindgen/Frontend/Pass/MangleNames/ResolveNames.hs view

file too large to diff

+ src-internal/HsBindgen/Frontend/Pass/Parse.hs view

file too large to diff

+ src-internal/HsBindgen/Frontend/Pass/Parse/Builtin.hs view

file too large to diff

+ src-internal/HsBindgen/Frontend/Pass/Parse/Context.hs view

file too large to diff

+ src-internal/HsBindgen/Frontend/Pass/Parse/Decl.hs view

file too large to diff

+ src-internal/HsBindgen/Frontend/Pass/Parse/Decl/Field.hs view

file too large to diff

+ src-internal/HsBindgen/Frontend/Pass/Parse/Decl/ImplicitFields.hs view

file too large to diff

+ src-internal/HsBindgen/Frontend/Pass/Parse/Decl/Macro.hs view

file too large to diff

+ src-internal/HsBindgen/Frontend/Pass/Parse/Decl/Members.hs view

file too large to diff

+ src-internal/HsBindgen/Frontend/Pass/Parse/IsPass.hs view

file too large to diff

+ src-internal/HsBindgen/Frontend/Pass/Parse/Monad/Decl.hs view

file too large to diff

+ src-internal/HsBindgen/Frontend/Pass/Parse/Monad/SourceRangeMap.hs view

file too large to diff

+ src-internal/HsBindgen/Frontend/Pass/Parse/Monad/Type.hs view

file too large to diff

+ src-internal/HsBindgen/Frontend/Pass/Parse/Msg.hs view

file too large to diff

+ src-internal/HsBindgen/Frontend/Pass/Parse/Result.hs view

file too large to diff

+ src-internal/HsBindgen/Frontend/Pass/Parse/Type.hs view

file too large to diff

+ src-internal/HsBindgen/Frontend/Pass/PrepareReparse.hs view

file too large to diff

+ src-internal/HsBindgen/Frontend/Pass/PrepareReparse/AST.hs view

file too large to diff

+ src-internal/HsBindgen/Frontend/Pass/PrepareReparse/Flatten.hs view

file too large to diff

+ src-internal/HsBindgen/Frontend/Pass/PrepareReparse/IsPass.hs view

file too large to diff

+ src-internal/HsBindgen/Frontend/Pass/PrepareReparse/IsPass/Msg.hs view

file too large to diff

+ src-internal/HsBindgen/Frontend/Pass/PrepareReparse/Lexer.hs view

file too large to diff

+ src-internal/HsBindgen/Frontend/Pass/PrepareReparse/Parser.hs view

file too large to diff

+ src-internal/HsBindgen/Frontend/Pass/PrepareReparse/Preprocessor.hs view

file too large to diff

+ src-internal/HsBindgen/Frontend/Pass/PrepareReparse/Printer.hs view

file too large to diff

+ src-internal/HsBindgen/Frontend/Pass/PrepareReparse/Printer/Util.hs view

file too large to diff

+ src-internal/HsBindgen/Frontend/Pass/PrepareReparse/Simplifier.hs view

file too large to diff

+ src-internal/HsBindgen/Frontend/Pass/PrepareReparse/Tracer.hs view

file too large to diff

+ src-internal/HsBindgen/Frontend/Pass/PrepareReparse/Update.hs view

file too large to diff

+ src-internal/HsBindgen/Frontend/Pass/ReparseMacroExpansions.hs view

file too large to diff

+ src-internal/HsBindgen/Frontend/Pass/ReparseMacroExpansions/ForgetAnn.hs view

file too large to diff

+ src-internal/HsBindgen/Frontend/Pass/ReparseMacroExpansions/IsPass.hs view

file too large to diff

+ src-internal/HsBindgen/Frontend/Pass/ReparseMacroExpansions/IsPass/Msg.hs view

file too large to diff

+ src-internal/HsBindgen/Frontend/Pass/ReparseMacroExpansions/LanC.hs view

file too large to diff

+ src-internal/HsBindgen/Frontend/Pass/ReparseMacroExpansions/Zip.hs view

file too large to diff

+ src-internal/HsBindgen/Frontend/Pass/ReparseMacroExpansions/Zip/Error.hs view

file too large to diff

+ src-internal/HsBindgen/Frontend/Pass/ResolveBindingSpecs.hs view

file too large to diff

+ src-internal/HsBindgen/Frontend/Pass/ResolveBindingSpecs/IsPass.hs view

file too large to diff

+ src-internal/HsBindgen/Frontend/Pass/Select.hs view

file too large to diff

+ src-internal/HsBindgen/Frontend/Pass/Select/IsPass.hs view

file too large to diff

+ src-internal/HsBindgen/Frontend/Pass/SimplifyAST.hs view

file too large to diff

+ src-internal/HsBindgen/Frontend/Pass/SimplifyAST/IsPass.hs view

file too large to diff

+ src-internal/HsBindgen/Frontend/Pass/TranslateTypes.hs view

file too large to diff

+ src-internal/HsBindgen/Frontend/Pass/TranslateTypes/IsPass.hs view

file too large to diff

+ src-internal/HsBindgen/Frontend/Pass/TranslateTypes/IsPass/Msg.hs view

file too large to diff

+ src-internal/HsBindgen/Frontend/Pass/TranslateTypes/Translation.hs view

file too large to diff

+ src-internal/HsBindgen/Frontend/Pass/TypecheckMacros.hs view

file too large to diff

+ src-internal/HsBindgen/Frontend/Pass/TypecheckMacros/IsPass.hs view

file too large to diff

+ src-internal/HsBindgen/Frontend/Pass/TypecheckMacros/KnownTypes.hs view

file too large to diff

+ src-internal/HsBindgen/Frontend/Pass/TypecheckMacros/Typecheck.hs view

file too large to diff

+ src-internal/HsBindgen/Frontend/Predicate.hs view

file too large to diff

+ src-internal/HsBindgen/Frontend/PrettyC.hs view

file too large to diff

+ src-internal/HsBindgen/Frontend/ProcessIncludes.hs view

file too large to diff

+ src-internal/HsBindgen/Frontend/RootHeader.hs view

file too large to diff

+ src-internal/HsBindgen/Frontend/TranslationUnit.hs view

file too large to diff

+ src-internal/HsBindgen/Guasi.hs view

file too large to diff

+ src-internal/HsBindgen/IR/C.hs view

file too large to diff

+ src-internal/HsBindgen/IR/C/Conflict.hs view

file too large to diff

+ src-internal/HsBindgen/IR/C/Decl.hs view

file too large to diff

+ src-internal/HsBindgen/IR/C/DeclPath.hs view

file too large to diff

+ src-internal/HsBindgen/IR/C/HashDefine.hs view

file too large to diff

+ src-internal/HsBindgen/IR/C/HashIncludeArg.hs view

file too large to diff

+ src-internal/HsBindgen/IR/C/LocationInfo.hs view

file too large to diff

+ src-internal/HsBindgen/IR/C/Naming.hs view

file too large to diff

+ src-internal/HsBindgen/IR/C/PrettyPrinter.hs view

file too large to diff

+ src-internal/HsBindgen/IR/C/RootDirective.hs view

file too large to diff

+ src-internal/HsBindgen/IR/C/Type.hs view

file too large to diff

+ src-internal/HsBindgen/IR/Hs.hs view

file too large to diff

+ src-internal/HsBindgen/IR/Hs/Type.hs view

file too large to diff

+ src-internal/HsBindgen/IR/Pass.hs view

file too large to diff

+ src-internal/HsBindgen/IR/Pass/Ann.hs view

file too large to diff

+ src-internal/HsBindgen/IR/Pass/CommentDecl.hs view

file too large to diff

+ src-internal/HsBindgen/IR/Pass/Definition.hs view

file too large to diff

+ src-internal/HsBindgen/IR/Pass/ExtBinding.hs view

file too large to diff

+ src-internal/HsBindgen/IR/Pass/Id.hs view

file too large to diff

+ src-internal/HsBindgen/IR/Pass/Macro.hs view

file too large to diff

+ src-internal/HsBindgen/IR/Pass/Msg.hs view

file too large to diff

+ src-internal/HsBindgen/IR/Pass/ScopedName.hs view

file too large to diff

+ src-internal/HsBindgen/IR/Pass/Types.hs view

file too large to diff

+ src-internal/HsBindgen/IR/Translation.hs view

file too large to diff

+ src-internal/HsBindgen/Imports.hs view

file too large to diff

+ src-internal/HsBindgen/Instances.hs view

file too large to diff

+ src-internal/HsBindgen/Language/C.hs view

file too large to diff

+ src-internal/HsBindgen/Language/Haskell.hs view

file too large to diff

+ src-internal/HsBindgen/Macro/Empty.hs view

file too large to diff

+ src-internal/HsBindgen/Macro/Error.hs view

file too large to diff

+ src-internal/HsBindgen/Macro/Flip.hs view

file too large to diff

+ src-internal/HsBindgen/Macro/Interface.hs view

file too large to diff

+ src-internal/HsBindgen/Macro/Parse.hs view

file too large to diff

+ src-internal/HsBindgen/Macro/Raw.hs view

file too large to diff

+ src-internal/HsBindgen/Macro/Raw/Lang.hs view

file too large to diff

+ src-internal/HsBindgen/Macro/Raw/Parse.hs view

file too large to diff

+ src-internal/HsBindgen/Macro/Syntax.hs view

file too large to diff

+ src-internal/HsBindgen/Macro/Type.hs view

file too large to diff

+ src-internal/HsBindgen/Macro/UniqueExpansion.hs view

file too large to diff

+ src-internal/HsBindgen/Macro/UniqueExpansion/Parse.hs view

file too large to diff

+ src-internal/HsBindgen/Macro/UniqueExpansion/Types.hs view

file too large to diff

+ src-internal/HsBindgen/NameHint.hs view

file too large to diff

+ src-internal/HsBindgen/Orphans.hs view

file too large to diff

+ src-internal/HsBindgen/Resolve.hs view

file too large to diff

+ src-internal/HsBindgen/TH/Internal.hs view

file too large to diff

+ src-internal/HsBindgen/Test.hs view

file too large to diff

+ src-internal/HsBindgen/Test/C.hs view

file too large to diff

+ src-internal/HsBindgen/Test/Hs.hs view

file too large to diff

+ src-internal/HsBindgen/Test/Internal.hs view

file too large to diff

+ src-internal/HsBindgen/Test/Readme.hs view

file too large to diff

+ src-internal/HsBindgen/TraceMsg.hs view

file too large to diff

+ src-internal/HsBindgen/Util/Monad.hs view

file too large to diff

+ src-internal/HsBindgen/Util/Process.hs view

file too large to diff

+ src-internal/HsBindgen/Util/Rational.hs view

file too large to diff

+ src-internal/HsBindgen/Util/Tracer.hs view

file too large to diff

+ src-internal/Text/SimplePrettyPrint.hs view

file too large to diff

+ src/HsBindgen/Internal/Macro/CExpr.hs view

file too large to diff

+ src/HsBindgen/Internal/Macro/CExpr/Global.hs view

file too large to diff

+ src/HsBindgen/Internal/Macro/CExpr/Parse.hs view

file too large to diff

+ src/HsBindgen/Internal/Macro/CExpr/Resolution.hs view

file too large to diff

+ src/HsBindgen/Internal/Macro/CExpr/Translation/Type.hs view

file too large to diff

+ src/HsBindgen/Internal/Macro/CExpr/Translation/Value.hs view

file too large to diff

+ src/HsBindgen/Internal/Macro/CExpr/Type.hs view

file too large to diff

+ src/HsBindgen/Internal/Macro/CExpr/Typecheck.hs view

file too large to diff

+ src/HsBindgen/Macro.hs view

file too large to diff

+ src/HsBindgen/TH.hs view

file too large to diff

+ test-artefacts/fixtures/arrays/array/Example.hs view

file too large to diff

+ test-artefacts/fixtures/arrays/array/Example/FunPtr.hs view

file too large to diff

+ test-artefacts/fixtures/arrays/array/Example/Global.hs view

file too large to diff

+ test-artefacts/fixtures/arrays/array/Example/Safe.hs view

file too large to diff

+ test-artefacts/fixtures/arrays/array/Example/Unsafe.hs view

file too large to diff

+ test-artefacts/fixtures/arrays/array/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/arrays/array/th.txt view

file too large to diff

+ test-artefacts/fixtures/arrays/const_qualifier/Example.hs view

file too large to diff

+ test-artefacts/fixtures/arrays/const_qualifier/Example/FunPtr.hs view

file too large to diff

+ test-artefacts/fixtures/arrays/const_qualifier/Example/Safe.hs view

file too large to diff

+ test-artefacts/fixtures/arrays/const_qualifier/Example/Unsafe.hs view

file too large to diff

+ test-artefacts/fixtures/arrays/const_qualifier/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/arrays/const_qualifier/th.txt view

file too large to diff

+ test-artefacts/fixtures/arrays/multi_dim/Example.hs view

file too large to diff

+ test-artefacts/fixtures/arrays/multi_dim/Example/FunPtr.hs view

file too large to diff

+ test-artefacts/fixtures/arrays/multi_dim/Example/Safe.hs view

file too large to diff

+ test-artefacts/fixtures/arrays/multi_dim/Example/Unsafe.hs view

file too large to diff

+ test-artefacts/fixtures/arrays/multi_dim/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/arrays/multi_dim/th.txt view

file too large to diff

+ test-artefacts/fixtures/attributes/asm/Example/FunPtr.hs view

file too large to diff

+ test-artefacts/fixtures/attributes/asm/Example/Global.hs view

file too large to diff

+ test-artefacts/fixtures/attributes/asm/Example/Safe.hs view

file too large to diff

+ test-artefacts/fixtures/attributes/asm/Example/Unsafe.hs view

file too large to diff

+ test-artefacts/fixtures/attributes/asm/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/attributes/asm/th.txt view

file too large to diff

+ test-artefacts/fixtures/attributes/attributes/Example.hs view

file too large to diff

+ test-artefacts/fixtures/attributes/attributes/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/attributes/attributes/th.txt view

file too large to diff

+ test-artefacts/fixtures/attributes/deprecated/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/attributes/deprecated/th.txt view

file too large to diff

+ test-artefacts/fixtures/attributes/type_attributes/Example.hs view

file too large to diff

+ test-artefacts/fixtures/attributes/type_attributes/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/attributes/type_attributes/th.txt view

file too large to diff

+ test-artefacts/fixtures/attributes/visibility/edge-cases/nested_types/Example.hs view

file too large to diff

+ test-artefacts/fixtures/attributes/visibility/edge-cases/nested_types/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/attributes/visibility/edge-cases/nested_types/th.txt view

file too large to diff

+ test-artefacts/fixtures/attributes/visibility/functions/Example/FunPtr.hs view

file too large to diff

+ test-artefacts/fixtures/attributes/visibility/functions/Example/Safe.hs view

file too large to diff

+ test-artefacts/fixtures/attributes/visibility/functions/Example/Unsafe.hs view

file too large to diff

+ test-artefacts/fixtures/attributes/visibility/functions/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/attributes/visibility/functions/th.txt view

file too large to diff

+ test-artefacts/fixtures/attributes/visibility/types/Example.hs view

file too large to diff

+ test-artefacts/fixtures/attributes/visibility/types/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/attributes/visibility/types/th.txt view

file too large to diff

+ test-artefacts/fixtures/attributes/visibility/variables/Example/Global.hs view

file too large to diff

+ test-artefacts/fixtures/attributes/visibility/variables/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/attributes/visibility/variables/th.txt view

file too large to diff

+ test-artefacts/fixtures/binding-specs/enum/closed/Example.hs view

file too large to diff

+ test-artefacts/fixtures/binding-specs/enum/closed/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/binding-specs/enum/closed/th.txt view

file too large to diff

+ test-artefacts/fixtures/binding-specs/enum/mismatch/Example.hs view

file too large to diff

+ test-artefacts/fixtures/binding-specs/enum/mismatch/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/binding-specs/enum/mismatch/th.txt view

file too large to diff

+ test-artefacts/fixtures/binding-specs/enum/open/Example.hs view

file too large to diff

+ test-artefacts/fixtures/binding-specs/enum/open/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/binding-specs/enum/open/th.txt view

file too large to diff

+ test-artefacts/fixtures/binding-specs/fun_arg/macro/array/Example.hs view

file too large to diff

+ test-artefacts/fixtures/binding-specs/fun_arg/macro/array/Example/FunPtr.hs view

file too large to diff

+ test-artefacts/fixtures/binding-specs/fun_arg/macro/array/Example/Safe.hs view

file too large to diff

+ test-artefacts/fixtures/binding-specs/fun_arg/macro/array/Example/Unsafe.hs view

file too large to diff

+ test-artefacts/fixtures/binding-specs/fun_arg/macro/array/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/binding-specs/fun_arg/macro/array/th.txt view

file too large to diff

+ test-artefacts/fixtures/binding-specs/fun_arg/macro/array_known_size/Example.hs view

file too large to diff

+ test-artefacts/fixtures/binding-specs/fun_arg/macro/array_known_size/Example/FunPtr.hs view

file too large to diff

+ test-artefacts/fixtures/binding-specs/fun_arg/macro/array_known_size/Example/Safe.hs view

file too large to diff

+ test-artefacts/fixtures/binding-specs/fun_arg/macro/array_known_size/Example/Unsafe.hs view

file too large to diff

+ test-artefacts/fixtures/binding-specs/fun_arg/macro/array_known_size/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/binding-specs/fun_arg/macro/array_known_size/th.txt view

file too large to diff

+ test-artefacts/fixtures/binding-specs/fun_arg/macro/enum/Example.hs view

file too large to diff

+ test-artefacts/fixtures/binding-specs/fun_arg/macro/enum/Example/FunPtr.hs view

file too large to diff

+ test-artefacts/fixtures/binding-specs/fun_arg/macro/enum/Example/Safe.hs view

file too large to diff

+ test-artefacts/fixtures/binding-specs/fun_arg/macro/enum/Example/Unsafe.hs view

file too large to diff

+ test-artefacts/fixtures/binding-specs/fun_arg/macro/enum/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/binding-specs/fun_arg/macro/enum/th.txt view

file too large to diff

+ test-artefacts/fixtures/binding-specs/fun_arg/macro/function/Example.hs view

file too large to diff

+ test-artefacts/fixtures/binding-specs/fun_arg/macro/function/Example/FunPtr.hs view

file too large to diff

+ test-artefacts/fixtures/binding-specs/fun_arg/macro/function/Example/Safe.hs view

file too large to diff

+ test-artefacts/fixtures/binding-specs/fun_arg/macro/function/Example/Unsafe.hs view

file too large to diff

+ test-artefacts/fixtures/binding-specs/fun_arg/macro/function/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/binding-specs/fun_arg/macro/function/th.txt view

file too large to diff

+ test-artefacts/fixtures/binding-specs/fun_arg/macro/function_pointer/Example.hs view

file too large to diff

+ test-artefacts/fixtures/binding-specs/fun_arg/macro/function_pointer/Example/FunPtr.hs view

file too large to diff

+ test-artefacts/fixtures/binding-specs/fun_arg/macro/function_pointer/Example/Safe.hs view

file too large to diff

+ test-artefacts/fixtures/binding-specs/fun_arg/macro/function_pointer/Example/Unsafe.hs view

file too large to diff

+ test-artefacts/fixtures/binding-specs/fun_arg/macro/function_pointer/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/binding-specs/fun_arg/macro/function_pointer/th.txt view

file too large to diff

+ test-artefacts/fixtures/binding-specs/fun_arg/macro/struct/Example.hs view

file too large to diff

+ test-artefacts/fixtures/binding-specs/fun_arg/macro/struct/Example/FunPtr.hs view

file too large to diff

+ test-artefacts/fixtures/binding-specs/fun_arg/macro/struct/Example/Safe.hs view

file too large to diff

+ test-artefacts/fixtures/binding-specs/fun_arg/macro/struct/Example/Unsafe.hs view

file too large to diff

+ test-artefacts/fixtures/binding-specs/fun_arg/macro/struct/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/binding-specs/fun_arg/macro/struct/th.txt view

file too large to diff

+ test-artefacts/fixtures/binding-specs/fun_arg/macro/union/Example.hs view

file too large to diff

+ test-artefacts/fixtures/binding-specs/fun_arg/macro/union/Example/FunPtr.hs view

file too large to diff

+ test-artefacts/fixtures/binding-specs/fun_arg/macro/union/Example/Safe.hs view

file too large to diff

+ test-artefacts/fixtures/binding-specs/fun_arg/macro/union/Example/Unsafe.hs view

file too large to diff

+ test-artefacts/fixtures/binding-specs/fun_arg/macro/union/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/binding-specs/fun_arg/macro/union/th.txt view

file too large to diff

+ test-artefacts/fixtures/binding-specs/fun_arg/typedef/array/Example.hs view

file too large to diff

+ test-artefacts/fixtures/binding-specs/fun_arg/typedef/array/Example/FunPtr.hs view

file too large to diff

+ test-artefacts/fixtures/binding-specs/fun_arg/typedef/array/Example/Safe.hs view

file too large to diff

+ test-artefacts/fixtures/binding-specs/fun_arg/typedef/array/Example/Unsafe.hs view

file too large to diff

+ test-artefacts/fixtures/binding-specs/fun_arg/typedef/array/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/binding-specs/fun_arg/typedef/array/th.txt view

file too large to diff

+ test-artefacts/fixtures/binding-specs/fun_arg/typedef/array_known_size/Example.hs view

file too large to diff

+ test-artefacts/fixtures/binding-specs/fun_arg/typedef/array_known_size/Example/FunPtr.hs view

file too large to diff

+ test-artefacts/fixtures/binding-specs/fun_arg/typedef/array_known_size/Example/Safe.hs view

file too large to diff

+ test-artefacts/fixtures/binding-specs/fun_arg/typedef/array_known_size/Example/Unsafe.hs view

file too large to diff

+ test-artefacts/fixtures/binding-specs/fun_arg/typedef/array_known_size/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/binding-specs/fun_arg/typedef/array_known_size/th.txt view

file too large to diff

+ test-artefacts/fixtures/binding-specs/fun_arg/typedef/enum/Example.hs view

file too large to diff

+ test-artefacts/fixtures/binding-specs/fun_arg/typedef/enum/Example/FunPtr.hs view

file too large to diff

+ test-artefacts/fixtures/binding-specs/fun_arg/typedef/enum/Example/Safe.hs view

file too large to diff

+ test-artefacts/fixtures/binding-specs/fun_arg/typedef/enum/Example/Unsafe.hs view

file too large to diff

+ test-artefacts/fixtures/binding-specs/fun_arg/typedef/enum/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/binding-specs/fun_arg/typedef/enum/th.txt view

file too large to diff

+ test-artefacts/fixtures/binding-specs/fun_arg/typedef/function/Example.hs view

file too large to diff

+ test-artefacts/fixtures/binding-specs/fun_arg/typedef/function/Example/FunPtr.hs view

file too large to diff

+ test-artefacts/fixtures/binding-specs/fun_arg/typedef/function/Example/Safe.hs view

file too large to diff

+ test-artefacts/fixtures/binding-specs/fun_arg/typedef/function/Example/Unsafe.hs view

file too large to diff

+ test-artefacts/fixtures/binding-specs/fun_arg/typedef/function/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/binding-specs/fun_arg/typedef/function/th.txt view

file too large to diff

+ test-artefacts/fixtures/binding-specs/fun_arg/typedef/function_pointer/Example.hs view

file too large to diff

+ test-artefacts/fixtures/binding-specs/fun_arg/typedef/function_pointer/Example/FunPtr.hs view

file too large to diff

+ test-artefacts/fixtures/binding-specs/fun_arg/typedef/function_pointer/Example/Safe.hs view

file too large to diff

+ test-artefacts/fixtures/binding-specs/fun_arg/typedef/function_pointer/Example/Unsafe.hs view

file too large to diff

+ test-artefacts/fixtures/binding-specs/fun_arg/typedef/function_pointer/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/binding-specs/fun_arg/typedef/function_pointer/th.txt view

file too large to diff

+ test-artefacts/fixtures/binding-specs/fun_arg/typedef/struct/Example.hs view

file too large to diff

+ test-artefacts/fixtures/binding-specs/fun_arg/typedef/struct/Example/FunPtr.hs view

file too large to diff

+ test-artefacts/fixtures/binding-specs/fun_arg/typedef/struct/Example/Safe.hs view

file too large to diff

+ test-artefacts/fixtures/binding-specs/fun_arg/typedef/struct/Example/Unsafe.hs view

file too large to diff

+ test-artefacts/fixtures/binding-specs/fun_arg/typedef/struct/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/binding-specs/fun_arg/typedef/struct/th.txt view

file too large to diff

+ test-artefacts/fixtures/binding-specs/fun_arg/typedef/union/Example.hs view

file too large to diff

+ test-artefacts/fixtures/binding-specs/fun_arg/typedef/union/Example/FunPtr.hs view

file too large to diff

+ test-artefacts/fixtures/binding-specs/fun_arg/typedef/union/Example/Safe.hs view

file too large to diff

+ test-artefacts/fixtures/binding-specs/fun_arg/typedef/union/Example/Unsafe.hs view

file too large to diff

+ test-artefacts/fixtures/binding-specs/fun_arg/typedef/union/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/binding-specs/fun_arg/typedef/union/th.txt view

file too large to diff

+ test-artefacts/fixtures/binding-specs/name/squash_both/Example.hs view

file too large to diff

+ test-artefacts/fixtures/binding-specs/name/squash_both/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/binding-specs/name/squash_both/th.txt view

file too large to diff

+ test-artefacts/fixtures/binding-specs/name/squash_struct/Example.hs view

file too large to diff

+ test-artefacts/fixtures/binding-specs/name/squash_struct/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/binding-specs/name/squash_struct/th.txt view

file too large to diff

+ test-artefacts/fixtures/binding-specs/name/squash_typedef/Example.hs view

file too large to diff

+ test-artefacts/fixtures/binding-specs/name/squash_typedef/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/binding-specs/name/squash_typedef/th.txt view

file too large to diff

+ test-artefacts/fixtures/binding-specs/name/type/Example.hs view

file too large to diff

+ test-artefacts/fixtures/binding-specs/name/type/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/binding-specs/name/type/th.txt view

file too large to diff

+ test-artefacts/fixtures/binding-specs/omit_type/Example.hs view

file too large to diff

+ test-artefacts/fixtures/binding-specs/omit_type/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/binding-specs/omit_type/th.txt view

file too large to diff

+ test-artefacts/fixtures/binding-specs/relative_include/sub/consumer/Example.hs view

file too large to diff

+ test-artefacts/fixtures/binding-specs/relative_include/sub/consumer/Example/FunPtr.hs view

file too large to diff

+ test-artefacts/fixtures/binding-specs/relative_include/sub/consumer/Example/Safe.hs view

file too large to diff

+ test-artefacts/fixtures/binding-specs/relative_include/sub/consumer/Example/Unsafe.hs view

file too large to diff

+ test-artefacts/fixtures/binding-specs/relative_include/sub/consumer/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/binding-specs/relative_include/sub/consumer/th.txt view

file too large to diff

+ test-artefacts/fixtures/binding-specs/rep/emptydata/staticsize/Example.hs view

file too large to diff

+ test-artefacts/fixtures/binding-specs/rep/emptydata/staticsize/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/binding-specs/rep/emptydata/staticsize/th.txt view

file too large to diff

+ test-artefacts/fixtures/binding-specs/stdlib/bool/Example.hs view

file too large to diff

+ test-artefacts/fixtures/binding-specs/stdlib/bool/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/binding-specs/stdlib/bool/th.txt view

file too large to diff

+ test-artefacts/fixtures/binding-specs/stdlib/instances.1.c11-parse-all/Example.hs view

file too large to diff

+ test-artefacts/fixtures/binding-specs/stdlib/instances.1.c11-parse-all/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/binding-specs/stdlib/instances.1.c11-parse-all/th.txt view

file too large to diff

+ test-artefacts/fixtures/binding-specs/stdlib/instances.1.c23-parse-all/Example.hs view

file too large to diff

+ test-artefacts/fixtures/binding-specs/stdlib/instances.1.c23-parse-all/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/binding-specs/stdlib/instances.1.c23-parse-all/th.txt view

file too large to diff

+ test-artefacts/fixtures/binding-specs/stdlib/return_values/Example/FunPtr.hs view

file too large to diff

+ test-artefacts/fixtures/binding-specs/stdlib/return_values/Example/Global.hs view

file too large to diff

+ test-artefacts/fixtures/binding-specs/stdlib/return_values/Example/Safe.hs view

file too large to diff

+ test-artefacts/fixtures/binding-specs/stdlib/return_values/Example/Unsafe.hs view

file too large to diff

+ test-artefacts/fixtures/binding-specs/stdlib/return_values/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/binding-specs/stdlib/return_values/th.txt view

file too large to diff

+ test-artefacts/fixtures/binding-specs/trans_dep/macro_trans_dep_missing/Example/FunPtr.hs view

file too large to diff

+ test-artefacts/fixtures/binding-specs/trans_dep/macro_trans_dep_missing/Example/Safe.hs view

file too large to diff

+ test-artefacts/fixtures/binding-specs/trans_dep/macro_trans_dep_missing/Example/Unsafe.hs view

file too large to diff

+ test-artefacts/fixtures/binding-specs/trans_dep/macro_trans_dep_missing/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/binding-specs/trans_dep/macro_trans_dep_missing/th.txt view

file too large to diff

+ test-artefacts/fixtures/binding-specs/trans_dep/typedef_trans_dep_missing/Example/FunPtr.hs view

file too large to diff

+ test-artefacts/fixtures/binding-specs/trans_dep/typedef_trans_dep_missing/Example/Safe.hs view

file too large to diff

+ test-artefacts/fixtures/binding-specs/trans_dep/typedef_trans_dep_missing/Example/Unsafe.hs view

file too large to diff

+ test-artefacts/fixtures/binding-specs/trans_dep/typedef_trans_dep_missing/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/binding-specs/trans_dep/typedef_trans_dep_missing/th.txt view

file too large to diff

+ test-artefacts/fixtures/comprehensive/c2hsc/Example.hs view

file too large to diff

+ test-artefacts/fixtures/comprehensive/c2hsc/Example/FunPtr.hs view

file too large to diff

+ test-artefacts/fixtures/comprehensive/c2hsc/Example/Global.hs view

file too large to diff

+ test-artefacts/fixtures/comprehensive/c2hsc/Example/Safe.hs view

file too large to diff

+ test-artefacts/fixtures/comprehensive/c2hsc/Example/Unsafe.hs view

file too large to diff

+ test-artefacts/fixtures/comprehensive/c2hsc/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/comprehensive/c2hsc/th.txt view

file too large to diff

+ test-artefacts/fixtures/comprehensive/smoke/Example.hs view

file too large to diff

+ test-artefacts/fixtures/comprehensive/smoke/Example/FunPtr.hs view

file too large to diff

+ test-artefacts/fixtures/comprehensive/smoke/Example/Global.hs view

file too large to diff

+ test-artefacts/fixtures/comprehensive/smoke/Example/Safe.hs view

file too large to diff

+ test-artefacts/fixtures/comprehensive/smoke/Example/Unsafe.hs view

file too large to diff

+ test-artefacts/fixtures/comprehensive/smoke/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/comprehensive/smoke/th.txt view

file too large to diff

+ test-artefacts/fixtures/declarations/declaration_unselected_b/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/declarations/declaration_unselected_b/th.txt view

file too large to diff

+ test-artefacts/fixtures/declarations/declarations_required_for_scoping/Example.hs view

file too large to diff

+ test-artefacts/fixtures/declarations/declarations_required_for_scoping/Example/FunPtr.hs view

file too large to diff

+ test-artefacts/fixtures/declarations/declarations_required_for_scoping/Example/Safe.hs view

file too large to diff

+ test-artefacts/fixtures/declarations/declarations_required_for_scoping/Example/Unsafe.hs view

file too large to diff

+ test-artefacts/fixtures/declarations/declarations_required_for_scoping/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/declarations/declarations_required_for_scoping/th.txt view

file too large to diff

+ test-artefacts/fixtures/declarations/definitions/Example.hs view

file too large to diff

+ test-artefacts/fixtures/declarations/definitions/Example/FunPtr.hs view

file too large to diff

+ test-artefacts/fixtures/declarations/definitions/Example/Global.hs view

file too large to diff

+ test-artefacts/fixtures/declarations/definitions/Example/Safe.hs view

file too large to diff

+ test-artefacts/fixtures/declarations/definitions/Example/Unsafe.hs view

file too large to diff

+ test-artefacts/fixtures/declarations/definitions/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/declarations/definitions/th.txt view

file too large to diff

+ test-artefacts/fixtures/declarations/duplicate_field_name_omit/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/declarations/duplicate_field_name_omit/th.txt view

file too large to diff

+ test-artefacts/fixtures/declarations/field_name_reuse_omit/Example.hs view

file too large to diff

+ test-artefacts/fixtures/declarations/field_name_reuse_omit/Example/FunPtr.hs view

file too large to diff

+ test-artefacts/fixtures/declarations/field_name_reuse_omit/Example/Global.hs view

file too large to diff

+ test-artefacts/fixtures/declarations/field_name_reuse_omit/Example/Safe.hs view

file too large to diff

+ test-artefacts/fixtures/declarations/field_name_reuse_omit/Example/Unsafe.hs view

file too large to diff

+ test-artefacts/fixtures/declarations/field_name_reuse_omit/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/declarations/field_name_reuse_omit/th.txt view

file too large to diff

+ test-artefacts/fixtures/declarations/forward_declaration/Example.hs view

file too large to diff

+ test-artefacts/fixtures/declarations/forward_declaration/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/declarations/forward_declaration/th.txt view

file too large to diff

+ test-artefacts/fixtures/declarations/name_collision/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/declarations/name_collision/th.txt view

file too large to diff

+ test-artefacts/fixtures/declarations/name_collision_aux/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/declarations/name_collision_aux/th.txt view

file too large to diff

+ test-artefacts/fixtures/declarations/opaque_declaration/Example.hs view

file too large to diff

+ test-artefacts/fixtures/declarations/opaque_declaration/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/declarations/opaque_declaration/th.txt view

file too large to diff

+ test-artefacts/fixtures/declarations/redeclaration/Example.hs view

file too large to diff

+ test-artefacts/fixtures/declarations/redeclaration/Example/Global.hs view

file too large to diff

+ test-artefacts/fixtures/declarations/redeclaration/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/declarations/redeclaration/th.txt view

file too large to diff

+ test-artefacts/fixtures/declarations/redeclaration_main_header/Example/FunPtr.hs view

file too large to diff

+ test-artefacts/fixtures/declarations/redeclaration_main_header/Example/Safe.hs view

file too large to diff

+ test-artefacts/fixtures/declarations/redeclaration_main_header/Example/Unsafe.hs view

file too large to diff

+ test-artefacts/fixtures/declarations/redeclaration_main_header/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/declarations/redeclaration_main_header/th.txt view

file too large to diff

+ test-artefacts/fixtures/declarations/select_scoping/Example.hs view

file too large to diff

+ test-artefacts/fixtures/declarations/select_scoping/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/declarations/select_scoping/th.txt view

file too large to diff

+ test-artefacts/fixtures/declarations/tentative_definitions/Example/Global.hs view

file too large to diff

+ test-artefacts/fixtures/declarations/tentative_definitions/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/declarations/tentative_definitions/th.txt view

file too large to diff

+ test-artefacts/fixtures/documentation/data_kind_pragma/Example.hs view

file too large to diff

+ test-artefacts/fixtures/documentation/data_kind_pragma/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/documentation/data_kind_pragma/th.txt view

file too large to diff

+ test-artefacts/fixtures/documentation/doxygen_docs/Example.hs view

file too large to diff

+ test-artefacts/fixtures/documentation/doxygen_docs/Example/FunPtr.hs view

file too large to diff

+ test-artefacts/fixtures/documentation/doxygen_docs/Example/Global.hs view

file too large to diff

+ test-artefacts/fixtures/documentation/doxygen_docs/Example/Safe.hs view

file too large to diff

+ test-artefacts/fixtures/documentation/doxygen_docs/Example/Unsafe.hs view

file too large to diff

+ test-artefacts/fixtures/documentation/doxygen_docs/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/documentation/doxygen_docs/th.txt view

file too large to diff

+ test-artefacts/fixtures/documentation/javadoc_banner/Example.hs view

file too large to diff

+ test-artefacts/fixtures/documentation/javadoc_banner/Example/FunPtr.hs view

file too large to diff

+ test-artefacts/fixtures/documentation/javadoc_banner/Example/Safe.hs view

file too large to diff

+ test-artefacts/fixtures/documentation/javadoc_banner/Example/Unsafe.hs view

file too large to diff

+ test-artefacts/fixtures/documentation/javadoc_banner/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/documentation/javadoc_banner/th.txt view

file too large to diff

+ test-artefacts/fixtures/edge-cases/adios/Example.hs view

file too large to diff

+ test-artefacts/fixtures/edge-cases/adios/Example/FunPtr.hs view

file too large to diff

+ test-artefacts/fixtures/edge-cases/adios/Example/Global.hs view

file too large to diff

+ test-artefacts/fixtures/edge-cases/adios/Example/Safe.hs view

file too large to diff

+ test-artefacts/fixtures/edge-cases/adios/Example/Unsafe.hs view

file too large to diff

+ test-artefacts/fixtures/edge-cases/adios/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/edge-cases/adios/th.txt view

file too large to diff

+ test-artefacts/fixtures/edge-cases/aux_funptr_newtypes/Example.hs view

file too large to diff

+ test-artefacts/fixtures/edge-cases/aux_funptr_newtypes/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/edge-cases/aux_funptr_newtypes/th.txt view

file too large to diff

+ test-artefacts/fixtures/edge-cases/clang_generated_collision/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/edge-cases/clang_generated_collision/th.txt view

file too large to diff

+ test-artefacts/fixtures/edge-cases/distilled_lib_1/Example.hs view

file too large to diff

+ test-artefacts/fixtures/edge-cases/distilled_lib_1/Example/FunPtr.hs view

file too large to diff

+ test-artefacts/fixtures/edge-cases/distilled_lib_1/Example/Global.hs view

file too large to diff

+ test-artefacts/fixtures/edge-cases/distilled_lib_1/Example/Safe.hs view

file too large to diff

+ test-artefacts/fixtures/edge-cases/distilled_lib_1/Example/Unsafe.hs view

file too large to diff

+ test-artefacts/fixtures/edge-cases/distilled_lib_1/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/edge-cases/distilled_lib_1/th.txt view

file too large to diff

+ test-artefacts/fixtures/edge-cases/duplicate/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/edge-cases/duplicate/th.txt view

file too large to diff

+ test-artefacts/fixtures/edge-cases/duplicate_record_field/Example.hs view

file too large to diff

+ test-artefacts/fixtures/edge-cases/duplicate_record_field/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/edge-cases/duplicate_record_field/th.txt view

file too large to diff

+ test-artefacts/fixtures/edge-cases/enum_as_array_size/Example.hs view

file too large to diff

+ test-artefacts/fixtures/edge-cases/enum_as_array_size/Example/Global.hs view

file too large to diff

+ test-artefacts/fixtures/edge-cases/enum_as_array_size/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/edge-cases/enum_as_array_size/th.txt view

file too large to diff

+ test-artefacts/fixtures/edge-cases/flam/Example.hs view

file too large to diff

+ test-artefacts/fixtures/edge-cases/flam/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/edge-cases/flam/th.txt view

file too large to diff

+ test-artefacts/fixtures/edge-cases/flam_functions/Example.hs view

file too large to diff

+ test-artefacts/fixtures/edge-cases/flam_functions/Example/FunPtr.hs view

file too large to diff

+ test-artefacts/fixtures/edge-cases/flam_functions/Example/Safe.hs view

file too large to diff

+ test-artefacts/fixtures/edge-cases/flam_functions/Example/Unsafe.hs view

file too large to diff

+ test-artefacts/fixtures/edge-cases/flam_functions/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/edge-cases/flam_functions/th.txt view

file too large to diff

+ test-artefacts/fixtures/edge-cases/headers/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/edge-cases/headers/th.txt view

file too large to diff

+ test-artefacts/fixtures/edge-cases/include_macro_parent/Example.hs view

file too large to diff

+ test-artefacts/fixtures/edge-cases/include_macro_parent/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/edge-cases/include_macro_parent/th.txt view

file too large to diff

+ test-artefacts/fixtures/edge-cases/iterator/Example.hs view

file too large to diff

+ test-artefacts/fixtures/edge-cases/iterator/Example/FunPtr.hs view

file too large to diff

+ test-artefacts/fixtures/edge-cases/iterator/Example/Safe.hs view

file too large to diff

+ test-artefacts/fixtures/edge-cases/iterator/Example/Unsafe.hs view

file too large to diff

+ test-artefacts/fixtures/edge-cases/iterator/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/edge-cases/iterator/th.txt view

file too large to diff

+ test-artefacts/fixtures/edge-cases/mangle_fun_param_names/Example.hs view

file too large to diff

+ test-artefacts/fixtures/edge-cases/mangle_fun_param_names/Example/FunPtr.hs view

file too large to diff

+ test-artefacts/fixtures/edge-cases/mangle_fun_param_names/Example/Safe.hs view

file too large to diff

+ test-artefacts/fixtures/edge-cases/mangle_fun_param_names/Example/Unsafe.hs view

file too large to diff

+ test-artefacts/fixtures/edge-cases/mangle_fun_param_names/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/edge-cases/mangle_fun_param_names/th.txt view

file too large to diff

+ test-artefacts/fixtures/edge-cases/names/Example/FunPtr.hs view

file too large to diff

+ test-artefacts/fixtures/edge-cases/names/Example/Safe.hs view

file too large to diff

+ test-artefacts/fixtures/edge-cases/names/Example/Unsafe.hs view

file too large to diff

+ test-artefacts/fixtures/edge-cases/names/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/edge-cases/names/th.txt view

file too large to diff

+ test-artefacts/fixtures/edge-cases/ordinary_unnamed_decl_parent/Example/FunPtr.hs view

file too large to diff

+ test-artefacts/fixtures/edge-cases/ordinary_unnamed_decl_parent/Example/Safe.hs view

file too large to diff

+ test-artefacts/fixtures/edge-cases/ordinary_unnamed_decl_parent/Example/Unsafe.hs view

file too large to diff

+ test-artefacts/fixtures/edge-cases/ordinary_unnamed_decl_parent/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/edge-cases/ordinary_unnamed_decl_parent/th.txt view

file too large to diff

+ test-artefacts/fixtures/edge-cases/prelude_names/Example.hs view

file too large to diff

+ test-artefacts/fixtures/edge-cases/prelude_names/Example/FunPtr.hs view

file too large to diff

+ test-artefacts/fixtures/edge-cases/prelude_names/Example/Global.hs view

file too large to diff

+ test-artefacts/fixtures/edge-cases/prelude_names/Example/Safe.hs view

file too large to diff

+ test-artefacts/fixtures/edge-cases/prelude_names/Example/Unsafe.hs view

file too large to diff

+ test-artefacts/fixtures/edge-cases/prelude_names/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/edge-cases/prelude_names/th.txt view

file too large to diff

+ test-artefacts/fixtures/edge-cases/select_no_match/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/edge-cases/select_no_match/th.txt view

file too large to diff

+ test-artefacts/fixtures/edge-cases/spec_examples/Example.hs view

file too large to diff

+ test-artefacts/fixtures/edge-cases/spec_examples/Example/FunPtr.hs view

file too large to diff

+ test-artefacts/fixtures/edge-cases/spec_examples/Example/Safe.hs view

file too large to diff

+ test-artefacts/fixtures/edge-cases/spec_examples/Example/Unsafe.hs view

file too large to diff

+ test-artefacts/fixtures/edge-cases/spec_examples/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/edge-cases/spec_examples/th.txt view

file too large to diff

+ test-artefacts/fixtures/edge-cases/thread_local/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/edge-cases/thread_local/th.txt view

file too large to diff

+ test-artefacts/fixtures/edge-cases/typedef_bitfield/Example.hs view

file too large to diff

+ test-artefacts/fixtures/edge-cases/typedef_bitfield/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/edge-cases/typedef_bitfield/th.txt view

file too large to diff

+ test-artefacts/fixtures/edge-cases/typedef_void/Example.hs view

file too large to diff

+ test-artefacts/fixtures/edge-cases/typedef_void/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/edge-cases/typedef_void/th.txt view

file too large to diff

+ test-artefacts/fixtures/edge-cases/unnamed_type_multiple_fields/Example.hs view

file too large to diff

+ test-artefacts/fixtures/edge-cases/unnamed_type_multiple_fields/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/edge-cases/unnamed_type_multiple_fields/th.txt view

file too large to diff

+ test-artefacts/fixtures/edge-cases/unnamed_type_multiple_typedefs/Example.hs view

file too large to diff

+ test-artefacts/fixtures/edge-cases/unnamed_type_multiple_typedefs/Example/FunPtr.hs view

file too large to diff

+ test-artefacts/fixtures/edge-cases/unnamed_type_multiple_typedefs/Example/Safe.hs view

file too large to diff

+ test-artefacts/fixtures/edge-cases/unnamed_type_multiple_typedefs/Example/Unsafe.hs view

file too large to diff

+ test-artefacts/fixtures/edge-cases/unnamed_type_multiple_typedefs/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/edge-cases/unnamed_type_multiple_typedefs/th.txt view

file too large to diff

+ test-artefacts/fixtures/edge-cases/unsupported_builtin/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/edge-cases/unsupported_builtin/th.txt view

file too large to diff

+ test-artefacts/fixtures/edge-cases/uses_utf8/Example.hs view

file too large to diff

+ test-artefacts/fixtures/edge-cases/uses_utf8/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/edge-cases/uses_utf8/th.txt view

file too large to diff

+ test-artefacts/fixtures/functions/callbacks/Example.hs view

file too large to diff

+ test-artefacts/fixtures/functions/callbacks/Example/FunPtr.hs view

file too large to diff

+ test-artefacts/fixtures/functions/callbacks/Example/Global.hs view

file too large to diff

+ test-artefacts/fixtures/functions/callbacks/Example/Safe.hs view

file too large to diff

+ test-artefacts/fixtures/functions/callbacks/Example/Unsafe.hs view

file too large to diff

+ test-artefacts/fixtures/functions/callbacks/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/functions/callbacks/th.txt view

file too large to diff

+ test-artefacts/fixtures/functions/circular_dependency_fun/Example.hs view

file too large to diff

+ test-artefacts/fixtures/functions/circular_dependency_fun/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/functions/circular_dependency_fun/th.txt view

file too large to diff

+ test-artefacts/fixtures/functions/decls_in_signature/Example.hs view

file too large to diff

+ test-artefacts/fixtures/functions/decls_in_signature/Example/FunPtr.hs view

file too large to diff

+ test-artefacts/fixtures/functions/decls_in_signature/Example/Safe.hs view

file too large to diff

+ test-artefacts/fixtures/functions/decls_in_signature/Example/Unsafe.hs view

file too large to diff

+ test-artefacts/fixtures/functions/decls_in_signature/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/functions/decls_in_signature/th.txt view

file too large to diff

+ test-artefacts/fixtures/functions/fun_attributes/Example.hs view

file too large to diff

+ test-artefacts/fixtures/functions/fun_attributes/Example/FunPtr.hs view

file too large to diff

+ test-artefacts/fixtures/functions/fun_attributes/Example/Global.hs view

file too large to diff

+ test-artefacts/fixtures/functions/fun_attributes/Example/Safe.hs view

file too large to diff

+ test-artefacts/fixtures/functions/fun_attributes/Example/Unsafe.hs view

file too large to diff

+ test-artefacts/fixtures/functions/fun_attributes/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/functions/fun_attributes/th.txt view

file too large to diff

+ test-artefacts/fixtures/functions/fun_attributes_conflict/Example/FunPtr.hs view

file too large to diff

+ test-artefacts/fixtures/functions/fun_attributes_conflict/Example/Safe.hs view

file too large to diff

+ test-artefacts/fixtures/functions/fun_attributes_conflict/Example/Unsafe.hs view

file too large to diff

+ test-artefacts/fixtures/functions/fun_attributes_conflict/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/functions/fun_attributes_conflict/th.txt view

file too large to diff

+ test-artefacts/fixtures/functions/hash_defines.1.select_all/Example.hs view

file too large to diff

+ test-artefacts/fixtures/functions/hash_defines.1.select_all/Example/FunPtr.hs view

file too large to diff

+ test-artefacts/fixtures/functions/hash_defines.1.select_all/Example/Safe.hs view

file too large to diff

+ test-artefacts/fixtures/functions/hash_defines.1.select_all/Example/Unsafe.hs view

file too large to diff

+ test-artefacts/fixtures/functions/hash_defines.1.select_all/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/functions/hash_defines.1.select_all/th.txt view

file too large to diff

+ test-artefacts/fixtures/functions/hash_defines/Example.hs view

file too large to diff

+ test-artefacts/fixtures/functions/hash_defines/Example/FunPtr.hs view

file too large to diff

+ test-artefacts/fixtures/functions/hash_defines/Example/Safe.hs view

file too large to diff

+ test-artefacts/fixtures/functions/hash_defines/Example/Unsafe.hs view

file too large to diff

+ test-artefacts/fixtures/functions/hash_defines/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/functions/hash_defines/th.txt view

file too large to diff

+ test-artefacts/fixtures/functions/heap_types/struct/Example.hs view

file too large to diff

+ test-artefacts/fixtures/functions/heap_types/struct/Example/FunPtr.hs view

file too large to diff

+ test-artefacts/fixtures/functions/heap_types/struct/Example/Safe.hs view

file too large to diff

+ test-artefacts/fixtures/functions/heap_types/struct/Example/Unsafe.hs view

file too large to diff

+ test-artefacts/fixtures/functions/heap_types/struct/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/functions/heap_types/struct/th.txt view

file too large to diff

+ test-artefacts/fixtures/functions/heap_types/struct_const/Example.hs view

file too large to diff

+ test-artefacts/fixtures/functions/heap_types/struct_const/Example/FunPtr.hs view

file too large to diff

+ test-artefacts/fixtures/functions/heap_types/struct_const/Example/Safe.hs view

file too large to diff

+ test-artefacts/fixtures/functions/heap_types/struct_const/Example/Unsafe.hs view

file too large to diff

+ test-artefacts/fixtures/functions/heap_types/struct_const/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/functions/heap_types/struct_const/th.txt view

file too large to diff

+ test-artefacts/fixtures/functions/heap_types/struct_const_member/Example.hs view

file too large to diff

+ test-artefacts/fixtures/functions/heap_types/struct_const_member/Example/FunPtr.hs view

file too large to diff

+ test-artefacts/fixtures/functions/heap_types/struct_const_member/Example/Safe.hs view

file too large to diff

+ test-artefacts/fixtures/functions/heap_types/struct_const_member/Example/Unsafe.hs view

file too large to diff

+ test-artefacts/fixtures/functions/heap_types/struct_const_member/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/functions/heap_types/struct_const_member/th.txt view

file too large to diff

+ test-artefacts/fixtures/functions/heap_types/struct_const_typedef/Example.hs view

file too large to diff

+ test-artefacts/fixtures/functions/heap_types/struct_const_typedef/Example/FunPtr.hs view

file too large to diff

+ test-artefacts/fixtures/functions/heap_types/struct_const_typedef/Example/Safe.hs view

file too large to diff

+ test-artefacts/fixtures/functions/heap_types/struct_const_typedef/Example/Unsafe.hs view

file too large to diff

+ test-artefacts/fixtures/functions/heap_types/struct_const_typedef/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/functions/heap_types/struct_const_typedef/th.txt view

file too large to diff

+ test-artefacts/fixtures/functions/heap_types/union/Example.hs view

file too large to diff

+ test-artefacts/fixtures/functions/heap_types/union/Example/FunPtr.hs view

file too large to diff

+ test-artefacts/fixtures/functions/heap_types/union/Example/Safe.hs view

file too large to diff

+ test-artefacts/fixtures/functions/heap_types/union/Example/Unsafe.hs view

file too large to diff

+ test-artefacts/fixtures/functions/heap_types/union/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/functions/heap_types/union/th.txt view

file too large to diff

+ test-artefacts/fixtures/functions/heap_types/union_const/Example.hs view

file too large to diff

+ test-artefacts/fixtures/functions/heap_types/union_const/Example/FunPtr.hs view

file too large to diff

+ test-artefacts/fixtures/functions/heap_types/union_const/Example/Safe.hs view

file too large to diff

+ test-artefacts/fixtures/functions/heap_types/union_const/Example/Unsafe.hs view

file too large to diff

+ test-artefacts/fixtures/functions/heap_types/union_const/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/functions/heap_types/union_const/th.txt view

file too large to diff

+ test-artefacts/fixtures/functions/heap_types/union_const_member/Example.hs view

file too large to diff

+ test-artefacts/fixtures/functions/heap_types/union_const_member/Example/FunPtr.hs view

file too large to diff

+ test-artefacts/fixtures/functions/heap_types/union_const_member/Example/Safe.hs view

file too large to diff

+ test-artefacts/fixtures/functions/heap_types/union_const_member/Example/Unsafe.hs view

file too large to diff

+ test-artefacts/fixtures/functions/heap_types/union_const_member/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/functions/heap_types/union_const_member/th.txt view

file too large to diff

+ test-artefacts/fixtures/functions/heap_types/union_const_typedef/Example.hs view

file too large to diff

+ test-artefacts/fixtures/functions/heap_types/union_const_typedef/Example/FunPtr.hs view

file too large to diff

+ test-artefacts/fixtures/functions/heap_types/union_const_typedef/Example/Safe.hs view

file too large to diff

+ test-artefacts/fixtures/functions/heap_types/union_const_typedef/Example/Unsafe.hs view

file too large to diff

+ test-artefacts/fixtures/functions/heap_types/union_const_typedef/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/functions/heap_types/union_const_typedef/th.txt view

file too large to diff

+ test-artefacts/fixtures/functions/libc_builtins/Example/FunPtr.hs view

file too large to diff

+ test-artefacts/fixtures/functions/libc_builtins/Example/Safe.hs view

file too large to diff

+ test-artefacts/fixtures/functions/libc_builtins/Example/Unsafe.hs view

file too large to diff

+ test-artefacts/fixtures/functions/libc_builtins/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/functions/libc_builtins/th.txt view

file too large to diff

+ test-artefacts/fixtures/functions/not_visible_decl/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/functions/not_visible_decl/th.txt view

file too large to diff

+ test-artefacts/fixtures/functions/simple_func.1.rename/Example/FunPtr.hs view

file too large to diff

+ test-artefacts/fixtures/functions/simple_func.1.rename/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/functions/simple_func.1.rename/th.txt view

file too large to diff

+ test-artefacts/fixtures/functions/simple_func/Example/FunPtr.hs view

file too large to diff

+ test-artefacts/fixtures/functions/simple_func/Example/Safe.hs view

file too large to diff

+ test-artefacts/fixtures/functions/simple_func/Example/Unsafe.hs view

file too large to diff

+ test-artefacts/fixtures/functions/simple_func/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/functions/simple_func/th.txt view

file too large to diff

+ test-artefacts/fixtures/functions/typedef_funptr/Example.hs view

file too large to diff

+ test-artefacts/fixtures/functions/typedef_funptr/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/functions/typedef_funptr/th.txt view

file too large to diff

+ test-artefacts/fixtures/functions/varargs/Example/FunPtr.hs view

file too large to diff

+ test-artefacts/fixtures/functions/varargs/Example/Safe.hs view

file too large to diff

+ test-artefacts/fixtures/functions/varargs/Example/Unsafe.hs view

file too large to diff

+ test-artefacts/fixtures/functions/varargs/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/functions/varargs/th.txt view

file too large to diff

+ test-artefacts/fixtures/globals/globals/Example.hs view

file too large to diff

+ test-artefacts/fixtures/globals/globals/Example/Global.hs view

file too large to diff

+ test-artefacts/fixtures/globals/globals/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/globals/globals/th.txt view

file too large to diff

+ test-artefacts/fixtures/globals/untagged/Example.hs view

file too large to diff

+ test-artefacts/fixtures/globals/untagged/Example/Global.hs view

file too large to diff

+ test-artefacts/fixtures/globals/untagged/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/globals/untagged/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/command_line/redefined.1.empty/Example.hs view

file too large to diff

+ test-artefacts/fixtures/macros/command_line/redefined.1.empty/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/command_line/redefined.1.empty/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/command_line/redefined.2.raw/Example.hs view

file too large to diff

+ test-artefacts/fixtures/macros/command_line/redefined.2.raw/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/command_line/redefined.2.raw/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/command_line/redefined.hash_define.1.empty/Example.hs view

file too large to diff

+ test-artefacts/fixtures/macros/command_line/redefined.hash_define.1.empty/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/command_line/redefined.hash_define.1.empty/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/command_line/redefined.hash_define.2.raw/Example.hs view

file too large to diff

+ test-artefacts/fixtures/macros/command_line/redefined.hash_define.2.raw/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/command_line/redefined.hash_define.2.raw/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/command_line/redefined.hash_define/Example.hs view

file too large to diff

+ test-artefacts/fixtures/macros/command_line/redefined.hash_define/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/command_line/redefined.hash_define/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/command_line/redefined/Example.hs view

file too large to diff

+ test-artefacts/fixtures/macros/command_line/redefined/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/command_line/redefined/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/command_line/uses.1.empty/Example.hs view

file too large to diff

+ test-artefacts/fixtures/macros/command_line/uses.1.empty/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/command_line/uses.1.empty/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/command_line/uses.2.raw/Example.hs view

file too large to diff

+ test-artefacts/fixtures/macros/command_line/uses.2.raw/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/command_line/uses.2.raw/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/command_line/uses.no_slicing.1.empty/Example.hs view

file too large to diff

+ test-artefacts/fixtures/macros/command_line/uses.no_slicing.1.empty/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/command_line/uses.no_slicing.1.empty/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/command_line/uses.no_slicing.2.raw/Example.hs view

file too large to diff

+ test-artefacts/fixtures/macros/command_line/uses.no_slicing.2.raw/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/command_line/uses.no_slicing.2.raw/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/command_line/uses.no_slicing/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/command_line/uses.no_slicing/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/command_line/uses/Example.hs view

file too large to diff

+ test-artefacts/fixtures/macros/command_line/uses/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/command_line/uses/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/empty_body.1.empty/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/empty_body.1.empty/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/empty_body.2.raw/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/empty_body.2.raw/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/empty_body.parse_empty_macros.1.empty/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/empty_body.parse_empty_macros.1.empty/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/empty_body.parse_empty_macros.2.raw/Example.hs view

file too large to diff

+ test-artefacts/fixtures/macros/empty_body.parse_empty_macros.2.raw/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/empty_body.parse_empty_macros.2.raw/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/empty_body.parse_empty_macros/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/empty_body.parse_empty_macros/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/empty_body/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/empty_body/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/gnu_variadic.1.empty/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/gnu_variadic.1.empty/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/gnu_variadic.2.raw/Example.hs view

file too large to diff

+ test-artefacts/fixtures/macros/gnu_variadic.2.raw/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/gnu_variadic.2.raw/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/gnu_variadic/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/gnu_variadic/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/issue_890.1.empty/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/issue_890.1.empty/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/issue_890.2.raw/Example.hs view

file too large to diff

+ test-artefacts/fixtures/macros/issue_890.2.raw/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/issue_890.2.raw/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/issue_890/Example.hs view

file too large to diff

+ test-artefacts/fixtures/macros/issue_890/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/issue_890/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/keyword_params.1.empty/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/keyword_params.1.empty/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/keyword_params.2.raw/Example.hs view

file too large to diff

+ test-artefacts/fixtures/macros/keyword_params.2.raw/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/keyword_params.2.raw/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/keyword_params/Example.hs view

file too large to diff

+ test-artefacts/fixtures/macros/keyword_params/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/keyword_params/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/macro_comma.1.empty/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/macro_comma.1.empty/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/macro_comma.2.raw/Example.hs view

file too large to diff

+ test-artefacts/fixtures/macros/macro_comma.2.raw/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/macro_comma.2.raw/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/macro_comma/Example.hs view

file too large to diff

+ test-artefacts/fixtures/macros/macro_comma/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/macro_comma/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/macro_ext_binding_dep.1.empty/Example/FunPtr.hs view

file too large to diff

+ test-artefacts/fixtures/macros/macro_ext_binding_dep.1.empty/Example/Safe.hs view

file too large to diff

+ test-artefacts/fixtures/macros/macro_ext_binding_dep.1.empty/Example/Unsafe.hs view

file too large to diff

+ test-artefacts/fixtures/macros/macro_ext_binding_dep.1.empty/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/macro_ext_binding_dep.1.empty/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/macro_ext_binding_dep.2.raw/Example.hs view

file too large to diff

+ test-artefacts/fixtures/macros/macro_ext_binding_dep.2.raw/Example/FunPtr.hs view

file too large to diff

+ test-artefacts/fixtures/macros/macro_ext_binding_dep.2.raw/Example/Safe.hs view

file too large to diff

+ test-artefacts/fixtures/macros/macro_ext_binding_dep.2.raw/Example/Unsafe.hs view

file too large to diff

+ test-artefacts/fixtures/macros/macro_ext_binding_dep.2.raw/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/macro_ext_binding_dep.2.raw/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/macro_ext_binding_dep/Example.hs view

file too large to diff

+ test-artefacts/fixtures/macros/macro_ext_binding_dep/Example/FunPtr.hs view

file too large to diff

+ test-artefacts/fixtures/macros/macro_ext_binding_dep/Example/Safe.hs view

file too large to diff

+ test-artefacts/fixtures/macros/macro_ext_binding_dep/Example/Unsafe.hs view

file too large to diff

+ test-artefacts/fixtures/macros/macro_ext_binding_dep/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/macro_ext_binding_dep/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/macro_functions.1.empty/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/macro_functions.1.empty/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/macro_functions.2.raw/Example.hs view

file too large to diff

+ test-artefacts/fixtures/macros/macro_functions.2.raw/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/macro_functions.2.raw/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/macro_functions/Example.hs view

file too large to diff

+ test-artefacts/fixtures/macros/macro_functions/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/macro_functions/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/macro_in_fundecl.1.empty/Example/FunPtr.hs view

file too large to diff

+ test-artefacts/fixtures/macros/macro_in_fundecl.1.empty/Example/Safe.hs view

file too large to diff

+ test-artefacts/fixtures/macros/macro_in_fundecl.1.empty/Example/Unsafe.hs view

file too large to diff

+ test-artefacts/fixtures/macros/macro_in_fundecl.1.empty/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/macro_in_fundecl.1.empty/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/macro_in_fundecl.2.raw/Example.hs view

file too large to diff

+ test-artefacts/fixtures/macros/macro_in_fundecl.2.raw/Example/FunPtr.hs view

file too large to diff

+ test-artefacts/fixtures/macros/macro_in_fundecl.2.raw/Example/Safe.hs view

file too large to diff

+ test-artefacts/fixtures/macros/macro_in_fundecl.2.raw/Example/Unsafe.hs view

file too large to diff

+ test-artefacts/fixtures/macros/macro_in_fundecl.2.raw/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/macro_in_fundecl.2.raw/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/macro_in_fundecl/Example.hs view

file too large to diff

+ test-artefacts/fixtures/macros/macro_in_fundecl/Example/FunPtr.hs view

file too large to diff

+ test-artefacts/fixtures/macros/macro_in_fundecl/Example/Safe.hs view

file too large to diff

+ test-artefacts/fixtures/macros/macro_in_fundecl/Example/Unsafe.hs view

file too large to diff

+ test-artefacts/fixtures/macros/macro_in_fundecl/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/macro_in_fundecl/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/macro_in_fundecl_vs_typedef.1.empty/Example.hs view

file too large to diff

+ test-artefacts/fixtures/macros/macro_in_fundecl_vs_typedef.1.empty/Example/FunPtr.hs view

file too large to diff

+ test-artefacts/fixtures/macros/macro_in_fundecl_vs_typedef.1.empty/Example/Safe.hs view

file too large to diff

+ test-artefacts/fixtures/macros/macro_in_fundecl_vs_typedef.1.empty/Example/Unsafe.hs view

file too large to diff

+ test-artefacts/fixtures/macros/macro_in_fundecl_vs_typedef.1.empty/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/macro_in_fundecl_vs_typedef.1.empty/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/macro_in_fundecl_vs_typedef.2.raw/Example.hs view

file too large to diff

+ test-artefacts/fixtures/macros/macro_in_fundecl_vs_typedef.2.raw/Example/FunPtr.hs view

file too large to diff

+ test-artefacts/fixtures/macros/macro_in_fundecl_vs_typedef.2.raw/Example/Safe.hs view

file too large to diff

+ test-artefacts/fixtures/macros/macro_in_fundecl_vs_typedef.2.raw/Example/Unsafe.hs view

file too large to diff

+ test-artefacts/fixtures/macros/macro_in_fundecl_vs_typedef.2.raw/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/macro_in_fundecl_vs_typedef.2.raw/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/macro_in_fundecl_vs_typedef/Example.hs view

file too large to diff

+ test-artefacts/fixtures/macros/macro_in_fundecl_vs_typedef/Example/FunPtr.hs view

file too large to diff

+ test-artefacts/fixtures/macros/macro_in_fundecl_vs_typedef/Example/Safe.hs view

file too large to diff

+ test-artefacts/fixtures/macros/macro_in_fundecl_vs_typedef/Example/Unsafe.hs view

file too large to diff

+ test-artefacts/fixtures/macros/macro_in_fundecl_vs_typedef/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/macro_in_fundecl_vs_typedef/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/macro_redefines_global.1.empty/Example.hs view

file too large to diff

+ test-artefacts/fixtures/macros/macro_redefines_global.1.empty/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/macro_redefines_global.1.empty/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/macro_redefines_global.2.raw/Example.hs view

file too large to diff

+ test-artefacts/fixtures/macros/macro_redefines_global.2.raw/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/macro_redefines_global.2.raw/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/macro_redefines_global/Example.hs view

file too large to diff

+ test-artefacts/fixtures/macros/macro_redefines_global/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/macro_redefines_global/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/macro_resolution_log_level.default.1.empty/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/macro_resolution_log_level.default.1.empty/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/macro_resolution_log_level.default.2.raw/Example.hs view

file too large to diff

+ test-artefacts/fixtures/macros/macro_resolution_log_level.default.2.raw/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/macro_resolution_log_level.default.2.raw/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/macro_resolution_log_level.default/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/macro_resolution_log_level.default/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/macro_resolution_log_level.enable_macro_warnings.1.empty/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/macro_resolution_log_level.enable_macro_warnings.1.empty/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/macro_resolution_log_level.enable_macro_warnings.2.raw/Example.hs view

file too large to diff

+ test-artefacts/fixtures/macros/macro_resolution_log_level.enable_macro_warnings.2.raw/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/macro_resolution_log_level.enable_macro_warnings.2.raw/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/macro_resolution_log_level.enable_macro_warnings/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/macro_resolution_log_level.enable_macro_warnings/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/macro_strings.1.empty/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/macro_strings.1.empty/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/macro_strings.2.raw/Example.hs view

file too large to diff

+ test-artefacts/fixtures/macros/macro_strings.2.raw/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/macro_strings.2.raw/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/macro_strings/Example.hs view

file too large to diff

+ test-artefacts/fixtures/macros/macro_strings/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/macro_strings/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/macro_type_ptr_qualifiers.1.empty/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/macro_type_ptr_qualifiers.1.empty/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/macro_type_ptr_qualifiers.2.raw/Example.hs view

file too large to diff

+ test-artefacts/fixtures/macros/macro_type_ptr_qualifiers.2.raw/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/macro_type_ptr_qualifiers.2.raw/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/macro_type_ptr_qualifiers/Example.hs view

file too large to diff

+ test-artefacts/fixtures/macros/macro_type_ptr_qualifiers/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/macro_type_ptr_qualifiers/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/macro_type_unresolved_tagged.1.empty/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/macro_type_unresolved_tagged.1.empty/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/macro_type_unresolved_tagged.2.raw/Example.hs view

file too large to diff

+ test-artefacts/fixtures/macros/macro_type_unresolved_tagged.2.raw/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/macro_type_unresolved_tagged.2.raw/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/macro_type_unresolved_tagged/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/macro_type_unresolved_tagged/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/macro_type_void.1.empty/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/macro_type_void.1.empty/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/macro_type_void.2.raw/Example.hs view

file too large to diff

+ test-artefacts/fixtures/macros/macro_type_void.2.raw/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/macro_type_void.2.raw/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/macro_type_void/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/macro_type_void/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/macro_typedef_struct.1.empty/Example.hs view

file too large to diff

+ test-artefacts/fixtures/macros/macro_typedef_struct.1.empty/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/macro_typedef_struct.1.empty/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/macro_typedef_struct.2.raw/Example.hs view

file too large to diff

+ test-artefacts/fixtures/macros/macro_typedef_struct.2.raw/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/macro_typedef_struct.2.raw/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/macro_typedef_struct/Example.hs view

file too large to diff

+ test-artefacts/fixtures/macros/macro_typedef_struct/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/macro_typedef_struct/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/macro_types.1.empty/Example.hs view

file too large to diff

+ test-artefacts/fixtures/macros/macro_types.1.empty/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/macro_types.1.empty/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/macro_types.2.raw/Example.hs view

file too large to diff

+ test-artefacts/fixtures/macros/macro_types.2.raw/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/macro_types.2.raw/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/macro_types/Example.hs view

file too large to diff

+ test-artefacts/fixtures/macros/macro_types/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/macro_types/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/macros.1.empty/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/macros.1.empty/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/macros.2.raw/Example.hs view

file too large to diff

+ test-artefacts/fixtures/macros/macros.2.raw/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/macros.2.raw/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/macros/Example.hs view

file too large to diff

+ test-artefacts/fixtures/macros/macros/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/macros/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/object_like_as_function_like.1.empty/Example/Global.hs view

file too large to diff

+ test-artefacts/fixtures/macros/object_like_as_function_like.1.empty/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/object_like_as_function_like.1.empty/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/object_like_as_function_like.2.raw/Example.hs view

file too large to diff

+ test-artefacts/fixtures/macros/object_like_as_function_like.2.raw/Example/Global.hs view

file too large to diff

+ test-artefacts/fixtures/macros/object_like_as_function_like.2.raw/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/object_like_as_function_like.2.raw/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/object_like_as_function_like/Example.hs view

file too large to diff

+ test-artefacts/fixtures/macros/object_like_as_function_like/Example/Global.hs view

file too large to diff

+ test-artefacts/fixtures/macros/object_like_as_function_like/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/object_like_as_function_like/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/parse/elaborate.1.empty/Example.hs view

file too large to diff

+ test-artefacts/fixtures/macros/parse/elaborate.1.empty/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/parse/elaborate.1.empty/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/parse/elaborate.2.raw/Example.hs view

file too large to diff

+ test-artefacts/fixtures/macros/parse/elaborate.2.raw/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/parse/elaborate.2.raw/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/parse/elaborate/Example.hs view

file too large to diff

+ test-artefacts/fixtures/macros/parse/elaborate/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/parse/elaborate/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/parse/first_parse_then_typecheck.1.empty/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/parse/first_parse_then_typecheck.1.empty/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/parse/first_parse_then_typecheck.2.raw/Example.hs view

file too large to diff

+ test-artefacts/fixtures/macros/parse/first_parse_then_typecheck.2.raw/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/parse/first_parse_then_typecheck.2.raw/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/parse/first_parse_then_typecheck/Example.hs view

file too large to diff

+ test-artefacts/fixtures/macros/parse/first_parse_then_typecheck/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/parse/first_parse_then_typecheck/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/parse/intermittent_include.1.empty/Example.hs view

file too large to diff

+ test-artefacts/fixtures/macros/parse/intermittent_include.1.empty/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/parse/intermittent_include.1.empty/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/parse/intermittent_include.2.raw/Example.hs view

file too large to diff

+ test-artefacts/fixtures/macros/parse/intermittent_include.2.raw/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/parse/intermittent_include.2.raw/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/parse/intermittent_include/Example.hs view

file too large to diff

+ test-artefacts/fixtures/macros/parse/intermittent_include/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/parse/intermittent_include/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/parse/intermittent_include_conditional.1.empty/Example.hs view

file too large to diff

+ test-artefacts/fixtures/macros/parse/intermittent_include_conditional.1.empty/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/parse/intermittent_include_conditional.1.empty/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/parse/intermittent_include_conditional.2.raw/Example.hs view

file too large to diff

+ test-artefacts/fixtures/macros/parse/intermittent_include_conditional.2.raw/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/parse/intermittent_include_conditional.2.raw/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/parse/intermittent_include_conditional/Example.hs view

file too large to diff

+ test-artefacts/fixtures/macros/parse/intermittent_include_conditional/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/parse/intermittent_include_conditional/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/parse/macro_typedef_scope.1.empty/Example.hs view

file too large to diff

+ test-artefacts/fixtures/macros/parse/macro_typedef_scope.1.empty/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/parse/macro_typedef_scope.1.empty/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/parse/macro_typedef_scope.2.raw/Example.hs view

file too large to diff

+ test-artefacts/fixtures/macros/parse/macro_typedef_scope.2.raw/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/parse/macro_typedef_scope.2.raw/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/parse/macro_typedef_scope/Example.hs view

file too large to diff

+ test-artefacts/fixtures/macros/parse/macro_typedef_scope/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/parse/macro_typedef_scope/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/parse/macro_typedef_scope_multiple.1.empty/Example.hs view

file too large to diff

+ test-artefacts/fixtures/macros/parse/macro_typedef_scope_multiple.1.empty/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/parse/macro_typedef_scope_multiple.1.empty/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/parse/macro_typedef_scope_multiple.2.raw/Example.hs view

file too large to diff

+ test-artefacts/fixtures/macros/parse/macro_typedef_scope_multiple.2.raw/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/parse/macro_typedef_scope_multiple.2.raw/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/parse/macro_typedef_scope_multiple/Example.hs view

file too large to diff

+ test-artefacts/fixtures/macros/parse/macro_typedef_scope_multiple/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/parse/macro_typedef_scope_multiple/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/parse/simple.1.empty/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/parse/simple.1.empty/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/parse/simple.2.raw/Example.hs view

file too large to diff

+ test-artefacts/fixtures/macros/parse/simple.2.raw/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/parse/simple.2.raw/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/parse/simple/Example.hs view

file too large to diff

+ test-artefacts/fixtures/macros/parse/simple/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/parse/simple/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/redeclaration/def_undef_def.1.empty/Example/FunPtr.hs view

file too large to diff

+ test-artefacts/fixtures/macros/redeclaration/def_undef_def.1.empty/Example/Safe.hs view

file too large to diff

+ test-artefacts/fixtures/macros/redeclaration/def_undef_def.1.empty/Example/Unsafe.hs view

file too large to diff

+ test-artefacts/fixtures/macros/redeclaration/def_undef_def.1.empty/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/redeclaration/def_undef_def.1.empty/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/redeclaration/def_undef_def.2.raw/Example/FunPtr.hs view

file too large to diff

+ test-artefacts/fixtures/macros/redeclaration/def_undef_def.2.raw/Example/Safe.hs view

file too large to diff

+ test-artefacts/fixtures/macros/redeclaration/def_undef_def.2.raw/Example/Unsafe.hs view

file too large to diff

+ test-artefacts/fixtures/macros/redeclaration/def_undef_def.2.raw/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/redeclaration/def_undef_def.2.raw/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/redeclaration/def_undef_def/Example/FunPtr.hs view

file too large to diff

+ test-artefacts/fixtures/macros/redeclaration/def_undef_def/Example/Safe.hs view

file too large to diff

+ test-artefacts/fixtures/macros/redeclaration/def_undef_def/Example/Unsafe.hs view

file too large to diff

+ test-artefacts/fixtures/macros/redeclaration/def_undef_def/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/redeclaration/def_undef_def/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/redeclaration/different.1.empty/Example/FunPtr.hs view

file too large to diff

+ test-artefacts/fixtures/macros/redeclaration/different.1.empty/Example/Safe.hs view

file too large to diff

+ test-artefacts/fixtures/macros/redeclaration/different.1.empty/Example/Unsafe.hs view

file too large to diff

+ test-artefacts/fixtures/macros/redeclaration/different.1.empty/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/redeclaration/different.1.empty/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/redeclaration/different.2.raw/Example/FunPtr.hs view

file too large to diff

+ test-artefacts/fixtures/macros/redeclaration/different.2.raw/Example/Safe.hs view

file too large to diff

+ test-artefacts/fixtures/macros/redeclaration/different.2.raw/Example/Unsafe.hs view

file too large to diff

+ test-artefacts/fixtures/macros/redeclaration/different.2.raw/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/redeclaration/different.2.raw/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/redeclaration/different/Example/FunPtr.hs view

file too large to diff

+ test-artefacts/fixtures/macros/redeclaration/different/Example/Safe.hs view

file too large to diff

+ test-artefacts/fixtures/macros/redeclaration/different/Example/Unsafe.hs view

file too large to diff

+ test-artefacts/fixtures/macros/redeclaration/different/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/redeclaration/different/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/redeclaration/different_value.1.empty/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/redeclaration/different_value.1.empty/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/redeclaration/different_value.2.raw/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/redeclaration/different_value.2.raw/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/redeclaration/different_value/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/redeclaration/different_value/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/redeclaration/identical_semantics.1.empty/Example/FunPtr.hs view

file too large to diff

+ test-artefacts/fixtures/macros/redeclaration/identical_semantics.1.empty/Example/Safe.hs view

file too large to diff

+ test-artefacts/fixtures/macros/redeclaration/identical_semantics.1.empty/Example/Unsafe.hs view

file too large to diff

+ test-artefacts/fixtures/macros/redeclaration/identical_semantics.1.empty/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/redeclaration/identical_semantics.1.empty/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/redeclaration/identical_semantics.2.raw/Example.hs view

file too large to diff

+ test-artefacts/fixtures/macros/redeclaration/identical_semantics.2.raw/Example/FunPtr.hs view

file too large to diff

+ test-artefacts/fixtures/macros/redeclaration/identical_semantics.2.raw/Example/Safe.hs view

file too large to diff

+ test-artefacts/fixtures/macros/redeclaration/identical_semantics.2.raw/Example/Unsafe.hs view

file too large to diff

+ test-artefacts/fixtures/macros/redeclaration/identical_semantics.2.raw/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/redeclaration/identical_semantics.2.raw/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/redeclaration/identical_semantics/Example.hs view

file too large to diff

+ test-artefacts/fixtures/macros/redeclaration/identical_semantics/Example/FunPtr.hs view

file too large to diff

+ test-artefacts/fixtures/macros/redeclaration/identical_semantics/Example/Safe.hs view

file too large to diff

+ test-artefacts/fixtures/macros/redeclaration/identical_semantics/Example/Unsafe.hs view

file too large to diff

+ test-artefacts/fixtures/macros/redeclaration/identical_semantics/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/redeclaration/identical_semantics/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/redeclaration/identical_syntax.1.empty/Example/FunPtr.hs view

file too large to diff

+ test-artefacts/fixtures/macros/redeclaration/identical_syntax.1.empty/Example/Safe.hs view

file too large to diff

+ test-artefacts/fixtures/macros/redeclaration/identical_syntax.1.empty/Example/Unsafe.hs view

file too large to diff

+ test-artefacts/fixtures/macros/redeclaration/identical_syntax.1.empty/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/redeclaration/identical_syntax.1.empty/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/redeclaration/identical_syntax.2.raw/Example/FunPtr.hs view

file too large to diff

+ test-artefacts/fixtures/macros/redeclaration/identical_syntax.2.raw/Example/Safe.hs view

file too large to diff

+ test-artefacts/fixtures/macros/redeclaration/identical_syntax.2.raw/Example/Unsafe.hs view

file too large to diff

+ test-artefacts/fixtures/macros/redeclaration/identical_syntax.2.raw/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/redeclaration/identical_syntax.2.raw/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/redeclaration/identical_syntax/Example/FunPtr.hs view

file too large to diff

+ test-artefacts/fixtures/macros/redeclaration/identical_syntax/Example/Safe.hs view

file too large to diff

+ test-artefacts/fixtures/macros/redeclaration/identical_syntax/Example/Unsafe.hs view

file too large to diff

+ test-artefacts/fixtures/macros/redeclaration/identical_syntax/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/redeclaration/identical_syntax/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/redeclaration/identical_value.1.empty/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/redeclaration/identical_value.1.empty/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/redeclaration/identical_value.2.raw/Example.hs view

file too large to diff

+ test-artefacts/fixtures/macros/redeclaration/identical_value.2.raw/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/redeclaration/identical_value.2.raw/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/redeclaration/identical_value/Example.hs view

file too large to diff

+ test-artefacts/fixtures/macros/redeclaration/identical_value/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/redeclaration/identical_value/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/redeclaration/main_header.1.empty/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/redeclaration/main_header.1.empty/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/redeclaration/main_header.2.raw/Example.hs view

file too large to diff

+ test-artefacts/fixtures/macros/redeclaration/main_header.2.raw/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/redeclaration/main_header.2.raw/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/redeclaration/main_header/Example.hs view

file too large to diff

+ test-artefacts/fixtures/macros/redeclaration/main_header/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/redeclaration/main_header/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/redeclaration/noguard.1.empty/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/redeclaration/noguard.1.empty/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/redeclaration/noguard.2.raw/Example.hs view

file too large to diff

+ test-artefacts/fixtures/macros/redeclaration/noguard.2.raw/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/redeclaration/noguard.2.raw/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/redeclaration/noguard/Example.hs view

file too large to diff

+ test-artefacts/fixtures/macros/redeclaration/noguard/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/redeclaration/noguard/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/redeclaration/same_line_tag_field.1.empty/Example.hs view

file too large to diff

+ test-artefacts/fixtures/macros/redeclaration/same_line_tag_field.1.empty/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/redeclaration/same_line_tag_field.1.empty/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/redeclaration/same_line_tag_field.2.raw/Example.hs view

file too large to diff

+ test-artefacts/fixtures/macros/redeclaration/same_line_tag_field.2.raw/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/redeclaration/same_line_tag_field.2.raw/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/redeclaration/same_line_tag_field/Example.hs view

file too large to diff

+ test-artefacts/fixtures/macros/redeclaration/same_line_tag_field/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/redeclaration/same_line_tag_field/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/redeclaration/variadic.1.empty/Example.hs view

file too large to diff

+ test-artefacts/fixtures/macros/redeclaration/variadic.1.empty/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/redeclaration/variadic.1.empty/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/redeclaration/variadic.2.raw/Example.hs view

file too large to diff

+ test-artefacts/fixtures/macros/redeclaration/variadic.2.raw/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/redeclaration/variadic.2.raw/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/redeclaration/variadic/Example.hs view

file too large to diff

+ test-artefacts/fixtures/macros/redeclaration/variadic/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/redeclaration/variadic/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/reparse.1.empty/Example.hs view

file too large to diff

+ test-artefacts/fixtures/macros/reparse.1.empty/Example/FunPtr.hs view

file too large to diff

+ test-artefacts/fixtures/macros/reparse.1.empty/Example/Global.hs view

file too large to diff

+ test-artefacts/fixtures/macros/reparse.1.empty/Example/Safe.hs view

file too large to diff

+ test-artefacts/fixtures/macros/reparse.1.empty/Example/Unsafe.hs view

file too large to diff

+ test-artefacts/fixtures/macros/reparse.1.empty/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/reparse.1.empty/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/reparse.2.raw/Example.hs view

file too large to diff

+ test-artefacts/fixtures/macros/reparse.2.raw/Example/FunPtr.hs view

file too large to diff

+ test-artefacts/fixtures/macros/reparse.2.raw/Example/Global.hs view

file too large to diff

+ test-artefacts/fixtures/macros/reparse.2.raw/Example/Safe.hs view

file too large to diff

+ test-artefacts/fixtures/macros/reparse.2.raw/Example/Unsafe.hs view

file too large to diff

+ test-artefacts/fixtures/macros/reparse.2.raw/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/reparse.2.raw/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/Example.hs view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/Example/FunPtr.hs view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/Example/Global.hs view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/Example/Safe.hs view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/Example/Unsafe.hs view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/arithmetic_types.1.empty/Example/FunPtr.hs view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/arithmetic_types.1.empty/Example/Safe.hs view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/arithmetic_types.1.empty/Example/Unsafe.hs view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/arithmetic_types.1.empty/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/arithmetic_types.1.empty/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/arithmetic_types.2.raw/Example.hs view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/arithmetic_types.2.raw/Example/FunPtr.hs view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/arithmetic_types.2.raw/Example/Safe.hs view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/arithmetic_types.2.raw/Example/Unsafe.hs view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/arithmetic_types.2.raw/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/arithmetic_types.2.raw/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/arithmetic_types/Example.hs view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/arithmetic_types/Example/FunPtr.hs view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/arithmetic_types/Example/Safe.hs view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/arithmetic_types/Example/Unsafe.hs view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/arithmetic_types/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/arithmetic_types/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/cref_attributes.1.empty/Example/FunPtr.hs view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/cref_attributes.1.empty/Example/Safe.hs view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/cref_attributes.1.empty/Example/Unsafe.hs view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/cref_attributes.1.empty/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/cref_attributes.1.empty/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/cref_attributes.2.raw/Example.hs view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/cref_attributes.2.raw/Example/FunPtr.hs view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/cref_attributes.2.raw/Example/Safe.hs view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/cref_attributes.2.raw/Example/Unsafe.hs view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/cref_attributes.2.raw/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/cref_attributes.2.raw/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/cref_attributes/Example.hs view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/cref_attributes/Example/FunPtr.hs view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/cref_attributes/Example/Safe.hs view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/cref_attributes/Example/Unsafe.hs view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/cref_attributes/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/cref_attributes/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/defer_wrong.1.empty/Example.hs view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/defer_wrong.1.empty/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/defer_wrong.1.empty/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/defer_wrong.2.raw/Example.hs view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/defer_wrong.2.raw/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/defer_wrong.2.raw/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/defer_wrong/Example.hs view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/defer_wrong/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/defer_wrong/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/end_in_macro_arg.1.empty/Example.hs view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/end_in_macro_arg.1.empty/Example/FunPtr.hs view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/end_in_macro_arg.1.empty/Example/Global.hs view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/end_in_macro_arg.1.empty/Example/Safe.hs view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/end_in_macro_arg.1.empty/Example/Unsafe.hs view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/end_in_macro_arg.1.empty/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/end_in_macro_arg.1.empty/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/end_in_macro_arg.2.raw/Example.hs view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/end_in_macro_arg.2.raw/Example/FunPtr.hs view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/end_in_macro_arg.2.raw/Example/Global.hs view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/end_in_macro_arg.2.raw/Example/Safe.hs view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/end_in_macro_arg.2.raw/Example/Unsafe.hs view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/end_in_macro_arg.2.raw/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/end_in_macro_arg.2.raw/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/end_in_macro_arg/Example.hs view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/end_in_macro_arg/Example/FunPtr.hs view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/end_in_macro_arg/Example/Global.hs view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/end_in_macro_arg/Example/Safe.hs view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/end_in_macro_arg/Example/Unsafe.hs view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/end_in_macro_arg/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/end_in_macro_arg/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/functions.1.empty/Example.hs view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/functions.1.empty/Example/FunPtr.hs view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/functions.1.empty/Example/Safe.hs view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/functions.1.empty/Example/Unsafe.hs view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/functions.1.empty/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/functions.1.empty/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/functions.2.raw/Example.hs view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/functions.2.raw/Example/FunPtr.hs view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/functions.2.raw/Example/Safe.hs view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/functions.2.raw/Example/Unsafe.hs view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/functions.2.raw/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/functions.2.raw/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/functions/Example.hs view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/functions/Example/FunPtr.hs view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/functions/Example/Safe.hs view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/functions/Example/Unsafe.hs view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/functions/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/functions/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/gnu_attributes.1.empty/Example/FunPtr.hs view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/gnu_attributes.1.empty/Example/Safe.hs view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/gnu_attributes.1.empty/Example/Unsafe.hs view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/gnu_attributes.1.empty/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/gnu_attributes.1.empty/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/gnu_attributes.2.raw/Example.hs view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/gnu_attributes.2.raw/Example/FunPtr.hs view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/gnu_attributes.2.raw/Example/Safe.hs view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/gnu_attributes.2.raw/Example/Unsafe.hs view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/gnu_attributes.2.raw/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/gnu_attributes.2.raw/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/gnu_attributes/Example.hs view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/gnu_attributes/Example/FunPtr.hs view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/gnu_attributes/Example/Safe.hs view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/gnu_attributes/Example/Unsafe.hs view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/gnu_attributes/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/gnu_attributes/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/nesting.1.empty/Example.hs view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/nesting.1.empty/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/nesting.1.empty/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/nesting.2.raw/Example.hs view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/nesting.2.raw/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/nesting.2.raw/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/nesting/Example.hs view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/nesting/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/nesting/struct_in_struct.1.empty/Example.hs view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/nesting/struct_in_struct.1.empty/Example/Global.hs view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/nesting/struct_in_struct.1.empty/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/nesting/struct_in_struct.1.empty/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/nesting/struct_in_struct.2.raw/Example.hs view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/nesting/struct_in_struct.2.raw/Example/Global.hs view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/nesting/struct_in_struct.2.raw/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/nesting/struct_in_struct.2.raw/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/nesting/struct_in_struct/Example.hs view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/nesting/struct_in_struct/Example/Global.hs view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/nesting/struct_in_struct/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/nesting/struct_in_struct/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/nesting/struct_in_typedef.1.empty/Example.hs view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/nesting/struct_in_typedef.1.empty/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/nesting/struct_in_typedef.1.empty/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/nesting/struct_in_typedef.2.raw/Example.hs view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/nesting/struct_in_typedef.2.raw/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/nesting/struct_in_typedef.2.raw/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/nesting/struct_in_typedef/Example.hs view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/nesting/struct_in_typedef/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/nesting/struct_in_typedef/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/nesting/struct_in_union.1.empty/Example.hs view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/nesting/struct_in_union.1.empty/Example/Global.hs view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/nesting/struct_in_union.1.empty/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/nesting/struct_in_union.1.empty/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/nesting/struct_in_union.2.raw/Example.hs view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/nesting/struct_in_union.2.raw/Example/Global.hs view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/nesting/struct_in_union.2.raw/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/nesting/struct_in_union.2.raw/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/nesting/struct_in_union/Example.hs view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/nesting/struct_in_union/Example/Global.hs view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/nesting/struct_in_union/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/nesting/struct_in_union/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/nesting/struct_in_variable.1.empty/Example.hs view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/nesting/struct_in_variable.1.empty/Example/Global.hs view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/nesting/struct_in_variable.1.empty/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/nesting/struct_in_variable.1.empty/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/nesting/struct_in_variable.2.raw/Example.hs view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/nesting/struct_in_variable.2.raw/Example/Global.hs view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/nesting/struct_in_variable.2.raw/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/nesting/struct_in_variable.2.raw/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/nesting/struct_in_variable/Example.hs view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/nesting/struct_in_variable/Example/Global.hs view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/nesting/struct_in_variable/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/nesting/struct_in_variable/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/nesting/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/nesting/union_in_struct.1.empty/Example.hs view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/nesting/union_in_struct.1.empty/Example/Global.hs view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/nesting/union_in_struct.1.empty/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/nesting/union_in_struct.1.empty/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/nesting/union_in_struct.2.raw/Example.hs view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/nesting/union_in_struct.2.raw/Example/Global.hs view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/nesting/union_in_struct.2.raw/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/nesting/union_in_struct.2.raw/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/nesting/union_in_struct/Example.hs view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/nesting/union_in_struct/Example/Global.hs view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/nesting/union_in_struct/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/nesting/union_in_struct/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/nesting/union_in_typedef.1.empty/Example.hs view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/nesting/union_in_typedef.1.empty/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/nesting/union_in_typedef.1.empty/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/nesting/union_in_typedef.2.raw/Example.hs view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/nesting/union_in_typedef.2.raw/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/nesting/union_in_typedef.2.raw/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/nesting/union_in_typedef/Example.hs view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/nesting/union_in_typedef/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/nesting/union_in_typedef/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/nesting/union_in_union.1.empty/Example.hs view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/nesting/union_in_union.1.empty/Example/Global.hs view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/nesting/union_in_union.1.empty/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/nesting/union_in_union.1.empty/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/nesting/union_in_union.2.raw/Example.hs view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/nesting/union_in_union.2.raw/Example/Global.hs view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/nesting/union_in_union.2.raw/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/nesting/union_in_union.2.raw/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/nesting/union_in_union/Example.hs view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/nesting/union_in_union/Example/Global.hs view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/nesting/union_in_union/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/nesting/union_in_union/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/nesting/union_in_variable.1.empty/Example.hs view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/nesting/union_in_variable.1.empty/Example/Global.hs view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/nesting/union_in_variable.1.empty/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/nesting/union_in_variable.1.empty/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/nesting/union_in_variable.2.raw/Example.hs view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/nesting/union_in_variable.2.raw/Example/Global.hs view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/nesting/union_in_variable.2.raw/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/nesting/union_in_variable.2.raw/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/nesting/union_in_variable/Example.hs view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/nesting/union_in_variable/Example/Global.hs view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/nesting/union_in_variable/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/nesting/union_in_variable/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/reparse/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/undef.1.empty/Example/FunPtr.hs view

file too large to diff

+ test-artefacts/fixtures/macros/undef.1.empty/Example/Safe.hs view

file too large to diff

+ test-artefacts/fixtures/macros/undef.1.empty/Example/Unsafe.hs view

file too large to diff

+ test-artefacts/fixtures/macros/undef.1.empty/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/undef.1.empty/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/undef.2.raw/Example.hs view

file too large to diff

+ test-artefacts/fixtures/macros/undef.2.raw/Example/FunPtr.hs view

file too large to diff

+ test-artefacts/fixtures/macros/undef.2.raw/Example/Safe.hs view

file too large to diff

+ test-artefacts/fixtures/macros/undef.2.raw/Example/Unsafe.hs view

file too large to diff

+ test-artefacts/fixtures/macros/undef.2.raw/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/undef.2.raw/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/undef/Example.hs view

file too large to diff

+ test-artefacts/fixtures/macros/undef/Example/FunPtr.hs view

file too large to diff

+ test-artefacts/fixtures/macros/undef/Example/Safe.hs view

file too large to diff

+ test-artefacts/fixtures/macros/undef/Example/Unsafe.hs view

file too large to diff

+ test-artefacts/fixtures/macros/undef/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/undef/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/wrong_source_location.1.empty/Example.hs view

file too large to diff

+ test-artefacts/fixtures/macros/wrong_source_location.1.empty/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/wrong_source_location.1.empty/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/wrong_source_location.2.raw/Example.hs view

file too large to diff

+ test-artefacts/fixtures/macros/wrong_source_location.2.raw/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/wrong_source_location.2.raw/th.txt view

file too large to diff

+ test-artefacts/fixtures/macros/wrong_source_location/Example.hs view

file too large to diff

+ test-artefacts/fixtures/macros/wrong_source_location/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/macros/wrong_source_location/th.txt view

file too large to diff

+ test-artefacts/fixtures/program-analysis/circular_includes/Example.hs view

file too large to diff

+ test-artefacts/fixtures/program-analysis/circular_includes/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/program-analysis/circular_includes/th.txt view

file too large to diff

+ test-artefacts/fixtures/program-analysis/circular_macro/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/program-analysis/circular_macro/th.txt view

file too large to diff

+ test-artefacts/fixtures/program-analysis/delay_traces/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/program-analysis/delay_traces/th.txt view

file too large to diff

+ test-artefacts/fixtures/program-analysis/program-slicing/macro_selected/Example.hs view

file too large to diff

+ test-artefacts/fixtures/program-analysis/program-slicing/macro_selected/Example/FunPtr.hs view

file too large to diff

+ test-artefacts/fixtures/program-analysis/program-slicing/macro_selected/Example/Safe.hs view

file too large to diff

+ test-artefacts/fixtures/program-analysis/program-slicing/macro_selected/Example/Unsafe.hs view

file too large to diff

+ test-artefacts/fixtures/program-analysis/program-slicing/macro_selected/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/program-analysis/program-slicing/macro_selected/th.txt view

file too large to diff

+ test-artefacts/fixtures/program-analysis/program-slicing/macro_unselected/Example.hs view

file too large to diff

+ test-artefacts/fixtures/program-analysis/program-slicing/macro_unselected/Example/FunPtr.hs view

file too large to diff

+ test-artefacts/fixtures/program-analysis/program-slicing/macro_unselected/Example/Safe.hs view

file too large to diff

+ test-artefacts/fixtures/program-analysis/program-slicing/macro_unselected/Example/Unsafe.hs view

file too large to diff

+ test-artefacts/fixtures/program-analysis/program-slicing/macro_unselected/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/program-analysis/program-slicing/macro_unselected/th.txt view

file too large to diff

+ test-artefacts/fixtures/program-analysis/program-slicing/typedef_selected/Example.hs view

file too large to diff

+ test-artefacts/fixtures/program-analysis/program-slicing/typedef_selected/Example/FunPtr.hs view

file too large to diff

+ test-artefacts/fixtures/program-analysis/program-slicing/typedef_selected/Example/Safe.hs view

file too large to diff

+ test-artefacts/fixtures/program-analysis/program-slicing/typedef_selected/Example/Unsafe.hs view

file too large to diff

+ test-artefacts/fixtures/program-analysis/program-slicing/typedef_selected/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/program-analysis/program-slicing/typedef_selected/th.txt view

file too large to diff

+ test-artefacts/fixtures/program-analysis/program-slicing/typedef_unselected/Example.hs view

file too large to diff

+ test-artefacts/fixtures/program-analysis/program-slicing/typedef_unselected/Example/FunPtr.hs view

file too large to diff

+ test-artefacts/fixtures/program-analysis/program-slicing/typedef_unselected/Example/Safe.hs view

file too large to diff

+ test-artefacts/fixtures/program-analysis/program-slicing/typedef_unselected/Example/Unsafe.hs view

file too large to diff

+ test-artefacts/fixtures/program-analysis/program-slicing/typedef_unselected/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/program-analysis/program-slicing/typedef_unselected/th.txt view

file too large to diff

+ test-artefacts/fixtures/program-analysis/program_slicing_selection/Example.hs view

file too large to diff

+ test-artefacts/fixtures/program-analysis/program_slicing_selection/Example/FunPtr.hs view

file too large to diff

+ test-artefacts/fixtures/program-analysis/program_slicing_selection/Example/Safe.hs view

file too large to diff

+ test-artefacts/fixtures/program-analysis/program_slicing_selection/Example/Unsafe.hs view

file too large to diff

+ test-artefacts/fixtures/program-analysis/program_slicing_selection/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/program-analysis/program_slicing_selection/th.txt view

file too large to diff

+ test-artefacts/fixtures/program-analysis/program_slicing_simple/Example.hs view

file too large to diff

+ test-artefacts/fixtures/program-analysis/program_slicing_simple/Example/FunPtr.hs view

file too large to diff

+ test-artefacts/fixtures/program-analysis/program_slicing_simple/Example/Safe.hs view

file too large to diff

+ test-artefacts/fixtures/program-analysis/program_slicing_simple/Example/Unsafe.hs view

file too large to diff

+ test-artefacts/fixtures/program-analysis/program_slicing_simple/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/program-analysis/program_slicing_simple/th.txt view

file too large to diff

+ test-artefacts/fixtures/program-analysis/selection_bad/Example.hs view

file too large to diff

+ test-artefacts/fixtures/program-analysis/selection_bad/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/program-analysis/selection_bad/th.txt view

file too large to diff

+ test-artefacts/fixtures/program-analysis/selection_fail.1.deselect_failed/Example.hs view

file too large to diff

+ test-artefacts/fixtures/program-analysis/selection_fail.1.deselect_failed/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/program-analysis/selection_fail.1.deselect_failed/th.txt view

file too large to diff

+ test-artefacts/fixtures/program-analysis/selection_fail.2.program_slicing/Example.hs view

file too large to diff

+ test-artefacts/fixtures/program-analysis/selection_fail.2.program_slicing/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/program-analysis/selection_fail.2.program_slicing/th.txt view

file too large to diff

+ test-artefacts/fixtures/program-analysis/selection_fail.3.select_ok/Example.hs view

file too large to diff

+ test-artefacts/fixtures/program-analysis/selection_fail.3.select_ok/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/program-analysis/selection_fail.3.select_ok/th.txt view

file too large to diff

+ test-artefacts/fixtures/program-analysis/selection_fail/Example.hs view

file too large to diff

+ test-artefacts/fixtures/program-analysis/selection_fail/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/program-analysis/selection_fail/th.txt view

file too large to diff

+ test-artefacts/fixtures/program-analysis/selection_foo/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/program-analysis/selection_foo/th.txt view

file too large to diff

+ test-artefacts/fixtures/program-analysis/selection_matches_c_names.1.positive_case/Example.hs view

file too large to diff

+ test-artefacts/fixtures/program-analysis/selection_matches_c_names.1.positive_case/Example/FunPtr.hs view

file too large to diff

+ test-artefacts/fixtures/program-analysis/selection_matches_c_names.1.positive_case/Example/Safe.hs view

file too large to diff

+ test-artefacts/fixtures/program-analysis/selection_matches_c_names.1.positive_case/Example/Unsafe.hs view

file too large to diff

+ test-artefacts/fixtures/program-analysis/selection_matches_c_names.1.positive_case/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/program-analysis/selection_matches_c_names.1.positive_case/th.txt view

file too large to diff

+ test-artefacts/fixtures/program-analysis/selection_matches_c_names.2.negative_case/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/program-analysis/selection_matches_c_names.2.negative_case/th.txt view

file too large to diff

+ test-artefacts/fixtures/program-analysis/selection_merge_traces/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/program-analysis/selection_merge_traces/th.txt view

file too large to diff

+ test-artefacts/fixtures/program-analysis/selection_omit_external_a/Example.hs view

file too large to diff

+ test-artefacts/fixtures/program-analysis/selection_omit_external_a/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/program-analysis/selection_omit_external_a/th.txt view

file too large to diff

+ test-artefacts/fixtures/program-analysis/selection_omit_external_b/Example.hs view

file too large to diff

+ test-artefacts/fixtures/program-analysis/selection_omit_external_b/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/program-analysis/selection_omit_external_b/th.txt view

file too large to diff

+ test-artefacts/fixtures/program-analysis/selection_omit_prescriptive/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/program-analysis/selection_omit_prescriptive/th.txt view

file too large to diff

+ test-artefacts/fixtures/program-analysis/selection_squash_typedef/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/program-analysis/selection_squash_typedef/th.txt view

file too large to diff

+ test-artefacts/fixtures/program-analysis/typedef_analysis/Example.hs view

file too large to diff

+ test-artefacts/fixtures/program-analysis/typedef_analysis/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/program-analysis/typedef_analysis/th.txt view

file too large to diff

+ test-artefacts/fixtures/program-analysis/typedef_block/Example.hs view

file too large to diff

+ test-artefacts/fixtures/program-analysis/typedef_block/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/program-analysis/typedef_block/th.txt view

file too large to diff

+ test-artefacts/fixtures/program-analysis/typedef_name_clash/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/program-analysis/typedef_name_clash/th.txt view

file too large to diff

+ test-artefacts/fixtures/program-analysis/typedef_suffix_clash/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/program-analysis/typedef_suffix_clash/th.txt view

file too large to diff

+ test-artefacts/fixtures/types/anonymous/edge-cases/anon_in_nonanon/Example.hs view

file too large to diff

+ test-artefacts/fixtures/types/anonymous/edge-cases/anon_in_nonanon/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/types/anonymous/edge-cases/anon_in_nonanon/th.txt view

file too large to diff

+ test-artefacts/fixtures/types/anonymous/edge-cases/bitfield/Example.hs view

file too large to diff

+ test-artefacts/fixtures/types/anonymous/edge-cases/bitfield/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/types/anonymous/edge-cases/bitfield/th.txt view

file too large to diff

+ test-artefacts/fixtures/types/anonymous/edge-cases/drop_indirect_fields_1/Example.hs view

file too large to diff

+ test-artefacts/fixtures/types/anonymous/edge-cases/drop_indirect_fields_1/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/types/anonymous/edge-cases/drop_indirect_fields_1/th.txt view

file too large to diff

+ test-artefacts/fixtures/types/anonymous/edge-cases/drop_indirect_fields_2/Example.hs view

file too large to diff

+ test-artefacts/fixtures/types/anonymous/edge-cases/drop_indirect_fields_2/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/types/anonymous/edge-cases/drop_indirect_fields_2/th.txt view

file too large to diff

+ test-artefacts/fixtures/types/anonymous/edge-cases/duplicate_field_names/Example.hs view

file too large to diff

+ test-artefacts/fixtures/types/anonymous/edge-cases/duplicate_field_names/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/types/anonymous/edge-cases/duplicate_field_names/th.txt view

file too large to diff

+ test-artefacts/fixtures/types/anonymous/edge-cases/empty_anon/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/types/anonymous/edge-cases/empty_anon/th.txt view

file too large to diff

+ test-artefacts/fixtures/types/anonymous/edge-cases/multi_nesting.omit_field_prefixes/Example.hs view

file too large to diff

+ test-artefacts/fixtures/types/anonymous/edge-cases/multi_nesting.omit_field_prefixes/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/types/anonymous/edge-cases/multi_nesting.omit_field_prefixes/th.txt view

file too large to diff

+ test-artefacts/fixtures/types/anonymous/edge-cases/multi_nesting/Example.hs view

file too large to diff

+ test-artefacts/fixtures/types/anonymous/edge-cases/multi_nesting/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/types/anonymous/edge-cases/multi_nesting/th.txt view

file too large to diff

+ test-artefacts/fixtures/types/anonymous/edge-cases/padding/Example.hs view

file too large to diff

+ test-artefacts/fixtures/types/anonymous/edge-cases/padding/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/types/anonymous/edge-cases/padding/th.txt view

file too large to diff

+ test-artefacts/fixtures/types/anonymous/edge-cases/reparse/Example.hs view

file too large to diff

+ test-artefacts/fixtures/types/anonymous/edge-cases/reparse/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/types/anonymous/edge-cases/reparse/th.txt view

file too large to diff

+ test-artefacts/fixtures/types/anonymous/indirect-fields/multi_nesting_enum_tagged/Example.hs view

file too large to diff

+ test-artefacts/fixtures/types/anonymous/indirect-fields/multi_nesting_enum_tagged/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/types/anonymous/indirect-fields/multi_nesting_enum_tagged/th.txt view

file too large to diff

+ test-artefacts/fixtures/types/anonymous/indirect-fields/multi_nesting_enum_untagged/Example.hs view

file too large to diff

+ test-artefacts/fixtures/types/anonymous/indirect-fields/multi_nesting_enum_untagged/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/types/anonymous/indirect-fields/multi_nesting_enum_untagged/th.txt view

file too large to diff

+ test-artefacts/fixtures/types/anonymous/indirect-fields/multi_nesting_struct_tagged/Example.hs view

file too large to diff

+ test-artefacts/fixtures/types/anonymous/indirect-fields/multi_nesting_struct_tagged/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/types/anonymous/indirect-fields/multi_nesting_struct_tagged/th.txt view

file too large to diff

+ test-artefacts/fixtures/types/anonymous/indirect-fields/multi_nesting_struct_untagged/Example.hs view

file too large to diff

+ test-artefacts/fixtures/types/anonymous/indirect-fields/multi_nesting_struct_untagged/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/types/anonymous/indirect-fields/multi_nesting_struct_untagged/th.txt view

file too large to diff

+ test-artefacts/fixtures/types/anonymous/indirect-fields/multi_nesting_union_tagged/Example.hs view

file too large to diff

+ test-artefacts/fixtures/types/anonymous/indirect-fields/multi_nesting_union_tagged/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/types/anonymous/indirect-fields/multi_nesting_union_tagged/th.txt view

file too large to diff

+ test-artefacts/fixtures/types/anonymous/indirect-fields/multi_nesting_union_untagged/Example.hs view

file too large to diff

+ test-artefacts/fixtures/types/anonymous/indirect-fields/multi_nesting_union_untagged/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/types/anonymous/indirect-fields/multi_nesting_union_untagged/th.txt view

file too large to diff

+ test-artefacts/fixtures/types/anonymous/indirect-fields/single_nesting_enum_tagged/Example.hs view

file too large to diff

+ test-artefacts/fixtures/types/anonymous/indirect-fields/single_nesting_enum_tagged/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/types/anonymous/indirect-fields/single_nesting_enum_tagged/th.txt view

file too large to diff

+ test-artefacts/fixtures/types/anonymous/indirect-fields/single_nesting_enum_untagged/Example.hs view

file too large to diff

+ test-artefacts/fixtures/types/anonymous/indirect-fields/single_nesting_enum_untagged/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/types/anonymous/indirect-fields/single_nesting_enum_untagged/th.txt view

file too large to diff

+ test-artefacts/fixtures/types/anonymous/indirect-fields/single_nesting_struct_tagged/Example.hs view

file too large to diff

+ test-artefacts/fixtures/types/anonymous/indirect-fields/single_nesting_struct_tagged/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/types/anonymous/indirect-fields/single_nesting_struct_tagged/th.txt view

file too large to diff

+ test-artefacts/fixtures/types/anonymous/indirect-fields/single_nesting_struct_untagged/Example.hs view

file too large to diff

+ test-artefacts/fixtures/types/anonymous/indirect-fields/single_nesting_struct_untagged/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/types/anonymous/indirect-fields/single_nesting_struct_untagged/th.txt view

file too large to diff

+ test-artefacts/fixtures/types/anonymous/indirect-fields/single_nesting_union_tagged/Example.hs view

file too large to diff

+ test-artefacts/fixtures/types/anonymous/indirect-fields/single_nesting_union_tagged/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/types/anonymous/indirect-fields/single_nesting_union_tagged/th.txt view

file too large to diff

+ test-artefacts/fixtures/types/anonymous/indirect-fields/single_nesting_union_untagged/Example.hs view

file too large to diff

+ test-artefacts/fixtures/types/anonymous/indirect-fields/single_nesting_union_untagged/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/types/anonymous/indirect-fields/single_nesting_union_untagged/th.txt view

file too large to diff

+ test-artefacts/fixtures/types/anonymous/struct/Example.hs view

file too large to diff

+ test-artefacts/fixtures/types/anonymous/struct/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/types/anonymous/struct/th.txt view

file too large to diff

+ test-artefacts/fixtures/types/anonymous/struct_in_struct/Example.hs view

file too large to diff

+ test-artefacts/fixtures/types/anonymous/struct_in_struct/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/types/anonymous/struct_in_struct/th.txt view

file too large to diff

+ test-artefacts/fixtures/types/anonymous/struct_in_union/Example.hs view

file too large to diff

+ test-artefacts/fixtures/types/anonymous/struct_in_union/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/types/anonymous/struct_in_union/th.txt view

file too large to diff

+ test-artefacts/fixtures/types/anonymous/union/Example.hs view

file too large to diff

+ test-artefacts/fixtures/types/anonymous/union/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/types/anonymous/union/th.txt view

file too large to diff

+ test-artefacts/fixtures/types/anonymous/union_in_struct/Example.hs view

file too large to diff

+ test-artefacts/fixtures/types/anonymous/union_in_struct/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/types/anonymous/union_in_struct/th.txt view

file too large to diff

+ test-artefacts/fixtures/types/anonymous/union_in_union/Example.hs view

file too large to diff

+ test-artefacts/fixtures/types/anonymous/union_in_union/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/types/anonymous/union_in_union/th.txt view

file too large to diff

+ test-artefacts/fixtures/types/complex/complex_non_float_test/Example/Global.hs view

file too large to diff

+ test-artefacts/fixtures/types/complex/complex_non_float_test/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/types/complex/complex_non_float_test/th.txt view

file too large to diff

+ test-artefacts/fixtures/types/complex/hsb_complex_test/Example.hs view

file too large to diff

+ test-artefacts/fixtures/types/complex/hsb_complex_test/Example/FunPtr.hs view

file too large to diff

+ test-artefacts/fixtures/types/complex/hsb_complex_test/Example/Global.hs view

file too large to diff

+ test-artefacts/fixtures/types/complex/hsb_complex_test/Example/Safe.hs view

file too large to diff

+ test-artefacts/fixtures/types/complex/hsb_complex_test/Example/Unsafe.hs view

file too large to diff

+ test-artefacts/fixtures/types/complex/hsb_complex_test/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/types/complex/hsb_complex_test/th.txt view

file too large to diff

+ test-artefacts/fixtures/types/complex/vector_test/Example.hs view

file too large to diff

+ test-artefacts/fixtures/types/complex/vector_test/Example/FunPtr.hs view

file too large to diff

+ test-artefacts/fixtures/types/complex/vector_test/Example/Safe.hs view

file too large to diff

+ test-artefacts/fixtures/types/complex/vector_test/Example/Unsafe.hs view

file too large to diff

+ test-artefacts/fixtures/types/complex/vector_test/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/types/complex/vector_test/th.txt view

file too large to diff

+ test-artefacts/fixtures/types/enums/enum_cpp_syntax/Example.hs view

file too large to diff

+ test-artefacts/fixtures/types/enums/enum_cpp_syntax/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/types/enums/enum_cpp_syntax/th.txt view

file too large to diff

+ test-artefacts/fixtures/types/enums/enum_unsigned_values/Example.hs view

file too large to diff

+ test-artefacts/fixtures/types/enums/enum_unsigned_values/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/types/enums/enum_unsigned_values/th.txt view

file too large to diff

+ test-artefacts/fixtures/types/enums/enums/Example.hs view

file too large to diff

+ test-artefacts/fixtures/types/enums/enums/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/types/enums/enums/th.txt view

file too large to diff

+ test-artefacts/fixtures/types/enums/nested_enums/Example.hs view

file too large to diff

+ test-artefacts/fixtures/types/enums/nested_enums/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/types/enums/nested_enums/th.txt view

file too large to diff

+ test-artefacts/fixtures/types/enums/untagged_enum_toplevel/Example.hs view

file too large to diff

+ test-artefacts/fixtures/types/enums/untagged_enum_toplevel/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/types/enums/untagged_enum_toplevel/th.txt view

file too large to diff

+ test-artefacts/fixtures/types/nested/nested_types/Example.hs view

file too large to diff

+ test-artefacts/fixtures/types/nested/nested_types/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/types/nested/nested_types/th.txt view

file too large to diff

+ test-artefacts/fixtures/types/primitives/bool/Example.hs view

file too large to diff

+ test-artefacts/fixtures/types/primitives/bool/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/types/primitives/bool/th.txt view

file too large to diff

+ test-artefacts/fixtures/types/primitives/bool_c23/Example/Global.hs view

file too large to diff

+ test-artefacts/fixtures/types/primitives/bool_c23/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/types/primitives/bool_c23/th.txt view

file too large to diff

+ test-artefacts/fixtures/types/primitives/bool_macro_override/Example.hs view

file too large to diff

+ test-artefacts/fixtures/types/primitives/bool_macro_override/Example/FunPtr.hs view

file too large to diff

+ test-artefacts/fixtures/types/primitives/bool_macro_override/Example/Safe.hs view

file too large to diff

+ test-artefacts/fixtures/types/primitives/bool_macro_override/Example/Unsafe.hs view

file too large to diff

+ test-artefacts/fixtures/types/primitives/bool_macro_override/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/types/primitives/bool_macro_override/th.txt view

file too large to diff

+ test-artefacts/fixtures/types/primitives/bool_typedef_override/Example.hs view

file too large to diff

+ test-artefacts/fixtures/types/primitives/bool_typedef_override/Example/FunPtr.hs view

file too large to diff

+ test-artefacts/fixtures/types/primitives/bool_typedef_override/Example/Safe.hs view

file too large to diff

+ test-artefacts/fixtures/types/primitives/bool_typedef_override/Example/Unsafe.hs view

file too large to diff

+ test-artefacts/fixtures/types/primitives/bool_typedef_override/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/types/primitives/bool_typedef_override/th.txt view

file too large to diff

+ test-artefacts/fixtures/types/primitives/fixedwidth/Example.hs view

file too large to diff

+ test-artefacts/fixtures/types/primitives/fixedwidth/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/types/primitives/fixedwidth/th.txt view

file too large to diff

+ test-artefacts/fixtures/types/primitives/least_fast/Example.hs view

file too large to diff

+ test-artefacts/fixtures/types/primitives/least_fast/Example/FunPtr.hs view

file too large to diff

+ test-artefacts/fixtures/types/primitives/least_fast/Example/Safe.hs view

file too large to diff

+ test-artefacts/fixtures/types/primitives/least_fast/Example/Unsafe.hs view

file too large to diff

+ test-artefacts/fixtures/types/primitives/least_fast/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/types/primitives/least_fast/th.txt view

file too large to diff

+ test-artefacts/fixtures/types/primitives/primitive_insts/Example.hs view

file too large to diff

+ test-artefacts/fixtures/types/primitives/primitive_insts/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/types/primitives/primitive_insts/th.txt view

file too large to diff

+ test-artefacts/fixtures/types/primitives/primitive_types/Example.hs view

file too large to diff

+ test-artefacts/fixtures/types/primitives/primitive_types/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/types/primitives/primitive_types/th.txt view

file too large to diff

+ test-artefacts/fixtures/types/qualifiers/const_typedefs/Example.hs view

file too large to diff

+ test-artefacts/fixtures/types/qualifiers/const_typedefs/Example/Global.hs view

file too large to diff

+ test-artefacts/fixtures/types/qualifiers/const_typedefs/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/types/qualifiers/const_typedefs/th.txt view

file too large to diff

+ test-artefacts/fixtures/types/qualifiers/type_qualifiers/Example/FunPtr.hs view

file too large to diff

+ test-artefacts/fixtures/types/qualifiers/type_qualifiers/Example/Global.hs view

file too large to diff

+ test-artefacts/fixtures/types/qualifiers/type_qualifiers/Example/Safe.hs view

file too large to diff

+ test-artefacts/fixtures/types/qualifiers/type_qualifiers/Example/Unsafe.hs view

file too large to diff

+ test-artefacts/fixtures/types/qualifiers/type_qualifiers/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/types/qualifiers/type_qualifiers/th.txt view

file too large to diff

+ test-artefacts/fixtures/types/scoping/deep_nesting/Example.hs view

file too large to diff

+ test-artefacts/fixtures/types/scoping/deep_nesting/Example/Global.hs view

file too large to diff

+ test-artefacts/fixtures/types/scoping/deep_nesting/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/types/scoping/deep_nesting/th.txt view

file too large to diff

+ test-artefacts/fixtures/types/scoping/nesting/Example.hs view

file too large to diff

+ test-artefacts/fixtures/types/scoping/nesting/Example/Global.hs view

file too large to diff

+ test-artefacts/fixtures/types/scoping/nesting/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/types/scoping/nesting/th.txt view

file too large to diff

+ test-artefacts/fixtures/types/scoping/wide_nesting/Example.hs view

file too large to diff

+ test-artefacts/fixtures/types/scoping/wide_nesting/Example/Global.hs view

file too large to diff

+ test-artefacts/fixtures/types/scoping/wide_nesting/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/types/scoping/wide_nesting/th.txt view

file too large to diff

+ test-artefacts/fixtures/types/special/long_double/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/types/special/long_double/th.txt view

file too large to diff

+ test-artefacts/fixtures/types/special/parse_failure_long_double/Example.hs view

file too large to diff

+ test-artefacts/fixtures/types/special/parse_failure_long_double/Example/FunPtr.hs view

file too large to diff

+ test-artefacts/fixtures/types/special/parse_failure_long_double/Example/Safe.hs view

file too large to diff

+ test-artefacts/fixtures/types/special/parse_failure_long_double/Example/Unsafe.hs view

file too large to diff

+ test-artefacts/fixtures/types/special/parse_failure_long_double/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/types/special/parse_failure_long_double/th.txt view

file too large to diff

+ test-artefacts/fixtures/types/special/small_floats/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/types/special/small_floats/th.txt view

file too large to diff

+ test-artefacts/fixtures/types/structs/bitfields/Example.hs view

file too large to diff

+ test-artefacts/fixtures/types/structs/bitfields/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/types/structs/bitfields/th.txt view

file too large to diff

+ test-artefacts/fixtures/types/structs/circular_dependency_struct/Example.hs view

file too large to diff

+ test-artefacts/fixtures/types/structs/circular_dependency_struct/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/types/structs/circular_dependency_struct/th.txt view

file too large to diff

+ test-artefacts/fixtures/types/structs/padding/Example.hs view

file too large to diff

+ test-artefacts/fixtures/types/structs/padding/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/types/structs/padding/th.txt view

file too large to diff

+ test-artefacts/fixtures/types/structs/recursive_struct/Example.hs view

file too large to diff

+ test-artefacts/fixtures/types/structs/recursive_struct/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/types/structs/recursive_struct/th.txt view

file too large to diff

+ test-artefacts/fixtures/types/structs/simple_structs.omit_field_prefixes/Example.hs view

file too large to diff

+ test-artefacts/fixtures/types/structs/simple_structs.omit_field_prefixes/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/types/structs/simple_structs.omit_field_prefixes/th.txt view

file too large to diff

+ test-artefacts/fixtures/types/structs/simple_structs.post_qualified/Example.hs view

file too large to diff

+ test-artefacts/fixtures/types/structs/simple_structs.post_qualified/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/types/structs/simple_structs.post_qualified/th.txt view

file too large to diff

+ test-artefacts/fixtures/types/structs/simple_structs/Example.hs view

file too large to diff

+ test-artefacts/fixtures/types/structs/simple_structs/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/types/structs/simple_structs/th.txt view

file too large to diff

+ test-artefacts/fixtures/types/structs/struct_arg/Example.hs view

file too large to diff

+ test-artefacts/fixtures/types/structs/struct_arg/Example/FunPtr.hs view

file too large to diff

+ test-artefacts/fixtures/types/structs/struct_arg/Example/Safe.hs view

file too large to diff

+ test-artefacts/fixtures/types/structs/struct_arg/Example/Unsafe.hs view

file too large to diff

+ test-artefacts/fixtures/types/structs/struct_arg/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/types/structs/struct_arg/th.txt view

file too large to diff

+ test-artefacts/fixtures/types/structs/tagged_vs_untagged/Example.hs view

file too large to diff

+ test-artefacts/fixtures/types/structs/tagged_vs_untagged/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/types/structs/tagged_vs_untagged/th.txt view

file too large to diff

+ test-artefacts/fixtures/types/structs/untagged/Example.hs view

file too large to diff

+ test-artefacts/fixtures/types/structs/untagged/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/types/structs/untagged/th.txt view

file too large to diff

+ test-artefacts/fixtures/types/structs/untagged_struct/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/types/structs/untagged_struct/th.txt view

file too large to diff

+ test-artefacts/fixtures/types/typedefs/auxiliary/function-pointer/array/Example.hs view

file too large to diff

+ test-artefacts/fixtures/types/typedefs/auxiliary/function-pointer/array/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/types/typedefs/auxiliary/function-pointer/array/th.txt view

file too large to diff

+ test-artefacts/fixtures/types/typedefs/auxiliary/function-pointer/block/Example.hs view

file too large to diff

+ test-artefacts/fixtures/types/typedefs/auxiliary/function-pointer/block/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/types/typedefs/auxiliary/function-pointer/block/th.txt view

file too large to diff

+ test-artefacts/fixtures/types/typedefs/auxiliary/function-pointer/direct/Example.hs view

file too large to diff

+ test-artefacts/fixtures/types/typedefs/auxiliary/function-pointer/direct/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/types/typedefs/auxiliary/function-pointer/direct/th.txt view

file too large to diff

+ test-artefacts/fixtures/types/typedefs/auxiliary/function-pointer/multi_level/Example.hs view

file too large to diff

+ test-artefacts/fixtures/types/typedefs/auxiliary/function-pointer/multi_level/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/types/typedefs/auxiliary/function-pointer/multi_level/th.txt view

file too large to diff

+ test-artefacts/fixtures/types/typedefs/auxiliary/function-pointer/pointer/Example.hs view

file too large to diff

+ test-artefacts/fixtures/types/typedefs/auxiliary/function-pointer/pointer/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/types/typedefs/auxiliary/function-pointer/pointer/th.txt view

file too large to diff

+ test-artefacts/fixtures/types/typedefs/auxiliary/function-pointer/qual/Example.hs view

file too large to diff

+ test-artefacts/fixtures/types/typedefs/auxiliary/function-pointer/qual/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/types/typedefs/auxiliary/function-pointer/qual/th.txt view

file too large to diff

+ test-artefacts/fixtures/types/typedefs/typedef_vs_macro/Example.hs view

file too large to diff

+ test-artefacts/fixtures/types/typedefs/typedef_vs_macro/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/types/typedefs/typedef_vs_macro/th.txt view

file too large to diff

+ test-artefacts/fixtures/types/typedefs/typedefs/Example.hs view

file too large to diff

+ test-artefacts/fixtures/types/typedefs/typedefs/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/types/typedefs/typedefs/th.txt view

file too large to diff

+ test-artefacts/fixtures/types/typedefs/typenames/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/types/typedefs/typenames/th.txt view

file too large to diff

+ test-artefacts/fixtures/types/unions/bitfields/Example.hs view

file too large to diff

+ test-artefacts/fixtures/types/unions/bitfields/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/types/unions/bitfields/th.txt view

file too large to diff

+ test-artefacts/fixtures/types/unions/nested_unions/Example.hs view

file too large to diff

+ test-artefacts/fixtures/types/unions/nested_unions/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/types/unions/nested_unions/th.txt view

file too large to diff

+ test-artefacts/fixtures/types/unions/unions/Example.hs view

file too large to diff

+ test-artefacts/fixtures/types/unions/unions/bindingspec.yaml view

file too large to diff

+ test-artefacts/fixtures/types/unions/unions/th.txt view

file too large to diff

+ test-artefacts/headers/comments.h view

file too large to diff

+ test-artefacts/headers/duplicate_record_field.h view

file too large to diff

+ test-artefacts/headers/golden/arrays/array.h view

file too large to diff

+ test-artefacts/headers/golden/arrays/const_qualifier.h view

file too large to diff

+ test-artefacts/headers/golden/arrays/failing/array_res_1.h view

file too large to diff

+ test-artefacts/headers/golden/arrays/failing/array_res_2.h view

file too large to diff

+ test-artefacts/headers/golden/arrays/failing/array_res_3.h view

file too large to diff

+ test-artefacts/headers/golden/arrays/failing/array_res_4.h view

file too large to diff

+ test-artefacts/headers/golden/arrays/failing/array_res_5.h view

file too large to diff

+ test-artefacts/headers/golden/arrays/failing/array_res_6.h view

file too large to diff

+ test-artefacts/headers/golden/arrays/failing/array_res_7.h view

file too large to diff

+ test-artefacts/headers/golden/arrays/failing/array_res_8.h view

file too large to diff

+ test-artefacts/headers/golden/arrays/failing/selection_bad.h view

file too large to diff

+ test-artefacts/headers/golden/arrays/failing/selection_bad_size_t.h view

file too large to diff

+ test-artefacts/headers/golden/arrays/multi_dim.h view

file too large to diff

+ test-artefacts/headers/golden/attributes/asm.h view

file too large to diff

+ test-artefacts/headers/golden/attributes/attributes.h view

file too large to diff

+ test-artefacts/headers/golden/attributes/deprecated.h view

file too large to diff

+ test-artefacts/headers/golden/attributes/type_attributes.h view

file too large to diff

+ test-artefacts/headers/golden/attributes/visibility/edge-cases/nested_types.h view

file too large to diff

+ test-artefacts/headers/golden/attributes/visibility/functions.h view

file too large to diff

+ test-artefacts/headers/golden/attributes/visibility/types.h view

file too large to diff

+ test-artefacts/headers/golden/attributes/visibility/variables.h view

file too large to diff

+ test-artefacts/headers/golden/binding-specs/bs_pre_target_mismatch.h view

file too large to diff

+ test-artefacts/headers/golden/binding-specs/bs_pre_target_mismatch_p.yaml view

file too large to diff

+ test-artefacts/headers/golden/binding-specs/enum/closed.h view

file too large to diff

+ test-artefacts/headers/golden/binding-specs/enum/closed_p.yaml view

file too large to diff

+ test-artefacts/headers/golden/binding-specs/enum/mismatch.h view

file too large to diff

+ test-artefacts/headers/golden/binding-specs/enum/mismatch_p.yaml view

file too large to diff

+ test-artefacts/headers/golden/binding-specs/enum/open.h view

file too large to diff

+ test-artefacts/headers/golden/binding-specs/enum/open_p.yaml view

file too large to diff

+ test-artefacts/headers/golden/binding-specs/fun_arg/macro/array.h view

file too large to diff

+ test-artefacts/headers/golden/binding-specs/fun_arg/macro/array.yaml view

file too large to diff

+ test-artefacts/headers/golden/binding-specs/fun_arg/macro/array_known_size.h view

file too large to diff

+ test-artefacts/headers/golden/binding-specs/fun_arg/macro/array_known_size.yaml view

file too large to diff

+ test-artefacts/headers/golden/binding-specs/fun_arg/macro/enum.h view

file too large to diff

+ test-artefacts/headers/golden/binding-specs/fun_arg/macro/enum.yaml view

file too large to diff

+ test-artefacts/headers/golden/binding-specs/fun_arg/macro/function.h view

file too large to diff

+ test-artefacts/headers/golden/binding-specs/fun_arg/macro/function.yaml view

file too large to diff

+ test-artefacts/headers/golden/binding-specs/fun_arg/macro/function_pointer.h view

file too large to diff

+ test-artefacts/headers/golden/binding-specs/fun_arg/macro/function_pointer.yaml view

file too large to diff

+ test-artefacts/headers/golden/binding-specs/fun_arg/macro/struct.h view

file too large to diff

+ test-artefacts/headers/golden/binding-specs/fun_arg/macro/struct.yaml view

file too large to diff

+ test-artefacts/headers/golden/binding-specs/fun_arg/macro/union.h view

file too large to diff

+ test-artefacts/headers/golden/binding-specs/fun_arg/macro/union.yaml view

file too large to diff

+ test-artefacts/headers/golden/binding-specs/fun_arg/typedef/array.h view

file too large to diff

+ test-artefacts/headers/golden/binding-specs/fun_arg/typedef/array.yaml view

file too large to diff

+ test-artefacts/headers/golden/binding-specs/fun_arg/typedef/array_known_size.h view

file too large to diff

+ test-artefacts/headers/golden/binding-specs/fun_arg/typedef/array_known_size.yaml view

file too large to diff

+ test-artefacts/headers/golden/binding-specs/fun_arg/typedef/enum.h view

file too large to diff

+ test-artefacts/headers/golden/binding-specs/fun_arg/typedef/enum.yaml view

file too large to diff

+ test-artefacts/headers/golden/binding-specs/fun_arg/typedef/function.h view

file too large to diff

+ test-artefacts/headers/golden/binding-specs/fun_arg/typedef/function.yaml view

file too large to diff

+ test-artefacts/headers/golden/binding-specs/fun_arg/typedef/function_pointer.h view

file too large to diff

+ test-artefacts/headers/golden/binding-specs/fun_arg/typedef/function_pointer.yaml view

file too large to diff

+ test-artefacts/headers/golden/binding-specs/fun_arg/typedef/struct.h view

file too large to diff

+ test-artefacts/headers/golden/binding-specs/fun_arg/typedef/struct.yaml view

file too large to diff

+ test-artefacts/headers/golden/binding-specs/fun_arg/typedef/union.h view

file too large to diff

+ test-artefacts/headers/golden/binding-specs/fun_arg/typedef/union.yaml view

file too large to diff

+ test-artefacts/headers/golden/binding-specs/name/squash_both.h view

file too large to diff

+ test-artefacts/headers/golden/binding-specs/name/squash_both_p.yaml view

file too large to diff

+ test-artefacts/headers/golden/binding-specs/name/squash_struct.h view

file too large to diff

+ test-artefacts/headers/golden/binding-specs/name/squash_struct_p.yaml view

file too large to diff

+ test-artefacts/headers/golden/binding-specs/name/squash_typedef.h view

file too large to diff

+ test-artefacts/headers/golden/binding-specs/name/squash_typedef_p.yaml view

file too large to diff

+ test-artefacts/headers/golden/binding-specs/name/type.h view

file too large to diff

+ test-artefacts/headers/golden/binding-specs/name/type_p.yaml view

file too large to diff

+ test-artefacts/headers/golden/binding-specs/omit_type.h view

file too large to diff

+ test-artefacts/headers/golden/binding-specs/omit_type_p.yaml view

file too large to diff

+ test-artefacts/headers/golden/binding-specs/relative_include/core.h view

file too large to diff

+ test-artefacts/headers/golden/binding-specs/relative_include/sub/consumer.h view

file too large to diff

+ test-artefacts/headers/golden/binding-specs/relative_include/sub/consumer.yaml view

file too large to diff

+ test-artefacts/headers/golden/binding-specs/rep/emptydata/pt.h view

file too large to diff

+ test-artefacts/headers/golden/binding-specs/rep/emptydata/staticsize.h view

file too large to diff

+ test-artefacts/headers/golden/binding-specs/rep/emptydata/staticsize_deps.h view

file too large to diff

+ test-artefacts/headers/golden/binding-specs/rep/emptydata/staticsize_p.yaml view

file too large to diff

+ test-artefacts/headers/golden/binding-specs/stdlib/bool.h view

file too large to diff

+ test-artefacts/headers/golden/binding-specs/stdlib/instances.h view

file too large to diff

+ test-artefacts/headers/golden/binding-specs/stdlib/return_values.h view

file too large to diff

+ test-artefacts/headers/golden/binding-specs/trans_dep/macro_trans_dep_missing.h view

file too large to diff

+ test-artefacts/headers/golden/binding-specs/trans_dep/macro_trans_dep_missing.yaml view

file too large to diff

+ test-artefacts/headers/golden/binding-specs/trans_dep/typedef_trans_dep_missing.h view

file too large to diff

+ test-artefacts/headers/golden/binding-specs/trans_dep/typedef_trans_dep_missing.yaml view

file too large to diff

+ test-artefacts/headers/golden/comprehensive/c2hsc.h view

file too large to diff

+ test-artefacts/headers/golden/comprehensive/smoke.h view

file too large to diff

+ test-artefacts/headers/golden/declarations/declaration_unselected_a.h view

file too large to diff

+ test-artefacts/headers/golden/declarations/declaration_unselected_b.h view

file too large to diff

+ test-artefacts/headers/golden/declarations/declarations_required_for_scoping.h view

file too large to diff

+ test-artefacts/headers/golden/declarations/definitions.h view

file too large to diff

+ test-artefacts/headers/golden/declarations/duplicate_field_name_omit.h view

file too large to diff

+ test-artefacts/headers/golden/declarations/failing/tentative_definitions_linkage.h view

file too large to diff

+ test-artefacts/headers/golden/declarations/field_name_reuse_omit.h view

file too large to diff

+ test-artefacts/headers/golden/declarations/forward_declaration.h view

file too large to diff

+ test-artefacts/headers/golden/declarations/name_collision.h view

file too large to diff

+ test-artefacts/headers/golden/declarations/name_collision_aux.h view

file too large to diff

+ test-artefacts/headers/golden/declarations/opaque_declaration.h view

file too large to diff

+ test-artefacts/headers/golden/declarations/redeclaration.h view

file too large to diff

+ test-artefacts/headers/golden/declarations/redeclaration_main_header.h view

file too large to diff

+ test-artefacts/headers/golden/declarations/redeclaration_main_header_inner.h view

file too large to diff

+ test-artefacts/headers/golden/declarations/select_scoping.h view

file too large to diff

+ test-artefacts/headers/golden/declarations/select_scoping_header.h view

file too large to diff

+ test-artefacts/headers/golden/declarations/tentative_definitions.h view

file too large to diff

+ test-artefacts/headers/golden/documentation/data_kind_pragma.h view

file too large to diff

+ test-artefacts/headers/golden/documentation/doxygen_docs.h view

file too large to diff

+ test-artefacts/headers/golden/documentation/javadoc_banner.h view

file too large to diff

+ test-artefacts/headers/golden/edge-cases/adios.h view

file too large to diff

+ test-artefacts/headers/golden/edge-cases/aux_funptr_newtypes.h view

file too large to diff

+ test-artefacts/headers/golden/edge-cases/clang_generated_collision.h view

file too large to diff

+ test-artefacts/headers/golden/edge-cases/distilled_lib_1.h view

file too large to diff

+ test-artefacts/headers/golden/edge-cases/duplicate.h view

file too large to diff

+ test-artefacts/headers/golden/edge-cases/duplicate_macro.h view

file too large to diff

+ test-artefacts/headers/golden/edge-cases/duplicate_record_field.h view

file too large to diff

+ test-artefacts/headers/golden/edge-cases/enum_as_array_size.h view

file too large to diff

+ test-artefacts/headers/golden/edge-cases/flam.h view

file too large to diff

+ test-artefacts/headers/golden/edge-cases/flam_functions.h view

file too large to diff

+ test-artefacts/headers/golden/edge-cases/headers.h view

file too large to diff

+ test-artefacts/headers/golden/edge-cases/include_macro_child.h view

file too large to diff

+ test-artefacts/headers/golden/edge-cases/include_macro_parent.h view

file too large to diff

+ test-artefacts/headers/golden/edge-cases/iterator.h view

file too large to diff

+ test-artefacts/headers/golden/edge-cases/mangle_fun_param_names.h view

file too large to diff

+ test-artefacts/headers/golden/edge-cases/names.h view

file too large to diff

+ test-artefacts/headers/golden/edge-cases/ordinary_unnamed_decl_child.h view

file too large to diff

+ test-artefacts/headers/golden/edge-cases/ordinary_unnamed_decl_parent.h view

file too large to diff

+ test-artefacts/headers/golden/edge-cases/prelude_names.h view

file too large to diff

+ test-artefacts/headers/golden/edge-cases/select_no_match.h view

file too large to diff

+ test-artefacts/headers/golden/edge-cases/spec_examples.h view

file too large to diff

+ test-artefacts/headers/golden/edge-cases/thread_local.h view

file too large to diff

+ test-artefacts/headers/golden/edge-cases/typedef_bitfield.h view

file too large to diff

+ test-artefacts/headers/golden/edge-cases/typedef_void.h view

file too large to diff

+ test-artefacts/headers/golden/edge-cases/unnamed_type_multiple_fields.h view

file too large to diff

+ test-artefacts/headers/golden/edge-cases/unnamed_type_multiple_typedefs.h view

file too large to diff

+ test-artefacts/headers/golden/edge-cases/unsupported_builtin.h view

file too large to diff

+ test-artefacts/headers/golden/edge-cases/uses_utf8.h view

file too large to diff

+ test-artefacts/headers/golden/functions/callbacks.h view

file too large to diff

+ test-artefacts/headers/golden/functions/circular_dependency_fun.h view

file too large to diff

+ test-artefacts/headers/golden/functions/decls_in_signature.h view

file too large to diff

+ test-artefacts/headers/golden/functions/fun_attributes.h view

file too large to diff

+ test-artefacts/headers/golden/functions/fun_attributes_conflict.h view

file too large to diff

+ test-artefacts/headers/golden/functions/hash_defines.h view

file too large to diff

+ test-artefacts/headers/golden/functions/heap_types/struct.h view

file too large to diff

+ test-artefacts/headers/golden/functions/heap_types/struct_const.h view

file too large to diff

+ test-artefacts/headers/golden/functions/heap_types/struct_const_member.h view

file too large to diff

+ test-artefacts/headers/golden/functions/heap_types/struct_const_typedef.h view

file too large to diff

+ test-artefacts/headers/golden/functions/heap_types/union.h view

file too large to diff

+ test-artefacts/headers/golden/functions/heap_types/union_const.h view

file too large to diff

+ test-artefacts/headers/golden/functions/heap_types/union_const_member.h view

file too large to diff

+ test-artefacts/headers/golden/functions/heap_types/union_const_typedef.h view

file too large to diff

+ test-artefacts/headers/golden/functions/libc_builtins.h view

file too large to diff

+ test-artefacts/headers/golden/functions/not_visible_decl.h view

file too large to diff

+ test-artefacts/headers/golden/functions/simple_func.h view

file too large to diff

+ test-artefacts/headers/golden/functions/typedef_funptr.h view

file too large to diff

+ test-artefacts/headers/golden/functions/varargs.h view

file too large to diff

+ test-artefacts/headers/golden/globals/globals.h view

file too large to diff

+ test-artefacts/headers/golden/globals/untagged.h view

file too large to diff

+ test-artefacts/headers/golden/macros/command_line/redefined.h view

file too large to diff

+ test-artefacts/headers/golden/macros/command_line/uses.h view

file too large to diff

+ test-artefacts/headers/golden/macros/empty_body.h view

file too large to diff

+ test-artefacts/headers/golden/macros/gnu_variadic.h view

file too large to diff

+ test-artefacts/headers/golden/macros/issue_890.h view

file too large to diff

+ test-artefacts/headers/golden/macros/keyword_params.h view

file too large to diff

+ test-artefacts/headers/golden/macros/macro_comma.h view

file too large to diff

+ test-artefacts/headers/golden/macros/macro_ext_binding_dep.h view

file too large to diff

+ test-artefacts/headers/golden/macros/macro_ext_binding_dep.yaml view

file too large to diff

+ test-artefacts/headers/golden/macros/macro_functions.h view

file too large to diff

+ test-artefacts/headers/golden/macros/macro_in_fundecl.h view

file too large to diff

+ test-artefacts/headers/golden/macros/macro_in_fundecl_vs_typedef.h view

file too large to diff

+ test-artefacts/headers/golden/macros/macro_redefines_global.h view

file too large to diff

+ test-artefacts/headers/golden/macros/macro_resolution_log_level.h view

file too large to diff

+ test-artefacts/headers/golden/macros/macro_strings.h view

file too large to diff

+ test-artefacts/headers/golden/macros/macro_type_ptr_qualifiers.h view

file too large to diff

+ test-artefacts/headers/golden/macros/macro_type_unresolved_tagged.h view

file too large to diff

+ test-artefacts/headers/golden/macros/macro_type_void.h view

file too large to diff

+ test-artefacts/headers/golden/macros/macro_typedef_struct.h view

file too large to diff

+ test-artefacts/headers/golden/macros/macro_types.h view

file too large to diff

+ test-artefacts/headers/golden/macros/macros.h view

file too large to diff

+ test-artefacts/headers/golden/macros/object_like_as_function_like.h view

file too large to diff

+ test-artefacts/headers/golden/macros/parse/elaborate.h view

file too large to diff

+ test-artefacts/headers/golden/macros/parse/elaborate_inner.h view

file too large to diff

+ test-artefacts/headers/golden/macros/parse/first_parse_then_typecheck.h view

file too large to diff

+ test-artefacts/headers/golden/macros/parse/intermittent_include.h view

file too large to diff

+ test-artefacts/headers/golden/macros/parse/intermittent_include_conditional.h view

file too large to diff

+ test-artefacts/headers/golden/macros/parse/intermittent_include_conditional_inner.h view

file too large to diff

+ test-artefacts/headers/golden/macros/parse/intermittent_include_inner.h view

file too large to diff

+ test-artefacts/headers/golden/macros/parse/macro_typedef_scope.h view

file too large to diff

+ test-artefacts/headers/golden/macros/parse/macro_typedef_scope_multiple.h view

file too large to diff

+ test-artefacts/headers/golden/macros/parse/macro_typedef_scope_multiple_inner1.h view

file too large to diff

+ test-artefacts/headers/golden/macros/parse/macro_typedef_scope_multiple_inner2.h view

file too large to diff

+ test-artefacts/headers/golden/macros/parse/simple.h view

file too large to diff

+ test-artefacts/headers/golden/macros/parse/simple_inner.h view

file too large to diff

+ test-artefacts/headers/golden/macros/redeclaration/def_undef_def.h view

file too large to diff

+ test-artefacts/headers/golden/macros/redeclaration/different.h view

file too large to diff

+ test-artefacts/headers/golden/macros/redeclaration/different_value.h view

file too large to diff

+ test-artefacts/headers/golden/macros/redeclaration/identical_semantics.h view

file too large to diff

+ test-artefacts/headers/golden/macros/redeclaration/identical_syntax.h view

file too large to diff

+ test-artefacts/headers/golden/macros/redeclaration/identical_value.h view

file too large to diff

+ test-artefacts/headers/golden/macros/redeclaration/main_header.h view

file too large to diff

+ test-artefacts/headers/golden/macros/redeclaration/main_header_inner.h view

file too large to diff

+ test-artefacts/headers/golden/macros/redeclaration/noguard.h view

file too large to diff

+ test-artefacts/headers/golden/macros/redeclaration/noguard_inner.h view

file too large to diff

+ test-artefacts/headers/golden/macros/redeclaration/same_line_tag_field.h view

file too large to diff

+ test-artefacts/headers/golden/macros/redeclaration/variadic.h view

file too large to diff

+ test-artefacts/headers/golden/macros/reparse.h view

file too large to diff

+ test-artefacts/headers/golden/macros/reparse/arithmetic_types.h view

file too large to diff

+ test-artefacts/headers/golden/macros/reparse/cref_attributes.h view

file too large to diff

+ test-artefacts/headers/golden/macros/reparse/defer_wrong.h view

file too large to diff

+ test-artefacts/headers/golden/macros/reparse/end_in_macro_arg.h view

file too large to diff

+ test-artefacts/headers/golden/macros/reparse/functions.h view

file too large to diff

+ test-artefacts/headers/golden/macros/reparse/gnu_attributes.h view

file too large to diff

+ test-artefacts/headers/golden/macros/reparse/nesting.h view

file too large to diff

+ test-artefacts/headers/golden/macros/reparse/nesting/struct_in_struct.h view

file too large to diff

+ test-artefacts/headers/golden/macros/reparse/nesting/struct_in_typedef.h view

file too large to diff

+ test-artefacts/headers/golden/macros/reparse/nesting/struct_in_union.h view

file too large to diff

+ test-artefacts/headers/golden/macros/reparse/nesting/struct_in_variable.h view

file too large to diff

+ test-artefacts/headers/golden/macros/reparse/nesting/union_in_struct.h view

file too large to diff

+ test-artefacts/headers/golden/macros/reparse/nesting/union_in_typedef.h view

file too large to diff

+ test-artefacts/headers/golden/macros/reparse/nesting/union_in_union.h view

file too large to diff

+ test-artefacts/headers/golden/macros/reparse/nesting/union_in_variable.h view

file too large to diff

+ test-artefacts/headers/golden/macros/undef.h view

file too large to diff

+ test-artefacts/headers/golden/macros/wrong_source_location.h view

file too large to diff

+ test-artefacts/headers/golden/manual/zero_copy.h view

file too large to diff

+ test-artefacts/headers/golden/program-analysis/circular_includes.h view

file too large to diff

+ test-artefacts/headers/golden/program-analysis/circular_includes_inner.h view

file too large to diff

+ test-artefacts/headers/golden/program-analysis/circular_macro.h view

file too large to diff

+ test-artefacts/headers/golden/program-analysis/delay_traces.h view

file too large to diff

+ test-artefacts/headers/golden/program-analysis/program-slicing/macro_selected.h view

file too large to diff

+ test-artefacts/headers/golden/program-analysis/program-slicing/macro_selected_t.h view

file too large to diff

+ test-artefacts/headers/golden/program-analysis/program-slicing/macro_unselected.h view

file too large to diff

+ test-artefacts/headers/golden/program-analysis/program-slicing/macro_unselected_t.h view

file too large to diff

+ test-artefacts/headers/golden/program-analysis/program-slicing/typedef_selected.h view

file too large to diff

+ test-artefacts/headers/golden/program-analysis/program-slicing/typedef_selected_t.h view

file too large to diff

+ test-artefacts/headers/golden/program-analysis/program-slicing/typedef_unselected.h view

file too large to diff

+ test-artefacts/headers/golden/program-analysis/program-slicing/typedef_unselected_t.h view

file too large to diff

+ test-artefacts/headers/golden/program-analysis/program_slicing_selection.h view

file too large to diff

+ test-artefacts/headers/golden/program-analysis/program_slicing_simple.h view

file too large to diff

+ test-artefacts/headers/golden/program-analysis/program_slicing_simple.yaml view

file too large to diff

+ test-artefacts/headers/golden/program-analysis/selection_bad.h view

file too large to diff

+ test-artefacts/headers/golden/program-analysis/selection_bad_size_t.h view

file too large to diff

+ test-artefacts/headers/golden/program-analysis/selection_fail.h view

file too large to diff

+ test-artefacts/headers/golden/program-analysis/selection_foo.h view

file too large to diff

+ test-artefacts/headers/golden/program-analysis/selection_foo_t.h view

file too large to diff

+ test-artefacts/headers/golden/program-analysis/selection_matches_c_names.h view

file too large to diff

+ test-artefacts/headers/golden/program-analysis/selection_matches_c_names.yaml view

file too large to diff

+ test-artefacts/headers/golden/program-analysis/selection_merge_traces.h view

file too large to diff

+ test-artefacts/headers/golden/program-analysis/selection_omit_external.yaml view

file too large to diff

+ test-artefacts/headers/golden/program-analysis/selection_omit_external_a.h view

file too large to diff

+ test-artefacts/headers/golden/program-analysis/selection_omit_external_b.h view

file too large to diff

+ test-artefacts/headers/golden/program-analysis/selection_omit_external_root.h view

file too large to diff

+ test-artefacts/headers/golden/program-analysis/selection_omit_prescriptive.h view

file too large to diff

+ test-artefacts/headers/golden/program-analysis/selection_omit_prescriptive.yaml view

file too large to diff

+ test-artefacts/headers/golden/program-analysis/selection_squash_struct.h view

file too large to diff

+ test-artefacts/headers/golden/program-analysis/selection_squash_typedef.h view

file too large to diff

+ test-artefacts/headers/golden/program-analysis/typedef_analysis.h view

file too large to diff

+ test-artefacts/headers/golden/program-analysis/typedef_block.h view

file too large to diff

+ test-artefacts/headers/golden/program-analysis/typedef_name_clash.h view

file too large to diff

+ test-artefacts/headers/golden/program-analysis/typedef_suffix_clash.h view

file too large to diff

+ test-artefacts/headers/golden/types/anonymous/edge-cases/anon_in_nonanon.h view

file too large to diff

+ test-artefacts/headers/golden/types/anonymous/edge-cases/bitfield.h view

file too large to diff

+ test-artefacts/headers/golden/types/anonymous/edge-cases/drop_indirect_fields.h view

file too large to diff

+ test-artefacts/headers/golden/types/anonymous/edge-cases/drop_indirect_fields_1.ext.yaml view

file too large to diff

+ test-artefacts/headers/golden/types/anonymous/edge-cases/drop_indirect_fields_2.ext.yaml view

file too large to diff

+ test-artefacts/headers/golden/types/anonymous/edge-cases/duplicate_field_names.h view

file too large to diff

+ test-artefacts/headers/golden/types/anonymous/edge-cases/empty_anon.h view

file too large to diff

+ test-artefacts/headers/golden/types/anonymous/edge-cases/multi_nesting.h view

file too large to diff

+ test-artefacts/headers/golden/types/anonymous/edge-cases/padding.h view

file too large to diff

+ test-artefacts/headers/golden/types/anonymous/edge-cases/reparse.h view

file too large to diff

+ test-artefacts/headers/golden/types/anonymous/indirect-fields/_internal_macros.h view

file too large to diff

+ test-artefacts/headers/golden/types/anonymous/indirect-fields/multi_nesting_enum_tagged.h view

file too large to diff

+ test-artefacts/headers/golden/types/anonymous/indirect-fields/multi_nesting_enum_untagged.h view

file too large to diff

+ test-artefacts/headers/golden/types/anonymous/indirect-fields/multi_nesting_struct_tagged.h view

file too large to diff

+ test-artefacts/headers/golden/types/anonymous/indirect-fields/multi_nesting_struct_untagged.h view

file too large to diff

+ test-artefacts/headers/golden/types/anonymous/indirect-fields/multi_nesting_union_tagged.h view

file too large to diff

+ test-artefacts/headers/golden/types/anonymous/indirect-fields/multi_nesting_union_untagged.h view

file too large to diff

+ test-artefacts/headers/golden/types/anonymous/indirect-fields/single_nesting_enum_tagged.h view

file too large to diff

+ test-artefacts/headers/golden/types/anonymous/indirect-fields/single_nesting_enum_untagged.h view

file too large to diff

+ test-artefacts/headers/golden/types/anonymous/indirect-fields/single_nesting_struct_tagged.h view

file too large to diff

+ test-artefacts/headers/golden/types/anonymous/indirect-fields/single_nesting_struct_untagged.h view

file too large to diff

+ test-artefacts/headers/golden/types/anonymous/indirect-fields/single_nesting_union_tagged.h view

file too large to diff

+ test-artefacts/headers/golden/types/anonymous/indirect-fields/single_nesting_union_untagged.h view

file too large to diff

+ test-artefacts/headers/golden/types/anonymous/struct.h view

file too large to diff

+ test-artefacts/headers/golden/types/anonymous/struct_in_struct.h view

file too large to diff

+ test-artefacts/headers/golden/types/anonymous/struct_in_union.h view

file too large to diff

+ test-artefacts/headers/golden/types/anonymous/union.h view

file too large to diff

+ test-artefacts/headers/golden/types/anonymous/union_in_struct.h view

file too large to diff

+ test-artefacts/headers/golden/types/anonymous/union_in_union.h view

file too large to diff

+ test-artefacts/headers/golden/types/complex/complex_non_float_test.h view

file too large to diff

+ test-artefacts/headers/golden/types/complex/hsb_complex_test.h view

file too large to diff

+ test-artefacts/headers/golden/types/complex/vector_test.h view

file too large to diff

+ test-artefacts/headers/golden/types/enums/enum_cpp_syntax.h view

file too large to diff

+ test-artefacts/headers/golden/types/enums/enum_unsigned_values.h view

file too large to diff

+ test-artefacts/headers/golden/types/enums/enums.h view

file too large to diff

+ test-artefacts/headers/golden/types/enums/nested_enums.h view

file too large to diff

+ test-artefacts/headers/golden/types/enums/untagged_enum_toplevel.h view

file too large to diff

+ test-artefacts/headers/golden/types/nested/nested_types.h view

file too large to diff

+ test-artefacts/headers/golden/types/primitives/bool.h view

file too large to diff

+ test-artefacts/headers/golden/types/primitives/bool_c23.h view

file too large to diff

+ test-artefacts/headers/golden/types/primitives/bool_macro_override.h view

file too large to diff

+ test-artefacts/headers/golden/types/primitives/bool_typedef_override.h view

file too large to diff

+ test-artefacts/headers/golden/types/primitives/fixedwidth.h view

file too large to diff

+ test-artefacts/headers/golden/types/primitives/least_fast.h view

file too large to diff

+ test-artefacts/headers/golden/types/primitives/primitive_insts.h view

file too large to diff

+ test-artefacts/headers/golden/types/primitives/primitive_types.h view

file too large to diff

+ test-artefacts/headers/golden/types/qualifiers/const_typedefs.h view

file too large to diff

+ test-artefacts/headers/golden/types/qualifiers/type_qualifiers.h view

file too large to diff

+ test-artefacts/headers/golden/types/scoping/deep_nesting.h view

file too large to diff

+ test-artefacts/headers/golden/types/scoping/nesting.h view

file too large to diff

+ test-artefacts/headers/golden/types/scoping/wide_nesting.h view

file too large to diff

+ test-artefacts/headers/golden/types/special/long_double.h view

file too large to diff

+ test-artefacts/headers/golden/types/special/parse_failure_long_double.h view

file too large to diff

+ test-artefacts/headers/golden/types/special/small_floats.h view

file too large to diff

+ test-artefacts/headers/golden/types/structs/bitfields.h view

file too large to diff

+ test-artefacts/headers/golden/types/structs/circular_dependency_struct.h view

file too large to diff

+ test-artefacts/headers/golden/types/structs/padding.h view

file too large to diff

+ test-artefacts/headers/golden/types/structs/recursive_struct.h view

file too large to diff

+ test-artefacts/headers/golden/types/structs/simple_structs.h view

file too large to diff

+ test-artefacts/headers/golden/types/structs/struct_arg.h view

file too large to diff

+ test-artefacts/headers/golden/types/structs/tagged_vs_untagged.h view

file too large to diff

+ test-artefacts/headers/golden/types/structs/untagged.h view

file too large to diff

+ test-artefacts/headers/golden/types/structs/untagged_struct.h view

file too large to diff

+ test-artefacts/headers/golden/types/typedefs/auxiliary/function-pointer/array.h view

file too large to diff

+ test-artefacts/headers/golden/types/typedefs/auxiliary/function-pointer/block.h view

file too large to diff

+ test-artefacts/headers/golden/types/typedefs/auxiliary/function-pointer/direct.h view

file too large to diff

+ test-artefacts/headers/golden/types/typedefs/auxiliary/function-pointer/multi_level.h view

file too large to diff

+ test-artefacts/headers/golden/types/typedefs/auxiliary/function-pointer/pointer.h view

file too large to diff

+ test-artefacts/headers/golden/types/typedefs/auxiliary/function-pointer/qual.h view

file too large to diff

+ test-artefacts/headers/golden/types/typedefs/typedef_vs_macro.h view

file too large to diff

+ test-artefacts/headers/golden/types/typedefs/typedefs.h view

file too large to diff

+ test-artefacts/headers/golden/types/typedefs/typenames.h view

file too large to diff

+ test-artefacts/headers/golden/types/unions/bitfields.h view

file too large to diff

+ test-artefacts/headers/golden/types/unions/nested_unions.h view

file too large to diff

+ test-artefacts/headers/golden/types/unions/unions.h view

file too large to diff

+ test-artefacts/headers/invalid_standard_types.h view

file too large to diff

+ test-artefacts/headers/minimal.h view

file too large to diff

+ test-artefacts/headers/standard_types.h view

file too large to diff

+ test-artefacts/headers/static_counter.h view

file too large to diff

+ test-artefacts/headers/test_01.h view

file too large to diff

+ test-artefacts/headers/test_02.h view

file too large to diff

+ test/common/Test/Common/HsBindgen/Trace.hs view

file too large to diff

+ test/common/Test/Common/HsBindgen/Trace/Patterns.hs view

file too large to diff

+ test/common/Test/Common/HsBindgen/Trace/Predicate.hs view

file too large to diff

+ test/common/Test/Common/Util/AnsiDiff.hs view

file too large to diff

+ test/common/Test/Common/Util/Cabal.hs view

file too large to diff

+ test/common/Test/Common/Util/Tasty.hs view

file too large to diff

+ test/common/Test/Common/Util/Tasty/Golden.hs view

file too large to diff

+ test/hs-bindgen/Test/HsBindgen/Clang.hs view

file too large to diff

+ test/hs-bindgen/Test/HsBindgen/Fixtures/Haddock.hs view

file too large to diff

+ test/hs-bindgen/Test/HsBindgen/Fixtures/TestCases.hs view

file too large to diff

+ test/hs-bindgen/Test/HsBindgen/Fixtures/Utils.hs view

file too large to diff

+ test/hs-bindgen/Test/HsBindgen/Frontend/LanguageC.hs view

file too large to diff

+ test/hs-bindgen/Test/HsBindgen/Frontend/Pass/PrepareReparse.hs view

file too large to diff

+ test/hs-bindgen/Test/HsBindgen/Golden.hs view

file too large to diff

+ test/hs-bindgen/Test/HsBindgen/Golden/Arrays.hs view

file too large to diff

+ test/hs-bindgen/Test/HsBindgen/Golden/Attributes.hs view

file too large to diff

+ test/hs-bindgen/Test/HsBindgen/Golden/BindingSpecs.hs view

file too large to diff

+ test/hs-bindgen/Test/HsBindgen/Golden/Comprehensive.hs view

file too large to diff

+ test/hs-bindgen/Test/HsBindgen/Golden/Declarations.hs view

file too large to diff

+ test/hs-bindgen/Test/HsBindgen/Golden/Documentation.hs view

file too large to diff

+ test/hs-bindgen/Test/HsBindgen/Golden/EdgeCases.hs view

file too large to diff

+ test/hs-bindgen/Test/HsBindgen/Golden/Functions.hs view

file too large to diff

+ test/hs-bindgen/Test/HsBindgen/Golden/Globals.hs view

file too large to diff

+ test/hs-bindgen/Test/HsBindgen/Golden/Infra/Check/BindingSpec.hs view

file too large to diff

+ test/hs-bindgen/Test/HsBindgen/Golden/Infra/Check/FailureBindgen.hs view

file too large to diff

+ test/hs-bindgen/Test/HsBindgen/Golden/Infra/Check/FailureLibclang.hs view

file too large to diff

+ test/hs-bindgen/Test/HsBindgen/Golden/Infra/Check/PP.hs view

file too large to diff

+ test/hs-bindgen/Test/HsBindgen/Golden/Infra/Check/TH.hs view

file too large to diff

+ test/hs-bindgen/Test/HsBindgen/Golden/Infra/TestCase.hs view

file too large to diff

+ test/hs-bindgen/Test/HsBindgen/Golden/Infra/TestCaseTree.hs view

file too large to diff

+ test/hs-bindgen/Test/HsBindgen/Golden/Macros.hs view

file too large to diff

+ test/hs-bindgen/Test/HsBindgen/Golden/Macros/Lang.hs view

file too large to diff

+ test/hs-bindgen/Test/HsBindgen/Golden/Macros/Redeclaration.hs view

file too large to diff

+ test/hs-bindgen/Test/HsBindgen/Golden/Macros/Reparse.hs view

file too large to diff

+ test/hs-bindgen/Test/HsBindgen/Golden/ProgramAnalysis.hs view

file too large to diff

+ test/hs-bindgen/Test/HsBindgen/Golden/Types.hs view

file too large to diff

+ test/hs-bindgen/Test/HsBindgen/Integration/ExitCode.hs view

file too large to diff

+ test/hs-bindgen/Test/HsBindgen/Integration/OverwritePolicy.hs view

file too large to diff

+ test/hs-bindgen/Test/HsBindgen/Macro/CExpr.hs view

file too large to diff

+ test/hs-bindgen/Test/HsBindgen/Macro/Infra.hs view

file too large to diff

+ test/hs-bindgen/Test/HsBindgen/Macro/Syntax.hs view

file too large to diff

+ test/hs-bindgen/Test/HsBindgen/Macro/Syntax/Clang.hs view

file too large to diff

+ test/hs-bindgen/Test/HsBindgen/Macro/UniqueExpansion.hs view

file too large to diff

+ test/hs-bindgen/Test/HsBindgen/PPFixtures.hs view

file too large to diff

+ test/hs-bindgen/Test/HsBindgen/PPFixtures/Compile.hs view

file too large to diff

+ test/hs-bindgen/Test/HsBindgen/PPFixtures/TestCases.hs view

file too large to diff

+ test/hs-bindgen/Test/HsBindgen/Prop/Selection.hs view

file too large to diff

+ test/hs-bindgen/Test/HsBindgen/Resources.hs view

file too large to diff

+ test/hs-bindgen/Test/HsBindgen/THFixtures.hs view

file too large to diff

+ test/hs-bindgen/Test/HsBindgen/THFixtures/Compile.hs view

file too large to diff

+ test/hs-bindgen/Test/HsBindgen/THFixtures/Generate.hs view

file too large to diff

+ test/hs-bindgen/Test/HsBindgen/THFixtures/TestCases.hs view

file too large to diff

+ test/hs-bindgen/Test/HsBindgen/Unit/ClangArgs.hs view

file too large to diff

+ test/hs-bindgen/Test/HsBindgen/Unit/Digraph.hs view

file too large to diff

+ test/hs-bindgen/Test/HsBindgen/Unit/Frontend.hs view

file too large to diff

+ test/hs-bindgen/Test/HsBindgen/Unit/Pretty.hs view

file too large to diff

+ test/hs-bindgen/Test/HsBindgen/Unit/RootDirective.hs view

file too large to diff

+ test/hs-bindgen/Test/HsBindgen/Unit/Runtime.hs view

file too large to diff

+ test/hs-bindgen/Test/HsBindgen/Unit/Tracer.hs view

file too large to diff

+ test/hs-bindgen/test-hs-bindgen.hs view

file too large to diff

+ test/literate/Test/Literate/Test01.lhs view

file too large to diff

+ test/literate/Test/Literate/Test02.lhs view

file too large to diff

+ test/literate/Test/Literate/TestPointer.lhs view

file too large to diff

+ test/literate/Test/Literate/TestSafe.lhs view

file too large to diff

+ test/literate/Test/Literate/TestSafeAndUnsafe.lhs view

file too large to diff

+ test/literate/Test/Literate/TestUnsafe.lhs view

file too large to diff

+ test/literate/test-literate.hs view

file too large to diff

+ test/th/Test/TH/RecordDot.hs view

file too large to diff

+ test/th/Test/TH/StaticCounterA.hs view

file too large to diff

+ test/th/Test/TH/StaticCounterB.hs view

file too large to diff

+ test/th/Test/TH/Test01.hs view

file too large to diff

+ test/th/Test/TH/Test02.hs view

file too large to diff

+ test/th/test-th.hs view

file too large to diff