//===-- ARM_DWARF_Registers.h -----------------------------------*- C++ -*-===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// #ifndef utility_ARM_DWARF_Registers_h_ #define utility_ARM_DWARF_Registers_h_ #include "lldb/lldb-private.h" enum { dwarf_r0 = 0, dwarf_r1, dwarf_r2, dwarf_r3, dwarf_r4, dwarf_r5, dwarf_r6, dwarf_r7, dwarf_r8, dwarf_r9, dwarf_r10, dwarf_r11, dwarf_r12, dwarf_sp, dwarf_lr, dwarf_pc, dwarf_cpsr, dwarf_s0 = 64, dwarf_s1, dwarf_s2, dwarf_s3, dwarf_s4, dwarf_s5, dwarf_s6, dwarf_s7, dwarf_s8, dwarf_s9, dwarf_s10, dwarf_s11, dwarf_s12, dwarf_s13, dwarf_s14, dwarf_s15, dwarf_s16, dwarf_s17, dwarf_s18, dwarf_s19, dwarf_s20, dwarf_s21, dwarf_s22, dwarf_s23, dwarf_s24, dwarf_s25, dwarf_s26, dwarf_s27, dwarf_s28, dwarf_s29, dwarf_s30, dwarf_s31, // FPA Registers 0-7 dwarf_f0 = 96, dwarf_f1, dwarf_f2, dwarf_f3, dwarf_f4, dwarf_f5, dwarf_f6, dwarf_f7, // Intel wireless MMX general purpose registers 0 - 7 dwarf_wCGR0 = 104, dwarf_wCGR1, dwarf_wCGR2, dwarf_wCGR3, dwarf_wCGR4, dwarf_wCGR5, dwarf_wCGR6, dwarf_wCGR7, // XScale accumulator register 0 - 7 (they do overlap with wCGR0 - wCGR7) dwarf_ACC0 = 104, dwarf_ACC1, dwarf_ACC2, dwarf_ACC3, dwarf_ACC4, dwarf_ACC5, dwarf_ACC6, dwarf_ACC7, // Intel wireless MMX data registers 0 - 15 dwarf_wR0 = 112, dwarf_wR1, dwarf_wR2, dwarf_wR3, dwarf_wR4, dwarf_wR5, dwarf_wR6, dwarf_wR7, dwarf_wR8, dwarf_wR9, dwarf_wR10, dwarf_wR11, dwarf_wR12, dwarf_wR13, dwarf_wR14, dwarf_wR15, dwarf_spsr = 128, dwarf_spsr_fiq, dwarf_spsr_irq, dwarf_spsr_abt, dwarf_spsr_und, dwarf_spsr_svc, dwarf_r8_usr = 144, dwarf_r9_usr, dwarf_r10_usr, dwarf_r11_usr, dwarf_r12_usr, dwarf_r13_usr, dwarf_r14_usr, dwarf_r8_fiq, dwarf_r9_fiq, dwarf_r10_fiq, dwarf_r11_fiq, dwarf_r12_fiq, dwarf_r13_fiq, dwarf_r14_fiq, dwarf_r13_irq, dwarf_r14_irq, dwarf_r13_abt, dwarf_r14_abt, dwarf_r13_und, dwarf_r14_und, dwarf_r13_svc, dwarf_r14_svc, // Intel wireless MMX control register in co-processor 0 - 7 dwarf_wC0 = 192, dwarf_wC1, dwarf_wC2, dwarf_wC3, dwarf_wC4, dwarf_wC5, dwarf_wC6, dwarf_wC7, // VFP-v3/Neon dwarf_d0 = 256, dwarf_d1, dwarf_d2, dwarf_d3, dwarf_d4, dwarf_d5, dwarf_d6, dwarf_d7, dwarf_d8, dwarf_d9, dwarf_d10, dwarf_d11, dwarf_d12, dwarf_d13, dwarf_d14, dwarf_d15, dwarf_d16, dwarf_d17, dwarf_d18, dwarf_d19, dwarf_d20, dwarf_d21, dwarf_d22, dwarf_d23, dwarf_d24, dwarf_d25, dwarf_d26, dwarf_d27, dwarf_d28, dwarf_d29, dwarf_d30, dwarf_d31, // Neon quadword registers dwarf_q0 = 288, dwarf_q1, dwarf_q2, dwarf_q3, dwarf_q4, dwarf_q5, dwarf_q6, dwarf_q7, dwarf_q8, dwarf_q9, dwarf_q10, dwarf_q11, dwarf_q12, dwarf_q13, dwarf_q14, dwarf_q15 }; const char * GetARMDWARFRegisterName (unsigned reg_num); bool GetARMDWARFRegisterInfo (unsigned reg_num, lldb_private::RegisterInfo ®_info); #endif // utility_ARM_DWARF_Registers_h_