[Lldb-commits] [lldb] [lldb] Make sure Blocks always have a parent (PR #117683)

2024-11-26 Thread David Spickett via lldb-commits
@@ -43,11 +43,13 @@ class Block : public UserID, public SymbolContextScope { typedef RangeVector RangeList; typedef RangeList::Entry Range; - /// Construct with a User ID \a uid, \a depth. - /// - /// Initialize this block with the specified UID \a uid. The \a depth in

[Lldb-commits] [lldb] [lldb][Process/Linux] Introduce LoongArch64 hw break/watchpoint support (PR #118043)

2024-12-02 Thread David Spickett via lldb-commits
DavidSpickett wrote: And I don't see that LoongArch is doing anything unusual, so I think this is just a refactoring exercise. It is native code so if you don't have an AArch64 machine to build on, I can test the PR for you. https://github.com/llvm/llvm-project/pull/118043

[Lldb-commits] [lldb] [LLDB][Process/Utility] Introduce NativeRegisterContextDBReg class (PR #118043)

2024-12-05 Thread David Spickett via lldb-commits
https://github.com/DavidSpickett commented: I was looking at the Arm (32 bit) code and it's also very similar, so if I find the time I'll migrate this to this base class too. See if you can move the use of pac_bits, then I'll test this for you on AArch64. https://github.com/llvm/llvm-project/p

[Lldb-commits] [lldb] [LLDB][Process/Utility] Introduce NativeRegisterContextDBReg class (PR #118043)

2024-12-05 Thread David Spickett via lldb-commits
https://github.com/DavidSpickett edited https://github.com/llvm/llvm-project/pull/118043 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

[Lldb-commits] [lldb] [LLDB][Process/Utility] Introduce NativeRegisterContextDBReg class (PR #118043)

2024-12-05 Thread David Spickett via lldb-commits
@@ -234,9 +234,9 @@ class NativeRegisterContextLinux_arm64 size_t GetFPMRBufferSize() { return sizeof(m_fpmr_reg); } - llvm::Error ReadHardwareDebugInfo() override; + Status ReadHardwareDebugInfo() override; DavidSpickett wrote: @labath I seem to remembe

[Lldb-commits] [lldb] [LLDB][Process/Utility] Introduce NativeRegisterContextDBReg class (PR #118043)

2024-12-05 Thread David Spickett via lldb-commits
@@ -274,7 +161,7 @@ uint32_t NativeRegisterContextDBReg_arm64::SetHardwareWatchpoint( } // Setup control value - control_value = g_enable_bit | g_pac_bits | GetSizeBits(size); + control_value = m_hw_dbg_enable_bit | g_pac_bits | GetSizeBits(size); David

[Lldb-commits] [lldb] [LLDB][Process/Utility] Introduce NativeRegisterContextDBReg class (PR #118043)

2024-12-05 Thread David Spickett via lldb-commits
https://github.com/DavidSpickett edited https://github.com/llvm/llvm-project/pull/118043 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

[Lldb-commits] [lldb] [LLDB][Process/Utility] Introduce NativeRegisterContextDBReg class (PR #118043)

2024-12-06 Thread David Spickett via lldb-commits
https://github.com/DavidSpickett edited https://github.com/llvm/llvm-project/pull/118043 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

[Lldb-commits] [lldb] [LLDB][Process/Utility] Introduce NativeRegisterContextDBReg class (PR #118043)

2024-12-06 Thread David Spickett via lldb-commits
https://github.com/DavidSpickett commented: Looking good, I will test this version today. https://github.com/llvm/llvm-project/pull/118043 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-co

[Lldb-commits] [lldb] [LLDB][Process/Utility] Introduce NativeRegisterContextDBReg class (PR #118043)

2024-12-06 Thread David Spickett via lldb-commits
@@ -0,0 +1,90 @@ +//===-- NativeRegisterContextDBReg.h *- C++ -*-===// +// +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier: Apa

[Lldb-commits] [lldb] [LLDB][Process/Utility] Introduce NativeRegisterContextDBReg class (PR #118043)

2024-12-06 Thread David Spickett via lldb-commits
DavidSpickett wrote: And now I see that x86 has a `NativeRegisterContextDBReg_x86` class. The way it stores registers is quite different though, so I don't think: 1. We can share that much code without changing how it reads the registers. 2. That it's a problem if we just leave `NativeRegisterCo

[Lldb-commits] [lldb] [LLDB][Process/Utility] Introduce NativeRegisterContextDBReg class (PR #118043)

2024-12-06 Thread David Spickett via lldb-commits
@@ -0,0 +1,400 @@ +//===-- NativeRegisterContextDBReg.cpp ===// +// +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier: Ap

[Lldb-commits] [lldb] [LLDB][Process/Utility] Introduce NativeRegisterContextDBReg class (PR #118043)

2024-12-06 Thread David Spickett via lldb-commits
@@ -0,0 +1,400 @@ +//===-- NativeRegisterContextDBReg.cpp ===// +// +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier: Ap

[Lldb-commits] [lldb] [LLDB][Process/Utility] Introduce NativeRegisterContextDBReg class (PR #118043)

2024-12-06 Thread David Spickett via lldb-commits
@@ -272,199 +57,27 @@ uint32_t NativeRegisterContextDBReg_arm64::SetHardwareWatchpoint( addr = addr & (~0x07); } - - // Setup control value - control_value = g_enable_bit | g_pac_bits | GetSizeBits(size); - control_value |= watch_flags << 3; - - // Iterate over stor

[Lldb-commits] [lldb] [LLDB][Process/Utility] Introduce NativeRegisterContextDBReg class (PR #118043)

2024-12-06 Thread David Spickett via lldb-commits
@@ -0,0 +1,90 @@ +//===-- NativeRegisterContextDBReg.h *- C++ -*-===// +// +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier: Apa

[Lldb-commits] [lldb] [LLDB][Process/Utility] Introduce NativeRegisterContextDBReg class (PR #118043)

2024-12-06 Thread David Spickett via lldb-commits
@@ -272,199 +57,27 @@ uint32_t NativeRegisterContextDBReg_arm64::SetHardwareWatchpoint( addr = addr & (~0x07); } - - // Setup control value - control_value = g_enable_bit | g_pac_bits | GetSizeBits(size); - control_value |= watch_flags << 3; - - // Iterate over stor

[Lldb-commits] [lldb] [LLDB][Process/Utility] Introduce NativeRegisterContextDBReg class (PR #118043)

2024-12-06 Thread David Spickett via lldb-commits
@@ -9,79 +9,16 @@ #ifndef lldb_NativeRegisterContextDBReg_arm64_h #define lldb_NativeRegisterContextDBReg_arm64_h -#include "Plugins/Process/Utility/NativeRegisterContextRegisterInfo.h" - -#include +#include "Plugins/Process/Utility/NativeRegisterContextDBReg.h" namespace

[Lldb-commits] [lldb] [LLDB][Process/Utility] Introduce NativeRegisterContextDBReg class (PR #118043)

2024-12-06 Thread David Spickett via lldb-commits
@@ -272,199 +57,27 @@ uint32_t NativeRegisterContextDBReg_arm64::SetHardwareWatchpoint( addr = addr & (~0x07); } - - // Setup control value - control_value = g_enable_bit | g_pac_bits | GetSizeBits(size); - control_value |= watch_flags << 3; - - // Iterate over stor

[Lldb-commits] [lldb] [LLDB][Process/Utility] Introduce NativeRegisterContextDBReg class (PR #118043)

2024-12-06 Thread David Spickett via lldb-commits
@@ -9,79 +9,16 @@ #ifndef lldb_NativeRegisterContextDBReg_arm64_h #define lldb_NativeRegisterContextDBReg_arm64_h -#include "Plugins/Process/Utility/NativeRegisterContextRegisterInfo.h" - -#include +#include "Plugins/Process/Utility/NativeRegisterContextDBReg.h" namespace

[Lldb-commits] [lldb] [LLDB][Process/Utility] Introduce NativeRegisterContextDBReg class (PR #118043)

2024-12-06 Thread David Spickett via lldb-commits
DavidSpickett wrote: The test failures were caused by: ``` virtual bool ValidateWatchpoint(size_t size, lldb::addr_t &addr) = 0; ``` Which is actually trying to change size for AArch64, but it's passed by copy so it wasn't being updated in the caller. See my comments on those lines. With that f

[Lldb-commits] [lldb] [LLDB][Process/Utility] Introduce NativeRegisterContextDBReg class (PR #118043)

2024-12-06 Thread David Spickett via lldb-commits
@@ -9,79 +9,16 @@ #ifndef lldb_NativeRegisterContextDBReg_arm64_h #define lldb_NativeRegisterContextDBReg_arm64_h -#include "Plugins/Process/Utility/NativeRegisterContextRegisterInfo.h" - -#include +#include "Plugins/Process/Utility/NativeRegisterContextDBReg.h" namespace

[Lldb-commits] [lldb] [LLDB][Process/Utility] Introduce NativeRegisterContextDBReg class (PR #118043)

2024-12-06 Thread David Spickett via lldb-commits
@@ -9,79 +9,16 @@ #ifndef lldb_NativeRegisterContextDBReg_arm64_h #define lldb_NativeRegisterContextDBReg_arm64_h -#include "Plugins/Process/Utility/NativeRegisterContextRegisterInfo.h" - -#include +#include "Plugins/Process/Utility/NativeRegisterContextDBReg.h" namespace

[Lldb-commits] [lldb] [LLDB][Process/Utility] Introduce NativeRegisterContextDBReg class (PR #118043)

2024-12-06 Thread David Spickett via lldb-commits
DavidSpickett wrote: Something is up with watchpoints: ``` Failed Tests (12): lldb-api :: commands/watchpoints/multi_watchpoint_slots/TestWatchpointMultipleSlots.py lldb-api :: commands/watchpoints/watchpoint_commands/command/TestWatchpointCommandLLDB.py lldb-api :: commands/watchpoints/

[Lldb-commits] [lldb] [lldb] Include `` for `system_clock` and `now` (PR #118059)

2024-12-06 Thread David Spickett via lldb-commits
https://github.com/DavidSpickett closed https://github.com/llvm/llvm-project/pull/118059 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

[Lldb-commits] [clang] [lld] [lldb] [llvm] Rework the `Option` library to reduce dynamic relocations (PR #119198)

2024-12-09 Thread David Spickett via lldb-commits
DavidSpickett wrote: > The relevant binaries build, but check-lldb currently hits unrelated errors > for me blocking any progress in checking those changes. `ninja check-lldb` passes on AArch64 Linux, and given the changes, it's unlikely to fail on other platforms. https://github.com/llvm/llv

[Lldb-commits] [clang] [lld] [lldb] [llvm] Rework the `Option` library to reduce dynamic relocations (PR #119198)

2024-12-09 Thread David Spickett via lldb-commits
DavidSpickett wrote: If you look for: ``` FAILED: tools/clang/tools/extra/clangd/CMakeFiles/obj.clangDaemon.dir/CompileCommands.cpp.o ``` In the build log that's the failure reason. All of the tests that reported JSON passed, that's why you have green test reports but failed builds. I wi

[Lldb-commits] [lldb] [lldb][Linux] Mark memory regions used for shadow stacks (PR #117861)

2024-12-09 Thread David Spickett via lldb-commits
https://github.com/DavidSpickett edited https://github.com/llvm/llvm-project/pull/117861 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

[Lldb-commits] [lldb] [lldb] do not show misleading error when there is no frame (PR #119103)

2024-12-09 Thread David Spickett via lldb-commits
DavidSpickett wrote: Thanks for not ignoring the formatter - but - please remove the formatting changes in this case because it's obscuring the actual change. When changing existing code like this, we often ignore the formatter for this reason. Also, I'm not sure this is any better. I guess th

[Lldb-commits] [lldb] [lldb][debugserver] Read/write SME registers on arm64 (PR #119171)

2024-12-09 Thread David Spickett via lldb-commits
@@ -312,16 +312,21 @@ struct DNBRegisterValue { uint64_t uint64; float float32; double float64; -int8_t v_sint8[64]; -int16_t v_sint16[32]; -int32_t v_sint32[16]; -int64_t v_sint64[8]; -uint8_t v_uint8[64]; -uint16_t v_uint16[32]; -uint32

[Lldb-commits] [lldb] [lldb][debugserver] Read/write SME registers on arm64 (PR #119171)

2024-12-09 Thread David Spickett via lldb-commits
https://github.com/DavidSpickett edited https://github.com/llvm/llvm-project/pull/119171 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

[Lldb-commits] [lldb] [lldb][debugserver] Read/write SME registers on arm64 (PR #119171)

2024-12-09 Thread David Spickett via lldb-commits
DavidSpickett wrote: > But when we are asking for a single register (e.g. Z0) when not in SSVE/SME > mode, this should return an error. I assume you did what we did for Linux, where the inactive registers do not dissapear from the register list but just fail to read. Linux also returns all 0s

[Lldb-commits] [lldb] [lldb][debugserver] Read/write SME registers on arm64 (PR #119171)

2024-12-09 Thread David Spickett via lldb-commits
@@ -0,0 +1,163 @@ +import lldb +from lldbsuite.test.lldbtest import * +from lldbsuite.test.decorators import * +import lldbsuite.test.lldbutil as lldbutil +import os + + +class TestSMERegistersDarwin(TestBase): +NO_DEBUG_INFO_TESTCASE = True +mydir = TestBase.compute_mydir

[Lldb-commits] [lldb] [lldb][debugserver] Read/write SME registers on arm64 (PR #119171)

2024-12-09 Thread David Spickett via lldb-commits
@@ -2387,6 +2863,36 @@ bool DNBArchMachARM64::SetRegisterValue(uint32_t set, uint32_t reg, } break; +case e_regSetSVE: + if (reg >= sve_z0 && reg <= sve_z31) { +uint16_t max_svl_bytes = GetSMEMaxSVL(); +memcpy(&m_state.context.sve.z[reg -

[Lldb-commits] [lldb] [lldb][debugserver] Read/write SME registers on arm64 (PR #119171)

2024-12-09 Thread David Spickett via lldb-commits
@@ -2387,6 +2863,36 @@ bool DNBArchMachARM64::SetRegisterValue(uint32_t set, uint32_t reg, } break; +case e_regSetSVE: + if (reg >= sve_z0 && reg <= sve_z31) { +uint16_t max_svl_bytes = GetSMEMaxSVL(); +memcpy(&m_state.context.sve.z[reg -

[Lldb-commits] [lldb] [lldb][debugserver] Read/write SME registers on arm64 (PR #119171)

2024-12-09 Thread David Spickett via lldb-commits
@@ -0,0 +1,163 @@ +import lldb +from lldbsuite.test.lldbtest import * +from lldbsuite.test.decorators import * +import lldbsuite.test.lldbutil as lldbutil +import os + + +class TestSMERegistersDarwin(TestBase): +NO_DEBUG_INFO_TESTCASE = True +mydir = TestBase.compute_mydir

[Lldb-commits] [lldb] [lldb][debugserver] Read/write SME registers on arm64 (PR #119171)

2024-12-09 Thread David Spickett via lldb-commits
@@ -0,0 +1,111 @@ +/// BUILT with +///xcrun -sdk macosx.internal clang -mcpu=apple-m4 -g sme.c -o sme + +#include +#include +#include + +void write_sve_regs() { + asm volatile("ptrue p0.b\n\t"); + asm volatile("ptrue p1.h\n\t"); + asm volatile("ptrue p2.s\n\t"); + asm

[Lldb-commits] [lldb] [lldb][debugserver] Read/write SME registers on arm64 (PR #119171)

2024-12-09 Thread David Spickett via lldb-commits
@@ -0,0 +1,163 @@ +import lldb +from lldbsuite.test.lldbtest import * +from lldbsuite.test.decorators import * +import lldbsuite.test.lldbutil as lldbutil +import os + + +class TestSMERegistersDarwin(TestBase): +NO_DEBUG_INFO_TESTCASE = True +mydir = TestBase.compute_mydir

[Lldb-commits] [lldb] [lldb][debugserver] Read/write SME registers on arm64 (PR #119171)

2024-12-09 Thread David Spickett via lldb-commits
@@ -2281,6 +2712,51 @@ bool DNBArchMachARM64::GetRegisterValue(uint32_t set, uint32_t reg, } break; +case e_regSetSVE: + if (GetRegisterState(e_regSetSVE, false) != KERN_SUCCESS) +return false; + + if (reg >= sve_z0 && reg <= sve_z31) { +

[Lldb-commits] [lldb] [lldb][debugserver] Read/write SME registers on arm64 (PR #119171)

2024-12-09 Thread David Spickett via lldb-commits
@@ -93,6 +93,55 @@ DNBArchMachARM64::SoftwareBreakpointOpcode(nub_size_t byte_size) { uint32_t DNBArchMachARM64::GetCPUType() { return CPU_TYPE_ARM64; } +static std::once_flag g_cpu_has_sme_once; +bool DNBArchMachARM64::CPUHasSME() { + static bool g_has_sme = false; + std:

[Lldb-commits] [lldb] [lldb][debugserver] Read/write SME registers on arm64 (PR #119171)

2024-12-09 Thread David Spickett via lldb-commits
https://github.com/DavidSpickett commented: Lightly skimmed the debugserver parts, I assume one of your colleagues will help there. https://github.com/llvm/llvm-project/pull/119171 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://list

[Lldb-commits] [lldb] [lldb][debugserver] Read/write SME registers on arm64 (PR #119171)

2024-12-09 Thread David Spickett via lldb-commits
@@ -0,0 +1,163 @@ +import lldb +from lldbsuite.test.lldbtest import * +from lldbsuite.test.decorators import * +import lldbsuite.test.lldbutil as lldbutil +import os + + +class TestSMERegistersDarwin(TestBase): +NO_DEBUG_INFO_TESTCASE = True +mydir = TestBase.compute_mydir

[Lldb-commits] [lldb] [lldb][debugserver] Read/write SME registers on arm64 (PR #119171)

2024-12-09 Thread David Spickett via lldb-commits
@@ -2106,29 +2345,220 @@ const DNBRegisterInfo DNBArchMachARM64::g_exc_registers[] = { // Number of registers in each register set const size_t DNBArchMachARM64::k_num_gpr_registers = sizeof(g_gpr_registers) / sizeof(DNBRegisterInfo); -const size_t DNBArchMachARM64::k_num_

[Lldb-commits] [lldb] [lldb][Docs] Add equivalents of GDB's "skip" to command map (PR #120740)

2025-01-06 Thread David Spickett via lldb-commits
https://github.com/DavidSpickett closed https://github.com/llvm/llvm-project/pull/120740 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

[Lldb-commits] [lldb] [lldb][AIX] Added PlatformAIX plugin (PR #121273)

2025-01-03 Thread David Spickett via lldb-commits
https://github.com/DavidSpickett commented: I'm not clear what you're asking for feedback on here. Starting with a copy of the Linux platform, I understand that. However the final changes don't look that different so I assume you have: * Copied the Linux platform. * Updated it until it builds o

[Lldb-commits] [lldb] [llvm] [LLDB][Process] Add LSX and LASX register definitions and operations on the LoongArch64 (PR #120664)

2025-01-03 Thread David Spickett via lldb-commits
https://github.com/DavidSpickett commented: I should have said this before you wrote out all these tests, so apologies for this up front, but - There's no reason these tests need to be native, host only, tests. Cross compiling them is not a problem. So I'd like to see these as API tests inste

[Lldb-commits] [lldb] [llvm] [LLDB][Process] Add LSX and LASX register definitions and operations on the LoongArch64 (PR #120664)

2025-01-03 Thread David Spickett via lldb-commits
DavidSpickett wrote: Making the tests remote compatible also makes the changes to lit cpu id unnecessary. https://github.com/llvm/llvm-project/pull/120664 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman

[Lldb-commits] [lldb] [lldb][Linux] Mark memory regions used for shadow stacks (PR #117861)

2025-01-03 Thread David Spickett via lldb-commits
DavidSpickett wrote: ping! https://github.com/llvm/llvm-project/pull/117861 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

[Lldb-commits] [lldb] [lldb][AIX] HostInfoAIX Support (PR #117906)

2025-01-06 Thread David Spickett via lldb-commits
@@ -0,0 +1,154 @@ +//===-- HostInfoAIX.cpp -===// +// +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier: Apach

[Lldb-commits] [lldb] [lldb][AIX] HostInfoAIX Support (PR #117906)

2025-01-06 Thread David Spickett via lldb-commits
DavidSpickett wrote: These changes get things building I assume. So in that context I'm OK with this. I have a feeling HostInfoAIX might end up essentially blank eventually, but just because of the way we handle the HostInfo type, I think some file has to exist for it to build. So it's OK to a

[Lldb-commits] [lldb] [lldb][AIX] HostInfoAIX Support (PR #117906)

2025-01-06 Thread David Spickett via lldb-commits
https://github.com/DavidSpickett closed https://github.com/llvm/llvm-project/pull/117906 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

[Lldb-commits] [lldb] [lldb][AIX] HostInfoAIX Support (PR #117906)

2025-01-06 Thread David Spickett via lldb-commits
https://github.com/DavidSpickett approved this pull request. https://github.com/llvm/llvm-project/pull/117906 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

[Lldb-commits] [lldb] [lldb][NetBSD] Remove unused include in FileSystemPosix.cpp (PR #121920)

2025-01-07 Thread David Spickett via lldb-commits
https://github.com/DavidSpickett closed https://github.com/llvm/llvm-project/pull/121920 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

[Lldb-commits] [lldb] [lldb][Posix] Remove unused includes in file system (PR #121913)

2025-01-07 Thread David Spickett via lldb-commits
https://github.com/DavidSpickett closed https://github.com/llvm/llvm-project/pull/121913 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

[Lldb-commits] [lldb] [lldb][Posix] Remove unused includes in file system (PR #121913)

2025-01-07 Thread David Spickett via lldb-commits
https://github.com/DavidSpickett created https://github.com/llvm/llvm-project/pull/121913 You could remove unistd.h and it builds, but only because something else included it. So I've left it in in the spirit of "include what you use". Tested on Linux and FreeBSD. >From 770bad587e02f5aa2851b2

[Lldb-commits] [lldb] [lldb][Posix] Remove unused includes in file system (PR #121913)

2025-01-07 Thread David Spickett via lldb-commits
https://github.com/DavidSpickett edited https://github.com/llvm/llvm-project/pull/121913 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

[Lldb-commits] [lldb] [lldb][AIX] Some base #if _AIX changes of a minimal lldb build (PR #120979)

2025-01-07 Thread David Spickett via lldb-commits
@@ -11,7 +11,9 @@ // C includes #include #include +#ifndef _AIX #include DavidSpickett wrote: https://github.com/llvm/llvm-project/pull/121913 https://github.com/llvm/llvm-project/pull/120979 ___ lldb-commits m

[Lldb-commits] [lldb] [lldb][NetBSD] Remove unused include in FileSystemPosix.cpp (PR #121920)

2025-01-07 Thread David Spickett via lldb-commits
https://github.com/DavidSpickett created https://github.com/llvm/llvm-project/pull/121920 None >From 0b4048f40300d00659a7b6067e183bb1fcc9efe5 Mon Sep 17 00:00:00 2001 From: David Spickett Date: Tue, 7 Jan 2025 11:46:02 + Subject: [PATCH] [lldb][NetBSD] Remove unused include in FileSystemPo

[Lldb-commits] [lldb] [lldb][AIX] Some base #if _AIX changes of a minimal lldb build (PR #120979)

2025-01-07 Thread David Spickett via lldb-commits
@@ -11,7 +11,9 @@ // C includes #include #include +#ifndef _AIX #include DavidSpickett wrote: A lot of them aren't used, I'll see how many I can remove on Linux and FreeBSD. https://github.com/llvm/llvm-project/pull/120979

[Lldb-commits] [lldb] [lldb][AIX] Some base #if _AIX changes of a minimal lldb build (PR #120979)

2025-01-07 Thread David Spickett via lldb-commits
@@ -715,7 +715,7 @@ ConnectionFileDescriptor::ConnectFD(llvm::StringRef s, ConnectionStatus ConnectionFileDescriptor::ConnectFile( llvm::StringRef s, socket_id_callback_type socket_id_callback, Status *error_ptr) { -#if LLDB_ENABLE_POSIX +#if LLDB_ENABLE_POSIX && !defin

[Lldb-commits] [lldb] [lldb][AIX] Some base #if _AIX changes of a minimal lldb build (PR #120979)

2025-01-06 Thread David Spickett via lldb-commits
@@ -16,6 +16,9 @@ #include #include #include +#ifdef _AIX +#include DavidSpickett wrote: Please do a PR to switch this to memset. This is more standard and saves us from changing these includes. https://github.com/llvm/llvm-project/pull/120979 __

[Lldb-commits] [lldb] [lldb][AIX] Some base #if _AIX changes of a minimal lldb build (PR #120979)

2025-01-06 Thread David Spickett via lldb-commits
@@ -715,7 +715,7 @@ ConnectionFileDescriptor::ConnectFD(llvm::StringRef s, ConnectionStatus ConnectionFileDescriptor::ConnectFile( llvm::StringRef s, socket_id_callback_type socket_id_callback, Status *error_ptr) { -#if LLDB_ENABLE_POSIX +#if LLDB_ENABLE_POSIX && !defin

[Lldb-commits] [lldb] [lldb][AIX] Some base #if _AIX changes of a minimal lldb build (PR #120979)

2025-01-06 Thread David Spickett via lldb-commits
@@ -1226,7 +1226,7 @@ bool lldb_private::formatters::ObjCSELSummaryProvider( time_t lldb_private::formatters::GetOSXEpoch() { static time_t epoch = 0; if (!epoch) { -#ifndef _WIN32 +#if !defined(_WIN32) && !defined(_AIX) DavidSpickett wrote: Yes this is fi

[Lldb-commits] [lldb] [lldb][POSIX] Replace bzero with memset in domain socket code (PR #121747)

2025-01-06 Thread David Spickett via lldb-commits
https://github.com/DavidSpickett closed https://github.com/llvm/llvm-project/pull/121747 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

[Lldb-commits] [lldb] [lldb][POSIX] Replace bzero with memset in domain socket code (PR #121747)

2025-01-06 Thread David Spickett via lldb-commits
DavidSpickett wrote: Thanks! https://github.com/llvm/llvm-project/pull/121747 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

[Lldb-commits] [lldb] [lldb][POSIX] Replace bzero with memset in domain socket code (PR #121747)

2025-01-06 Thread David Spickett via lldb-commits
https://github.com/DavidSpickett approved this pull request. LGTM. https://github.com/llvm/llvm-project/pull/121747 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

[Lldb-commits] [lldb] [lldb][POSIX] Replace bzero with memset in domain socket code (PR #121747)

2025-01-06 Thread David Spickett via lldb-commits
https://github.com/DavidSpickett edited https://github.com/llvm/llvm-project/pull/121747 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

[Lldb-commits] [lldb] [lldb][Docs] Expand remote testing instructions (PR #122694)

2025-02-03 Thread David Spickett via lldb-commits
https://github.com/DavidSpickett closed https://github.com/llvm/llvm-project/pull/122694 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

[Lldb-commits] [lldb] [lldb] Fix Block::GetRangeIndexContainingAddress for discontinuous functions (PR #124931)

2025-02-03 Thread David Spickett via lldb-commits
https://github.com/DavidSpickett edited https://github.com/llvm/llvm-project/pull/124931 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

[Lldb-commits] [lldb] [lldb] Fix Block::GetRangeIndexContainingAddress for discontinuous functions (PR #124931)

2025-02-03 Thread David Spickett via lldb-commits
https://github.com/DavidSpickett commented: I've looked at this a couple of times and on a general level, it seems fine, but all the address vs. file address stuff is confusing to me. I'm just guessing what each one is really. So I have added some questions about that, maybe I'll be able to ap

[Lldb-commits] [lldb] [lldb] Fix Block::GetRangeIndexContainingAddress for discontinuous functions (PR #124931)

2025-02-03 Thread David Spickett via lldb-commits
@@ -243,25 +243,15 @@ bool Block::GetRangeContainingAddress(const Address &addr, AddressRange &range) { Function *function = CalculateSymbolContextFunction(); if (function) { -const AddressRange &func_range = function->GetAddressRan

[Lldb-commits] [lldb] [lldb] Fix Block::GetRangeIndexContainingAddress for discontinuous functions (PR #124931)

2025-02-03 Thread David Spickett via lldb-commits
@@ -6,15 +6,22 @@ # CHECK: Found 1 function(s). # CHECK: foo: [input.o[0x0-0xe), input.o[0x14-0x1c)] -# CHECK-NEXT: input.o[0x0]: cmpl $0x0, %edi -# CHECK-NEXT: input.o[0x3]: je 0x14 -# CHECK-NEXT: input.o[0x5]: jmp0x7 -# CHECK-NEXT: input.o[0x7]: callq 0xe -# CHECK

[Lldb-commits] [lldb] [llvm] [lldb] Extended if conditions to support alias names for registers (PR #124475)

2025-02-03 Thread David Spickett via lldb-commits
@@ -0,0 +1,38 @@ +# REQUIRES: native && target-riscv64 +# RUN: %clangxx_host -fomit-frame-pointer %p/Inputs/riscv64-gp-read.cpp -o %t DavidSpickett wrote: I'm guessing that `-fomit-frame-pointer` is to stop code after the inline asm generating save/restore routi

[Lldb-commits] [lldb] [lldb] Fix Block::GetRangeIndexContainingAddress for discontinuous functions (PR #124931)

2025-02-03 Thread David Spickett via lldb-commits
@@ -278,19 +268,16 @@ bool Block::GetRangeContainingLoadAddress(lldb::addr_t load_addr, uint32_t Block::GetRangeIndexContainingAddress(const Address &addr) { Function *function = CalculateSymbolContextFunction(); - if (function) { -const AddressRange &func_range = func

[Lldb-commits] [lldb] [llvm] [lldb] Extended if conditions to support alias names for registers (PR #124475)

2025-02-03 Thread David Spickett via lldb-commits
DavidSpickett wrote: > I have added a live process test. But I struggle to test it (it is currently > wrong on purpose - so ignore a eventually green pipeline). First off, I > struggle to build libc with RISCV (I am cross compiling from x86-64). > Additionally, I will probably have problems ru

[Lldb-commits] [lldb] [lldb] Add RISCV for Makefile.rules (PR #124758)

2025-01-31 Thread David Spickett via lldb-commits
https://github.com/DavidSpickett closed https://github.com/llvm/llvm-project/pull/124758 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

[Lldb-commits] [lldb] [lldb] Add RISCV for Makefile.rules (PR #124758)

2025-01-31 Thread David Spickett via lldb-commits
DavidSpickett wrote: Please set a valid email address first - https://llvm.org/docs/DeveloperPolicy.html#github-email-address Then this can be merged. https://github.com/llvm/llvm-project/pull/124758 ___ lldb-commits mailing list lldb-commits@lists.l

[Lldb-commits] [lldb] [lldb] Add RISCV for Makefile.rules (PR #124758)

2025-01-31 Thread David Spickett via lldb-commits
DavidSpickett wrote: > I am not sure whether I will lose the approval if I rebase. GitHub seems to let you do almost anything without losing existing approvals, for better or worse :) It would have been fine anyway, it's just doing the rebase onto main that "squash and merge" will do anyway.

[Lldb-commits] [lldb] [lldb-dap] Fix build failure on Windows. (PR #125156)

2025-01-31 Thread David Spickett via lldb-commits
https://github.com/DavidSpickett closed https://github.com/llvm/llvm-project/pull/125156 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

[Lldb-commits] [lldb] [lldb-dap] Fix build failure on Windows. (PR #125156)

2025-01-31 Thread David Spickett via lldb-commits
https://github.com/DavidSpickett approved this pull request. LGTM https://github.com/llvm/llvm-project/pull/125156 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

[Lldb-commits] [lldb] Reland "[lldb] Implement basic support for reverse-continue" (PR #125242)

2025-01-31 Thread David Spickett via lldb-commits
https://github.com/DavidSpickett created https://github.com/llvm/llvm-project/pull/125242 This reverts commit a774de807e56c1147d4630bfec3110c11d41776e. This is the same changes as last time, plus: * We load the binary into the target object so that on Windows, we can resolve the locations of t

[Lldb-commits] [lldb] Reland "[lldb] Implement basic support for reverse-continue" (PR #125242)

2025-01-31 Thread David Spickett via lldb-commits
DavidSpickett wrote: Pull request just in case we have to discuss this more, going to merge right now. https://github.com/llvm/llvm-project/pull/125242 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/li

[Lldb-commits] [lldb] Reland "[lldb] Implement basic support for reverse-continue" (PR #125242)

2025-01-31 Thread David Spickett via lldb-commits
https://github.com/DavidSpickett closed https://github.com/llvm/llvm-project/pull/125242 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

[Lldb-commits] [lldb] Reland "[lldb] Implement basic support for reverse-continue" (#123906)" (PR #123945)

2025-01-31 Thread David Spickett via lldb-commits
DavidSpickett wrote: Back in again after fixing Windows testing - https://github.com/llvm/llvm-project/pull/125242. https://github.com/llvm/llvm-project/pull/123945 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-b

[Lldb-commits] [lldb] [LLDB][LoongArch] Fix build errors and extend watchpoint numbers (PR #126020)

2025-02-06 Thread David Spickett via lldb-commits
https://github.com/DavidSpickett requested changes to this pull request. I see that the basics of this were added 2 years ago - https://github.com/torvalds/linux/commit/1a69f7a161a78aead07cd4b811d796950e892fa4. So I assume the build error here is not that NT_LOONGARCH_HW_BREAK is not defined,

[Lldb-commits] [lldb] [LLDB][LoongArch] Fix build errors and extend watchpoint numbers (PR #126020)

2025-02-06 Thread David Spickett via lldb-commits
https://github.com/DavidSpickett edited https://github.com/llvm/llvm-project/pull/126020 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

[Lldb-commits] [lldb] [LLDB][LoongArch] Fix build errors and extend watchpoint numbers (PR #126020)

2025-02-06 Thread David Spickett via lldb-commits
@@ -36,9 +36,30 @@ 0xa03 /* LoongArch Advanced SIMD eXtension registers */ #endif +#ifndef NT_LOONGARCH_HW_BREAK +#define NT_LOONGARCH_HW_BREAK 0xa05 /* LoongArch hardware breakpoint registers */ +#endif + +#ifndef NT_LOONGARCH_HW_WATCH +#define NT_LOONGARCH_HW_WATCH 0x

[Lldb-commits] [lldb] [LLDB][LoongArch] Fix build errors and extend watchpoint numbers (PR #126020)

2025-02-06 Thread David Spickett via lldb-commits
DavidSpickett wrote: > So I assume the build error here is not that NT_LOONGARCH_HW_BREAK is not > defined, it's that user_watch_state got redefined? And if so, why are you adding a redefinition of it? This would only help if you are building lldb against kernel headers from before a time whe

[Lldb-commits] [clang] [libc] [libcxx] [lldb] [llvm] [doc] Add Discord invite link alongside channel links (PR #126352)

2025-02-10 Thread David Spickett via lldb-commits
https://github.com/DavidSpickett approved this pull request. https://github.com/llvm/llvm-project/pull/126352 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

[Lldb-commits] [clang] [libc] [libcxx] [lldb] [llvm] [doc] Add Discord invite link alongside channel links (PR #126352)

2025-02-10 Thread David Spickett via lldb-commits
DavidSpickett wrote: I also looked at this but got into a rabbit hole finding out whether you could have channel specific invites. I think you can, but I don't think it actually helps us. As the other problem we have had is invites expiring, so the fewer unique invite links the better. https:

[Lldb-commits] [lldb] [lldb] Support disassembling discontinuous functions (PR #126505)

2025-02-10 Thread David Spickett via lldb-commits
@@ -82,20 +82,25 @@ # CHECK-NEXT: (lldb) disassemble --name case2 # CHECK-NEXT: command-disassemble.s.tmp`n1::case2: # CHECK-NEXT: command-disassemble.s.tmp[0x2044] <+0>: int$0x32 -# CHECK-NEXT: warning: Not disassembling a range because it is very large [0x204

[Lldb-commits] [lldb] [lldb] Support disassembling discontinuous functions (PR #126505)

2025-02-10 Thread David Spickett via lldb-commits
@@ -262,9 +269,11 @@ CommandObjectDisassemble::GetContainingAddressRanges() { addr, eSymbolContextEverything, sc, resolve_tail_call_address); if (sc.function || sc.symbol) { AddressRange range; - sc.GetAddressRange(eSymbolContextFunction | eSymbolContextS

[Lldb-commits] [lldb] [lldb] Support disassembling discontinuous functions (PR #126505)

2025-02-10 Thread David Spickett via lldb-commits
@@ -82,20 +82,25 @@ # CHECK-NEXT: (lldb) disassemble --name case2 # CHECK-NEXT: command-disassemble.s.tmp`n1::case2: # CHECK-NEXT: command-disassemble.s.tmp[0x2044] <+0>: int$0x32 -# CHECK-NEXT: warning: Not disassembling a range because it is very large [0x204

[Lldb-commits] [lldb] [lldb] Support disassembling discontinuous functions (PR #126505)

2025-02-10 Thread David Spickett via lldb-commits
@@ -82,20 +82,25 @@ # CHECK-NEXT: (lldb) disassemble --name case2 # CHECK-NEXT: command-disassemble.s.tmp`n1::case2: # CHECK-NEXT: command-disassemble.s.tmp[0x2044] <+0>: int$0x32 -# CHECK-NEXT: warning: Not disassembling a range because it is very large [0x204

[Lldb-commits] [lldb] [lldb] Support disassembling discontinuous functions (PR #126505)

2025-02-10 Thread David Spickett via lldb-commits
https://github.com/DavidSpickett commented: Negative offset makes sense to me given that it's relative to the symbol of the function. Will be interesting to see how users interpret it though. https://github.com/llvm/llvm-project/pull/126505 ___ lldb-c

[Lldb-commits] [lldb] [lldb] Support disassembling discontinuous functions (PR #126505)

2025-02-10 Thread David Spickett via lldb-commits
https://github.com/DavidSpickett edited https://github.com/llvm/llvm-project/pull/126505 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

[Lldb-commits] [lldb] [lldb] Support disassembling discontinuous functions (PR #126505)

2025-02-10 Thread David Spickett via lldb-commits
@@ -262,9 +269,11 @@ CommandObjectDisassemble::GetContainingAddressRanges() { addr, eSymbolContextEverything, sc, resolve_tail_call_address); if (sc.function || sc.symbol) { AddressRange range; - sc.GetAddressRange(eSymbolContextFunction | eSymbolContextS

[Lldb-commits] [lldb] [lldb] Support disassembling discontinuous functions (PR #126505)

2025-02-10 Thread David Spickett via lldb-commits
@@ -82,20 +82,25 @@ # CHECK-NEXT: (lldb) disassemble --name case2 # CHECK-NEXT: command-disassemble.s.tmp`n1::case2: # CHECK-NEXT: command-disassemble.s.tmp[0x2044] <+0>: int$0x32 -# CHECK-NEXT: warning: Not disassembling a range because it is very large [0x204

[Lldb-commits] [lldb] [LLDB][LoongArch] Extend the maximum number of watchpoints (PR #126204)

2025-02-07 Thread David Spickett via lldb-commits
DavidSpickett wrote: Thanks for the clear explanation. Part of my confusion before was that I mistakenly thought that the v2 struct added a padding field but this is not correct. The only thing that has changed is the number of debug regs. We send one `user_watch_state` to the kernel, but in v

[Lldb-commits] [lldb] [LLDB][LoongArch] Extend the maximum number of watchpoints (PR #126204)

2025-02-07 Thread David Spickett via lldb-commits
@@ -50,6 +50,19 @@ #define REG_CONTEXT_SIZE \ (GetGPRSize() + GetFPRSize() + sizeof(m_lsx) + sizeof(m_lasx)) +// In order to avoid undefined or redefined error, just add a new struct +// loongarch_user_watch_state in LLD

[Lldb-commits] [lldb] [LLDB][LoongArch] Extend the maximum number of watchpoints (PR #126204)

2025-02-07 Thread David Spickett via lldb-commits
DavidSpickett wrote: LGTM, but @SixWeining for the final approval as the arch expert. https://github.com/llvm/llvm-project/pull/126204 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commit

<    17   18   19   20   21   22   23   24   25   26   >