LLDB mainline
ARM64_ehframe_Registers.h
Go to the documentation of this file.
1//===-- ARM64_ehframe_Registers.h -------------------------------------*- C++
2//-*-===//
3//
4// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
5// See https://llvm.org/LICENSE.txt for license information.
6// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
7//
8//===----------------------------------------------------------------------===//
9
10#ifndef LLDB_SOURCE_UTILITY_ARM64_EHFRAME_REGISTERS_H
11#define LLDB_SOURCE_UTILITY_ARM64_EHFRAME_REGISTERS_H
12
13// The register numbers used in the eh_frame unwind information.
14// Should be the same as DWARF register numbers.
15
16namespace arm64_ehframe {
17
18enum {
19 x0 = 0,
48 fp, // aka x29
49 lr, // aka x30
50 sp, // aka x31 aka wzr
51 pc, // value is 32
53 // 34-45 reserved
54
55 // 64-bit SVE Vector granule pseudo register
56 vg = 46,
57
58 // VG ́8-bit SVE first fault register
59 ffr = 47,
60
61 // VG x ́8-bit SVE predicate registers
62 p0 = 48,
78
79 // V0-V31 (128 bit vector registers)
80 v0 = 64,
112
113 // VG ́64-bit SVE vector registers
114 z0 = 96,
145 z31
147}
148
149#endif // LLDB_SOURCE_UTILITY_ARM64_EHFRAME_REGISTERS_H