================
@@ -41,27 +41,46 @@ GDBRemoteRegisterContext::GDBRemoteRegisterContext(
   // Resize our vector of bools to contain one bool for every register. We will
   // use these boolean values to know when a register value is valid in
   // m_reg_data.
-  m_reg_valid.resize(m_reg_info_sp->GetNumRegisters());
+  m_reg_valid.resize(m_reg_info_sp->GetNumRegisters(), eLazyBoolCalculate);
 
   // Make a heap based buffer that is big enough to store all registers
-  DataBufferSP reg_data_sp(
-      new DataBufferHeap(m_reg_info_sp->GetRegisterDataByteSize(), 0));
+  DataBufferSP reg_data_sp(new DataBufferHeap(
+      m_reg_info_sp->GetRegisterDataByteSize(), eLazyBoolCalculate));
   m_reg_data.SetData(reg_data_sp);
   m_reg_data.SetByteOrder(thread.GetProcess()->GetByteOrder());
 }
 
 // Destructor
 GDBRemoteRegisterContext::~GDBRemoteRegisterContext() = default;
 
-void GDBRemoteRegisterContext::InvalidateAllRegisters() {
-  SetAllRegisterValid(false);
+void GDBRemoteRegisterContext::SetAllRegistersValidState(LazyBool valid) {
+  if (valid == eLazyBoolYes)
+    m_gpacket_cached = true;
+  else
+    m_gpacket_cached = false;
+  std::vector<LazyBool>::iterator pos, end = m_reg_valid.end();
+  for (pos = m_reg_valid.begin(); pos != end; ++pos)
+    *pos = valid;
----------------
JDevlieghere wrote:

```suggestion
  for (auto& reg : m_reg_valid)
    reg = valid;
```

https://github.com/llvm/llvm-project/pull/193894
_______________________________________________
lldb-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

Reply via email to