3.6 Register accesses in AArch32 state ........................................................................ 3-71
3.7 Predeclared core register names in AArch32 state ........................ ........................ 3-72
3.8 Predeclared extension register names in AArch32 state .................... .................... 3-73
3.9 Program Counter in AArch32 state .......................................................................... 3-74
3.10 The Q flag in AArch32 state .................................................................................... 3-75
3.11 Application Program Status Register ................................... ................................... 3-76
3.12 Current Program Status Register in AArch32 state ........................ ........................ 3-77
3.13 Saved Program Status Registers in AArch32 state ........................ ........................ 3-78
3.14 A32 and T32 instruction set overview ...................................................................... 3-79
3.15 Access to the inline barrel shifter in AArch32 state ........................ ........................ 3-80
Chapter 4 Overview of AArch64 state
4.1 Registers in AArch64 state ...................................................................................... 4-82
4.2 Exception levels ................................................... ................................................... 4-83
4.3 Link registers ..................................................... ..................................................... 4-84
4.4 Stack Pointer register .............................................................................................. 4-85
4.5 Predeclared core register names in AArch64 state ........................ ........................ 4-86
4.6 Predeclared extension register names in AArch64 state .................... .................... 4-87
4.7 Program Counter in AArch64 state .......................................................................... 4-88
4.8 Conditional execution in AArch64 state ................................. ................................. 4-89
4.9 The Q flag in AArch64 state .................................................................................... 4-90
4.10 Process State .......................................................................................................... 4-91
4.11 Saved Program Status Registers in AArch64 state ........................ ........................ 4-92
4.12 A64 instruction set overview .................................................................................... 4-93
Chapter 5 Structure of Assembly Language Modules
5.1 Syntax of source lines in assembly language .......................................................... 5-95
5.2 Literals .......................................................... .......................................................... 5-97
5.3 ELF sections and the AREA directive ...................................................................... 5-98
5.4 An example armasm syntax assembly language module ................... ................... 5-99
Chapter 6 Writing A32/T32 Assembly Language
6.1 About the Unified Assembler Language ................................................................ 6-103
6.2 Syntax differences between UAL and A64 assembly language ............................ 6-104
6.3 Register usage in subroutine calls .................................... .................................... 6-105
6.4 Load immediate values .......................................................................................... 6-106
6.5 Load immediate values using MOV and MVN ........................... ........................... 6-107
6.6 Load immediate values using MOV32 ................................. ................................. 6-110
6.7 Load immediate values using LDR Rd, =const ...................................................... 6-111
6.8 Literal pools ..................................................... ..................................................... 6-112
6.9 Load addresses into registers ................................................................................ 6-113
6.10 Load addresses to a register using ADR ............................... ............................... 6-114
6.11 Load addresses to a register using ADRL .............................. .............................. 6-116
6.12 Load addresses to a register using LDR Rd, =label .............................................. 6-117
6.13 Other ways to load and store registers .................................................................. 6-119
6.14 Load and store multiple register instructions ............................ ............................ 6-120
6.15 Load and store multiple register instructions in A32 and T32 ................................ 6-121
6.16 Stack implementation using LDM and STM ............................. ............................. 6-122
6.17 Stack operations for nested subroutines ............................... ............................... 6-124
6.18 Block copy with LDM and STM .............................................................................. 6-125
100069_0610_00_en Copyright © 2014–2018 Arm Limited or its affiliates. All rights
reserved.
5
Non-Confidential
评论0
最新资源