[Lldb-commits] [lldb] [lldb-dap] Implement value locations for function pointers (PR #104589)

2024-09-18 Thread Adrian Vogelsgesang via lldb-commits
@@ -1611,16 +1624,17 @@ void request_evaluate(const llvm::json::Object &request) { VariableDescription desc(value); EmplaceSafeString(body, "result", desc.GetResult(context)); EmplaceSafeString(body, "type", desc.display_type_name); - if (value.MightHave

[Lldb-commits] [lldb] [lldb-dap] Implement value locations for function pointers (PR #104589)

2024-09-18 Thread Adrian Vogelsgesang via lldb-commits
https://github.com/vogelsgesang updated https://github.com/llvm/llvm-project/pull/104589 >From 79684ccb2b6312b0938de73641e89d7cd29ce1a8 Mon Sep 17 00:00:00 2001 From: Adrian Vogelsgesang Date: Mon, 12 Aug 2024 14:53:31 + Subject: [PATCH 1/2] [lldb-dap] Implement value locations for function

[Lldb-commits] [lldb] [lldb-dap][test] Fix `readMemory` test (PR #109057)

2024-09-18 Thread Adrian Vogelsgesang via lldb-commits
https://github.com/vogelsgesang closed https://github.com/llvm/llvm-project/pull/109057 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

[Lldb-commits] [lldb] [LLDB][lldb-dap][vscode-lldb] Add Environment configuration for the lldb-dap process (PR #108948)

2024-09-17 Thread Adrian Vogelsgesang via lldb-commits
https://github.com/vogelsgesang closed https://github.com/llvm/llvm-project/pull/108948 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

[Lldb-commits] [lldb] [lldb-dap] Support inspecting memory (PR #104317)

2024-09-17 Thread Adrian Vogelsgesang via lldb-commits
vogelsgesang wrote: I think there is actually an even simpler fix for this test failure... https://github.com/llvm/llvm-project/pull/109057 https://github.com/llvm/llvm-project/pull/104317 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https

[Lldb-commits] [lldb] [lldb-dap][test] Fix `readMemory` test (PR #109057)

2024-09-17 Thread Adrian Vogelsgesang via lldb-commits
https://github.com/vogelsgesang created https://github.com/llvm/llvm-project/pull/109057 So far, the test case was also testing the offset -1. This test cases failed if the string is immediately at the beginning of the memory region, though, and the offset -1 hence belonged to a different memo

[Lldb-commits] [lldb] [LLDB][lldb-dap][vscode-lldb] Add Environment configuration for the lldb-dap process (PR #108948)

2024-09-17 Thread Adrian Vogelsgesang via lldb-commits
vogelsgesang wrote: @serby2000 do you have the necessary permissions to merge this? Or does one of us need to press the button? https://github.com/llvm/llvm-project/pull/108948 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.ll

[Lldb-commits] [lldb] [lldb][lldb-dap] Added readMemory and WriteMemory, var type correction (PR #108036)

2024-09-17 Thread Adrian Vogelsgesang via lldb-commits
vogelsgesang wrote: > I actually wrote this for a team that already has their own viewer. We've > suggested that they upstream that as well. Is that viewer in VS-Code or in some other editor? (Trying to avoid duplicating effort, so I don't accidentally implement the same thing) https://github

[Lldb-commits] [lldb] [LLDB][lldb-dap][vscode-lldb] Add Environment configuration for the lldb-dap process (PR #108948)

2024-09-17 Thread Adrian Vogelsgesang via lldb-commits
https://github.com/vogelsgesang edited https://github.com/llvm/llvm-project/pull/108948 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

[Lldb-commits] [lldb] [LLDB][lldb-dap][vscode-lldb] Add Environment configuration for the lldb-dap process (PR #108948)

2024-09-17 Thread Adrian Vogelsgesang via lldb-commits
https://github.com/vogelsgesang approved this pull request. LGTM https://github.com/llvm/llvm-project/pull/108948 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

[Lldb-commits] [lldb] [LLDB][lldb-dap][vscode-lldb] Add Environment configuration for the lldb-dap process (PR #108948)

2024-09-17 Thread Adrian Vogelsgesang via lldb-commits
@@ -78,6 +78,15 @@ "scope": "resource", "type": "string", "description": "The log path for lldb-dap (if any)" +}, + "lldb-dap.environment": { vogelsgesang wrote: Use whitespaces instead of tabs for indentatio

[Lldb-commits] [libcxx] [lldb] [lldb][libc++] Hide all libc++ implementation details from stacktraces (PR #108870)

2024-09-17 Thread Adrian Vogelsgesang via lldb-commits
https://github.com/vogelsgesang updated https://github.com/llvm/llvm-project/pull/108870 >From 60b26a50218e20431dd645b93d341403ff5b2ee4 Mon Sep 17 00:00:00 2001 From: Adrian Vogelsgesang Date: Tue, 27 Aug 2024 17:34:11 + Subject: [PATCH 1/2] [lldb][libc++] Hide all libc++ implementation det

[Lldb-commits] [libcxx] [lldb] [lldb][libc++] Hide all libc++ implementation details from stacktraces (PR #108870)

2024-09-17 Thread Adrian Vogelsgesang via lldb-commits
vogelsgesang wrote: > [...] like I said I'm a bit scared of it being too aggressive. Yes, this is also my main concern here. E.g., for `std::ranges::sort`, it already turns out to be slightly too aggressive, as discussed in the commit message and the test case comment. The "`std::ranges::sort`

[Lldb-commits] [lldb] [lldb-dap] Implement value locations for function pointers (PR #104589)

2024-09-16 Thread Adrian Vogelsgesang via lldb-commits
vogelsgesang wrote: Now that #102928 landed, this commit is also ready for review https://github.com/llvm/llvm-project/pull/104589 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

[Lldb-commits] [lldb] [lldb-dap] Implement value locations for function pointers (PR #104589)

2024-09-16 Thread Adrian Vogelsgesang via lldb-commits
https://github.com/vogelsgesang ready_for_review https://github.com/llvm/llvm-project/pull/104589 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

[Lldb-commits] [lldb] [lldb-dap] Implement value locations for function pointers (PR #104589)

2024-09-16 Thread Adrian Vogelsgesang via lldb-commits
https://github.com/vogelsgesang updated https://github.com/llvm/llvm-project/pull/104589 >From 79684ccb2b6312b0938de73641e89d7cd29ce1a8 Mon Sep 17 00:00:00 2001 From: Adrian Vogelsgesang Date: Mon, 12 Aug 2024 14:53:31 + Subject: [PATCH] [lldb-dap] Implement value locations for function poi

[Lldb-commits] [lldb] [lldb-dap] Implement value locations for function pointers (PR #104589)

2024-09-16 Thread Adrian Vogelsgesang via lldb-commits
https://github.com/vogelsgesang edited https://github.com/llvm/llvm-project/pull/104589 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

[Lldb-commits] [lldb] [lldb-dap] Implement value locations for function pointers (PR #104589)

2024-09-16 Thread Adrian Vogelsgesang via lldb-commits
https://github.com/vogelsgesang updated https://github.com/llvm/llvm-project/pull/104589 >From 72c725469268d0bd39666d20f94404f81a0cb7ad Mon Sep 17 00:00:00 2001 From: Adrian Vogelsgesang Date: Mon, 12 Aug 2024 14:53:31 + Subject: [PATCH] [lldb-dap] Implement value locations for function poi

[Lldb-commits] [lldb] [lldb-dap] Provide `declarationLocation` for variables (PR #102928)

2024-09-16 Thread Adrian Vogelsgesang via lldb-commits
vogelsgesang wrote: The above test failure above is in `lld`, not `lldb`. I don't see how this could have been caused by my change to `lldb-dap` https://github.com/llvm/llvm-project/pull/102928 ___ lldb-commits mailing list lldb-commits@lists.llvm.org

[Lldb-commits] [lldb] [lldb-dap] Provide `declarationLocation` for variables (PR #102928)

2024-09-16 Thread Adrian Vogelsgesang via lldb-commits
https://github.com/vogelsgesang closed https://github.com/llvm/llvm-project/pull/102928 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

[Lldb-commits] [lldb] [lldb-dap] Provide `declarationLocation` for variables (PR #102928)

2024-09-16 Thread Adrian Vogelsgesang via lldb-commits
https://github.com/vogelsgesang updated https://github.com/llvm/llvm-project/pull/102928 >From 7dfcc909b97efe61e3af8bb9468ddc973f19b52d Mon Sep 17 00:00:00 2001 From: Adrian Vogelsgesang Date: Sat, 10 Aug 2024 23:59:55 + Subject: [PATCH] [lldb-dap] Implement declaration locations This comm

[Lldb-commits] [lldb] [lldb] Support frame recognizer regexp on mangled names. (PR #105756)

2024-09-16 Thread Adrian Vogelsgesang via lldb-commits
vogelsgesang wrote: @adrian-prantl Now that https://github.com/llvm/llvm-project/pull/105695 is merged, do you still want to open a follow-up pull request to change the assert-recognizer and the verbose-trap-recognizer to use `ePreferMangled`? https://github.com/llvm/llvm-project/pull/105756 _

[Lldb-commits] [lldb] [lldb-dap] Support inspecting memory (PR #104317)

2024-09-16 Thread Adrian Vogelsgesang via lldb-commits
https://github.com/vogelsgesang closed https://github.com/llvm/llvm-project/pull/104317 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

[Lldb-commits] [libcxx] [lldb] [lldb][libc++] Hide all libc++ implementation details from stacktraces (PR #108870)

2024-09-16 Thread Adrian Vogelsgesang via lldb-commits
https://github.com/vogelsgesang created https://github.com/llvm/llvm-project/pull/108870 This commit changes the libc++ frame recognizer to hide implementation details of libc++ more aggressively. The applied heuristic is rather straightforward: We consider every function name starting with `_

[Lldb-commits] [lldb] [lldb-dap] Support inspecting memory (PR #104317)

2024-09-16 Thread Adrian Vogelsgesang via lldb-commits
vogelsgesang wrote: @clayborg the code is now up-to-date and ready for another review 🙂 https://github.com/llvm/llvm-project/pull/104317 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-com

[Lldb-commits] [lldb] [lldb-dap] Support inspecting memory (PR #104317)

2024-09-16 Thread Adrian Vogelsgesang via lldb-commits
https://github.com/vogelsgesang updated https://github.com/llvm/llvm-project/pull/104317 >From 88b48a5df0153a44276f14872c48e10639dcb673 Mon Sep 17 00:00:00 2001 From: Adrian Vogelsgesang Date: Wed, 14 Aug 2024 11:52:40 + Subject: [PATCH 01/10] [lldb-dap] Support inspecting memory Adds supp

[Lldb-commits] [lldb] [lldb-dap] Support inspecting memory (PR #104317)

2024-09-16 Thread Adrian Vogelsgesang via lldb-commits
https://github.com/vogelsgesang updated https://github.com/llvm/llvm-project/pull/104317 >From 88b48a5df0153a44276f14872c48e10639dcb673 Mon Sep 17 00:00:00 2001 From: Adrian Vogelsgesang Date: Wed, 14 Aug 2024 11:52:40 + Subject: [PATCH 1/9] [lldb-dap] Support inspecting memory Adds suppor

[Lldb-commits] [lldb] [lldb-dap] Provide `declarationLocation` for variables (PR #102928)

2024-09-12 Thread Adrian Vogelsgesang via lldb-commits
vogelsgesang wrote: Hi @clayborg, Are you still planning to review this (as requested by @walter-erquinigo)? Or are you fine with me landing this change without your review? https://github.com/llvm/llvm-project/pull/102928 ___ lldb-commits mailing li

[Lldb-commits] [lldb] [lldb] Make sure TestDAP_subtleFrames actually uses libc++ (PR #108227)

2024-09-12 Thread Adrian Vogelsgesang via lldb-commits
https://github.com/vogelsgesang approved this pull request. Thanks for fixing this! 🙂 https://github.com/llvm/llvm-project/pull/108227 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commi

[Lldb-commits] [lldb] [lldb][lldb-dap] Added readMemory and WriteMemory, var type correction (PR #108036)

2024-09-12 Thread Adrian Vogelsgesang via lldb-commits
vogelsgesang wrote: Hi @jennphilqc, Great minds think alike - I actually also implemented the `readMemory` request in #104317. Thankfully, we didn't literally do the same, duplicated work * your PR also implements `writeMemory` which my PR is still lacking. Here your PR is clearly further al

[Lldb-commits] [lldb] [lldb-dap] Support inspecting memory (PR #104317)

2024-09-12 Thread Adrian Vogelsgesang via lldb-commits
vogelsgesang wrote: Hi @clayborg, sorry for the late reply - got knocked out by Covid for a while 😷 > Let me know what you think of my idea to always just show the load address of > any SBValue. I think that is the best for LLDB, but I am open to opinions. I did check the other lldb-based de

[Lldb-commits] [lldb] Make env and source map dictionaries #95137 (PR #106919)

2024-09-02 Thread Adrian Vogelsgesang via lldb-commits
vogelsgesang wrote: > I am not sure if it possible to use a dict for sourceMaps since a source can > map to multiple destination see test Interestingly, CodeLLDB also uses an object, see https://github.com/vadimcn/codelldb/blob/v1.10.0/MANUAL.md#source-path-remapping. Probably they just don't

[Lldb-commits] [lldb] Make env and source map dictionaries #95137 (PR #106919)

2024-09-02 Thread Adrian Vogelsgesang via lldb-commits
@@ -1831,7 +1831,13 @@ lldb::SBError LaunchProcess(const llvm::json::Object &request) { launch_info.SetArguments(MakeArgv(args).data(), true); // Pass any environment variables along that the user specified. - auto envs = GetStrings(arguments, "env"); + auto envMap =

[Lldb-commits] [lldb] Make env and source map dictionaries #95137 (PR #106919)

2024-09-01 Thread Adrian Vogelsgesang via lldb-commits
@@ -151,6 +152,26 @@ bool ObjectContainsKey(const llvm::json::Object &obj, llvm::StringRef key); /// strings, numbers or booleans. std::vector GetStrings(const llvm::json::Object *obj, llvm::StringRef key); +/// Extract an object of key

[Lldb-commits] [lldb] Make env and source map dictionaries #95137 (PR #106919)

2024-09-01 Thread Adrian Vogelsgesang via lldb-commits
@@ -194,9 +199,14 @@ "description": "Specify a source path to remap \"./\" to allow full paths to be used when setting breakpoints in binaries that have relative source paths." }, "sourceMap": { -"type": "array", -

[Lldb-commits] [lldb] Make env and source map dictionaries #95137 (PR #106919)

2024-09-01 Thread Adrian Vogelsgesang via lldb-commits
@@ -151,6 +152,26 @@ bool ObjectContainsKey(const llvm::json::Object &obj, llvm::StringRef key); /// strings, numbers or booleans. std::vector GetStrings(const llvm::json::Object *obj, llvm::StringRef key); +/// Extract an object of key

[Lldb-commits] [lldb] Make env and source map dictionaries #95137 (PR #106919)

2024-09-01 Thread Adrian Vogelsgesang via lldb-commits
@@ -299,9 +309,14 @@ "description": "Specify a source path to remap \"./\" to allow full paths to be used when setting breakpoints in binaries that have relative source paths." }, "sourceMap": { -"type": "array", -

[Lldb-commits] [lldb] Make env and source map dictionaries #95137 (PR #106919)

2024-09-01 Thread Adrian Vogelsgesang via lldb-commits
@@ -160,9 +160,14 @@ "default": "${workspaceRoot}" }, "env": { -"type": "array", -"description": "Additional environment variables to set when launching the program. This is an array of strings that co

[Lldb-commits] [lldb] Make env and source map dictionaries #95137 (PR #106919)

2024-09-01 Thread Adrian Vogelsgesang via lldb-commits
@@ -151,6 +152,26 @@ bool ObjectContainsKey(const llvm::json::Object &obj, llvm::StringRef key); /// strings, numbers or booleans. std::vector GetStrings(const llvm::json::Object *obj, llvm::StringRef key); +/// Extract an object of key

[Lldb-commits] [lldb] [lldb] Fix test expectation in `TestFrameRecognizer.py` (PR #106281)

2024-08-27 Thread Adrian Vogelsgesang via lldb-commits
https://github.com/vogelsgesang closed https://github.com/llvm/llvm-project/pull/106281 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

[Lldb-commits] [lldb] [lldb] Fix test expectation in `TestFrameRecognizer.py` (PR #106281)

2024-08-27 Thread Adrian Vogelsgesang via lldb-commits
vogelsgesang wrote: @adrian-prantl It seems I overlooked this test expectation. This hopefully fixes the build issue in https://green.lab.llvm.org/job/llvm.org/view/LLDB/job/as-lldb-cmake/10463/ . Unfortunately, i was not able to run this test locally, it is marked as "unsupported" for some r

[Lldb-commits] [lldb] [lldb] Fix test expectation in `TestFrameRecognizer.py` (PR #106281)

2024-08-27 Thread Adrian Vogelsgesang via lldb-commits
https://github.com/vogelsgesang updated https://github.com/llvm/llvm-project/pull/106281 >From b32e85a07ab0e6dc55d28706d50eb84345575bc6 Mon Sep 17 00:00:00 2001 From: Adrian Vogelsgesang Date: Tue, 27 Aug 2024 20:14:36 + Subject: [PATCH] [lldb] Fix test expectation in `TestFrameRecognizer.p

[Lldb-commits] [lldb] [lldb] Add frame recognizers for libc++ `std::invoke` (PR #105695)

2024-08-27 Thread Adrian Vogelsgesang via lldb-commits
vogelsgesang wrote: fixed in #106281 https://github.com/llvm/llvm-project/pull/105695 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

[Lldb-commits] [lldb] [lldb] Fix test expectation in `TestFrameRecognizer.py` (PR #106281)

2024-08-27 Thread Adrian Vogelsgesang via lldb-commits
https://github.com/vogelsgesang created https://github.com/llvm/llvm-project/pull/106281 None >From 2fdc99f2e42ac7bc12449e420ff653fb963cee24 Mon Sep 17 00:00:00 2001 From: Adrian Vogelsgesang Date: Tue, 27 Aug 2024 20:14:36 + Subject: [PATCH] [lldb] Fix test expectation in `TestFrameRecogn

[Lldb-commits] [lldb] [lldb] Add frame recognizers for libc++ `std::invoke` (PR #105695)

2024-08-27 Thread Adrian Vogelsgesang via lldb-commits
https://github.com/vogelsgesang closed https://github.com/llvm/llvm-project/pull/105695 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

[Lldb-commits] [lldb] [lldb] Add frame recognizers for libc++ `std::invoke` (PR #105695)

2024-08-27 Thread Adrian Vogelsgesang via lldb-commits
https://github.com/vogelsgesang updated https://github.com/llvm/llvm-project/pull/105695 >From e90463e8967c2019e220b063ed4ce73cd0172bf3 Mon Sep 17 00:00:00 2001 From: Adrian Vogelsgesang Date: Thu, 22 Aug 2024 10:50:13 + Subject: [PATCH 1/7] [lldb-dap] Add frame recognizers for libc++ `std:

[Lldb-commits] [lldb] [lldb] Add frame recognizers for libc++ `std::invoke` (PR #105695)

2024-08-27 Thread Adrian Vogelsgesang via lldb-commits
https://github.com/vogelsgesang updated https://github.com/llvm/llvm-project/pull/105695 >From e90463e8967c2019e220b063ed4ce73cd0172bf3 Mon Sep 17 00:00:00 2001 From: Adrian Vogelsgesang Date: Thu, 22 Aug 2024 10:50:13 + Subject: [PATCH 1/7] [lldb-dap] Add frame recognizers for libc++ `std:

[Lldb-commits] [lldb] [lldb] Add frame recognizers for libc++ `std::invoke` (PR #105695)

2024-08-27 Thread Adrian Vogelsgesang via lldb-commits
@@ -305,7 +307,9 @@ def test_frame_recognizer_target_specific(self): self.expect( "frame recognizer list", -substrs=["recognizer.MyFrameRecognizer, module a.out, symbol bar"], +substrs=[ +"recognizer.MyFrameRecognizer

[Lldb-commits] [lldb] [lldb] Add frame recognizers for libc++ `std::invoke` (PR #105695)

2024-08-27 Thread Adrian Vogelsgesang via lldb-commits
https://github.com/vogelsgesang updated https://github.com/llvm/llvm-project/pull/105695 >From e90463e8967c2019e220b063ed4ce73cd0172bf3 Mon Sep 17 00:00:00 2001 From: Adrian Vogelsgesang Date: Thu, 22 Aug 2024 10:50:13 + Subject: [PATCH 1/6] [lldb-dap] Add frame recognizers for libc++ `std:

[Lldb-commits] [lldb] [lldb] Add frame recognizers for libc++ `std::invoke` (PR #105695)

2024-08-26 Thread Adrian Vogelsgesang via lldb-commits
https://github.com/vogelsgesang updated https://github.com/llvm/llvm-project/pull/105695 >From e90463e8967c2019e220b063ed4ce73cd0172bf3 Mon Sep 17 00:00:00 2001 From: Adrian Vogelsgesang Date: Thu, 22 Aug 2024 10:50:13 + Subject: [PATCH 1/5] [lldb-dap] Add frame recognizers for libc++ `std:

[Lldb-commits] [lldb] [lldb] Add frame recognizers for libc++ `std::invoke` (PR #105695)

2024-08-26 Thread Adrian Vogelsgesang via lldb-commits
@@ -196,8 +197,8 @@ AbortWithPayloadFrameRecognizer::RecognizeFrame(lldb::StackFrameSP frame_sp) { abort_dict_sp->AddStringItem(reason_key, reason_string); abort_dict_sp->AddIntegerItem(flags_key, flags_val); - // This will overwrite the abort_with_payload information in

[Lldb-commits] [lldb] [lldb] Add frame recognizers for libc++ `std::invoke` (PR #105695)

2024-08-26 Thread Adrian Vogelsgesang via lldb-commits
@@ -53,10 +54,32 @@ class LibCXXFrameRecognizer : public StackFrameRecognizer { public: LibCXXFrameRecognizer() - : m_hidden_function_regex( -R"(^std::__1::(__function.*::operator\(\)|__invoke))" -R"((\[.*\])?)"// ABI tag. -R"(( c

[Lldb-commits] [lldb] [lldb] Extend frame recognizers to hide frames from backtraces (PR #104523)

2024-08-25 Thread Adrian Vogelsgesang via lldb-commits
vogelsgesang wrote: I updated https://github.com/llvm/llvm-project/pull/105695 and locally verified that it now fixes the test case for libc++ ABI v2 https://github.com/llvm/llvm-project/pull/104523 ___ lldb-commits mailing list lldb-commits@lists.llv

[Lldb-commits] [lldb] [lldb] Add frame recognizers for libc++ `std::invoke` (PR #105695)

2024-08-25 Thread Adrian Vogelsgesang via lldb-commits
https://github.com/vogelsgesang updated https://github.com/llvm/llvm-project/pull/105695 >From e90463e8967c2019e220b063ed4ce73cd0172bf3 Mon Sep 17 00:00:00 2001 From: Adrian Vogelsgesang Date: Thu, 22 Aug 2024 10:50:13 + Subject: [PATCH 1/4] [lldb-dap] Add frame recognizers for libc++ `std:

[Lldb-commits] [lldb] [lldb] Add frame recognizers for libc++ `std::invoke` (PR #105695)

2024-08-25 Thread Adrian Vogelsgesang via lldb-commits
https://github.com/vogelsgesang updated https://github.com/llvm/llvm-project/pull/105695 >From e90463e8967c2019e220b063ed4ce73cd0172bf3 Mon Sep 17 00:00:00 2001 From: Adrian Vogelsgesang Date: Thu, 22 Aug 2024 10:50:13 + Subject: [PATCH 1/3] [lldb-dap] Add frame recognizers for libc++ `std:

[Lldb-commits] [lldb] [lldb] Add frame recognizers for libc++ `std::invoke` (PR #105695)

2024-08-25 Thread Adrian Vogelsgesang via lldb-commits
https://github.com/vogelsgesang updated https://github.com/llvm/llvm-project/pull/105695 >From e90463e8967c2019e220b063ed4ce73cd0172bf3 Mon Sep 17 00:00:00 2001 From: Adrian Vogelsgesang Date: Thu, 22 Aug 2024 10:50:13 + Subject: [PATCH 1/3] [lldb-dap] Add frame recognizers for libc++ `std:

[Lldb-commits] [lldb] [lldb] Add frame recognizers for libc++ `std::invoke` (PR #105695)

2024-08-25 Thread Adrian Vogelsgesang via lldb-commits
https://github.com/vogelsgesang edited https://github.com/llvm/llvm-project/pull/105695 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

[Lldb-commits] [lldb] [lldb] Extend frame recognizers to hide frames from backtraces (PR #104523)

2024-08-25 Thread Adrian Vogelsgesang via lldb-commits
vogelsgesang wrote: Would be interesting if this is fixed by #105695. How can I run the test cases against libc++'s unstable ABI locally? https://github.com/llvm/llvm-project/pull/104523 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https:

[Lldb-commits] [lldb] [lldb] Add frame recognizers for libc++ `std::invoke` (PR #105695)

2024-08-25 Thread Adrian Vogelsgesang via lldb-commits
https://github.com/vogelsgesang updated https://github.com/llvm/llvm-project/pull/105695 >From e90463e8967c2019e220b063ed4ce73cd0172bf3 Mon Sep 17 00:00:00 2001 From: Adrian Vogelsgesang Date: Thu, 22 Aug 2024 10:50:13 + Subject: [PATCH 1/4] [lldb-dap] Add frame recognizers for libc++ `std:

[Lldb-commits] [lldb] [lldb] Add frame recognizers for libc++ `std::invoke` (PR #105695)

2024-08-25 Thread Adrian Vogelsgesang via lldb-commits
https://github.com/vogelsgesang updated https://github.com/llvm/llvm-project/pull/105695 >From 19b4370c240cfcf4a57a5c38a64c8ba933d8102c Mon Sep 17 00:00:00 2001 From: Adrian Vogelsgesang Date: Thu, 22 Aug 2024 10:50:13 + Subject: [PATCH 1/5] [lldb-dap] Add frame recognizers for libc++ `std:

[Lldb-commits] [lldb] [lldb] Add frame recognizers for libc++ `std::invoke` (PR #105695)

2024-08-25 Thread Adrian Vogelsgesang via lldb-commits
https://github.com/vogelsgesang updated https://github.com/llvm/llvm-project/pull/105695 >From 19b4370c240cfcf4a57a5c38a64c8ba933d8102c Mon Sep 17 00:00:00 2001 From: Adrian Vogelsgesang Date: Thu, 22 Aug 2024 10:50:13 + Subject: [PATCH 1/4] [lldb-dap] Add frame recognizers for libc++ `std:

[Lldb-commits] [lldb] [lldb] Add frame recognizers for libc++ `std::invoke` (PR #105695)

2024-08-25 Thread Adrian Vogelsgesang via lldb-commits
https://github.com/vogelsgesang updated https://github.com/llvm/llvm-project/pull/105695 >From 19b4370c240cfcf4a57a5c38a64c8ba933d8102c Mon Sep 17 00:00:00 2001 From: Adrian Vogelsgesang Date: Thu, 22 Aug 2024 10:50:13 + Subject: [PATCH 1/4] [lldb-dap] Add frame recognizers for libc++ `std:

[Lldb-commits] [lldb] [lldb] Add frame recognizers for libc++ `std::invoke` (PR #105695)

2024-08-25 Thread Adrian Vogelsgesang via lldb-commits
https://github.com/vogelsgesang updated https://github.com/llvm/llvm-project/pull/105695 >From 19b4370c240cfcf4a57a5c38a64c8ba933d8102c Mon Sep 17 00:00:00 2001 From: Adrian Vogelsgesang Date: Thu, 22 Aug 2024 10:50:13 + Subject: [PATCH 1/4] [lldb-dap] Add frame recognizers for libc++ `std:

[Lldb-commits] [lldb] [lldb] Add frame recognizers for libc++ `std::invoke` (PR #105695)

2024-08-25 Thread Adrian Vogelsgesang via lldb-commits
https://github.com/vogelsgesang updated https://github.com/llvm/llvm-project/pull/105695 >From 19b4370c240cfcf4a57a5c38a64c8ba933d8102c Mon Sep 17 00:00:00 2001 From: Adrian Vogelsgesang Date: Thu, 22 Aug 2024 10:50:13 + Subject: [PATCH 1/4] [lldb-dap] Add frame recognizers for libc++ `std:

[Lldb-commits] [lldb] [lldb] Add frame recognizers for libc++ `std::invoke` (PR #105695)

2024-08-25 Thread Adrian Vogelsgesang via lldb-commits
https://github.com/vogelsgesang edited https://github.com/llvm/llvm-project/pull/105695 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

[Lldb-commits] [lldb] [lldb] Add frame recognizers for libc++ `std::invoke` (PR #105695)

2024-08-25 Thread Adrian Vogelsgesang via lldb-commits
https://github.com/vogelsgesang edited https://github.com/llvm/llvm-project/pull/105695 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

[Lldb-commits] [lldb] [lldb] Add frame recognizers for libc++ `std::invoke` (PR #105695)

2024-08-25 Thread Adrian Vogelsgesang via lldb-commits
@@ -53,10 +54,32 @@ class LibCXXFrameRecognizer : public StackFrameRecognizer { public: LibCXXFrameRecognizer() - : m_hidden_function_regex( -R"(^std::__1::(__function.*::operator\(\)|__invoke))" -R"((\[.*\])?)"// ABI tag. -R"(( c

[Lldb-commits] [lldb] [lldb] Add frame recognizers for libc++ `std::invoke` (PR #105695)

2024-08-25 Thread Adrian Vogelsgesang via lldb-commits
@@ -1049,7 +1049,7 @@ let Command = "thread backtrace" in { def thread_backtrace_extended : Option<"extended", "e">, Group<1>, Arg<"Boolean">, Desc<"Show the extended backtrace, if available">; def thread_backtrace_unfiltered : Option<"unfiltered", "u">, Group<1>, - Desc

[Lldb-commits] [lldb] [lldb] Add frame recognizers for libc++ `std::invoke` (PR #105695)

2024-08-25 Thread Adrian Vogelsgesang via lldb-commits
@@ -145,6 +167,17 @@ StackFrameRecognizerManager::GetRecognizerForFrame(StackFrameSP frame) { if (!entry.module_regexp->Execute(module_name.GetStringRef())) continue; +ConstString function_name = [&]() { + switch (entry.mangling_preference) { + cas

[Lldb-commits] [lldb] [lldb] Add frame recognizers for libc++ `std::invoke` (PR #105695)

2024-08-25 Thread Adrian Vogelsgesang via lldb-commits
https://github.com/vogelsgesang updated https://github.com/llvm/llvm-project/pull/105695 >From 19b4370c240cfcf4a57a5c38a64c8ba933d8102c Mon Sep 17 00:00:00 2001 From: Adrian Vogelsgesang Date: Thu, 22 Aug 2024 10:50:13 + Subject: [PATCH 1/4] [lldb-dap] Add frame recognizers for libc++ `std:

[Lldb-commits] [lldb] [lldb] Add frame recognizers for libc++ `std::invoke` (PR #105695)

2024-08-25 Thread Adrian Vogelsgesang via lldb-commits
@@ -145,6 +167,17 @@ StackFrameRecognizerManager::GetRecognizerForFrame(StackFrameSP frame) { if (!entry.module_regexp->Execute(module_name.GetStringRef())) continue; +ConstString function_name = [&]() { + switch (entry.mangling_preference) { + cas

[Lldb-commits] [lldb] [lldb] Add frame recognizers for libc++ `std::invoke` (PR #105695)

2024-08-25 Thread Adrian Vogelsgesang via lldb-commits
https://github.com/vogelsgesang updated https://github.com/llvm/llvm-project/pull/105695 >From 19b4370c240cfcf4a57a5c38a64c8ba933d8102c Mon Sep 17 00:00:00 2001 From: Adrian Vogelsgesang Date: Thu, 22 Aug 2024 10:50:13 + Subject: [PATCH 1/3] [lldb-dap] Add frame recognizers for libc++ `std:

[Lldb-commits] [lldb] [lldb] Add frame recognizers for libc++ `std::invoke` (PR #105695)

2024-08-23 Thread Adrian Vogelsgesang via lldb-commits
@@ -145,6 +167,17 @@ StackFrameRecognizerManager::GetRecognizerForFrame(StackFrameSP frame) { if (!entry.module_regexp->Execute(module_name.GetStringRef())) continue; +ConstString function_name = [&]() { + switch (entry.mangling_preference) { + cas

[Lldb-commits] [lldb] [lldb] Add frame recognizers for libc++ `std::invoke` (PR #105695)

2024-08-23 Thread Adrian Vogelsgesang via lldb-commits
@@ -145,6 +167,17 @@ StackFrameRecognizerManager::GetRecognizerForFrame(StackFrameSP frame) { if (!entry.module_regexp->Execute(module_name.GetStringRef())) continue; +ConstString function_name = [&]() { + switch (entry.mangling_preference) { + cas

[Lldb-commits] [lldb] [lldb] Support frame recognizer regexp on mangled names. (PR #105756)

2024-08-22 Thread Adrian Vogelsgesang via lldb-commits
https://github.com/vogelsgesang edited https://github.com/llvm/llvm-project/pull/105756 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

[Lldb-commits] [lldb] [lldb] Support frame recognizer regexp on mangled names. (PR #105756)

2024-08-22 Thread Adrian Vogelsgesang via lldb-commits
https://github.com/vogelsgesang edited https://github.com/llvm/llvm-project/pull/105756 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

[Lldb-commits] [lldb] [lldb] Support frame recognizer regexp on mangled names. (PR #105756)

2024-08-22 Thread Adrian Vogelsgesang via lldb-commits
@@ -92,11 +95,13 @@ void StackFrameRecognizerManager::ForEach( symbol_name = entry.symbol_regexp->GetText().str(); callback(entry.recognizer_id, entry.recognizer->GetName(), module_name, - llvm::ArrayRef(ConstString(symbol_name)), true); +

[Lldb-commits] [lldb] [lldb] Support frame recognizer regexp on mangled names. (PR #105756)

2024-08-22 Thread Adrian Vogelsgesang via lldb-commits
@@ -92,11 +95,13 @@ void StackFrameRecognizerManager::ForEach( symbol_name = entry.symbol_regexp->GetText().str(); callback(entry.recognizer_id, entry.recognizer->GetName(), module_name, - llvm::ArrayRef(ConstString(symbol_name)), true); +

[Lldb-commits] [lldb] [lldb] Add frame recognizers for libc++ `std::invoke` (PR #105695)

2024-08-22 Thread Adrian Vogelsgesang via lldb-commits
@@ -53,10 +54,32 @@ class LibCXXFrameRecognizer : public StackFrameRecognizer { public: LibCXXFrameRecognizer() - : m_hidden_function_regex( -R"(^std::__1::(__function.*::operator\(\)|__invoke))" -R"((\[.*\])?)"// ABI tag. -R"(( c

[Lldb-commits] [lldb] [lldb-dap] show dialog when executable is not found (PR #104711)

2024-08-22 Thread Adrian Vogelsgesang via lldb-commits
vogelsgesang wrote: Looks good to me! Thanks again for fixing this! https://github.com/llvm/llvm-project/pull/104711 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

[Lldb-commits] [lldb] [lldb-dap] show dialog when executable is not found (PR #104711)

2024-08-22 Thread Adrian Vogelsgesang via lldb-commits
https://github.com/vogelsgesang approved this pull request. https://github.com/llvm/llvm-project/pull/104711 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

[Lldb-commits] [lldb] [lldb] Add frame recognizers for libc++ `std::invoke` (PR #105695)

2024-08-22 Thread Adrian Vogelsgesang via lldb-commits
https://github.com/vogelsgesang updated https://github.com/llvm/llvm-project/pull/105695 >From c7cc7e9eed1ef4b95cabec5f662ebe10607b178e Mon Sep 17 00:00:00 2001 From: Adrian Vogelsgesang Date: Thu, 22 Aug 2024 10:50:13 + Subject: [PATCH] [lldb-dap] Add frame recognizers for libc++ `std::inv

[Lldb-commits] [lldb] [lldb] Add frame recognizers for libc++ `std::invoke` (PR #105695)

2024-08-22 Thread Adrian Vogelsgesang via lldb-commits
vogelsgesang wrote: @mordante @ldionne FYI. Would be interested which other functions come to mind that should be hidden. See https://github.com/llvm/llvm-project/pull/105457#issuecomment-226404 for screenshots of how this looks from a user's perspective https://github.com/llvm/llvm-proje

[Lldb-commits] [lldb] [lldb-dap] Enabling instruction breakpoint support to lldb-dap. (PR #105278)

2024-08-22 Thread Adrian Vogelsgesang via lldb-commits
@@ -4078,6 +4255,9 @@ void RegisterRequestCallbacks() { g_dap.RegisterRequestCallback("threads", request_threads); g_dap.RegisterRequestCallback("variables", request_variables); g_dap.RegisterRequestCallback("disassemble", request_disassemble); + // Instruction breapoint

[Lldb-commits] [lldb] [lldb] Add frame recognizers for libc++ `std::invoke` (PR #105695)

2024-08-22 Thread Adrian Vogelsgesang via lldb-commits
https://github.com/vogelsgesang edited https://github.com/llvm/llvm-project/pull/105695 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

[Lldb-commits] [lldb] [lldb-dap] Add frame recognizers for libc++ `std::invoke` (PR #105695)

2024-08-22 Thread Adrian Vogelsgesang via lldb-commits
https://github.com/vogelsgesang created https://github.com/llvm/llvm-project/pull/105695 With this commit, we also hide the implementation details of `std::invoke`. To do so, the `LibCXXFrameRecognizer` got a couple more regular expressions. The regular expression passed into the `AddRecognize

[Lldb-commits] [lldb] [lldb-dap] Provide `declarationLocation` for variables (PR #102928)

2024-08-22 Thread Adrian Vogelsgesang via lldb-commits
@@ -0,0 +1,40 @@ +""" +Test lldb-dap locations request +""" + + +import dap_server +from lldbsuite.test.decorators import * +from lldbsuite.test.lldbtest import * +from lldbsuite.test import lldbutil +import lldbdap_testcase +import os + + +class TestDAP_locations(lldbdap_testcase

[Lldb-commits] [lldb] [lldb-dap] Provide `declarationLocation` for variables (PR #102928)

2024-08-21 Thread Adrian Vogelsgesang via lldb-commits
vogelsgesang wrote: > This LGTM considering that the screenshot looks right and this passes all the > tests. Thanks! I assume you still want me to wait for @clayborg's review before merging? https://github.com/llvm/llvm-project/pull/102928 ___ lldb-

[Lldb-commits] [lldb] [lldb-dap] Provide `declarationLocation` for variables (PR #102928)

2024-08-21 Thread Adrian Vogelsgesang via lldb-commits
vogelsgesang wrote: > I'll explain what I do [...] Thanks for that context! I don't currently have a LSP in mind. Let's see which UI VS-Code will be providing for this (if any). I hope it will not conflict with your existing UI https://github.com/llvm/llvm-project/pull/102928

[Lldb-commits] [lldb] [lldb-dap] Provide `declarationLocation` for variables (PR #102928)

2024-08-21 Thread Adrian Vogelsgesang via lldb-commits
vogelsgesang wrote: > @vogelsgesang , can you show a screenshot of the variables pane after this > change? I want to make sure that simple types, like ints, are not displayed > as having children. **With this commit (and also with the changes from #104589)** https://github.com/user-attachment

[Lldb-commits] [lldb] [lldb-dap] Implement value locations for function pointers (PR #104589)

2024-08-21 Thread Adrian Vogelsgesang via lldb-commits
https://github.com/vogelsgesang updated https://github.com/llvm/llvm-project/pull/104589 >From 5bdcb821527bf67eead6c42825ea6e559ec749c3 Mon Sep 17 00:00:00 2001 From: Adrian Vogelsgesang Date: Sat, 10 Aug 2024 23:59:55 + Subject: [PATCH 1/3] [lldb-dap] Implement declaration locations This

[Lldb-commits] [lldb] [lldb-dap] Provide `declarationLocation` for variables (PR #102928)

2024-08-21 Thread Adrian Vogelsgesang via lldb-commits
vogelsgesang wrote: > @vogelsgesang , the $__lldb_extensions.declaration is used by the Mojo > extension. Once this change gets it, I'll update the Mojo extension to use > the new declaration info and remove $__lldb_extensions.declaration. Is that extension's source code available? I wonder ho

[Lldb-commits] [lldb] [lldb-dap] show dialog when executable is not found (PR #104711)

2024-08-21 Thread Adrian Vogelsgesang via lldb-commits
@@ -14,10 +14,52 @@ export class LLDBDapDescriptorFactory this.lldbDapOptions = lldbDapOptions; } + public static async validateDebugAdapterPath(pathUri: vscode.Uri) { +try { + const fileStats = await vscode.workspace.fs.stat(pathUri); + if (!(fileStats.ty

[Lldb-commits] [lldb] [lldb-dap] show dialog when executable is not found (PR #104711)

2024-08-21 Thread Adrian Vogelsgesang via lldb-commits
@@ -14,10 +14,52 @@ export class LLDBDapDescriptorFactory this.lldbDapOptions = lldbDapOptions; } + public static async validateDebugAdapterPath(pathUri: vscode.Uri) { +try { + const fileStats = await vscode.workspace.fs.stat(pathUri); + if (!(fileStats.ty

[Lldb-commits] [lldb] [lldb-dap] show dialog when executable is not found (PR #104711)

2024-08-21 Thread Adrian Vogelsgesang via lldb-commits
@@ -14,10 +14,52 @@ export class LLDBDapDescriptorFactory this.lldbDapOptions = lldbDapOptions; } + public static async validateDebugAdapterPath(pathUri: vscode.Uri) { +try { + const fileStats = await vscode.workspace.fs.stat(pathUri); + if (!(fileStats.ty

[Lldb-commits] [lldb] [lldb-dap] show dialog when executable is not found (PR #104711)

2024-08-21 Thread Adrian Vogelsgesang via lldb-commits
@@ -14,10 +14,52 @@ export class LLDBDapDescriptorFactory this.lldbDapOptions = lldbDapOptions; } + public static async validateDebugAdapterPath(pathUri: vscode.Uri) { +try { + const fileStats = await vscode.workspace.fs.stat(pathUri); + if (!(fileStats.ty

[Lldb-commits] [lldb] [lldb-dap] show dialog when executable is not found (PR #104711)

2024-08-21 Thread Adrian Vogelsgesang via lldb-commits
https://github.com/vogelsgesang approved this pull request. Looks good to me! Thanks for this amazing usability improvement! If this would have existed the first time I tried this extension, it would have saved me a lot of time https://github.com/llvm/llvm-project/pull/104711 __

[Lldb-commits] [lldb] [lldb-dap] show dialog when executable is not found (PR #104711)

2024-08-21 Thread Adrian Vogelsgesang via lldb-commits
https://github.com/vogelsgesang edited https://github.com/llvm/llvm-project/pull/104711 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

[Lldb-commits] [lldb] [lldb-dap] Provide `declarationLocation` for variables (PR #102928)

2024-08-21 Thread Adrian Vogelsgesang via lldb-commits
https://github.com/vogelsgesang updated https://github.com/llvm/llvm-project/pull/102928 >From 5bdcb821527bf67eead6c42825ea6e559ec749c3 Mon Sep 17 00:00:00 2001 From: Adrian Vogelsgesang Date: Sat, 10 Aug 2024 23:59:55 + Subject: [PATCH 1/2] [lldb-dap] Implement declaration locations This

[Lldb-commits] [lldb] [lldb-dap] Provide `declarationLocation` for variables (PR #102928)

2024-08-21 Thread Adrian Vogelsgesang via lldb-commits
@@ -0,0 +1,40 @@ +""" +Test lldb-dap locations request +""" + + +import dap_server +from lldbsuite.test.decorators import * +from lldbsuite.test.lldbtest import * +from lldbsuite.test import lldbutil +import lldbdap_testcase +import os + + +class TestDAP_locations(lldbdap_testcase

  1   2   >