| LLDB mainline
    | 
#include <RegisterValue.h>
| Classes | |
| struct | RegisterValueBuffer | 
| Public Types | |
| enum | { kTypicalRegisterByteSize = 256u , kMaxRegisterByteSize = 256u * 256u } | 
| enum | Type { eTypeInvalid , eTypeUInt8 , eTypeUInt16 , eTypeUInt32 , eTypeUInt64 , eTypeUInt128 , eTypeFloat , eTypeDouble , eTypeLongDouble , eTypeBytes } | 
| typedef llvm::SmallVector< uint8_t, kTypicalRegisterByteSize > | BytesContainer | 
| Public Member Functions | |
| RegisterValue () | |
| RegisterValue (uint8_t inst) | |
| RegisterValue (uint16_t inst) | |
| RegisterValue (uint32_t inst) | |
| RegisterValue (uint64_t inst) | |
| RegisterValue (llvm::APInt inst) | |
| RegisterValue (float value) | |
| RegisterValue (double value) | |
| RegisterValue (long double value) | |
| RegisterValue (llvm::ArrayRef< uint8_t > bytes, lldb::ByteOrder byte_order) | |
| RegisterValue::Type | GetType () const | 
| bool | CopyValue (const RegisterValue &rhs) | 
| void | SetType (RegisterValue::Type type) | 
| RegisterValue::Type | SetType (const RegisterInfo ®_info) | 
| bool | GetData (DataExtractor &data) const | 
| uint32_t | GetAsMemoryData (const RegisterInfo ®_info, void *dst, uint32_t dst_len, lldb::ByteOrder dst_byte_order, Status &error) const | 
| uint32_t | SetFromMemoryData (const RegisterInfo ®_info, const void *src, uint32_t src_len, lldb::ByteOrder src_byte_order, Status &error) | 
| bool | GetScalarValue (Scalar &scalar) const | 
| uint8_t | GetAsUInt8 (uint8_t fail_value=UINT8_MAX, bool *success_ptr=nullptr) const | 
| uint16_t | GetAsUInt16 (uint16_t fail_value=UINT16_MAX, bool *success_ptr=nullptr) const | 
| uint32_t | GetAsUInt32 (uint32_t fail_value=UINT32_MAX, bool *success_ptr=nullptr) const | 
| uint64_t | GetAsUInt64 (uint64_t fail_value=UINT64_MAX, bool *success_ptr=nullptr) const | 
| llvm::APInt | GetAsUInt128 (const llvm::APInt &fail_value, bool *success_ptr=nullptr) const | 
| float | GetAsFloat (float fail_value=0.0f, bool *success_ptr=nullptr) const | 
| double | GetAsDouble (double fail_value=0.0, bool *success_ptr=nullptr) const | 
| long double | GetAsLongDouble (long double fail_value=0.0, bool *success_ptr=nullptr) const | 
| void | SetValueToInvalid () | 
| bool | ClearBit (uint32_t bit) | 
| bool | SetBit (uint32_t bit) | 
| bool | operator== (const RegisterValue &rhs) const | 
| bool | operator!= (const RegisterValue &rhs) const | 
| void | operator= (uint8_t uint) | 
| void | operator= (uint16_t uint) | 
| void | operator= (uint32_t uint) | 
| void | operator= (uint64_t uint) | 
| void | operator= (llvm::APInt uint) | 
| void | operator= (float f) | 
| void | operator= (double f) | 
| void | operator= (long double f) | 
| void | SetUInt8 (uint8_t uint) | 
| void | SetUInt16 (uint16_t uint) | 
| void | SetUInt32 (uint32_t uint, Type t=eTypeUInt32) | 
| void | SetUInt64 (uint64_t uint, Type t=eTypeUInt64) | 
| void | SetUInt128 (llvm::APInt uint) | 
| bool | SetUInt (uint64_t uint, uint32_t byte_size) | 
| void | SetFloat (float f) | 
| void | SetDouble (double f) | 
| void | SetLongDouble (long double f) | 
| void | SetBytes (const void *bytes, size_t length, lldb::ByteOrder byte_order) | 
| bool | SignExtend (uint32_t sign_bitpos) | 
| Status | SetValueFromString (const RegisterInfo *reg_info, llvm::StringRef value_str) | 
| Status | SetValueFromString (const RegisterInfo *reg_info, const char *value_str)=delete | 
| Status | SetValueFromData (const RegisterInfo ®_info, DataExtractor &data, lldb::offset_t offset, bool partial_data_ok) | 
| const void * | GetBytes () const | 
| lldb::ByteOrder | GetByteOrder () const | 
| uint32_t | GetByteSize () const | 
| void | Clear () | 
| Protected Attributes | |
| RegisterValue::Type | m_type = eTypeInvalid | 
| Scalar | m_scalar | 
| struct lldb_private::RegisterValue::RegisterValueBuffer | buffer | 
Definition at line 29 of file RegisterValue.h.
| typedef llvm::SmallVector<uint8_t, kTypicalRegisterByteSize> lldb_private::RegisterValue::BytesContainer | 
Definition at line 41 of file RegisterValue.h.
| anonymous enum | 
| Enumerator | |
|---|---|
| kTypicalRegisterByteSize | |
| kMaxRegisterByteSize | |
Definition at line 31 of file RegisterValue.h.
| Enumerator | |
|---|---|
| eTypeInvalid | |
| eTypeUInt8 | |
| eTypeUInt16 | |
| eTypeUInt32 | |
| eTypeUInt64 | |
| eTypeUInt128 | |
| eTypeFloat | |
| eTypeDouble | |
| eTypeLongDouble | |
| eTypeBytes | |
Definition at line 43 of file RegisterValue.h.
| 
 | inline | 
Definition at line 56 of file RegisterValue.h.
References m_scalar.
Referenced by CopyValue(), operator!=(), operator==(), and SetType().
| 
 | inlineexplicit | 
Definition at line 58 of file RegisterValue.h.
References eTypeUInt8, m_scalar, and m_type.
| 
 | inlineexplicit | 
Definition at line 60 of file RegisterValue.h.
References eTypeUInt16, m_scalar, and m_type.
| 
 | inlineexplicit | 
Definition at line 64 of file RegisterValue.h.
References eTypeUInt32, m_scalar, and m_type.
| 
 | inlineexplicit | 
Definition at line 68 of file RegisterValue.h.
References eTypeUInt64, m_scalar, and m_type.
| 
 | inlineexplicit | 
Definition at line 72 of file RegisterValue.h.
References eTypeUInt128, m_scalar, and m_type.
| 
 | inlineexplicit | 
Definition at line 76 of file RegisterValue.h.
References eTypeFloat, m_scalar, and m_type.
| 
 | inlineexplicit | 
Definition at line 78 of file RegisterValue.h.
References eTypeDouble, m_scalar, and m_type.
| 
 | inlineexplicit | 
Definition at line 82 of file RegisterValue.h.
References eTypeLongDouble, m_scalar, and m_type.
| 
 | inlineexplicit | 
Definition at line 86 of file RegisterValue.h.
References SetBytes().
| void RegisterValue::Clear | ( | ) | 
Definition at line 140 of file RegisterValue.cpp.
References eTypeInvalid, and m_type.
| bool RegisterValue::ClearBit | ( | uint32_t | bit | ) | 
Definition at line 766 of file RegisterValue.cpp.
References lldb_private::bit(), buffer, lldb::eByteOrderBig, lldb::eByteOrderLittle, eTypeBytes, eTypeDouble, eTypeFloat, eTypeInvalid, eTypeLongDouble, eTypeUInt128, eTypeUInt16, eTypeUInt32, eTypeUInt64, eTypeUInt8, GetByteSize(), m_scalar, and m_type.
| bool RegisterValue::CopyValue | ( | const RegisterValue & | rhs | ) | 
Definition at line 456 of file RegisterValue.cpp.
References buffer, lldb_private::RegisterValue::RegisterValueBuffer::byte_order, lldb_private::RegisterValue::RegisterValueBuffer::bytes, eTypeBytes, eTypeDouble, eTypeFloat, eTypeInvalid, eTypeLongDouble, eTypeUInt128, eTypeUInt16, eTypeUInt32, eTypeUInt64, eTypeUInt8, m_scalar, m_type, and RegisterValue().
Referenced by SetType().
| double RegisterValue::GetAsDouble | ( | double | fail_value = 0.0, | 
| bool * | success_ptr = nullptr ) const | 
Definition at line 628 of file RegisterValue.cpp.
References eTypeDouble, eTypeFloat, eTypeLongDouble, eTypeUInt128, eTypeUInt32, eTypeUInt64, m_scalar, and m_type.
Referenced by ABISysV_arm::GetReturnValueObjectImpl().
| float RegisterValue::GetAsFloat | ( | float | fail_value = 0.0f, | 
| bool * | success_ptr = nullptr ) const | 
Definition at line 609 of file RegisterValue.cpp.
References eTypeDouble, eTypeFloat, eTypeLongDouble, eTypeUInt128, eTypeUInt32, eTypeUInt64, m_scalar, and m_type.
Referenced by ABISysV_arm::GetReturnValueObjectImpl().
| long double RegisterValue::GetAsLongDouble | ( | long double | fail_value = 0.0, | 
| bool * | success_ptr = nullptr ) const | 
Definition at line 648 of file RegisterValue.cpp.
References eTypeDouble, eTypeFloat, eTypeLongDouble, eTypeUInt128, eTypeUInt32, eTypeUInt64, m_scalar, and m_type.
| uint32_t RegisterValue::GetAsMemoryData | ( | const RegisterInfo & | reg_info, | 
| void * | dst, | ||
| uint32_t | dst_len, | ||
| lldb::ByteOrder | dst_byte_order, | ||
| Status & | error ) const | 
Definition at line 38 of file RegisterValue.cpp.
References lldb_private::RegisterInfo::byte_size, lldb_private::DataExtractor::CopyByteOrderedData(), error(), eTypeInvalid, lldb_private::Status::FromErrorString(), lldb_private::Status::FromErrorStringWithFormat(), lldb_private::Status::FromErrorStringWithFormatv(), GetData(), GetType(), and lldb_private::RegisterInfo::name.
Referenced by ABIMacOSX_arm64::GetReturnValueObjectImpl(), ABIMacOSX_arm::GetReturnValueObjectImpl(), ABISysV_arm64::GetReturnValueObjectImpl(), ABISysV_arm::GetReturnValueObjectImpl(), ABISysV_mips64::GetReturnValueObjectImpl(), ABISysV_i386::GetReturnValueObjectSimple(), ABISysV_ppc::GetReturnValueObjectSimple(), ABISysV_x86_64::GetReturnValueObjectSimple(), ABIWindows_x86_64::GetReturnValueObjectSimple(), GetValObjFromIntRegs(), GetValObjFromIntRegs(), LoadValueFromConsecutiveGPRRegisters(), LoadValueFromConsecutiveGPRRegisters(), EntityRegister::Materialize(), read_register_u128(), lldb_private::process_linux::NativeRegisterContextLinux::WriteRegisterRaw(), lldb_private::NativeRegisterContext::WriteRegisterValueToMemory(), and lldb_private::RegisterContext::WriteRegisterValueToMemory().
| llvm::APInt RegisterValue::GetAsUInt128 | ( | const llvm::APInt & | fail_value, | 
| bool * | success_ptr = nullptr ) const | 
Definition at line 573 of file RegisterValue.cpp.
References BITWIDTH_INT128, buffer, eTypeBytes, eTypeDouble, eTypeFloat, eTypeLongDouble, eTypeUInt128, eTypeUInt16, eTypeUInt32, eTypeUInt64, eTypeUInt8, m_scalar, m_type, and NUM_OF_WORDS_INT128.
Referenced by EmulateInstructionMIPS64::Emulate_MSA_Branch_V(), and EmulateInstructionMIPS::Emulate_MSA_Branch_V().
| uint16_t RegisterValue::GetAsUInt16 | ( | uint16_t | fail_value = UINT16_MAX, | 
| bool * | success_ptr = nullptr ) const | 
Definition at line 482 of file RegisterValue.cpp.
References buffer, eTypeBytes, eTypeUInt16, eTypeUInt8, m_scalar, and m_type.
Referenced by read_register_u16_raw(), and RegisterContextDarwin_x86_64::WriteRegister().
| uint32_t RegisterValue::GetAsUInt32 | ( | uint32_t | fail_value = UINT32_MAX, | 
| bool * | success_ptr = nullptr ) const | 
Definition at line 508 of file RegisterValue.cpp.
References buffer, eTypeBytes, eTypeDouble, eTypeFloat, eTypeLongDouble, eTypeUInt16, eTypeUInt32, eTypeUInt8, m_scalar, and m_type.
Referenced by ThreadMachCore::CalculateStopInfo(), lldb_private::DumpRegisterValue(), lldb_private::ArchitectureArm::GetArchitectureUnwindPlan(), ABISysV_hexagon::GetReturnValueObjectImpl(), read_register_u32_raw(), RegisterContextDarwin_arm64::WriteRegister(), RegisterContextDarwin_arm::WriteRegister(), RegisterContextDarwin_riscv32::WriteRegister(), and RegisterContextDarwin_x86_64::WriteRegister().
| uint64_t RegisterValue::GetAsUInt64 | ( | uint64_t | fail_value = UINT64_MAX, | 
| bool * | success_ptr = nullptr ) const | 
Definition at line 538 of file RegisterValue.cpp.
References buffer, eTypeBytes, eTypeDouble, eTypeFloat, eTypeLongDouble, eTypeUInt16, eTypeUInt32, eTypeUInt64, eTypeUInt8, m_scalar, and m_type.
Referenced by AddThreadLocalMemoryRegions(), ThreadMachCore::CalculateStopInfo(), lldb_private::NativeRegisterContextDBReg_x86::ClearAllHardwareWatchpoints(), lldb_private::NativeRegisterContextDBReg_x86::ClearHardwareWatchpoint(), lldb_private::NativeRegisterContextDBReg_x86::ClearWatchpointHit(), lldb_private::StopInfoMachException::DeterminePtrauthFailure(), lldb_private::OptionArgParser::DoToAddress(), lldb_private::process_linux::NativeRegisterContextLinux::DoWriteRegisterValue(), CommandObjectRegisterRead::DumpRegister(), lldb_private::DumpRegisterValue(), lldb_private::NativeRegisterContextDBReg_x86::GetWatchpointAddress(), lldb_private::NativeRegisterContextDBReg_x86::IsWatchpointHit(), lldb_private::NativeRegisterContextDBReg_x86::IsWatchpointVacant(), lldb_private::Rs::Read(), read_register_u64_raw(), lldb_private::Rs::ReadAPFloat(), lldb_private::RegisterContextUnwind::ReadFrameAddress(), lldb_private::RegisterContextUnwind::ReadGPRValue(), lldb_private::RegisterContextUnwind::ReadRegister(), lldb_private::NativeRegisterContext::ReadRegisterAsUnsigned(), lldb_private::RegisterContext::ReadRegisterAsUnsigned(), lldb_private::EmulateInstruction::ReadRegisterUnsigned(), lldb_private::RegisterContextUnwind::ReadRegisterValueFromRegisterLocation(), lldb_private::NativeRegisterContextDBReg_x86::SetHardwareWatchpointWithIndex(), lldb_private::RegisterContextUnwind::TryFallbackUnwindPlan(), EmulationStateARM::WritePseudoRegister(), RegisterContextDarwin_arm64::WriteRegister(), RegisterContextDarwin_x86_64::WriteRegister(), and UnwindAssemblyInstEmulation::WriteRegister().
| 
 | inline | 
Definition at line 118 of file RegisterValue.h.
References eTypeUInt8, m_scalar, and m_type.
Referenced by RegisterContextDarwin_x86_64::WriteRegister().
| 
 | inline | 
Definition at line 256 of file RegisterValue.h.
References buffer, eTypeBytes, lldb_private::endian::InlHostByteOrder(), and m_type.
Referenced by GetData().
| const void * RegisterValue::GetBytes | ( | ) | const | 
Definition at line 669 of file RegisterValue.cpp.
References buffer, eTypeBytes, eTypeDouble, eTypeFloat, eTypeInvalid, eTypeLongDouble, eTypeUInt128, eTypeUInt16, eTypeUInt32, eTypeUInt64, eTypeUInt8, m_scalar, and m_type.
Referenced by EmulateInstructionMIPS64::Emulate_MSA_Branch_DF(), EmulateInstructionMIPS::Emulate_MSA_Branch_DF(), GetData(), lldb_private::process_gdb_remote::GDBRemoteCommunicationServerLLGS::Handle_g(), lldb_private::process_gdb_remote::GDBRemoteCommunicationServerLLGS::Handle_p(), PrintRegisterValue(), lldb_private::RegisterContextUnifiedCore::RegisterContextUnifiedCore(), RegisterContextDarwin_arm64::WriteRegister(), RegisterContextDarwin_x86_64::WriteRegister(), and WriteRegisterValueInHexFixedWidth().
| uint32_t RegisterValue::GetByteSize | ( | ) | const | 
Definition at line 689 of file RegisterValue.cpp.
References buffer, eTypeBytes, eTypeDouble, eTypeFloat, eTypeInvalid, eTypeLongDouble, eTypeUInt128, eTypeUInt16, eTypeUInt32, eTypeUInt64, eTypeUInt8, m_scalar, and m_type.
Referenced by ClearBit(), GetData(), lldb_private::process_gdb_remote::GDBRemoteCommunicationServerLLGS::Handle_p(), EntityRegister::Materialize(), lldb_private::RegisterContextUnifiedCore::RegisterContextUnifiedCore(), SetBit(), RegisterContextDarwin_arm64::WriteRegister(), RegisterContextDarwin_x86_64::WriteRegister(), lldb_private::process_linux::NativeRegisterContextLinux::WriteRegisterRaw(), and WriteRegisterValueInHexFixedWidth().
| bool RegisterValue::GetData | ( | DataExtractor & | data | ) | const | 
Definition at line 34 of file RegisterValue.cpp.
References GetByteOrder(), GetBytes(), GetByteSize(), and lldb_private::DataExtractor::SetData().
Referenced by lldb_private::DumpRegisterValue(), GetAsMemoryData(), ABIMacOSX_arm64::GetReturnValueObjectImpl(), ABISysV_arm64::GetReturnValueObjectImpl(), ABISysV_mips64::GetReturnValueObjectImpl(), ABISysV_mips::GetReturnValueObjectImpl(), ABISysV_ppc::GetReturnValueObjectImpl(), ABISysV_x86_64::GetReturnValueObjectImpl(), ABIWindows_x86_64::GetReturnValueObjectImpl(), ABISysV_i386::GetReturnValueObjectSimple(), ABISysV_ppc::GetReturnValueObjectSimple(), ABISysV_s390x::GetReturnValueObjectSimple(), ABISysV_x86_64::GetReturnValueObjectSimple(), ABIWindows_x86_64::GetReturnValueObjectSimple(), SetType(), and lldb_private::process_gdb_remote::GDBRemoteRegisterContext::WriteRegister().
Definition at line 115 of file RegisterValue.cpp.
References buffer, lldb::eEncodingUint, eTypeBytes, eTypeDouble, eTypeFloat, eTypeInvalid, eTypeLongDouble, eTypeUInt128, eTypeUInt16, eTypeUInt32, eTypeUInt64, eTypeUInt8, m_scalar, m_type, lldb_private::Scalar::SetValueFromData(), and lldb_private::Status::Success().
Referenced by ABIMacOSX_arm64::GetArgumentValues(), ABIMacOSX_arm::GetArgumentValues(), ABISysV_arm64::GetArgumentValues(), ABISysV_arm::GetArgumentValues(), and lldb_private::DWARFExpression::ReadRegisterValueAsScalar().
| 
 | inline | 
Definition at line 91 of file RegisterValue.h.
References m_type.
Referenced by lldb_private::OptionArgParser::DoToAddress(), GetAsMemoryData(), lldb_private::ThreadPlanAssemblyTracer::Log(), and lldb_private::RegisterContextUnwind::ReadRegister().
| bool RegisterValue::operator!= | ( | const RegisterValue & | rhs | ) | const | 
Definition at line 762 of file RegisterValue.cpp.
References RegisterValue().
| 
 | inline | 
Definition at line 190 of file RegisterValue.h.
References eTypeDouble, m_scalar, and m_type.
| 
 | inline | 
Definition at line 185 of file RegisterValue.h.
References eTypeFloat, m_scalar, and m_type.
| 
 | inline | 
Definition at line 180 of file RegisterValue.h.
References eTypeUInt128, m_scalar, and m_type.
| 
 | inline | 
Definition at line 195 of file RegisterValue.h.
References eTypeLongDouble, m_scalar, and m_type.
| 
 | inline | 
Definition at line 165 of file RegisterValue.h.
References eTypeUInt16, m_scalar, and m_type.
| 
 | inline | 
Definition at line 170 of file RegisterValue.h.
References eTypeUInt32, m_scalar, and m_type.
| 
 | inline | 
Definition at line 175 of file RegisterValue.h.
References eTypeUInt64, m_scalar, and m_type.
| 
 | inline | 
Definition at line 160 of file RegisterValue.h.
References eTypeUInt8, m_scalar, and m_type.
| bool RegisterValue::operator== | ( | const RegisterValue & | rhs | ) | const | 
Definition at line 741 of file RegisterValue.cpp.
References buffer, lldb_private::RegisterValue::RegisterValueBuffer::bytes, eTypeBytes, eTypeDouble, eTypeFloat, eTypeInvalid, eTypeLongDouble, eTypeUInt128, eTypeUInt16, eTypeUInt32, eTypeUInt64, eTypeUInt8, m_scalar, m_type, and RegisterValue().
| bool RegisterValue::SetBit | ( | uint32_t | bit | ) | 
Definition at line 806 of file RegisterValue.cpp.
References lldb_private::bit(), buffer, lldb::eByteOrderBig, lldb::eByteOrderLittle, eTypeBytes, eTypeDouble, eTypeFloat, eTypeInvalid, eTypeLongDouble, eTypeUInt128, eTypeUInt16, eTypeUInt32, eTypeUInt64, eTypeUInt8, GetByteSize(), m_scalar, and m_type.
| void RegisterValue::SetBytes | ( | const void * | bytes, | 
| size_t | length, | ||
| lldb::ByteOrder | byte_order ) | 
Definition at line 728 of file RegisterValue.cpp.
References buffer, eTypeBytes, eTypeInvalid, and m_type.
Referenced by ParseVectorEncoding(), RegisterContextCorePOSIX_powerpc::ReadRegister(), RegisterContextCorePOSIX_ppc64le::ReadRegister(), RegisterContextDarwin_arm64::ReadRegister(), RegisterContextDarwin_x86_64::ReadRegister(), RegisterValue(), ABISysV_s390x::SetReturnValueObject(), ABISysV_x86_64::SetReturnValueObject(), ABIWindows_x86_64::SetReturnValueObject(), and lldb_private::process_linux::NativeRegisterContextLinux::WriteRegisterRaw().
| 
 | inline | 
Definition at line 232 of file RegisterValue.h.
References eTypeDouble, m_scalar, and m_type.
Referenced by RegisterContextDarwin_arm64::ReadRegister(), and SetValueFromData().
| 
 | inline | 
Definition at line 227 of file RegisterValue.h.
References eTypeFloat, m_scalar, and m_type.
Referenced by RegisterContextDarwin_arm64::ReadRegister(), and SetValueFromData().
| uint32_t RegisterValue::SetFromMemoryData | ( | const RegisterInfo & | reg_info, | 
| const void * | src, | ||
| uint32_t | src_len, | ||
| lldb::ByteOrder | src_byte_order, | ||
| Status & | error ) | 
Definition at line 74 of file RegisterValue.cpp.
References lldb_private::RegisterInfo::byte_size, error(), lldb_private::Status::FromErrorStringWithFormat(), lldb_private::RegisterInfo::name, and SetValueFromData().
Referenced by EmulateInstructionARM64::EmulateLDPSTP(), EmulateInstructionARM64::EmulateLDRSTRImm(), lldb_private::minidump::RegisterContextMinidump_ARM64::ReadRegister(), lldb_private::minidump::RegisterContextMinidump_ARM::ReadRegister(), lldb_private::process_gdb_remote::GDBRemoteRegisterContext::ReadRegister(), RegisterContextCorePOSIX_arm64::ReadRegister(), RegisterContextCorePOSIX_loongarch64::ReadRegister(), RegisterContextCorePOSIX_riscv32::ReadRegister(), RegisterContextCorePOSIX_riscv64::ReadRegister(), RegisterContextCorePOSIX_x86_64::ReadRegister(), lldb_private::NativeRegisterContext::ReadRegisterValueFromMemory(), and lldb_private::RegisterContext::ReadRegisterValueFromMemory().
| 
 | inline | 
Definition at line 237 of file RegisterValue.h.
References eTypeLongDouble, m_scalar, and m_type.
Referenced by ABISysV_i386::SetReturnValueObject(), and SetValueFromData().
| RegisterValue::Type RegisterValue::SetType | ( | const RegisterInfo & | reg_info | ) | 
Definition at line 142 of file RegisterValue.cpp.
References CopyValue(), error(), GetData(), m_type, RegisterValue(), SetValueFromData(), and UNUSED_IF_ASSERT_DISABLED.
| 
 | inline | 
Definition at line 95 of file RegisterValue.h.
References m_type.
Referenced by lldb_private::process_linux::NativeRegisterContextLinux::WriteRegisterRaw().
| bool RegisterValue::SetUInt | ( | uint64_t | uint, | 
| uint32_t | byte_size ) | 
Definition at line 710 of file RegisterValue.cpp.
References SetUInt128(), SetUInt16(), SetUInt32(), SetUInt64(), and SetUInt8().
Referenced by lldb_private::process_linux::NativeRegisterContextLinux::DoReadRegisterValue(), UnwindAssemblyInstEmulation::GetNonCallSiteUnwindPlanFromAssembly(), UnwindAssemblyInstEmulation::GetRegisterValue(), EmulationStateARM::ReadPseudoRegister(), lldb_private::RegisterContextDummy::ReadRegister(), lldb_private::RegisterContextHistory::ReadRegister(), RegisterContextCorePOSIX_s390x::ReadRegister(), lldb_private::RegisterContextUnwind::ReadRegisterValueFromRegisterLocation(), SetValueFromString(), lldb_private::NativeRegisterContext::WriteRegisterFromUnsigned(), lldb_private::RegisterContext::WriteRegisterFromUnsigned(), lldb_private::EmulateInstruction::WriteRegisterUnsigned(), and lldb_private::EmulateInstruction::WriteRegisterUnsigned().
| 
 | inline | 
Definition at line 220 of file RegisterValue.h.
References eTypeUInt128, m_scalar, and m_type.
Referenced by SetUInt(), and SetValueFromData().
| 
 | inline | 
Definition at line 205 of file RegisterValue.h.
References eTypeUInt16, m_scalar, and m_type.
Referenced by lldb_private::RegisterContextUnifiedCore::ReadRegister(), SetUInt(), and SetValueFromData().
| 
 | inline | 
Definition at line 210 of file RegisterValue.h.
References eTypeUInt32, m_scalar, and m_type.
Referenced by ABIMacOSX_arm::PrepareTrivialCall(), ABIMacOSX_i386::PrepareTrivialCall(), ABISysV_arm::PrepareTrivialCall(), ABISysV_i386::PrepareTrivialCall(), ABISysV_mips::PrepareTrivialCall(), lldb_private::RegisterContextUnifiedCore::ReadRegister(), RegisterContextDarwin_arm64::ReadRegister(), RegisterContextDarwin_arm::ReadRegister(), ABISysV_i386::SetReturnValueObject(), SetUInt(), and SetValueFromData().
| 
 | inline | 
Definition at line 215 of file RegisterValue.h.
References eTypeUInt64, m_scalar, and m_type.
Referenced by lldb_private::Executor::operator()(), lldb_private::RegisterContextUnifiedCore::ReadRegister(), RegisterContextDarwin_arm64::ReadRegister(), lldb_private::EmulateInstruction::ReadRegisterDefault(), SetUInt(), SetValueFromData(), lldb_private::Rd::Write(), and lldb_private::Rd::WriteAPFloat().
| 
 | inline | 
Definition at line 200 of file RegisterValue.h.
References eTypeUInt8, m_scalar, and m_type.
Referenced by SetUInt(), and SetValueFromData().
| Status RegisterValue::SetValueFromData | ( | const RegisterInfo & | reg_info, | 
| DataExtractor & | data, | ||
| lldb::offset_t | offset, | ||
| bool | partial_data_ok ) | 
Definition at line 155 of file RegisterValue.cpp.
References buffer, lldb_private::RegisterInfo::byte_size, lldb_private::DataExtractor::CopyByteOrderedData(), lldb::eByteOrderLittle, lldb::eEncodingIEEE754, lldb::eEncodingInvalid, lldb::eEncodingSint, lldb::eEncodingUint, lldb::eEncodingVector, lldb_private::RegisterInfo::encoding, error(), eTypeBytes, eTypeInvalid, lldb_private::Status::FromErrorString(), lldb_private::Status::FromErrorStringWithFormat(), lldb_private::DataExtractor::GetByteOrder(), lldb_private::DataExtractor::GetByteSize(), lldb_private::DataExtractor::GetDouble(), lldb_private::DataExtractor::GetFloat(), lldb_private::DataExtractor::GetLongDouble(), lldb_private::DataExtractor::GetMaxU32(), lldb_private::DataExtractor::GetMaxU64(), lldb_private::DataExtractor::GetU64(), kMaxRegisterByteSize, m_type, lldb_private::RegisterInfo::name, SetDouble(), SetFloat(), SetLongDouble(), SetUInt128(), SetUInt16(), SetUInt32(), SetUInt64(), SetUInt8(), and lldb_private::type128::x.
Referenced by lldb_private::process_gdb_remote::GDBRemoteRegisterContext::ReadRegister(), lldb_private::wasm::RegisterContextWasm::ReadRegister(), RegisterContextCorePOSIX_arm::ReadRegister(), RegisterContextMemory::ReadRegister(), lldb_private::ValueObjectVariable::SetData(), SetFromMemoryData(), ABIMacOSX_arm64::SetReturnValueObject(), ABISysV_arm64::SetReturnValueObject(), and SetType().
| 
 | delete | 
| Status RegisterValue::SetValueFromString | ( | const RegisterInfo * | reg_info, | 
| llvm::StringRef | value_str ) | 
Definition at line 313 of file RegisterValue.cpp.
References lldb_private::RegisterInfo::byte_size, lldb::eEncodingIEEE754, lldb::eEncodingInvalid, lldb::eEncodingSint, lldb::eEncodingUint, lldb::eEncodingVector, lldb_private::RegisterInfo::encoding, error(), eTypeDouble, eTypeFloat, eTypeInvalid, eTypeLongDouble, lldb_private::Status::FromErrorString(), lldb_private::Status::FromErrorStringWithFormat(), lldb_private::Status::FromErrorStringWithFormatv(), m_scalar, m_type, ParseVectorEncoding(), SetUInt(), SInt64ValueIsValidForByteSize(), and UInt64ValueIsValidForByteSize().
Referenced by CommandObjectRegisterWrite::DoExecute(), and lldb_private::ValueObjectVariable::SetValueFromCString().
| 
 | inline | 
Definition at line 150 of file RegisterValue.h.
References eTypeInvalid, and m_type.
Referenced by RegisterContextDarwin_arm64::ReadRegister(), and RegisterContextDarwin_arm::ReadRegister().
| bool RegisterValue::SignExtend | ( | uint32_t | sign_bitpos | ) | 
Definition at line 436 of file RegisterValue.cpp.
References eTypeBytes, eTypeDouble, eTypeFloat, eTypeInvalid, eTypeLongDouble, eTypeUInt128, eTypeUInt16, eTypeUInt32, eTypeUInt64, eTypeUInt8, m_scalar, and m_type.
Referenced by EmulateInstructionARM64::EmulateLDPSTP(), ABIMacOSX_arm64::GetArgumentValues(), ABIMacOSX_arm::GetArgumentValues(), ABISysV_arm64::GetArgumentValues(), and ABISysV_arm::GetArgumentValues().
| 
 | protected | 
Referenced by ClearBit(), CopyValue(), GetAsUInt128(), GetAsUInt16(), GetAsUInt32(), GetAsUInt64(), GetByteOrder(), GetBytes(), GetByteSize(), GetScalarValue(), operator==(), SetBit(), SetBytes(), and SetValueFromData().
| 
 | protected | 
Definition at line 268 of file RegisterValue.h.
Referenced by ClearBit(), CopyValue(), GetAsDouble(), GetAsFloat(), GetAsLongDouble(), GetAsUInt128(), GetAsUInt16(), GetAsUInt32(), GetAsUInt64(), GetAsUInt8(), GetBytes(), GetByteSize(), GetScalarValue(), operator=(), operator=(), operator=(), operator=(), operator=(), operator=(), operator=(), operator=(), operator==(), RegisterValue(), RegisterValue(), RegisterValue(), RegisterValue(), RegisterValue(), RegisterValue(), RegisterValue(), RegisterValue(), RegisterValue(), SetBit(), SetDouble(), SetFloat(), SetLongDouble(), SetUInt128(), SetUInt16(), SetUInt32(), SetUInt64(), SetUInt8(), SetValueFromString(), and SignExtend().
| 
 | protected | 
Definition at line 267 of file RegisterValue.h.
Referenced by Clear(), ClearBit(), CopyValue(), GetAsDouble(), GetAsFloat(), GetAsLongDouble(), GetAsUInt128(), GetAsUInt16(), GetAsUInt32(), GetAsUInt64(), GetAsUInt8(), GetByteOrder(), GetBytes(), GetByteSize(), GetScalarValue(), GetType(), operator=(), operator=(), operator=(), operator=(), operator=(), operator=(), operator=(), operator=(), operator==(), RegisterValue(), RegisterValue(), RegisterValue(), RegisterValue(), RegisterValue(), RegisterValue(), RegisterValue(), RegisterValue(), SetBit(), SetBytes(), SetDouble(), SetFloat(), SetLongDouble(), SetType(), SetType(), SetUInt128(), SetUInt16(), SetUInt32(), SetUInt64(), SetUInt8(), SetValueFromData(), SetValueFromString(), SetValueToInvalid(), and SignExtend().