# title
ARM Compiler v5.06 for µVision ARM C and C++ Libraries and Floating-Point Support User Guide

# topic.label
ARM Compiler v5.06 for uVision ARM C and C++ Libraries and Floating-Point Support User Guide

# topic.topics[].topics[].topics[].label
Summary of the C and C++ runtime libraries

# topic.topics[].topics[].topics[].label
Compliance with the Application Binary Interface (ABI) for the ARM architecture

# topic.topics[].topics[].topics[].label
Increasing portability of object files to other CLIBABI implementations

# topic.topics[].topics[].topics[].label
ARM C and C++ library directory structure

# topic.topics[].topics[].topics[].label
Selection of ARM C and C++ library variants based on build options

# topic.topics[].topics[].label
C++ and C libraries and the std namespace

# topic.topics[].topics[].label
Multithreaded support in ARM C libraries

# topic.topics[].topics[].topics[].label
ARM C libraries and thread-safe functions

# topic.topics[].topics[].topics[].label
Use of the __user_libspace static data area by the C libraries

# topic.topics[].topics[].topics[].label
C library functions to access subsections of the __user_libspace static data area

# topic.topics[].topics[].topics[].label
Re-implementation of legacy function __user_libspace() in the C library

# topic.topics[].topics[].topics[].label
Management of locks in multithreaded applications

# topic.topics[].topics[].topics[].label
How to ensure re-implemented mutex functions are called

# topic.topics[].topics[].topics[].label
Using the ARM C library in a multithreaded environment

# topic.topics[].topics[].topics[].label
The floating-point status word in a multithreaded environment

# topic.topics[].topics[].label
Support for building an application with the C library

# topic.topics[].topics[].topics[].label
Using the C and C++ libraries with an application in a semihosting environment

# topic.topics[].topics[].topics[].label
Using $Sub$$ to mix semihosted and nonsemihosted I/O functionality

# topic.topics[].topics[].topics[].label
Using the libraries in a nonsemihosting environment

# topic.topics[].topics[].topics[].label
C++ exceptions in a non-semihosting environment

# topic.topics[].topics[].topics[].label
Direct semihosting C library function dependencies

# topic.topics[].topics[].topics[].label
Indirect semihosting C library function dependencies

# topic.topics[].topics[].topics[].label
C library API definitions for targeting a different environment

# topic.topics[].topics[].label
Support for building an application without the C library

# topic.topics[].topics[].topics[].label
Building an application without the C library

# topic.topics[].topics[].topics[].label
Creating an application as bare machine C without the C library

# topic.topics[].topics[].topics[].label
Integer and floating-point compiler functions and building an application without the C library

# topic.topics[].topics[].topics[].label
Bare machine C with floating-point processing

# topic.topics[].topics[].topics[].label
Customized C library startup code and access to C library functions

# topic.topics[].topics[].topics[].label
Using low-level functions when exploiting the C library

# topic.topics[].topics[].topics[].label
Using high-level functions when exploiting the C library

# topic.topics[].topics[].topics[].label
Using malloc() when exploiting the C library

# topic.topics[].topics[].label
Tailoring the C library to a new execution environment

# topic.topics[].topics[].topics[].label
Initialization of the execution environment and execution of the application

# topic.topics[].topics[].topics[].label
C++ initialization, construction and destruction

# topic.topics[].topics[].label
Assembler macros that tailor locale functions in the C library

# topic.topics[].topics[].topics[].label
Link time selection of the locale subsystem in the C library

# topic.topics[].topics[].topics[].label
Runtime selection of the locale subsystem in the C library

# topic.topics[].topics[].topics[].label
Definition of locale data blocks in the C library

# topic.topics[].topics[].label
Modification of C library functions for error signaling, error handling, and program exit

# topic.topics[].topics[].label
Stack and heap memory allocation and the ARM C and C++ libraries

# topic.topics[].topics[].topics[].label
Library heap usage requirements of the ARM C and C++ libraries

# topic.topics[].topics[].topics[].label
Choosing a heap implementation for memory allocation functions

# topic.topics[].topics[].topics[].label
Stack pointer initialization and heap bounds

# topic.topics[].topics[].topics[].label
Avoiding the heap and heap-using library functions supplied by ARM

# topic.topics[].topics[].label
Tailoring input/output functions in the C and C++ libraries

# topic.topics[].topics[].label
Target dependencies on low-level functions in the C and C++ libraries

# topic.topics[].topics[].label
The C library printf family of functions

# topic.topics[].topics[].label
Redefining low-level library functions to enable direct use of high-level library functions in the C library

# topic.topics[].topics[].label
The C library functions fread(), fgets() and gets()

# topic.topics[].topics[].label
Re-implementing __backspace() in the C library

# topic.topics[].topics[].label
Re-implementing __backspacewc() in the C library

# topic.topics[].topics[].label
Redefining target-dependent system I/O functions in the C library

# topic.topics[].topics[].label
Tailoring non-input/output C library functions

# topic.topics[].topics[].label
Real-time integer division in the ARM libraries

# topic.topics[].topics[].topics[].label
How the ARM C library fulfills ISO C specification requirements

# topic.topics[].topics[].topics[].label
ISO-compliant implementation of signals supported by the signal() function in the C library and additional type arguments

# topic.topics[].topics[].topics[].label
Standard C++ library implementation definition

# topic.topics[].topics[].label
Compiler generated and library-resident helper functions

# topic.topics[].topics[].label
Using macro__ARM_WCHAR_NO_IO to disable FILE declaration and wide I/O function prototypes

# topic.topics[].topics[].label
Using library functions with execute-only memory

# topic.topics[].topics[].label
Differences between microlib and the default C library

# topic.topics[].topics[].label
Library heap usage requirements of microlib

# topic.topics[].topics[].label
Configuring the stack and heap for use with microlib

# topic.topics[].topics[].label
Entering and exiting programs linked with microlib

# topic.topics[].topics[].label
Tailoring the microlib input/output functions

# topic.topics[].topics[].label
The software floating-point library, fplib

# topic.topics[].topics[].topics[].label
fplib arithmetic on numbers in a particular format

# topic.topics[].topics[].topics[].label
fplib conversions between floats, long longs, doubles, and ints

# topic.topics[].topics[].topics[].label
fplib comparisons between floats and doubles

# topic.topics[].topics[].label
Controlling the ARM floating-point environment

# topic.topics[].topics[].topics[].label
Floating-point functions for compatibility with Microsoft products

# topic.topics[].topics[].topics[].label
C99-compatible functions for controlling the ARM floating-point environment

# topic.topics[].topics[].topics[].label
C99 rounding mode and floating-point exception macros

# topic.topics[].topics[].topics[].label
Functions for saving and restoring the whole floating-point environment

# topic.topics[].topics[].topics[].label
Functions for temporarily disabling exceptions

# topic.topics[].topics[].topics[].label
ARM floating-point compiler extensions to the C99 interface

# topic.topics[].topics[].label
Using C99 signaling NaNs provided by mathlib (_WANT_SNAN)

# topic.topics[].topics[].label
mathlib double and single-precision floating-point functions

# topic.topics[].topics[].topics[].label
Basic data types for IEEE 754 arithmetic

# topic.topics[].topics[].topics[].label
Single precision data type for IEEE 754 arithmetic

# topic.topics[].topics[].topics[].label
Double precision data type for IEEE 754 arithmetic

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

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

# topic.topics[].topics[].topics[].label
Exceptions arising from IEEE 754 floating-point arithmetic

# topic.topics[].topics[].topics[].label
Exception types recognized by the ARM floating-point environment

# topic.topics[].topics[].label
Using the Vector Floating-Point (VFP) support libraries

# topic.topics[].label
The C and C++ Library Functions reference

# topic.topics[].topics[].label
C library functions that are not thread-safe

# topic.topics[].topics[].label
j0(), j1(), jn(), Bessel functions of the first kind

# topic.topics[].topics[].label
significand(), fractional part of a number

# topic.topics[].topics[].label
y0(), y1(), yn(), Bessel functions of the second kind

# metadata.contentDescription
ARM Compiler for µVision ARM C and C++ Libraries and Floating-Point Support User Guide. This manual provides user information for the ARM libraries and floating-point support.