#pragma once
#include <stddef.h>
#ifdef _MSC_VER
#undef REG_NONE
#endif
enum Register
{
REG_NONE,
REG_W0,
REG_W1,
REG_W2,
REG_W3,
REG_W4,
REG_W5,
REG_W6,
REG_W7,
REG_W8,
REG_W9,
REG_W10,
REG_W11,
REG_W12,
REG_W13,
REG_W14,
REG_W15,
REG_W16,
REG_W17,
REG_W18,
REG_W19,
REG_W20,
REG_W21,
REG_W22,
REG_W23,
REG_W24,
REG_W25,
REG_W26,
REG_W27,
REG_W28,
REG_W29,
REG_W30,
REG_WZR,
REG_WSP,
REG_X0,
REG_X1,
REG_X2,
REG_X3,
REG_X4,
REG_X5,
REG_X6,
REG_X7,
REG_X8,
REG_X9,
REG_X10,
REG_X11,
REG_X12,
REG_X13,
REG_X14,
REG_X15,
REG_X16,
REG_X17,
REG_X18,
REG_X19,
REG_X20,
REG_X21,
REG_X22,
REG_X23,
REG_X24,
REG_X25,
REG_X26,
REG_X27,
REG_X28,
REG_X29,
REG_X30,
REG_XZR,
REG_SP,
REG_V0,
REG_V1,
REG_V2,
REG_V3,
REG_V4,
REG_V5,
REG_V6,
REG_V7,
REG_V8,
REG_V9,
REG_V10,
REG_V11,
REG_V12,
REG_V13,
REG_V14,
REG_V15,
REG_V16,
REG_V17,
REG_V18,
REG_V19,
REG_V20,
REG_V21,
REG_V22,
REG_V23,
REG_V24,
REG_V25,
REG_V26,
REG_V27,
REG_V28,
REG_V29,
REG_V30,
REG_V31,
REG_B0,
REG_B1,
REG_B2,
REG_B3,
REG_B4,
REG_B5,
REG_B6,
REG_B7,
REG_B8,
REG_B9,
REG_B10,
REG_B11,
REG_B12,
REG_B13,
REG_B14,
REG_B15,
REG_B16,
REG_B17,
REG_B18,
REG_B19,
REG_B20,
REG_B21,
REG_B22,
REG_B23,
REG_B24,
REG_B25,
REG_B26,
REG_B27,
REG_B28,
REG_B29,
REG_B30,
REG_B31,
REG_H0,
REG_H1,
REG_H2,
REG_H3,
REG_H4,
REG_H5,
REG_H6,
REG_H7,
REG_H8,
REG_H9,
REG_H10,
REG_H11,
REG_H12,
REG_H13,
REG_H14,
REG_H15,
REG_H16,
REG_H17,
REG_H18,
REG_H19,
REG_H20,
REG_H21,
REG_H22,
REG_H23,
REG_H24,
REG_H25,
REG_H26,
REG_H27,
REG_H28,
REG_H29,
REG_H30,
REG_H31,
REG_S0,
REG_S1,
REG_S2,
REG_S3,
REG_S4,
REG_S5,
REG_S6,
REG_S7,
REG_S8,
REG_S9,
REG_S10,
REG_S11,
REG_S12,
REG_S13,
REG_S14,
REG_S15,
REG_S16,
REG_S17,
REG_S18,
REG_S19,
REG_S20,
REG_S21,
REG_S22,
REG_S23,
REG_S24,
REG_S25,
REG_S26,
REG_S27,
REG_S28,
REG_S29,
REG_S30,
REG_S31,
REG_D0,
REG_D1,
REG_D2,
REG_D3,
REG_D4,
REG_D5,
REG_D6,
REG_D7,
REG_D8,
REG_D9,
REG_D10,
REG_D11,
REG_D12,
REG_D13,
REG_D14,
REG_D15,
REG_D16,
REG_D17,
REG_D18,
REG_D19,
REG_D20,
REG_D21,
REG_D22,
REG_D23,
REG_D24,
REG_D25,
REG_D26,
REG_D27,
REG_D28,
REG_D29,
REG_D30,
REG_D31,
REG_Q0,
REG_Q1,
REG_Q2,
REG_Q3,
REG_Q4,
REG_Q5,
REG_Q6,
REG_Q7,
REG_Q8,
REG_Q9,
REG_Q10,
REG_Q11,
REG_Q12,
REG_Q13,
REG_Q14,
REG_Q15,
REG_Q16,
REG_Q17,
REG_Q18,
REG_Q19,
REG_Q20,
REG_Q21,
REG_Q22,
REG_Q23,
REG_Q24,
REG_Q25,
REG_Q26,
REG_Q27,
REG_Q28,
REG_Q29,
REG_Q30,
REG_Q31,
REG_V0_B0,
REG_V0_B1,
REG_V0_B2,
REG_V0_B3,
REG_V0_B4,
REG_V0_B5,
REG_V0_B6,
REG_V0_B7,
REG_V0_B8,
REG_V0_B9,
REG_V0_B10,
REG_V0_B11,
REG_V0_B12,
REG_V0_B13,
REG_V0_B14,
REG_V0_B15,
REG_V1_B0,
REG_V1_B1,
REG_V1_B2,
REG_V1_B3,
REG_V1_B4,
REG_V1_B5,
REG_V1_B6,
REG_V1_B7,
REG_V1_B8,
REG_V1_B9,
REG_V1_B10,
REG_V1_B11,
REG_V1_B12,
REG_V1_B13,
REG_V1_B14,
REG_V1_B15,
REG_V2_B0,
REG_V2_B1,
REG_V2_B2,
REG_V2_B3,
REG_V2_B4,
REG_V2_B5,
REG_V2_B6,
REG_V2_B7,
REG_V2_B8,
REG_V2_B9,
REG_V2_B10,
REG_V2_B11,
REG_V2_B12,
REG_V2_B13,
REG_V2_B14,
REG_V2_B15,
REG_V3_B0,
REG_V3_B1,
REG_V3_B2,
REG_V3_B3,
REG_V3_B4,
REG_V3_B5,
REG_V3_B6,
REG_V3_B7,
REG_V3_B8,
REG_V3_B9,
REG_V3_B10,
REG_V3_B11,
REG_V3_B12,
REG_V3_B13,
REG_V3_B14,
REG_V3_B15,
REG_V4_B0,
REG_V4_B1,
REG_V4_B2,
REG_V4_B3,
REG_V4_B4,
REG_V4_B5,
REG_V4_B6,
REG_V4_B7,
REG_V4_B8,
REG_V4_B9,
REG_V4_B10,
REG_V4_B11,
REG_V4_B12,
REG_V4_B13,
REG_V4_B14,
REG_V4_B15,
REG_V5_B0,
REG_V5_B1,
REG_V5_B2,
REG_V5_B3,
REG_V5_B4,
REG_V5_B5,
REG_V5_B6,
REG_V5_B7,
REG_V5_B8,
REG_V5_B9,
REG_V5_B10,
REG_V5_B11,
REG_V5_B12,
REG_V5_B13,
REG_V5_B14,
REG_V5_B15,
REG_V6_B0,
REG_V6_B1,
REG_V6_B2,
REG_V6_B3,
REG_V6_B4,
REG_V6_B5,
REG_V6_B6,
REG_V6_B7,
REG_V6_B8,
REG_V6_B9,
REG_V6_B10,
REG_V6_B11,
REG_V6_B12,
REG_V6_B13,
REG_V6_B14,
REG_V6_B15,
REG_V7_B0,
REG_V7_B1,
REG_V7_B2,
REG_V7_B3,
REG_V7_B4,
REG_V7_B5,
REG_V7_B6,
REG_V7_B7,
REG_V7_B8,
REG_V7_B9,
REG_V7_B10,
REG_V7_B11,
REG_V7_B12,
REG_V7_B13,
REG_V7_B14,
REG_V7_B15,
REG_V8_B0,
REG_V8_B1,
REG_V8_B2,
REG_V8_B3,
REG_V8_B4,
REG_V8_B5,
REG_V8_B6,
REG_V8_B7,
REG_V8_B8,
REG_V8_B9,
REG_V8_B10,
REG_V8_B11,
REG_V8_B12,
REG_V8_B13,
REG_V8_B14,
REG_V8_B15,
REG_V9_B0,
REG_V9_B1,
REG_V9_B2,
REG_V9_B3,
REG_V9_B4,
REG_V9_B5,
REG_V9_B6,
REG_V9_B7,
REG_V9_B8,
REG_V9_B9,
REG_V9_B10,
REG_V9_B11,
REG_V9_B12,
REG_V9_B13,
REG_V9_B14,
REG_V9_B15,
REG_V10_B0,
REG_V10_B1,
REG_V10_B2,
REG_V10_B3,
REG_V10_B4,
REG_V10_B5,
REG_V10_B6,
REG_V10_B7,
REG_V10_B8,
REG_V10_B9,
REG_V10_B10,
REG_V10_B11,
REG_V10_B12,
REG_V10_B13,
REG_V10_B14,
REG_V10_B15,
REG_V11_B0,
REG_V11_B1,
REG_V11_B2,
REG_V11_B3,
REG_V11_B4,
REG_V11_B5,
REG_V11_B6,
REG_V11_B7,
REG_V11_B8,
REG_V11_B9,
REG_V11_B10,
REG_V11_B11,
REG_V11_B12,
REG_V11_B13,
REG_V11_B14,
REG_V11_B15,
REG_V12_B0,
REG_V12_B1,
REG_V12_B2,
REG_V12_B3,
REG_V12_B4,
REG_V12_B5,
REG_V12_B6,
REG_V12_B7,
REG_V12_B8,
REG_V12_B9,
REG_V12_B10,
REG_V12_B11,
REG_V12_B12,
REG_V12_B13,
REG_V12_B14,
REG_V12_B15,
REG_V13_B0,
REG_V13_B1,
REG_V13_B2,
REG_V13_B3,
REG_V13_B4,
REG_V13_B5,
REG_V13_B6,
REG_V13_B7,
REG_V13_B8,
REG_V13_B9,
REG_V13_B10,
REG_V13_B11,
REG_V13_B12,
REG_V13_B13,
REG_V13_B14,
REG_V13_B15,
REG_V14_B0,
REG_V14_B1,
REG_V14_B2,
REG_V14_B3,
REG_V14_B4,
REG_V14_B5,
REG_V14_B6,
REG_V14_B7,
REG_V14_B8,
REG_V14_B9,
REG_V14_B10,
REG_V14_B11,
REG_V14_B12,
REG_V14_B13,
REG_V14_B14,
REG_V14_B15,
REG_V15_B0,
REG_V15_B1,
REG_V15_B2,
REG_V15_B3,
REG_V15_B4,
REG_V15_B5,
REG_V15_B6,
REG_V15_B7,
REG_V15_B8,
REG_V15_B9,
REG_V15_B10,
REG_V15_B11,
REG_V15_B12,
REG_V15_B13,
REG_V15_B14,
REG_V15_B15,
REG_V16_B0,
REG_V16_B1,
REG_V16_B2,
REG_V16_B3,
REG_V16_B4,
REG_V16_B5,
REG_V16_B6,
REG_V16_B7,
REG_V16_B8,
REG_V16_B9,
REG_V16_B10,
REG_V16_B11,
REG_V16_B12,
REG_V16_B13,
REG_V16_B14,
REG_V16_B15,
REG_V17_B0,
REG_V17_B1,
REG_V17_B2,
REG_V17_B3,
REG_V17_B4,
REG_V17_B5,
REG_V17_B6,
REG_V17_B7,
REG_V17_B8,
REG_V17_B9,
REG_V17_B10,
REG_V17_B11,
REG_V17_B12,
REG_V17_B13,
REG_V17_B14,
REG_V17_B15,
REG_V18_B0,
REG_V18_B1,
REG_V18_B2,
REG_V18_B3,
REG_V18_B4,
REG_V18_B5,
REG_V18_B6,
REG_V18_B7,
REG_V18_B8,
REG_V18_B9,
REG_V18_B10,
REG_V18_B11,
REG_V18_B12,
REG_V18_B13,
REG_V18_B14,
REG_V18_B15,
REG_V19_B0,
REG_V19_B1,
REG_V19_B2,
REG_V19_B3,
REG_V19_B4,
REG_V19_B5,
REG_V19_B6,
REG_V19_B7,
REG_V19_B8,
REG_V19_B9,
REG_V19_B10,
REG_V19_B11,
REG_V19_B12,
REG_V19_B13,
REG_V19_B14,
REG_V19_B15,
REG_V20_B0,
REG_V20_B1,
REG_V20_B2,
REG_V20_B3,
REG_V20_B4,
REG_V20_B5,
REG_V20_B6,
REG_V20_B7,
REG_V20_B8,
REG_V20_B9,
REG_V20_B10,
REG_V20_B11,
REG_V20_B12,
REG_V20_B13,
REG_V20_B14,
REG_V20_B15,
REG_V21_B0,
REG_V21_B1,
REG_V21_B2,
REG_V21_B3,
REG_V21_B4,
REG_V21_B5,
REG_V21_B6,
REG_V21_B7,
REG_V21_B8,
REG_V21_B9,
REG_V21_B10,
REG_V21_B11,
REG_V21_B12,
REG_V21_B13,
REG_V21_B14,
REG_V21_B15,
REG_V22_B0,
REG_V22_B1,
REG_V22_B2,
REG_V22_B3,
REG_V22_B4,
REG_V22_B5,
REG_V22_B6,
REG_V22_B7,
REG_V22_B8,
REG_V22_B9,
REG_V22_B10,
REG_V22_B11,
REG_V22_B12,
REG_V22_B13,
REG_V22_B14,
REG_V22_B15,
REG_V23_B0,
REG_V23_B1,
REG_V23_B2,
REG_V23_B3,
REG_V23_B4,
REG_V23_B5,
REG_V23_B6,
REG_V23_B7,
REG_V23_B8,
REG_V23_B9,
REG_V23_B10,
REG_V23_B11,
REG_V23_B12,
REG_V23_B13,
REG_V23_B14,
REG_V23_B15,
REG_V24_B0,
REG_V24_B1,
REG_V24_B2,
REG_V24_B3,
REG_V24_B4,
REG_V24_B5,
REG_V24_B6,
REG_V24_B7,
REG_V24_B8,
REG_V24_B9,
REG_V24_B10,
REG_V24_B11,
REG_V24_B12,
REG_V24_B13,
REG_V24_B14,
REG_V24_B15,
REG_V25_B0,
REG_V25_B1,
REG_V25_B2,
REG_V25_B3,
REG_V25_B4,
REG_V25_B5,
REG_V25_B6,
REG_V25_B7,
REG_V25_B8,
REG_V25_B9,
REG_V25_B10,
REG_V25_B11,
REG_V25_B12,
REG_V25_B13,
REG_V25_B14,
REG_V25_B15,
REG_V26_B0,
REG_V26_B1,
REG_V26_B2,
REG_V26_B3,
REG_V26_B4,
REG_V26_B5,
REG_V26_B6,
REG_V26_B7,
REG_V26_B8,
REG_V26_B9,
REG_V26_B10,
REG_V26_B11,
REG_V26_B12,
REG_V26_B13,
REG_V26_B14,
REG_V26_B15,
REG_V27_B0,
REG_V27_B1,
REG_V27_B2,
REG_V27_B3,
REG_V27_B4,
REG_V27_B5,
REG_V27_B6,
REG_V27_B7,
REG_V27_B8,
REG_V27_B9,
REG_V27_B10,
REG_V27_B11,
REG_V27_B12,
REG_V27_B13,
REG_V27_B14,
REG_V27_B15,
REG_V28_B0,
REG_V28_B1,
REG_V28_B2,
REG_V28_B3,
REG_V28_B4,
REG_V28_B5,
REG_V28_B6,
REG_V28_B7,
REG_V28_B8,
REG_V28_B9,
REG_V28_B10,
REG_V28_B11,
REG_V28_B12,
REG_V28_B13,
REG_V28_B14,
REG_V28_B15,
REG_V29_B0,
REG_V29_B1,
REG_V29_B2,
REG_V29_B3,
REG_V29_B4,
REG_V29_B5,
REG_V29_B6,
REG_V29_B7,
REG_V29_B8,
REG_V29_B9,
REG_V29_B10,
REG_V29_B11,
REG_V29_B12,
REG_V29_B13,
REG_V29_B14,
REG_V29_B15,
REG_V30_B0,
REG_V30_B1,
REG_V30_B2,
REG_V30_B3,
REG_V30_B4,
REG_V30_B5,
REG_V30_B6,
REG_V30_B7,
REG_V30_B8,
REG_V30_B9,
REG_V30_B10,
REG_V30_B11,
REG_V30_B12,
REG_V30_B13,
REG_V30_B14,
REG_V30_B15,
REG_V31_B0,
REG_V31_B1,
REG_V31_B2,
REG_V31_B3,
REG_V31_B4,
REG_V31_B5,
REG_V31_B6,
REG_V31_B7,
REG_V31_B8,
REG_V31_B9,
REG_V31_B10,
REG_V31_B11,
REG_V31_B12,
REG_V31_B13,
REG_V31_B14,
REG_V31_B15,
REG_V0_H0,
REG_V0_H1,
REG_V0_H2,
REG_V0_H3,
REG_V0_H4,
REG_V0_H5,
REG_V0_H6,
REG_V0_H7,
REG_V1_H0,
REG_V1_H1,
REG_V1_H2,
REG_V1_H3,
REG_V1_H4,
REG_V1_H5,
REG_V1_H6,
REG_V1_H7,
REG_V2_H0,
REG_V2_H1,
REG_V2_H2,
REG_V2_H3,
REG_V2_H4,
REG_V2_H5,
REG_V2_H6,
REG_V2_H7,
REG_V3_H0,
REG_V3_H1,
REG_V3_H2,
REG_V3_H3,
REG_V3_H4,
REG_V3_H5,
REG_V3_H6,
REG_V3_H7,
REG_V4_H0,
REG_V4_H1,
REG_V4_H2,
REG_V4_H3,
REG_V4_H4,
REG_V4_H5,
REG_V4_H6,
REG_V4_H7,
REG_V5_H0,
REG_V5_H1,
REG_V5_H2,
REG_V5_H3,
REG_V5_H4,
REG_V5_H5,
REG_V5_H6,
REG_V5_H7,
REG_V6_H0,
REG_V6_H1,
REG_V6_H2,
REG_V6_H3,
REG_V6_H4,
REG_V6_H5,
REG_V6_H6,
REG_V6_H7,
REG_V7_H0,
REG_V7_H1,
REG_V7_H2,
REG_V7_H3,
REG_V7_H4,
REG_V7_H5,
REG_V7_H6,
REG_V7_H7,
REG_V8_H0,
REG_V8_H1,
REG_V8_H2,
REG_V8_H3,
REG_V8_H4,
REG_V8_H5,
REG_V8_H6,
REG_V8_H7,
REG_V9_H0,
REG_V9_H1,
REG_V9_H2,
REG_V9_H3,
REG_V9_H4,
REG_V9_H5,
REG_V9_H6,
REG_V9_H7,
REG_V10_H0,
REG_V10_H1,
REG_V10_H2,
REG_V10_H3,
REG_V10_H4,
REG_V10_H5,
REG_V10_H6,
REG_V10_H7,
REG_V11_H0,
REG_V11_H1,
REG_V11_H2,
REG_V11_H3,
REG_V11_H4,
REG_V11_H5,
REG_V11_H6,
REG_V11_H7,
REG_V12_H0,
REG_V12_H1,
REG_V12_H2,
REG_V12_H3,
REG_V12_H4,
REG_V12_H5,
REG_V12_H6,
REG_V12_H7,
REG_V13_H0,
REG_V13_H1,
REG_V13_H2,
REG_V13_H3,
REG_V13_H4,
REG_V13_H5,
REG_V13_H6,
REG_V13_H7,
REG_V14_H0,
REG_V14_H1,
REG_V14_H2,
REG_V14_H3,
REG_V14_H4,
REG_V14_H5,
REG_V14_H6,
REG_V14_H7,
REG_V15_H0,
REG_V15_H1,
REG_V15_H2,
REG_V15_H3,
REG_V15_H4,
REG_V15_H5,
REG_V15_H6,
REG_V15_H7,
REG_V16_H0,
REG_V16_H1,
REG_V16_H2,
REG_V16_H3,
REG_V16_H4,
REG_V16_H5,
REG_V16_H6,
REG_V16_H7,
REG_V17_H0,
REG_V17_H1,
REG_V17_H2,
REG_V17_H3,
REG_V17_H4,
REG_V17_H5,
REG_V17_H6,
REG_V17_H7,
REG_V18_H0,
REG_V18_H1,
REG_V18_H2,
REG_V18_H3,
REG_V18_H4,
REG_V18_H5,
REG_V18_H6,
REG_V18_H7,
REG_V19_H0,
REG_V19_H1,
REG_V19_H2,
REG_V19_H3,
REG_V19_H4,
REG_V19_H5,
REG_V19_H6,
REG_V19_H7,
REG_V20_H0,
REG_V20_H1,
REG_V20_H2,
REG_V20_H3,
REG_V20_H4,
REG_V20_H5,
REG_V20_H6,
REG_V20_H7,
REG_V21_H0,
REG_V21_H1,
REG_V21_H2,
REG_V21_H3,
REG_V21_H4,
REG_V21_H5,
REG_V21_H6,
REG_V21_H7,
REG_V22_H0,
REG_V22_H1,
REG_V22_H2,
REG_V22_H3,
REG_V22_H4,
REG_V22_H5,
REG_V22_H6,
REG_V22_H7,
REG_V23_H0,
REG_V23_H1,
REG_V23_H2,
REG_V23_H3,
REG_V23_H4,
REG_V23_H5,
REG_V23_H6,
REG_V23_H7,
REG_V24_H0,
REG_V24_H1,
REG_V24_H2,
REG_V24_H3,
REG_V24_H4,
REG_V24_H5,
REG_V24_H6,
REG_V24_H7,
REG_V25_H0,
REG_V25_H1,
REG_V25_H2,
REG_V25_H3,
REG_V25_H4,
REG_V25_H5,
REG_V25_H6,
REG_V25_H7,
REG_V26_H0,
REG_V26_H1,
REG_V26_H2,
REG_V26_H3,
REG_V26_H4,
REG_V26_H5,
REG_V26_H6,
REG_V26_H7,
REG_V27_H0,
REG_V27_H1,
REG_V27_H2,
REG_V27_H3,
REG_V27_H4,
REG_V27_H5,
REG_V27_H6,
REG_V27_H7,
REG_V28_H0,
REG_V28_H1,
REG_V28_H2,
REG_V28_H3,
REG_V28_H4,
REG_V28_H5,
REG_V28_H6,
REG_V28_H7,
REG_V29_H0,
REG_V29_H1,
REG_V29_H2,
REG_V29_H3,
REG_V29_H4,
REG_V29_H5,
REG_V29_H6,
REG_V29_H7,
REG_V30_H0,
REG_V30_H1,
REG_V30_H2,
REG_V30_H3,
REG_V30_H4,
REG_V30_H5,
REG_V30_H6,
REG_V30_H7,
REG_V31_H0,
REG_V31_H1,
REG_V31_H2,
REG_V31_H3,
REG_V31_H4,
REG_V31_H5,
REG_V31_H6,
REG_V31_H7,
REG_V0_S0,
REG_V0_S1,
REG_V0_S2,
REG_V0_S3,
REG_V1_S0,
REG_V1_S1,
REG_V1_S2,
REG_V1_S3,
REG_V2_S0,
REG_V2_S1,
REG_V2_S2,
REG_V2_S3,
REG_V3_S0,
REG_V3_S1,
REG_V3_S2,
REG_V3_S3,
REG_V4_S0,
REG_V4_S1,
REG_V4_S2,
REG_V4_S3,
REG_V5_S0,
REG_V5_S1,
REG_V5_S2,
REG_V5_S3,
REG_V6_S0,
REG_V6_S1,
REG_V6_S2,
REG_V6_S3,
REG_V7_S0,
REG_V7_S1,
REG_V7_S2,
REG_V7_S3,
REG_V8_S0,
REG_V8_S1,
REG_V8_S2,
REG_V8_S3,
REG_V9_S0,
REG_V9_S1,
REG_V9_S2,
REG_V9_S3,
REG_V10_S0,
REG_V10_S1,
REG_V10_S2,
REG_V10_S3,
REG_V11_S0,
REG_V11_S1,
REG_V11_S2,
REG_V11_S3,
REG_V12_S0,
REG_V12_S1,
REG_V12_S2,
REG_V12_S3,
REG_V13_S0,
REG_V13_S1,
REG_V13_S2,
REG_V13_S3,
REG_V14_S0,
REG_V14_S1,
REG_V14_S2,
REG_V14_S3,
REG_V15_S0,
REG_V15_S1,
REG_V15_S2,
REG_V15_S3,
REG_V16_S0,
REG_V16_S1,
REG_V16_S2,
REG_V16_S3,
REG_V17_S0,
REG_V17_S1,
REG_V17_S2,
REG_V17_S3,
REG_V18_S0,
REG_V18_S1,
REG_V18_S2,
REG_V18_S3,
REG_V19_S0,
REG_V19_S1,
REG_V19_S2,
REG_V19_S3,
REG_V20_S0,
REG_V20_S1,
REG_V20_S2,
REG_V20_S3,
REG_V21_S0,
REG_V21_S1,
REG_V21_S2,
REG_V21_S3,
REG_V22_S0,
REG_V22_S1,
REG_V22_S2,
REG_V22_S3,
REG_V23_S0,
REG_V23_S1,
REG_V23_S2,
REG_V23_S3,
REG_V24_S0,
REG_V24_S1,
REG_V24_S2,
REG_V24_S3,
REG_V25_S0,
REG_V25_S1,
REG_V25_S2,
REG_V25_S3,
REG_V26_S0,
REG_V26_S1,
REG_V26_S2,
REG_V26_S3,
REG_V27_S0,
REG_V27_S1,
REG_V27_S2,
REG_V27_S3,
REG_V28_S0,
REG_V28_S1,
REG_V28_S2,
REG_V28_S3,
REG_V29_S0,
REG_V29_S1,
REG_V29_S2,
REG_V29_S3,
REG_V30_S0,
REG_V30_S1,
REG_V30_S2,
REG_V30_S3,
REG_V31_S0,
REG_V31_S1,
REG_V31_S2,
REG_V31_S3,
REG_V0_D0,
REG_V0_D1,
REG_V1_D0,
REG_V1_D1,
REG_V2_D0,
REG_V2_D1,
REG_V3_D0,
REG_V3_D1,
REG_V4_D0,
REG_V4_D1,
REG_V5_D0,
REG_V5_D1,
REG_V6_D0,
REG_V6_D1,
REG_V7_D0,
REG_V7_D1,
REG_V8_D0,
REG_V8_D1,
REG_V9_D0,
REG_V9_D1,
REG_V10_D0,
REG_V10_D1,
REG_V11_D0,
REG_V11_D1,
REG_V12_D0,
REG_V12_D1,
REG_V13_D0,
REG_V13_D1,
REG_V14_D0,
REG_V14_D1,
REG_V15_D0,
REG_V15_D1,
REG_V16_D0,
REG_V16_D1,
REG_V17_D0,
REG_V17_D1,
REG_V18_D0,
REG_V18_D1,
REG_V19_D0,
REG_V19_D1,
REG_V20_D0,
REG_V20_D1,
REG_V21_D0,
REG_V21_D1,
REG_V22_D0,
REG_V22_D1,
REG_V23_D0,
REG_V23_D1,
REG_V24_D0,
REG_V24_D1,
REG_V25_D0,
REG_V25_D1,
REG_V26_D0,
REG_V26_D1,
REG_V27_D0,
REG_V27_D1,
REG_V28_D0,
REG_V28_D1,
REG_V29_D0,
REG_V29_D1,
REG_V30_D0,
REG_V30_D1,
REG_V31_D0,
REG_V31_D1,
REG_Z0,
REG_Z1,
REG_Z2,
REG_Z3,
REG_Z4,
REG_Z5,
REG_Z6,
REG_Z7,
REG_Z8,
REG_Z9,
REG_Z10,
REG_Z11,
REG_Z12,
REG_Z13,
REG_Z14,
REG_Z15,
REG_Z16,
REG_Z17,
REG_Z18,
REG_Z19,
REG_Z20,
REG_Z21,
REG_Z22,
REG_Z23,
REG_Z24,
REG_Z25,
REG_Z26,
REG_Z27,
REG_Z28,
REG_Z29,
REG_Z30,
REG_Z31,
REG_P0,
REG_P1,
REG_P2,
REG_P3,
REG_P4,
REG_P5,
REG_P6,
REG_P7,
REG_P8,
REG_P9,
REG_P10,
REG_P11,
REG_P12,
REG_P13,
REG_P14,
REG_P15,
REG_P16,
REG_P17,
REG_P18,
REG_P19,
REG_P20,
REG_P21,
REG_P22,
REG_P23,
REG_P24,
REG_P25,
REG_P26,
REG_P27,
REG_P28,
REG_P29,
REG_P30,
REG_P31,
REG_PF0,
REG_PF1,
REG_PF2,
REG_PF3,
REG_PF4,
REG_PF5,
REG_PF6,
REG_PF7,
REG_PF8,
REG_PF9,
REG_PF10,
REG_PF11,
REG_PF12,
REG_PF13,
REG_PF14,
REG_PF15,
REG_PF16,
REG_PF17,
REG_PF18,
REG_PF19,
REG_PF20,
REG_PF21,
REG_PF22,
REG_PF23,
REG_PF24,
REG_PF25,
REG_PF26,
REG_PF27,
REG_PF28,
REG_PF29,
REG_PF30,
REG_PF31,
REG_ZT0,
REG_END
};
#ifdef __cplusplus
extern "C"
{
#endif
const char* aarch64_get_register_name(enum Register);
size_t aarch64_get_register_size(enum Register);
#ifdef __cplusplus
}
#endif