Home | History | Annotate | Download | only in elf-core
      1 //===-- RegisterContextCoreFreeBSD_x86_64.cpp -------------------------*- C++ -*-===//
      2 //
      3 //                     The LLVM Compiler Infrastructure
      4 //
      5 // This file is distributed under the University of Illinois Open Source
      6 // License. See LICENSE.TXT for details.
      7 //
      8 //===----------------------------------------------------------------------===//
      9 
     10 #include "lldb/Core/DataExtractor.h"
     11 #include "lldb/Core/RegisterValue.h"
     12 #include "lldb/Target/Thread.h"
     13 #include "RegisterContextCoreFreeBSD_x86_64.h"
     14 
     15 RegisterContextCoreFreeBSD_x86_64::RegisterContextCoreFreeBSD_x86_64(Thread &thread,
     16                         const DataExtractor &gpregset, const DataExtractor &fpregset)
     17     : RegisterContextFreeBSD_x86_64(thread, 0)
     18 {
     19     size_t size, len;
     20 
     21     size = GetGPRSize();
     22     m_gpregset = new uint8_t[size];
     23     len = gpregset.ExtractBytes(0, size, lldb::eByteOrderLittle, m_gpregset);
     24     assert(len == size);
     25 }
     26 
     27 RegisterContextCoreFreeBSD_x86_64::~RegisterContextCoreFreeBSD_x86_64()
     28 {
     29     delete [] m_gpregset;
     30 }
     31 
     32 bool
     33 RegisterContextCoreFreeBSD_x86_64::ReadRegister(const RegisterInfo *reg_info, RegisterValue &value)
     34 {
     35     value = *(uint64_t *)(m_gpregset + reg_info->byte_offset);
     36     return true;
     37 }
     38 
     39 bool
     40 RegisterContextCoreFreeBSD_x86_64::ReadAllRegisterValues(lldb::DataBufferSP &data_sp)
     41 {
     42     return false;
     43 }
     44 
     45 bool
     46 RegisterContextCoreFreeBSD_x86_64::WriteRegister(const RegisterInfo *reg_info, const RegisterValue &value)
     47 {
     48     return false;
     49 }
     50 
     51 bool
     52 RegisterContextCoreFreeBSD_x86_64::WriteAllRegisterValues(const lldb::DataBufferSP &data_sp)
     53 {
     54     return false;
     55 }
     56 
     57 bool
     58 RegisterContextCoreFreeBSD_x86_64::UpdateAfterBreakpoint()
     59 {
     60     return false;
     61 }
     62 
     63 bool
     64 RegisterContextCoreFreeBSD_x86_64::HardwareSingleStep(bool enable)
     65 {
     66     return false;
     67 }
     68 
     69