ValueObjectRegister.h revision 3e8388ccdc30231f86521e0d2657f80548e3daed
143dee220252ef0b42c5f8a3bb1eca97f84f2565fArgyrios Kyrtzidis//===-- ValueObjectRegister.h -----------------------------------*- C++ -*-===// 243dee220252ef0b42c5f8a3bb1eca97f84f2565fArgyrios Kyrtzidis// 343dee220252ef0b42c5f8a3bb1eca97f84f2565fArgyrios Kyrtzidis// The LLVM Compiler Infrastructure 443dee220252ef0b42c5f8a3bb1eca97f84f2565fArgyrios Kyrtzidis// 543dee220252ef0b42c5f8a3bb1eca97f84f2565fArgyrios Kyrtzidis// This file is distributed under the University of Illinois Open Source 643dee220252ef0b42c5f8a3bb1eca97f84f2565fArgyrios Kyrtzidis// License. See LICENSE.TXT for details. 743dee220252ef0b42c5f8a3bb1eca97f84f2565fArgyrios Kyrtzidis// 843dee220252ef0b42c5f8a3bb1eca97f84f2565fArgyrios Kyrtzidis//===----------------------------------------------------------------------===// 943dee220252ef0b42c5f8a3bb1eca97f84f2565fArgyrios Kyrtzidis 1043dee220252ef0b42c5f8a3bb1eca97f84f2565fArgyrios Kyrtzidis#ifndef liblldb_ValueObjectRegister_h_ 1143dee220252ef0b42c5f8a3bb1eca97f84f2565fArgyrios Kyrtzidis#define liblldb_ValueObjectRegister_h_ 1243dee220252ef0b42c5f8a3bb1eca97f84f2565fArgyrios Kyrtzidis 1343dee220252ef0b42c5f8a3bb1eca97f84f2565fArgyrios Kyrtzidis// C Includes 1443dee220252ef0b42c5f8a3bb1eca97f84f2565fArgyrios Kyrtzidis// C++ Includes 1543dee220252ef0b42c5f8a3bb1eca97f84f2565fArgyrios Kyrtzidis// Other libraries and framework includes 1643dee220252ef0b42c5f8a3bb1eca97f84f2565fArgyrios Kyrtzidis// Project includes 172e471a3e476396be1ddca4ab8b9df721bcfc9437Argyrios Kyrtzidis#include "lldb/lldb-private.h" 1843dee220252ef0b42c5f8a3bb1eca97f84f2565fArgyrios Kyrtzidis#include "lldb/Core/RegisterValue.h" 199fb9474c5b267400d4abfbff63c8b39f378235d4Argyrios Kyrtzidis#include "lldb/Core/ValueObject.h" 20769ce3e93ad35bd9ac28e4d8b8f035ae4fd9a5b5Argyrios Kyrtzidis 2135bdbf40624beba3fc00cb72ab444659939c1a6bTed Kremeneknamespace lldb_private { 229fb9474c5b267400d4abfbff63c8b39f378235d4Argyrios Kyrtzidis 2343dee220252ef0b42c5f8a3bb1eca97f84f2565fArgyrios Kyrtzidis//---------------------------------------------------------------------- 2443dee220252ef0b42c5f8a3bb1eca97f84f2565fArgyrios Kyrtzidis// A ValueObject that contains a root variable that may or may not 259fb9474c5b267400d4abfbff63c8b39f378235d4Argyrios Kyrtzidis// have children. 26769ce3e93ad35bd9ac28e4d8b8f035ae4fd9a5b5Argyrios Kyrtzidis//---------------------------------------------------------------------- 27e1bfb7ae0dd0762c88e1fd94746e973c37f2e04eArgyrios Kyrtzidisclass ValueObjectRegisterContext : public ValueObject 2843dee220252ef0b42c5f8a3bb1eca97f84f2565fArgyrios Kyrtzidis{ 2943dee220252ef0b42c5f8a3bb1eca97f84f2565fArgyrios Kyrtzidispublic: 3043dee220252ef0b42c5f8a3bb1eca97f84f2565fArgyrios Kyrtzidis 319fb9474c5b267400d4abfbff63c8b39f378235d4Argyrios Kyrtzidis virtual 329fb9474c5b267400d4abfbff63c8b39f378235d4Argyrios Kyrtzidis ~ValueObjectRegisterContext(); 33769ce3e93ad35bd9ac28e4d8b8f035ae4fd9a5b5Argyrios Kyrtzidis 34769ce3e93ad35bd9ac28e4d8b8f035ae4fd9a5b5Argyrios Kyrtzidis virtual size_t 35769ce3e93ad35bd9ac28e4d8b8f035ae4fd9a5b5Argyrios Kyrtzidis GetByteSize(); 36e1bfb7ae0dd0762c88e1fd94746e973c37f2e04eArgyrios Kyrtzidis 37769ce3e93ad35bd9ac28e4d8b8f035ae4fd9a5b5Argyrios Kyrtzidis virtual lldb::ValueType 3830726c6baee1417307236e854f1474fdb3cedb98Argyrios Kyrtzidis GetValueType () const 39769ce3e93ad35bd9ac28e4d8b8f035ae4fd9a5b5Argyrios Kyrtzidis { 40af5800a1e287990bb547e052f257adeeae5ab476Argyrios Kyrtzidis return lldb::eValueTypeRegisterSet; 41cc05d511b26ac6dc80fcbcc78ac305d2755aa0b9Argyrios Kyrtzidis } 42183ff98f425d470c2a0276880aaf43496c9dad14Argyrios Kyrtzidis 43183ff98f425d470c2a0276880aaf43496c9dad14Argyrios Kyrtzidis virtual ConstString 44769ce3e93ad35bd9ac28e4d8b8f035ae4fd9a5b5Argyrios Kyrtzidis GetTypeName(); 45e1bfb7ae0dd0762c88e1fd94746e973c37f2e04eArgyrios Kyrtzidis 46e1bfb7ae0dd0762c88e1fd94746e973c37f2e04eArgyrios Kyrtzidis virtual ConstString 47e1bfb7ae0dd0762c88e1fd94746e973c37f2e04eArgyrios Kyrtzidis GetQualifiedTypeName(); 48e1bfb7ae0dd0762c88e1fd94746e973c37f2e04eArgyrios Kyrtzidis 49e1bfb7ae0dd0762c88e1fd94746e973c37f2e04eArgyrios Kyrtzidis virtual uint32_t 50e1bfb7ae0dd0762c88e1fd94746e973c37f2e04eArgyrios Kyrtzidis CalculateNumChildren(); 514d840e9ac4d8e9baa9459ca3dd7ab14ae884a80fArgyrios Kyrtzidis 524d840e9ac4d8e9baa9459ca3dd7ab14ae884a80fArgyrios Kyrtzidis virtual ValueObject * 5335bdbf40624beba3fc00cb72ab444659939c1a6bTed Kremenek CreateChildAtIndex (uint32_t idx, bool synthetic_array_member, int32_t synthetic_index); 5435bdbf40624beba3fc00cb72ab444659939c1a6bTed Kremenek 5535bdbf40624beba3fc00cb72ab444659939c1a6bTed Kremenekprotected: 5635bdbf40624beba3fc00cb72ab444659939c1a6bTed Kremenek virtual bool 5735bdbf40624beba3fc00cb72ab444659939c1a6bTed Kremenek UpdateValue (); 5835bdbf40624beba3fc00cb72ab444659939c1a6bTed Kremenek 5935bdbf40624beba3fc00cb72ab444659939c1a6bTed Kremenek virtual clang::ASTContext * 6035bdbf40624beba3fc00cb72ab444659939c1a6bTed Kremenek GetClangASTImpl (); 6135bdbf40624beba3fc00cb72ab444659939c1a6bTed Kremenek 6235bdbf40624beba3fc00cb72ab444659939c1a6bTed Kremenek virtual lldb::clang_type_t 6335bdbf40624beba3fc00cb72ab444659939c1a6bTed Kremenek GetClangTypeImpl (); 6435bdbf40624beba3fc00cb72ab444659939c1a6bTed Kremenek 654d840e9ac4d8e9baa9459ca3dd7ab14ae884a80fArgyrios Kyrtzidis lldb::RegisterContextSP m_reg_ctx_sp; 664d840e9ac4d8e9baa9459ca3dd7ab14ae884a80fArgyrios Kyrtzidis 674d840e9ac4d8e9baa9459ca3dd7ab14ae884a80fArgyrios Kyrtzidisprivate: 68769ce3e93ad35bd9ac28e4d8b8f035ae4fd9a5b5Argyrios Kyrtzidis ValueObjectRegisterContext (ValueObject &parent, lldb::RegisterContextSP ®_ctx_sp); 69769ce3e93ad35bd9ac28e4d8b8f035ae4fd9a5b5Argyrios Kyrtzidis //------------------------------------------------------------------ 70769ce3e93ad35bd9ac28e4d8b8f035ae4fd9a5b5Argyrios Kyrtzidis // For ValueObject only 71769ce3e93ad35bd9ac28e4d8b8f035ae4fd9a5b5Argyrios Kyrtzidis //------------------------------------------------------------------ 724d840e9ac4d8e9baa9459ca3dd7ab14ae884a80fArgyrios Kyrtzidis DISALLOW_COPY_AND_ASSIGN (ValueObjectRegisterContext); 73769ce3e93ad35bd9ac28e4d8b8f035ae4fd9a5b5Argyrios Kyrtzidis}; 74769ce3e93ad35bd9ac28e4d8b8f035ae4fd9a5b5Argyrios Kyrtzidis 754d840e9ac4d8e9baa9459ca3dd7ab14ae884a80fArgyrios Kyrtzidisclass ValueObjectRegisterSet : public ValueObject 764d840e9ac4d8e9baa9459ca3dd7ab14ae884a80fArgyrios Kyrtzidis{ 774d840e9ac4d8e9baa9459ca3dd7ab14ae884a80fArgyrios Kyrtzidispublic: 78769ce3e93ad35bd9ac28e4d8b8f035ae4fd9a5b5Argyrios Kyrtzidis static lldb::ValueObjectSP 79769ce3e93ad35bd9ac28e4d8b8f035ae4fd9a5b5Argyrios Kyrtzidis Create (ExecutionContextScope *exe_scope, lldb::RegisterContextSP ®_ctx_sp, uint32_t set_idx); 80769ce3e93ad35bd9ac28e4d8b8f035ae4fd9a5b5Argyrios Kyrtzidis 81769ce3e93ad35bd9ac28e4d8b8f035ae4fd9a5b5Argyrios Kyrtzidis virtual 824d840e9ac4d8e9baa9459ca3dd7ab14ae884a80fArgyrios Kyrtzidis ~ValueObjectRegisterSet(); 83769ce3e93ad35bd9ac28e4d8b8f035ae4fd9a5b5Argyrios Kyrtzidis 84769ce3e93ad35bd9ac28e4d8b8f035ae4fd9a5b5Argyrios Kyrtzidis virtual size_t 854d840e9ac4d8e9baa9459ca3dd7ab14ae884a80fArgyrios Kyrtzidis GetByteSize(); 864d840e9ac4d8e9baa9459ca3dd7ab14ae884a80fArgyrios Kyrtzidis 874d840e9ac4d8e9baa9459ca3dd7ab14ae884a80fArgyrios Kyrtzidis virtual lldb::ValueType 88769ce3e93ad35bd9ac28e4d8b8f035ae4fd9a5b5Argyrios Kyrtzidis GetValueType () const 89769ce3e93ad35bd9ac28e4d8b8f035ae4fd9a5b5Argyrios Kyrtzidis { 90769ce3e93ad35bd9ac28e4d8b8f035ae4fd9a5b5Argyrios Kyrtzidis return lldb::eValueTypeRegisterSet; 91769ce3e93ad35bd9ac28e4d8b8f035ae4fd9a5b5Argyrios Kyrtzidis } 924d840e9ac4d8e9baa9459ca3dd7ab14ae884a80fArgyrios Kyrtzidis 93769ce3e93ad35bd9ac28e4d8b8f035ae4fd9a5b5Argyrios Kyrtzidis virtual ConstString 94769ce3e93ad35bd9ac28e4d8b8f035ae4fd9a5b5Argyrios Kyrtzidis GetTypeName(); 954d840e9ac4d8e9baa9459ca3dd7ab14ae884a80fArgyrios Kyrtzidis 964d840e9ac4d8e9baa9459ca3dd7ab14ae884a80fArgyrios Kyrtzidis virtual ConstString 974d840e9ac4d8e9baa9459ca3dd7ab14ae884a80fArgyrios Kyrtzidis GetQualifiedTypeName(); 98769ce3e93ad35bd9ac28e4d8b8f035ae4fd9a5b5Argyrios Kyrtzidis 99769ce3e93ad35bd9ac28e4d8b8f035ae4fd9a5b5Argyrios Kyrtzidis virtual uint32_t 100769ce3e93ad35bd9ac28e4d8b8f035ae4fd9a5b5Argyrios Kyrtzidis CalculateNumChildren(); 101769ce3e93ad35bd9ac28e4d8b8f035ae4fd9a5b5Argyrios Kyrtzidis 1024d840e9ac4d8e9baa9459ca3dd7ab14ae884a80fArgyrios Kyrtzidis virtual ValueObject * 103769ce3e93ad35bd9ac28e4d8b8f035ae4fd9a5b5Argyrios Kyrtzidis CreateChildAtIndex (uint32_t idx, bool synthetic_array_member, int32_t synthetic_index); 10443dee220252ef0b42c5f8a3bb1eca97f84f2565fArgyrios Kyrtzidis 10543dee220252ef0b42c5f8a3bb1eca97f84f2565fArgyrios Kyrtzidis virtual lldb::ValueObjectSP 1062e471a3e476396be1ddca4ab8b9df721bcfc9437Argyrios Kyrtzidis GetChildMemberWithName (const ConstString &name, bool can_create); 1072e471a3e476396be1ddca4ab8b9df721bcfc9437Argyrios Kyrtzidis 10843dee220252ef0b42c5f8a3bb1eca97f84f2565fArgyrios Kyrtzidis virtual uint32_t 1092e471a3e476396be1ddca4ab8b9df721bcfc9437Argyrios Kyrtzidis GetIndexOfChildWithName (const ConstString &name); 1109fb9474c5b267400d4abfbff63c8b39f378235d4Argyrios Kyrtzidis 1119fb9474c5b267400d4abfbff63c8b39f378235d4Argyrios Kyrtzidis 112d655ab28fdf7c940d3f79f8f287954d7f76e0977Argyrios Kyrtzidisprotected: 113d655ab28fdf7c940d3f79f8f287954d7f76e0977Argyrios Kyrtzidis virtual bool 114deb6447d0029bdb122397fafb5fa2a4e76f2e555Argyrios Kyrtzidis UpdateValue (); 115deb6447d0029bdb122397fafb5fa2a4e76f2e555Argyrios Kyrtzidis 1162e471a3e476396be1ddca4ab8b9df721bcfc9437Argyrios Kyrtzidis virtual clang::ASTContext * 1172e471a3e476396be1ddca4ab8b9df721bcfc9437Argyrios Kyrtzidis GetClangASTImpl (); 1189fb9474c5b267400d4abfbff63c8b39f378235d4Argyrios Kyrtzidis 1193fe71f445f76003649b5da24209e80225a7ee74fArgyrios Kyrtzidis virtual lldb::clang_type_t 1204d840e9ac4d8e9baa9459ca3dd7ab14ae884a80fArgyrios Kyrtzidis GetClangTypeImpl (); 1219fb9474c5b267400d4abfbff63c8b39f378235d4Argyrios Kyrtzidis 1229fb9474c5b267400d4abfbff63c8b39f378235d4Argyrios Kyrtzidis lldb::RegisterContextSP m_reg_ctx_sp; 1239fb9474c5b267400d4abfbff63c8b39f378235d4Argyrios Kyrtzidis const RegisterSet *m_reg_set; 1249fb9474c5b267400d4abfbff63c8b39f378235d4Argyrios Kyrtzidis uint32_t m_reg_set_idx; 1259fb9474c5b267400d4abfbff63c8b39f378235d4Argyrios Kyrtzidis 1269fb9474c5b267400d4abfbff63c8b39f378235d4Argyrios Kyrtzidisprivate: 1273fe71f445f76003649b5da24209e80225a7ee74fArgyrios Kyrtzidis friend class ValueObjectRegisterContext; 1283fe71f445f76003649b5da24209e80225a7ee74fArgyrios Kyrtzidis ValueObjectRegisterSet (ExecutionContextScope *exe_scope, lldb::RegisterContextSP ®_ctx_sp, uint32_t set_idx); 1299fb9474c5b267400d4abfbff63c8b39f378235d4Argyrios Kyrtzidis 1303fe71f445f76003649b5da24209e80225a7ee74fArgyrios Kyrtzidis //------------------------------------------------------------------ 131deb6447d0029bdb122397fafb5fa2a4e76f2e555Argyrios Kyrtzidis // For ValueObject only 1323fe71f445f76003649b5da24209e80225a7ee74fArgyrios Kyrtzidis //------------------------------------------------------------------ 1333fe71f445f76003649b5da24209e80225a7ee74fArgyrios Kyrtzidis DISALLOW_COPY_AND_ASSIGN (ValueObjectRegisterSet); 1343fe71f445f76003649b5da24209e80225a7ee74fArgyrios Kyrtzidis}; 1353fe71f445f76003649b5da24209e80225a7ee74fArgyrios Kyrtzidis 1369fb9474c5b267400d4abfbff63c8b39f378235d4Argyrios Kyrtzidisclass ValueObjectRegister : public ValueObject 137769ce3e93ad35bd9ac28e4d8b8f035ae4fd9a5b5Argyrios Kyrtzidis{ 1389fb9474c5b267400d4abfbff63c8b39f378235d4Argyrios Kyrtzidispublic: 1393fe71f445f76003649b5da24209e80225a7ee74fArgyrios Kyrtzidis static lldb::ValueObjectSP 1403fe71f445f76003649b5da24209e80225a7ee74fArgyrios Kyrtzidis Create (ExecutionContextScope *exe_scope, lldb::RegisterContextSP ®_ctx_sp, uint32_t reg_num); 1419fb9474c5b267400d4abfbff63c8b39f378235d4Argyrios Kyrtzidis 14243dee220252ef0b42c5f8a3bb1eca97f84f2565fArgyrios Kyrtzidis virtual 1439fb9474c5b267400d4abfbff63c8b39f378235d4Argyrios Kyrtzidis ~ValueObjectRegister(); 144769ce3e93ad35bd9ac28e4d8b8f035ae4fd9a5b5Argyrios Kyrtzidis 1459fb9474c5b267400d4abfbff63c8b39f378235d4Argyrios Kyrtzidis virtual size_t 1469fb9474c5b267400d4abfbff63c8b39f378235d4Argyrios Kyrtzidis GetByteSize(); 1479fb9474c5b267400d4abfbff63c8b39f378235d4Argyrios Kyrtzidis 1489fb9474c5b267400d4abfbff63c8b39f378235d4Argyrios Kyrtzidis virtual lldb::ValueType 1499fb9474c5b267400d4abfbff63c8b39f378235d4Argyrios Kyrtzidis GetValueType () const 1509fb9474c5b267400d4abfbff63c8b39f378235d4Argyrios Kyrtzidis { 1519fb9474c5b267400d4abfbff63c8b39f378235d4Argyrios Kyrtzidis return lldb::eValueTypeRegister; 1529fb9474c5b267400d4abfbff63c8b39f378235d4Argyrios Kyrtzidis } 1539fb9474c5b267400d4abfbff63c8b39f378235d4Argyrios Kyrtzidis 1549fb9474c5b267400d4abfbff63c8b39f378235d4Argyrios Kyrtzidis virtual ConstString 1559fb9474c5b267400d4abfbff63c8b39f378235d4Argyrios Kyrtzidis GetTypeName(); 156769ce3e93ad35bd9ac28e4d8b8f035ae4fd9a5b5Argyrios Kyrtzidis 157769ce3e93ad35bd9ac28e4d8b8f035ae4fd9a5b5Argyrios Kyrtzidis virtual uint32_t 158769ce3e93ad35bd9ac28e4d8b8f035ae4fd9a5b5Argyrios Kyrtzidis CalculateNumChildren(); 159769ce3e93ad35bd9ac28e4d8b8f035ae4fd9a5b5Argyrios Kyrtzidis 160769ce3e93ad35bd9ac28e4d8b8f035ae4fd9a5b5Argyrios Kyrtzidis virtual bool 161cd50e136ad7dc721822f5e6350769a37c216612dArgyrios Kyrtzidis SetValueFromCString (const char *value_str, Error& error); 162769ce3e93ad35bd9ac28e4d8b8f035ae4fd9a5b5Argyrios Kyrtzidis 163769ce3e93ad35bd9ac28e4d8b8f035ae4fd9a5b5Argyrios Kyrtzidis virtual bool 164769ce3e93ad35bd9ac28e4d8b8f035ae4fd9a5b5Argyrios Kyrtzidis ResolveValue (Scalar &scalar); 165769ce3e93ad35bd9ac28e4d8b8f035ae4fd9a5b5Argyrios Kyrtzidis 166769ce3e93ad35bd9ac28e4d8b8f035ae4fd9a5b5Argyrios Kyrtzidis virtual void 167769ce3e93ad35bd9ac28e4d8b8f035ae4fd9a5b5Argyrios Kyrtzidis GetExpressionPath (Stream &s, bool qualify_cxx_base_classes, GetExpressionPathFormat epformat = eGetExpressionPathFormatDereferencePointers); 168769ce3e93ad35bd9ac28e4d8b8f035ae4fd9a5b5Argyrios Kyrtzidis 169cd50e136ad7dc721822f5e6350769a37c216612dArgyrios Kyrtzidisprotected: 170769ce3e93ad35bd9ac28e4d8b8f035ae4fd9a5b5Argyrios Kyrtzidis virtual bool 171769ce3e93ad35bd9ac28e4d8b8f035ae4fd9a5b5Argyrios Kyrtzidis UpdateValue (); 172769ce3e93ad35bd9ac28e4d8b8f035ae4fd9a5b5Argyrios Kyrtzidis 173769ce3e93ad35bd9ac28e4d8b8f035ae4fd9a5b5Argyrios Kyrtzidis virtual clang::ASTContext * 174769ce3e93ad35bd9ac28e4d8b8f035ae4fd9a5b5Argyrios Kyrtzidis GetClangASTImpl (); 175769ce3e93ad35bd9ac28e4d8b8f035ae4fd9a5b5Argyrios Kyrtzidis 176769ce3e93ad35bd9ac28e4d8b8f035ae4fd9a5b5Argyrios Kyrtzidis virtual lldb::clang_type_t 177cd50e136ad7dc721822f5e6350769a37c216612dArgyrios Kyrtzidis GetClangTypeImpl (); 178769ce3e93ad35bd9ac28e4d8b8f035ae4fd9a5b5Argyrios Kyrtzidis 179769ce3e93ad35bd9ac28e4d8b8f035ae4fd9a5b5Argyrios Kyrtzidis lldb::RegisterContextSP m_reg_ctx_sp; 180769ce3e93ad35bd9ac28e4d8b8f035ae4fd9a5b5Argyrios Kyrtzidis RegisterInfo m_reg_info; 181769ce3e93ad35bd9ac28e4d8b8f035ae4fd9a5b5Argyrios Kyrtzidis RegisterValue m_reg_value; 182cd50e136ad7dc721822f5e6350769a37c216612dArgyrios Kyrtzidis ConstString m_type_name; 183769ce3e93ad35bd9ac28e4d8b8f035ae4fd9a5b5Argyrios Kyrtzidis void *m_clang_type; 184769ce3e93ad35bd9ac28e4d8b8f035ae4fd9a5b5Argyrios Kyrtzidis 185769ce3e93ad35bd9ac28e4d8b8f035ae4fd9a5b5Argyrios Kyrtzidisprivate: 186769ce3e93ad35bd9ac28e4d8b8f035ae4fd9a5b5Argyrios Kyrtzidis void 187769ce3e93ad35bd9ac28e4d8b8f035ae4fd9a5b5Argyrios Kyrtzidis ConstructObject (uint32_t reg_num); 188769ce3e93ad35bd9ac28e4d8b8f035ae4fd9a5b5Argyrios Kyrtzidis 189769ce3e93ad35bd9ac28e4d8b8f035ae4fd9a5b5Argyrios Kyrtzidis friend class ValueObjectRegisterSet; 190cd50e136ad7dc721822f5e6350769a37c216612dArgyrios Kyrtzidis ValueObjectRegister (ValueObject &parent, lldb::RegisterContextSP ®_ctx_sp, uint32_t reg_num); 191769ce3e93ad35bd9ac28e4d8b8f035ae4fd9a5b5Argyrios Kyrtzidis ValueObjectRegister (ExecutionContextScope *exe_scope, lldb::RegisterContextSP ®_ctx_sp, uint32_t reg_num); 192769ce3e93ad35bd9ac28e4d8b8f035ae4fd9a5b5Argyrios Kyrtzidis 193769ce3e93ad35bd9ac28e4d8b8f035ae4fd9a5b5Argyrios Kyrtzidis //------------------------------------------------------------------ 194769ce3e93ad35bd9ac28e4d8b8f035ae4fd9a5b5Argyrios Kyrtzidis // For ValueObject only 195769ce3e93ad35bd9ac28e4d8b8f035ae4fd9a5b5Argyrios Kyrtzidis //------------------------------------------------------------------ 196769ce3e93ad35bd9ac28e4d8b8f035ae4fd9a5b5Argyrios Kyrtzidis DISALLOW_COPY_AND_ASSIGN (ValueObjectRegister); 197769ce3e93ad35bd9ac28e4d8b8f035ae4fd9a5b5Argyrios Kyrtzidis}; 198cd50e136ad7dc721822f5e6350769a37c216612dArgyrios Kyrtzidis 199cd50e136ad7dc721822f5e6350769a37c216612dArgyrios Kyrtzidis} // namespace lldb_private 200769ce3e93ad35bd9ac28e4d8b8f035ae4fd9a5b5Argyrios Kyrtzidis 201769ce3e93ad35bd9ac28e4d8b8f035ae4fd9a5b5Argyrios Kyrtzidis#endif // liblldb_ValueObjectRegister_h_ 202769ce3e93ad35bd9ac28e4d8b8f035ae4fd9a5b5Argyrios Kyrtzidis