Arm® Compiler Armclang Reference Guide 100067 0610 00 En
User Manual:
Open the PDF directly: View PDF
Page Count: 317 [warning: Documents this large are best viewed by clicking the View PDF Link!]
- Arm® Compiler armclang Reference Guide
- Table of Contents
- List of Figures
- List of Figures
- Preface
- 1 : armclang Command-line Options
- 1.1 : Support level definitions
- 1.2 : Summary of armclang command-line options
- 1.3 : -C
- 1.4 : -c
- 1.5 : -D
- 1.6 : -E
- 1.7 : -e
- 1.8 : -fbare-metal-pie
- 1.9 : -fbracket-depth=N
- 1.10 : -fcommon, -fno-common
- 1.11 : -fdata-sections, -fno-data-sections
- 1.12 : -ffast-math, -fno-fast-math
- 1.13 : -ffp-mode
- 1.14 : -ffunction-sections, -fno-function-sections
- 1.15 : @file
- 1.16 : -fldm-stm, -fno-ldm-stm
- 1.17 : -fno-builtin
- 1.18 : -fno-inline-functions
- 1.19 : -flto, -fno-lto
- 1.20 : -fexceptions, -fno-exceptions
- 1.21 : -fomit-frame-pointer, -fno-omit-frame-pointer
- 1.22 : -fropi, -fno-ropi
- 1.23 : -fropi-lowering, -fno-ropi-lowering
- 1.24 : -frwpi, -fno-rwpi
- 1.25 : -frwpi-lowering, -fno-rwpi-lowering
- 1.26 : -fshort-enums, -fno-short-enums
- 1.27 : -fshort-wchar, -fno-short-wchar
- 1.28 : -fstrict-aliasing, -fno-strict-aliasing
- 1.29 : -ftrapv
- 1.30 : -fvectorize, -fno-vectorize
- 1.31 : -fvisibility
- 1.32 : -fwrapv
- 1.33 : -g, -gdwarf-2, -gdwarf-3, -gdwarf-4
- 1.34 : -I
- 1.35 : -include
- 1.36 : -L
- 1.37 : -l
- 1.38 : -M, -MM
- 1.39 : -MD, -MMD
- 1.40 : -MF
- 1.41 : -MG
- 1.42 : -MP
- 1.43 : -MT
- 1.44 : -march
- 1.45 : -marm
- 1.46 : -mbig-endian
- 1.47 : -mcmse
- 1.48 : -mcpu
- 1.49 : -mexecute-only
- 1.50 : -mfloat-abi
- 1.51 : -mfpu
- 1.52 : -mimplicit-it
- 1.53 : -mlittle-endian
- 1.54 : -mno-neg-immediates
- 1.55 : -munaligned-access, -mno-unaligned-access
- 1.56 : -mthumb
- 1.57 : -nostdlib
- 1.58 : -nostdlibinc
- 1.59 : -o
- 1.60 : -O
- 1.61 : -pedantic
- 1.62 : -pedantic-errors
- 1.63 : -S
- 1.64 : -save-temps
- 1.65 : -std
- 1.66 : --target
- 1.67 : -U
- 1.68 : -u
- 1.69 : -v
- 1.70 : --version
- 1.71 : --version_number
- 1.72 : --vsn
- 1.73 : -W
- 1.74 : -Wl
- 1.75 : -Xlinker
- 1.76 : -x
- 1.77 : -###
- 2 : Compiler-specific Keywords and Operators
- 3 : Compiler-specific Function, Variable, and Type Attributes
- 3.1 : Function attributes
- 3.2 : __attribute__((always_inline)) function attribute
- 3.3 : __attribute__((cmse_nonsecure_call)) function attribute
- 3.4 : __attribute__((cmse_nonsecure_entry)) function attribute
- 3.5 : __attribute__((const)) function attribute
- 3.6 : __attribute__((constructor[(priority)])) function attribute
- 3.7 : __attribute__((format_arg(string-index))) function attribute
- 3.8 : __attribute__((interrupt("type"))) function attribute
- 3.9 : __attribute__((malloc)) function attribute
- 3.10 : __attribute__((naked)) function attribute
- 3.11 : __attribute__((noinline)) function attribute
- 3.12 : __attribute__((nonnull)) function attribute
- 3.13 : __attribute__((noreturn)) function attribute
- 3.14 : __attribute__((nothrow)) function attribute
- 3.15 : __attribute__((pcs("calling_convention"))) function attribute
- 3.16 : __attribute__((pure)) function attribute
- 3.17 : __attribute__((section("name"))) function attribute
- 3.18 : __attribute__((unused)) function attribute
- 3.19 : __attribute__((used)) function attribute
- 3.20 : __attribute__((value_in_regs)) function attribute
- 3.21 : __attribute__((visibility("visibility_type"))) function attribute
- 3.22 : __attribute__((weak)) function attribute
- 3.23 : __attribute__((weakref("target"))) function attribute
- 3.24 : Type attributes
- 3.25 : __attribute__((aligned)) type attribute
- 3.26 : __attribute__((packed)) type attribute
- 3.27 : __attribute__((transparent_union)) type attribute
- 3.28 : Variable attributes
- 3.29 : __attribute__((alias)) variable attribute
- 3.30 : __attribute__((aligned)) variable attribute
- 3.31 : __attribute__((deprecated)) variable attribute
- 3.32 : __attribute__((packed)) variable attribute
- 3.33 : __attribute__((section("name"))) variable attribute
- 3.34 : __attribute__((unused)) variable attribute
- 3.35 : __attribute__((used)) variable attribute
- 3.36 : __attribute__((visibility("visibility_type"))) variable attribute
- 3.37 : __attribute__((weak)) variable attribute
- 3.38 : __attribute__((weakref("target"))) variable attribute
- 4 : Compiler-specific Intrinsics
- 4.1 : __breakpoint intrinsic
- 4.2 : __current_pc intrinsic
- 4.3 : __current_sp intrinsic
- 4.4 : __disable_fiq intrinsic
- 4.5 : __disable_irq intrinsic
- 4.6 : __enable_fiq intrinsic
- 4.7 : __enable_irq intrinsic
- 4.8 : __force_stores intrinsic
- 4.9 : __memory_changed intrinsic
- 4.10 : __schedule_barrier intrinsic
- 4.11 : __semihost intrinsic
- 4.12 : __vfp_status intrinsic
- 5 : Compiler-specific Pragmas
- 6 : Other Compiler-specific Features
- 6.1 : ACLE support
- 6.2 : Predefined macros
- 6.3 : Inline functions
- 6.4 : Half-precision floating-point data types
- 6.5 : Half-precision floating-point number format
- 6.6 : Half-precision floating-point intrinsics
- 6.7 : Library support for _Float16 data type
- 6.8 : TT instruction intrinsics
- 6.9 : Non-secure function pointer intrinsics
- 7 : Standard C Implementation Definition
- 7.1 : Implementation Definition
- 7.2 : Translation
- 7.3 : Translation limits
- 7.4 : Environment
- 7.5 : Identifiers
- 7.6 : Characters
- 7.7 : Integers
- 7.8 : Floating-point
- 7.9 : Arrays and pointers
- 7.10 : Hints
- 7.11 : Structures, unions, enumerations, and bitfields
- 7.12 : Qualifiers
- 7.13 : Preprocessing directives
- 7.14 : Library functions
- 7.15 : Architecture
- 8 : Standard C++ Implementation Definition
- 8.1 : Implementation Definition
- 8.2 : General
- 8.3 : Lexical conventions
- 8.4 : Basic concepts
- 8.5 : Standard conversions
- 8.6 : Expressions
- 8.7 : Declarations
- 8.8 : Declarators
- 8.9 : Templates
- 8.10 : Exception handling
- 8.11 : Preprocessing directives
- 8.12 : Library introduction
- 8.13 : Language support library
- 8.14 : General utilities library
- 8.15 : Strings library
- 8.16 : Localization library
- 8.17 : Containers library
- 8.18 : Input/output library
- 8.19 : Regular expressions library
- 8.20 : Atomic operations library
- 8.21 : Thread support library
- 8.22 : Implementation quantities
- 9 : armclang Integrated Assembler Directives
- 9.1 : Syntax of assembly files for integrated assembler
- 9.2 : Assembly expressions
- 9.3 : Alignment directives
- 9.4 : Data definition directives
- 9.5 : String definition directives
- 9.6 : Floating-point data definition directives
- 9.7 : Section directives
- 9.8 : Conditional assembly directives
- 9.9 : Macro directives
- 9.10 : Symbol binding directives
- 9.11 : Org directive
- 9.12 : AArch32 Target selection directives
- 9.13 : AArch64 Target selection directives
- 9.14 : Space-filling directives
- 9.15 : Type directive
- 10 : armclang Inline Assembler
- 10.1 : Inline Assembly
- 10.2 : File-scope inline assembly
- 10.3 : Inline assembly statements within a function
- 10.4 : Inline assembly constraint strings
- 10.5 : Inline assembly template modifiers
- 10.6 : Forcing inline assembly operands into specific registers
- 10.7 : Symbol references and branches into and out of inline assembly
- 10.8 : Duplication of labels in inline assembly statements