     1
     2
     3
     4
     5
     6
     7
     8
     9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55

    //! Processor core registers
    //!
    //! The following registers can only be accessed in PRIVILEGED mode:
    //!
    //! - BASEPRI
    //! - CONTROL
    //! - FAULTMASK
    //! - MSP
    //! - PRIMASK
    //!
    //! The rest of registers (see list below) can be accessed in either, PRIVILEGED
    //! or UNPRIVILEGED, mode.
    //!
    //! - APSR
    //! - LR
    //! - PC
    //! - PSP
    //!
    //! The following registers are NOT available on ARMv6-M devices
    //! (`thumbv6m-none-eabi`):
    //!
    //! - BASEPRI
    //! - FAULTMASK
    //!
    //! # References
    //!
    //! - Cortex-M* Devices Generic User Guide - Section 2.1.3 Core registers

    #[cfg(not(armv6m))]
    pub mod basepri;

    #[cfg(not(armv6m))]
    pub mod basepri_max;

    pub mod control;

    #[cfg(not(armv6m))]
    pub mod faultmask;

    pub mod msp;

    pub mod primask;

    pub mod psp;

    // Accessing these registers requires inline assembly because their contents are tied to the current
    // stack frame
    #[cfg(any(feature = "inline-asm", target_arch = "x86_64"))]
    pub mod apsr;

    #[cfg(any(feature = "inline-asm", target_arch = "x86_64"))]
    pub mod lr;

    #[cfg(any(feature = "inline-asm", target_arch = "x86_64"))]
    pub mod pc;

# Help

## Keyboard Shortcuts

`?`
  Show this help dialog
`S`
  Focus the search field
`↑`
  Move up in search results
`↓`
  Move down in search results
`↹`
  Switch tab
`⏎`
  Go to active search result
`+`
  Expand all sections
`-`
  Collapse all sections

## Search Tricks

Prefix searches with a type followed by a colon (e.g., `fn:`) to restrict the search to a given type.

Accepted types are: `fn`, `mod`, `struct`, `enum`, `trait`, `type`, `macro`, and `const`.

Search functions by type signature (e.g., `vec -> usize` or `* -> vec`)

Search multiple things at once by splitting your query with comma (e.g., `str,u8` or `String,struct:Vec,test`)