[llvm-branch-commits] [lldb] [lldb][AArch64][Linux] Add function to get register buffers (PR #213977)

David Spickett via llvm-branch-commits llvm-branch-commits at lists.llvm.org
Thu Aug 13 05:50:25 PDT 2026


================
@@ -157,6 +157,38 @@ size_t NativeRegisterContextLinux_arm64::GetSetSize(
   }
 }
 
+void *NativeRegisterContextLinux_arm64::GetSetBuffer(
+    NativeRegisterContextLinux_arm64::RegisterSetType set) {
+  switch (set) {
+  case RegisterSetType::GPR:
+    return &m_gpr_arm64;
+  case RegisterSetType::FPR:
+    return &m_fpr;
+  case RegisterSetType::SVE:
+    return m_sve_ptrace_payload.data();
+  case RegisterSetType::SVE_HEADER:
+    return &m_sve_header;
+  case RegisterSetType::PAC:
+    return &m_pac_mask;
+  case RegisterSetType::MTE:
+    return &m_mte_ctrl_reg;
+  case RegisterSetType::TLS:
+    return &m_tls_regs;
+  case RegisterSetType::ZA:
+    return m_za_ptrace_payload.data();
+  case RegisterSetType::ZA_HEADER:
+    return &m_za_header;
+  case RegisterSetType::ZT:
+    return m_zt_reg.data();
+  case RegisterSetType::FPMR:
+    return &m_fpmr_reg;
+  case RegisterSetType::GCS:
+    return &m_gcs_regs;
+  case RegisterSetType::POE:
+    return &m_poe_regs;
+  }
+}
----------------
DavidSpickett wrote:

Yes I'm going to have a few like this and I'm not sure the not fully covered switch warning will be good enough. I'll do it (or not) for all of them once the current stack is in.

Some later ones will not cover all cases so they will have a `default: assert...` path anyway.

https://github.com/llvm/llvm-project/pull/213977


More information about the llvm-branch-commits mailing list