/external/lldb/source/Plugins/Process/POSIX/ |
H A D | RegisterContext_i386.cpp | 66 fpu_xmm0, enumerator in enum:__anon25303 131 fpu_xmm0, 414 case dwarf_xmm0: return fpu_xmm0; 471 case gdb_xmm0 : return fpu_xmm0;
|
H A D | RegisterContext_x86_64.h | 79 fpu_xmm0, enumerator in enum:__anon25314
|
H A D | RegisterContext_x86_64.cpp | 238 fpu_xmm0, 715 if (reg >= fpu_xmm0 && reg <= fpu_xmm15) { 716 value.SetBytes(m_fpr.xstate.fxsave.xmm[reg - fpu_xmm0].bytes, reg_info->byte_size, byte_order); 815 if (reg >= fpu_xmm0 && reg <= fpu_xmm15) 816 ::memcpy (m_fpr.xstate.fxsave.xmm[reg - fpu_xmm0].bytes, value.GetBytes(), value.GetByteSize()); 955 case dwarf_xmm0: return fpu_xmm0; 1012 case gdb_xmm0 : return fpu_xmm0; 1070 case gcc_dwarf_fpu_xmm0: return fpu_xmm0; 1159 case gdb_fpu_xmm0 : return fpu_xmm0; 531 assert(reg < k_num_registers && �); return GetRegisterInfo()[reg].byte_offset; } unsigned RegisterContext_x86_64::GetRegisterSize(unsigned reg) { assert(reg < k_num_registers && �); return GetRegisterInfo()[reg].byte_size; } size_t RegisterContext_x86_64::GetRegisterCount() { size_t num_registers = k_num_gpr_registers + k_num_fpr_registers; if (m_fpr_type == eXSAVE) return num_registers + k_num_avx_registers; return num_registers; } const RegisterInfo * RegisterContext_x86_64::GetRegisterInfo() { return g_register_infos; } const RegisterInfo * RegisterContext_x86_64::GetRegisterInfoAtIndex(size_t reg) { if (reg < k_num_registers) return &GetRegisterInfo()[reg]; else return NULL; } size_t RegisterContext_x86_64::GetRegisterSetCount() { size_t sets = 0; for (size_t set = 0; set < k_num_register_sets; ++set) if (IsRegisterSetAvailable(set)) ++sets; return sets; } const RegisterSet * RegisterContext_x86_64::GetRegisterSet(size_t set) { if (IsRegisterSetAvailable(set)) return &g_reg_sets[set]; else return NULL; } unsigned RegisterContext_x86_64::GetRegisterIndexFromOffset(unsigned offset) { unsigned reg; for (reg = 0; reg < k_num_registers; reg++) { if (GetRegisterInfo()[reg].byte_offset == offset) break; } assert(reg < k_num_registers && �); return reg; } const char * RegisterContext_x86_64::GetRegisterName(unsigned reg) { assert(reg < k_num_registers && �); return GetRegisterInfo()[reg].name; } lldb::ByteOrder RegisterContext_x86_64::GetByteOrder() { lldb::ByteOrder byte_order = eByteOrderInvalid; Process *process = CalculateProcess().get(); if (process) byte_order = process->GetByteOrder(); return byte_order; } bool RegisterContext_x86_64::CopyYMMtoXSTATE(uint32_t reg, lldb::ByteOrder byte_order) { if (!IsAVX(reg)) return false; if (byte_order == eByteOrderLittle) { ::memcpy(m_fpr.xstate.fxsave.xmm[reg - fpu_ymm0].bytes, m_ymm_set.ymm[reg - fpu_ymm0].bytes, sizeof(RegisterContext_x86_64::XMMReg)); ::memcpy(m_fpr.xstate.xsave.ymmh[reg - fpu_ymm0].bytes, m_ymm_set.ymm[reg - fpu_ymm0].bytes + sizeof(RegisterContext_x86_64::XMMReg), sizeof(RegisterContext_x86_64::YMMHReg)); return true; } if (byte_order == eByteOrderBig) { ::memcpy(m_fpr.xstate.fxsave.xmm[reg - fpu_ymm0].bytes, m_ymm_set.ymm[reg - fpu_ymm0].bytes + sizeof(RegisterContext_x86_64::XMMReg), sizeof(RegisterContext_x86_64::XMMReg)); ::memcpy(m_fpr.xstate.xsave.ymmh[reg - fpu_ymm0].bytes, m_ymm_set.ymm[reg - fpu_ymm0].bytes, sizeof(RegisterContext_x86_64::YMMHReg)); return true; } return false; } bool RegisterContext_x86_64::CopyXSTATEtoYMM(uint32_t reg, lldb::ByteOrder byte_order) { if (!IsAVX(reg)) return false; if (byte_order == eByteOrderLittle) { ::memcpy(m_ymm_set.ymm[reg - fpu_ymm0].bytes, m_fpr.xstate.fxsave.xmm[reg - fpu_ymm0].bytes, sizeof(RegisterContext_x86_64::XMMReg)); ::memcpy(m_ymm_set.ymm[reg - fpu_ymm0].bytes + sizeof(RegisterContext_x86_64::XMMReg), m_fpr.xstate.xsave.ymmh[reg - fpu_ymm0].bytes, sizeof(RegisterContext_x86_64::YMMHReg)); return true; } if (byte_order == eByteOrderBig) { ::memcpy(m_ymm_set.ymm[reg - fpu_ymm0].bytes + sizeof(RegisterContext_x86_64::XMMReg), m_fpr.xstate.fxsave.xmm[reg - fpu_ymm0].bytes, sizeof(RegisterContext_x86_64::XMMReg)); ::memcpy(m_ymm_set.ymm[reg - fpu_ymm0].bytes, m_fpr.xstate.xsave.ymmh[reg - fpu_ymm0].bytes, sizeof(RegisterContext_x86_64::YMMHReg)); return true; } return false; } bool RegisterContext_x86_64::IsRegisterSetAvailable(size_t set_index) { size_t num_sets = k_num_register_sets - k_num_extended_register_sets; if (m_fpr_type == eXSAVE) ++num_sets; return (set_index < num_sets); } bool RegisterContext_x86_64::ReadRegister(const RegisterInfo *reg_info, RegisterValue &value) { if (!reg_info) return false; const uint32_t reg = reg_info->kinds[eRegisterKindLLDB]; if (IsFPR(reg, m_fpr_type)) { if (!ReadFPR()) return false; } else { bool success = ReadRegister(reg, value); if (success && reg >= k_first_i386 && reg <= k_last_i386) if (value.GetByteSize() > reg_info->byte_size) value.SetType(reg_info); return success; } if (reg_info->encoding == eEncodingVector) { ByteOrder byte_order = GetByteOrder(); if (byte_order != ByteOrder::eByteOrderInvalid) { if (reg >= fpu_stmm0 && reg <= fpu_stmm7) { value.SetBytes(m_fpr.xstate.fxsave.stmm[reg - fpu_stmm0].bytes, reg_info->byte_size, byte_order); } if (reg >= fpu_xmm0 && reg <= fpu_xmm15) { value.SetBytes(m_fpr.xstate.fxsave.xmm[reg - fpu_xmm0].bytes, reg_info->byte_size, byte_order); } if (reg >= fpu_ymm0 && reg <= fpu_ymm15) argument
|
/external/lldb/source/Plugins/Process/Utility/ |
H A D | RegisterContextDarwin_i386.cpp | 73 fpu_xmm0, enumerator in enum:__anon25321 366 fpu_xmm0, 647 case fpu_xmm0: 657 //::memcpy (reg_value.value.vector.uint8, fpu.xmm[reg - fpu_xmm0].bytes, 16); 766 case fpu_xmm0: 776 ::memcpy (fpu.xmm[reg - fpu_xmm0].bytes, value.GetBytes(), value.GetByteSize()); 883 case dwarf_xmm0: return fpu_xmm0; 931 case gdb_xmm0 : return fpu_xmm0;
|
H A D | RegisterContextDarwin_x86_64.cpp | 79 fpu_xmm0, enumerator in enum:__anon25328 407 fpu_xmm0, 691 case fpu_xmm0: 707 value.SetBytes(fpu.xmm[reg - fpu_xmm0].bytes, reg_info->byte_size, lldb::endian::InlHostByteOrder()); 819 case fpu_xmm0: 835 ::memcpy (fpu.xmm[reg - fpu_xmm0].bytes, value.GetBytes(), value.GetByteSize()); 941 case gcc_dwarf_fpu_xmm0: return fpu_xmm0; 1013 case gdb_fpu_xmm0 : return fpu_xmm0;
|
/external/lldb/tools/debugserver/source/MacOSX/i386/ |
H A D | DNBArchImplI386.cpp | 128 fpu_xmm0, enumerator in enum:__anon25402 1127 { e_regSetFPU, fpu_xmm0, "xmm0", NULL, Vector, VectorOfUInt8, FPU_SIZE_XMM(xmm0), FPU_OFFSET(xmm0), INVALID_NUB_REGNUM, dwarf_xmm0, INVALID_NUB_REGNUM, gdb_xmm0, NULL, NULL }, 1160 { e_regSetFPU, fpu_xmm0, "xmm0", NULL, Vector, VectorOfUInt8, FPU_SIZE_XMM(xmm0), AVX_OFFSET(xmm0), INVALID_NUB_REGNUM, dwarf_xmm0, INVALID_NUB_REGNUM, gdb_xmm0, NULL, NULL }, 1338 case fpu_xmm0: memcpy(&value->value.uint8, m_state.context.fpu.avx.__fpu_xmm0.__xmm_reg, 16); return true; 1385 case fpu_xmm0: memcpy(&value->value.uint8, m_state.context.fpu.no_avx.__fpu_xmm0.__xmm_reg, 16); return true; 1485 case fpu_xmm0: memcpy(m_state.context.fpu.avx.__fpu_xmm0.__xmm_reg, &value->value.uint8, 16); success = true; break; 1532 case fpu_xmm0: memcpy(m_state.context.fpu.no_avx.__fpu_xmm0.__xmm_reg, &value->value.uint8, 16); success = true; break;
|
/external/lldb/tools/debugserver/source/MacOSX/x86_64/ |
H A D | DNBArchImplX86_64.cpp | 1065 fpu_xmm0, enumerator in enum:__anon25423 1427 { e_regSetFPU, fpu_xmm0 , "xmm0" , NULL, Vector, VectorOfUInt8, FPU_SIZE_XMM(xmm0) , FPU_OFFSET(xmm0) , gcc_dwarf_xmm0 , gcc_dwarf_xmm0 , -1U, gdb_xmm0 , NULL, NULL }, 1468 { e_regSetFPU, fpu_xmm0 , "xmm0" , NULL, Vector, VectorOfUInt8, FPU_SIZE_XMM(xmm0) , AVX_OFFSET(xmm0) , gcc_dwarf_xmm0 , gcc_dwarf_xmm0 , -1U, gdb_xmm0 , NULL, NULL }, 1667 case fpu_xmm0: 1683 memcpy(&value->value.uint8, &m_state.context.fpu.avx.__fpu_xmm0 + (reg - fpu_xmm0), 16); 1733 case fpu_xmm0: 1749 memcpy(&value->value.uint8, &m_state.context.fpu.no_avx.__fpu_xmm0 + (reg - fpu_xmm0), 16); 1847 case fpu_xmm0: 1863 memcpy (&m_state.context.fpu.avx.__fpu_xmm0 + (reg - fpu_xmm0), &value->value.uint8, 16); 1915 case fpu_xmm0 [all...] |