Lines Matching defs:Address
1 //===-- Address.cpp ---------------------------------------------*- C++ -*-===//
10 #include "lldb/Core/Address.h"
29 ReadBytes (ExecutionContextScope *exe_scope, const Address &address, void *dst, size_t dst_len)
39 return target_sp->ReadMemory (address, prefer_file_cache, dst, dst_len, error);
45 GetByteOrderAndAddressSize (ExecutionContextScope *exe_scope, const Address &address, ByteOrder& byte_order, uint32_t& addr_size)
61 ModuleSP module_sp (address.GetModule());
72 ReadUIntMax64 (ExecutionContextScope *exe_scope, const Address &address, uint32_t byte_size, bool &success)
82 success = ReadBytes (exe_scope, address, &buf, byte_size) == byte_size;
87 if (GetByteOrderAndAddressSize (exe_scope, address, byte_order, addr_size))
100 ReadAddress (ExecutionContextScope *exe_scope, const Address &address, uint32_t pointer_size, Address &deref_so_addr)
107 addr_t deref_addr = ReadUIntMax64 (exe_scope, address, pointer_size, success);
124 ModuleSP module_sp (address.GetModule());
132 // able to read the address, so we return a section offset address with
133 // no section and "deref_addr" as the offset (address).
141 DumpUInt (ExecutionContextScope *exe_scope, const Address &address, uint32_t byte_size, Stream* strm)
147 if (ReadBytes (exe_scope, address, &buf[0], buf.size()) == buf.size())
151 if (GetByteOrderAndAddressSize (exe_scope, address, byte_order, addr_size))
161 LLDB_INVALID_ADDRESS,// base address
173 ReadCStringFromMemory (ExecutionContextScope *exe_scope, const Address &address, Stream *strm)
181 // Byte order and address size don't matter for C string dumping..
185 Address curr_address(address);
201 LLDB_INVALID_ADDRESS,// base address
216 Address::Address (lldb::addr_t abs_addr) :
222 Address::Address (addr_t address, const SectionList *section_list) :
226 ResolveAddressUsingFileSections(address, section_list);
229 const Address&
230 Address::operator= (const Address& rhs)
241 Address::ResolveAddressUsingFileSections (addr_t file_addr, const SectionList *section_list)
251 return true; // Successfully transformed addr into a section offset address
255 return false; // Failed to resolve this address to a section offset value
259 Address::GetModule () const
269 Address::GetFileAddress () const
277 // Section isn't resolved, we can't return a valid file address
281 // address by adding the file base address to our offset
289 Address::GetLoadAddress (Target *target) const
305 // address by adding the file base address to our offset
310 // return a valid file address.
315 Address::GetCallableLoadAddress (Target *target, bool is_indirect) const
332 Address::SetCallableLoadAddress (lldb::addr_t load_addr, Target *target)
344 Address::GetOpcodeLoadAddress (Target *target) const
353 Address::SetOpcodeLoadAddress (lldb::addr_t load_addr, Target *target)
365 Address::Dump (Stream *s, ExecutionContextScope *exe_scope, DumpStyle style, DumpStyle fallback_style, uint32_t addr_size) const
367 // If the section was NULL, only load address is going to work unless we are
375 // If addr_byte_size is UINT32_MAX, then determine the correct address
385 Address so_addr;
399 s->Address(m_offset, addr_size);
405 s->Address(m_offset, addr_size);
421 s->Address (file_addr, addr_size);
436 s->Address (load_addr, addr_size);
525 Address cstr_addr(*this);
552 Address cfstring_data_addr(*this);
650 // sections as this address.
688 // as our address. If it isn't, then we might have just found
689 // the last symbol that came before the address that we are
690 // looking up that has nothing to do with our address lookup.
746 Address dereferenced_addr;
752 s->Address (dereferenced_load_addr, addr_size, " -> ", " ");
771 Address::CalculateSymbolContext (SymbolContext *sc, uint32_t resolve_scope) const
791 Address::CalculateSymbolContextModule () const
800 Address::CalculateSymbolContextCompileUnit () const
817 Address::CalculateSymbolContextFunction () const
834 Address::CalculateSymbolContextBlock () const
851 Address::CalculateSymbolContextSymbol () const
868 Address::CalculateSymbolContextLineEntry (LineEntry &line_entry) const
890 Address::CompareFileAddress (const Address& a, const Address& b)
903 Address::CompareLoadAddress (const Address& a, const Address& b, Target *target)
916 Address::CompareModulePointerAndOffset (const Address& a, const Address& b)
926 // Modules are the same, just compare the file address since they should
939 Address::MemorySize () const
941 // Noting special for the memory size of a single Address object,
943 return sizeof(Address);
956 // address results to make much sense
958 // This basically lets Address objects be used in ordered collection
963 lldb_private::operator< (const Address& lhs, const Address& rhs)
983 lldb_private::operator> (const Address& lhs, const Address& rhs)
1005 lldb_private::operator== (const Address& a, const Address& rhs)
1013 lldb_private::operator!= (const Address& a, const Address& rhs)
1020 Address::GetAddressClass () const
1037 Address::SetLoadAddress (lldb::addr_t load_addr, Target *target)