# title
Arm Toolchain for Embedded Professional User Guide

# topic.label
Arm Toolchain for Embedded Professional User Guide

# topic.topics[].topics[].topics[].label
Using Arm Toolchain for Embedded Professional securely in a shared environment

# topic.topics[].topics[].label
Use Arm Toolchain for Embedded Professional in Arm Development Studio

# topic.topics[].topics[].label
Use Arm Toolchain for Embedded Professional in Arm Keil Microcontroller Development Kit

# topic.topics[].label
Compile for a specific Arm architecture or Arm processor

# topic.topics[].topics[].label
Compiler and assembler command-line options for A-profile processors

# topic.topics[].topics[].label
Compiler and assembler command-line options for R-profile processors

# topic.topics[].topics[].label
Compiler and assembler command-line options for M-profile processors

# topic.topics[].topics[].label
-mcpu command-line options for A-profile processors

# topic.topics[].topics[].label
-mcpu command-line options for R-profile processors

# topic.topics[].topics[].label
-mcpu command-line options for M-profile processors

# topic.topics[].topics[].label
How to find errata fixes for your processor

# topic.topics[].topics[].label
How to get a backtrace through AArch64 assembler functions

# topic.topics[].topics[].label
How to get a backtrace through AArch32 assembler functions

# topic.topics[].topics[].label
How compiler optimizations can affect the debug view

# topic.topics[].topics[].label
Optimize across modules with Link-Time Optimization

# topic.topics[].topics[].topics[].label
More complex Link-Time Optimization example to remove unused code across multiple object files

# topic.topics[].topics[].label
Automatically selecting libraries with multilib

# topic.topics[].topics[].label
Picolibc overview and integration requirements

# topic.topics[].topics[].label
Overview of picolibc C library pre-compiled startup code

# topic.topics[].topics[].label
How alignment padding is calculated in picolibc

# topic.topics[].topics[].label
Example: TLS alignment padding logic in picolibc

# topic.topics[].label
Generate information about images, objects, and libraries

# topic.topics[].label
Convert ELF files to binary formats for running in flash memory

# topic.topics[].topics[].label
Example: Convert the input ELF file to binary using llvm-objcopy

# topic.topics[].topics[].label
Example: Convert the input ELF file to binary using elf2bin

# topic.topics[].topics[].topics[].label
Integrated assembler error for the CSDB instruction

# topic.topics[].topics[].topics[].label
Build an object file using the integrated assembler

# topic.topics[].topics[].topics[].label
Known issues with the integrated assembler

# topic.topics[].topics[].topics[].label
Access CPU-specific System registers using instructions that accept the numeric syntax

# topic.topics[].topics[].topics[].label
Inline assembly statements within a function

# topic.topics[].topics[].topics[].topics[].label
Constraint codes common to AArch32 state and AArch64 state

# topic.topics[].topics[].topics[].topics[].label
Using multiple alternative operand constraints

# topic.topics[].topics[].topics[].topics[].label
Template modifiers common to AArch32 state and AArch64 state

# topic.topics[].topics[].topics[].label
Forcing inline assembly operands into specific registers

# topic.topics[].topics[].topics[].label
Symbol references and branches into and out of inline assembly

# topic.topics[].topics[].topics[].label
Duplication of labels in inline assembly statements

# topic.topics[].topics[].topics[].label
Example single-precision floating-point values for IEEE 754 arithmetic

# topic.topics[].topics[].topics[].label
Example double-precision floating-point values for IEEE 754 arithmetic

# topic.topics[].label
Build applications with security requirements

# topic.topics[].topics[].label
Overview of building Secure and Non-secure images with the Armv8-M Security Extension

# topic.topics[].topics[].label
Build a Secure image using the Armv8-M Security Extension

# topic.topics[].topics[].label
Build a Non-secure image that can call a Secure image

# topic.topics[].topics[].label
Build a Secure image using a previously generated import library

# topic.topics[].topics[].label
Placement of the CMSE veneer section for a Secure image

# topic.topics[].topics[].label
Example showing a secure image that maps veneers into a single NSC region

# topic.topics[].topics[].label
Example showing a secure image that maps veneers into multiple NSC regions

# topic.topics[].topics[].label
Armv8.1-M PACBTI extension mitigations against ROP and JOP style attacks

# topic.topics[].topics[].label
Comparison of hint space instructions and non-hint space instructions for branch protection

# topic.topics[].topics[].label
Overview of the Realm Management Extension

# topic.topics[].topics[].label
How optimization can interfere with security

# topic.topics[].topics[].topics[].label
-g, -g<level>, -gdwarf-<version>

# topic.topics[].topics[].topics[].label
Examples for the clang -ffp-contract command-line option

# topic.topics[].topics[].topics[].label
Example: Use of an invalid feature with the Armv8-A architecture

# topic.topics[].topics[].topics[].label
Examples for the clang -mbranch-protection command-line option

# topic.topics[].topics[].topics[].label
Examples for the clang -mglobal-merge command-line option for AArch64

# topic.topics[].topics[].topics[].label
Examples for the clang -mglobal-merge command-line option for AArch32

# topic.topics[].topics[].label
Compiler-specific function, type, variable, and declaration attributes

# topic.topics[].topics[].topics[].label
#pragma clang diagnostic, #pragma GCC diagnostic

# topic.topics[].topics[].topics[].label
#pragma clang system_header, #pragma GCC system_header

# topic.topics[].topics[].topics[].label
#pragma weak symbol, #pragma weak symbol1 = symbol2

# topic.topics[].topics[].topics[].label
Example: How to handle variable argument lists in C

# topic.topics[].topics[].topics[].topics[].label
Prevention of Speculative execution and data prediction

# topic.topics[].topics[].topics[].label
--defsym=<symbol>=<value>

# topic.topics[].topics[].label
Example for the llvm-objdump --mattr=+cdecpN command-line option

# topic.topics[].topics[].label
Example for the elf2bin --banks command-line option

# topic.topics[].topics[].label
Standards compliance in Arm Toolchain for Embedded Professional

# topic.topics[].topics[].label
Compliance with the ABI for the Arm Architecture (Base Standard)

# topic.topics[].topics[].label
GCC compatibility provided by Arm Toolchain for Embedded Professional

# topic.topics[].topics[].label
Locales in Arm Toolchain for Embedded Professional

# metadata.contentDescription
The Arm Toolchain for Embedded Professional User Guide provides information for users new to Arm Toolchain for Embedded Professional.