[Lldb-commits] [PATCH] D104914: [lldb] Correct format of qMemTags type field

2021-07-08 Thread David Spickett via Phabricator via lldb-commits
DavidSpickett added a comment. Any other comments? Comment at: lldb/test/API/tools/lldb-server/memory-tagging/TestGdbRemoteMemoryTagging.py:22 """ Test that qMemTags packets are parsed correctly and/or rejected. """ self.build() omjavaid w

[Lldb-commits] [PATCH] D105181: [lldb][AArch64] Add memory tag writing to lldb

2021-07-08 Thread David Spickett via Phabricator via lldb-commits
DavidSpickett added inline comments. Comment at: lldb/source/Target/Process.cpp:6108 +range_callback) { Architecture *arch = GetTarget().GetArchitecturePlugin(); const MemoryTagManager *tag_manager = DavidSpickett wrote: > omjavaid wrote: > > The po

[Lldb-commits] [PATCH] D105630: [lldb][AArch64] Refactor memory tag range handling

2021-07-08 Thread David Spickett via Phabricator via lldb-commits
DavidSpickett created this revision. Herald added subscribers: danielkiss, kristof.beyls. DavidSpickett requested review of this revision. Herald added a project: LLDB. Herald added a subscriber: lldb-commits. Previously GetMemoryTagManager checked many things in one: - architecture supports memo

[Lldb-commits] [PATCH] D105630: [lldb][AArch64] Refactor memory tag range handling

2021-07-08 Thread David Spickett via Phabricator via lldb-commits
DavidSpickett added a comment. Herald added a subscriber: JDevlieghere. This is a response to feedback on https://reviews.llvm.org/D105181 but would be intended to come before any of the changes in that series if it looks good. I'm yet to refactor the tag writing changes on to this, wanted to ge

[Lldb-commits] [PATCH] D105630: [lldb][AArch64] Refactor memory tag range handling

2021-07-08 Thread David Spickett via Phabricator via lldb-commits
DavidSpickett added a comment. Similarly, I have a patch locally that has a "best effort" read where it returns a sparse set of results (for annotating memory reads). For that there would be a `MakeTaggedRange<...>` that returns a list of ranges that you can then read in a loop. Repository:

[Lldb-commits] [PATCH] D105630: [lldb][AArch64] Refactor memory tag range handling

2021-07-09 Thread David Spickett via Phabricator via lldb-commits
DavidSpickett updated this revision to Diff 357486. DavidSpickett added a comment. Update various comments. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D105630/new/ https://reviews.llvm.org/D105630 Files: lldb/include/lldb/Target/MemoryTagManag

[Lldb-commits] [PATCH] D105630: [lldb][AArch64] Refactor memory tag range handling

2021-07-09 Thread David Spickett via Phabricator via lldb-commits
DavidSpickett added a comment. > It will become a bit more complicated for a reader who have no knowledge > about memory tag range and disjoint region. I've added/updated some of the comments in `MakeTaggedRange`. Maybe you can highlight any bits that aren't clear and I'll make sure they get co

[Lldb-commits] [PATCH] D105630: [lldb][AArch64] Refactor memory tag range handling

2021-07-09 Thread David Spickett via Phabricator via lldb-commits
DavidSpickett added inline comments. Comment at: lldb/source/Commands/CommandObjectMemoryTag.cpp:70 Process *process = m_exe_ctx.GetProcessPtr(); llvm::Expected tag_manager_or_err = +process->GetMemoryTagManager(); DavidSpickett wrote: > omjavai

[Lldb-commits] [PATCH] D105630: [lldb][AArch64] Refactor memory tag range handling

2021-07-09 Thread David Spickett via Phabricator via lldb-commits
DavidSpickett updated this revision to Diff 357500. DavidSpickett added a comment. Correct `//` to `///` in comment block for ReadMemoryTags. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D105630/new/ https://reviews.llvm.org/D105630 Files: lldb/

[Lldb-commits] [PATCH] D105483: [LLDB] Testsuite: Add helper to check for AArch64 target

2021-07-12 Thread David Spickett via Phabricator via lldb-commits
DavidSpickett added a comment. LGTM CHANGES SINCE LAST ACTION https://reviews.llvm.org/D105483/new/ https://reviews.llvm.org/D105483 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-comm

[Lldb-commits] [PATCH] D105630: [lldb][AArch64] Refactor memory tag range handling

2021-07-12 Thread David Spickett via Phabricator via lldb-commits
DavidSpickett added a comment. > Is this final version or you are still doing refactoring. Also can you kindly > order its child and parent revs in current tag-write patch series. I'm currently rebasing all the active patches onto this one, I don't expect to change this but I might have to I'll

[Lldb-commits] [PATCH] D105178: [lldb][AArch64] Annotate synchronous tag faults

2021-07-13 Thread David Spickett via Phabricator via lldb-commits
DavidSpickett updated this revision to Diff 358276. DavidSpickett added a comment. - Removed use of tagged address ABI - Set pointer tags with a function instead of generator intrinsic - Add a memory access to confirm mapping was done properly - Add a few more comments about mmap and others Repo

[Lldb-commits] [PATCH] D105178: [lldb][AArch64] Annotate synchronous tag faults

2021-07-13 Thread David Spickett via Phabricator via lldb-commits
DavidSpickett marked an inline comment as done. DavidSpickett added a comment. > This is actually independent of the tagged address ABI. Thanks for the info, I keep thinking I need to enable it but never do. Updated the test case and commit msg. Repository: rG LLVM Github Monorepo CHANGES S

[Lldb-commits] [PATCH] D105178: [lldb][AArch64] Annotate synchronous tag faults

2021-07-13 Thread David Spickett via Phabricator via lldb-commits
DavidSpickett updated this revision to Diff 358277. DavidSpickett added a comment. clang-format the test file. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D105178/new/ https://reviews.llvm.org/D105178 Files: lldb/source/Plugins/Process/Linux/Na

[Lldb-commits] [PATCH] D105180: [lldb][AArch64] Add memory tag writing to lldb-server

2021-07-14 Thread David Spickett via Phabricator via lldb-commits
DavidSpickett added inline comments. Comment at: lldb/source/Plugins/Process/Linux/NativeProcessLinux.cpp:1517 + + llvm::Expected> repeated_tags_or_err = + details->manager->RepeatTagsForRange(*unpacked_tags_or_err, range); omjavaid wrote: > We unpack, repe

[Lldb-commits] [PATCH] D105180: [lldb][AArch64] Add memory tag writing to lldb-server

2021-07-14 Thread David Spickett via Phabricator via lldb-commits
DavidSpickett updated this revision to Diff 358539. DavidSpickett added a comment. Rebase Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D105180/new/ https://reviews.llvm.org/D105180 Files: lldb/include/lldb/Host/common/NativeProcessProtocol.h l

[Lldb-commits] [PATCH] D105181: [lldb][AArch64] Add memory tag writing to lldb

2021-07-14 Thread David Spickett via Phabricator via lldb-commits
DavidSpickett updated this revision to Diff 358541. DavidSpickett added a comment. Rebase onto the earlier refactoring patch. Now GetMemoryTagManager just deals with the manager, no range handling. So this patch just adds WriteMemoryTags. "memory tag write" will use MakeTaggedRange from the memo

[Lldb-commits] [PATCH] D105182: [lldb] Add "memory tag write" command

2021-07-14 Thread David Spickett via Phabricator via lldb-commits
DavidSpickett updated this revision to Diff 358544. DavidSpickett added a comment. Now that ranges are handled in the tag manager, the command uses MakeTaggedRange. With some extra steps to get slightly different alignment. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https

[Lldb-commits] [PATCH] D105183: [lldb] Add "memory tag write" --end-addr option

2021-07-14 Thread David Spickett via Phabricator via lldb-commits
DavidSpickett updated this revision to Diff 358546. DavidSpickett added a comment. Rebase after refactoring. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D105183/new/ https://reviews.llvm.org/D105183 Files: lldb/source/Commands/CommandObjectMemo

[Lldb-commits] [PATCH] D105630: [lldb][AArch64] Refactor memory tag range handling

2021-07-14 Thread David Spickett via Phabricator via lldb-commits
DavidSpickett added a comment. All the follow ups are now based on this change. I didn't need to make an updates to this particular patch after all. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D105630/new/ https://reviews.llvm.org/D105630 __

[Lldb-commits] [PATCH] D104914: [lldb] Correct format of qMemTags type field

2021-07-14 Thread David Spickett via Phabricator via lldb-commits
DavidSpickett added a comment. > I am trying to run test_qmemtags_packets but the test hangs while waiting for > lldb-server to terminate. Do you have any more detail than that? I presume it runs the test then hangs during the cleanup. Without this patch do you see the same thing? I'm using Ke

[Lldb-commits] [PATCH] D103744: [lldb][docs] Remove mention of subversion. NFC.

2021-07-14 Thread David Spickett via Phabricator via lldb-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rGf7d931ac373f: [lldb][docs] Remove mention of subversion. NFC. (authored by brucem, committed by DavidSpickett). Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/

[Lldb-commits] [PATCH] D105630: [lldb][AArch64] Refactor memory tag range handling

2021-07-15 Thread David Spickett via Phabricator via lldb-commits
DavidSpickett added a comment. > This looks good but the test fails on arm 32 bit. I had a few of those last time, I will build the whole series on 32 bit to check for more. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D105630/new/ https://review

[Lldb-commits] [PATCH] D105178: [lldb][AArch64] Annotate synchronous tag faults

2021-07-15 Thread David Spickett via Phabricator via lldb-commits
DavidSpickett updated this revision to Diff 358972. DavidSpickett added a comment. Rebase Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D105178/new/ https://reviews.llvm.org/D105178 Files: lldb/source/Plugins/Process/Linux/NativeThreadLinux.cpp

[Lldb-commits] [PATCH] D105630: [lldb][AArch64] Refactor memory tag range handling

2021-07-15 Thread David Spickett via Phabricator via lldb-commits
DavidSpickett updated this revision to Diff 358973. DavidSpickett added a comment. Rebase and correct printf formatting to fix 32 bit test issues. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D105630/new/ https://reviews.llvm.org/D105630 Files:

[Lldb-commits] [PATCH] D105179: [lldb][AArch64] Add tag packing and repetition memory tag manager

2021-07-15 Thread David Spickett via Phabricator via lldb-commits
DavidSpickett updated this revision to Diff 358975. DavidSpickett added a comment. Rebase, correct the commit title and printf formatters for 32 bit build. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D105179/new/ https://reviews.llvm.org/D105179

[Lldb-commits] [PATCH] D105180: [lldb][AArch64] Add memory tag writing to lldb-server

2021-07-15 Thread David Spickett via Phabricator via lldb-commits
DavidSpickett updated this revision to Diff 358976. DavidSpickett added a comment. Rebase Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D105180/new/ https://reviews.llvm.org/D105180 Files: lldb/include/lldb/Host/common/NativeProcessProtocol.h l

[Lldb-commits] [PATCH] D105181: [lldb][AArch64] Add memory tag writing to lldb

2021-07-15 Thread David Spickett via Phabricator via lldb-commits
DavidSpickett updated this revision to Diff 358977. DavidSpickett added a comment. Rebase, update use of SendPacketAndWaitForResponse. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D105181/new/ https://reviews.llvm.org/D105181 Files: lldb/include

[Lldb-commits] [PATCH] D105182: [lldb] Add "memory tag write" command

2021-07-15 Thread David Spickett via Phabricator via lldb-commits
DavidSpickett updated this revision to Diff 358978. DavidSpickett added a comment. Rebase Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D105182/new/ https://reviews.llvm.org/D105182 Files: lldb/source/Commands/CommandObjectMemoryTag.cpp lldb/te

[Lldb-commits] [PATCH] D105183: [lldb] Add "memory tag write" --end-addr option

2021-07-15 Thread David Spickett via Phabricator via lldb-commits
DavidSpickett updated this revision to Diff 358980. DavidSpickett added a comment. Rebase Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D105183/new/ https://reviews.llvm.org/D105183 Files: lldb/source/Commands/CommandObjectMemoryTag.cpp lldb/so

[Lldb-commits] [PATCH] D105630: [lldb][AArch64] Refactor memory tag range handling

2021-07-15 Thread David Spickett via Phabricator via lldb-commits
DavidSpickett updated this revision to Diff 358982. DavidSpickett added a comment. Update comment about save/restoring end of range. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D105630/new/ https://reviews.llvm.org/D105630 Files: lldb/include/l

[Lldb-commits] [PATCH] D105630: [lldb][AArch64] Refactor memory tag range handling

2021-07-16 Thread David Spickett via Phabricator via lldb-commits
This revision was landed with ongoing or failed builds. This revision was automatically updated to reflect the committed changes. Closed by commit rGd046fb62b7e7: [lldb][AArch64] Refactor memory tag range handling (authored by DavidSpickett). Repository: rG LLVM Github Monorepo CHANGES SINCE L

[Lldb-commits] [PATCH] D102428: [StopInfoMachException] Summarize arm64e BLRAx/LDRAx auth failures

2021-07-16 Thread David Spickett via Phabricator via lldb-commits
DavidSpickett added a reviewer: omjavaid. DavidSpickett added a comment. Apologies, I missed the ping. A couple of minor comments otherwise this looks good to me. @omjavaid Should take a look too as he's doing/did the PAC work for Arm Linux. I figure this can go in for Mac and be made generic l

[Lldb-commits] [PATCH] D105178: [lldb][AArch64] Annotate synchronous tag faults

2021-07-16 Thread David Spickett via Phabricator via lldb-commits
DavidSpickett updated this revision to Diff 359278. DavidSpickett added a comment. Account for fault addresses not being granule aligned by asking for fault_addr to fault_addr+1 which always gives you 1 tag back. (same trick we do in "memory tag read" if we only have a start address) Repository:

[Lldb-commits] [PATCH] D105178: [lldb][AArch64] Annotate synchronous tag faults

2021-07-16 Thread David Spickett via Phabricator via lldb-commits
DavidSpickett updated this revision to Diff 359279. DavidSpickett added a comment. Correct potentitally -> potentially. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D105178/new/ https://reviews.llvm.org/D105178 Files: lldb/source/Plugins/Process

[Lldb-commits] [PATCH] D105179: [lldb][AArch64] Add tag packing and repetition memory tag manager

2021-07-16 Thread David Spickett via Phabricator via lldb-commits
This revision was landed with ongoing or failed builds. This revision was automatically updated to reflect the committed changes. Closed by commit rGadee89f8bcd1: [lldb][AArch64] Add tag packing and repetition memory tag manager (authored by DavidSpickett). Repository: rG LLVM Github Monorepo

[Lldb-commits] [PATCH] D106226: [lldb] Improve error message when "lldb attach" fails

2021-07-19 Thread David Spickett via Phabricator via lldb-commits
DavidSpickett added a comment. Thanks for looking at this, I've been tripped up by this myself. > Is AppendMessage() really the right function to use in an error scenario ? or > the additional message should just be appended to AppendErrorWithFormat() ? It changes whether the output goes to std

[Lldb-commits] [PATCH] D106192: [LLDB][GUI] Add Create Target form

2021-07-19 Thread David Spickett via Phabricator via lldb-commits
DavidSpickett added a comment. > This doesn't support remote files yet, I am still having trouble testing > those. If you want to set that up we have some docs for it: https://lldb.llvm.org/use/remote.html https://lldb.llvm.org/use/qemu-testing.html This is mostly how I work on AArch64 changes.

[Lldb-commits] [PATCH] D105180: [lldb][AArch64] Add memory tag writing to lldb-server

2021-07-23 Thread David Spickett via Phabricator via lldb-commits
DavidSpickett added inline comments. Comment at: lldb/test/API/tools/lldb-server/memory-tagging/TestGdbRemoteMemoryTagging.py:56 # Run the packet stream context = self.expect_gdbremote_sequence() self.assertIsNotNone(context) omjavaid

[Lldb-commits] [PATCH] D105180: [lldb][AArch64] Add memory tag writing to lldb-server

2021-07-27 Thread David Spickett via Phabricator via lldb-commits
DavidSpickett added a comment. Great. The QEMU testing docs https://lldb.llvm.org/use/qemu-testing.html include MTE options. Apart from having a compatible toolchain there's no difference to SVE. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D10518

[Lldb-commits] [PATCH] D105180: [lldb][AArch64] Add memory tag writing to lldb-server

2021-07-27 Thread David Spickett via Phabricator via lldb-commits
This revision was landed with ongoing or failed builds. This revision was automatically updated to reflect the committed changes. Closed by commit rG7d27230de333: [lldb][AArch64] Add memory tag writing to lldb-server (authored by DavidSpickett). Repository: rG LLVM Github Monorepo CHANGES SINC

[Lldb-commits] [PATCH] D105181: [lldb][AArch64] Add memory tag writing to lldb

2021-07-27 Thread David Spickett via Phabricator via lldb-commits
This revision was landed with ongoing or failed builds. This revision was automatically updated to reflect the committed changes. Closed by commit rG5ea091a8174b: [lldb][AArch64] Add memory tag writing to lldb (authored by DavidSpickett). Repository: rG LLVM Github Monorepo CHANGES SINCE LAST

[Lldb-commits] [PATCH] D106880: [lldb][AArch64] Mark mismatched tags in tag read output

2021-07-27 Thread David Spickett via Phabricator via lldb-commits
DavidSpickett created this revision. Herald added subscribers: danielkiss, kristof.beyls. DavidSpickett requested review of this revision. Herald added a project: LLDB. Herald added a subscriber: lldb-commits. The "memory tag read" command will now tell you when the allocation tag read does not ma

[Lldb-commits] [PATCH] D106880: [lldb][AArch64] Mark mismatched tags in tag read output

2021-07-27 Thread David Spickett via Phabricator via lldb-commits
DavidSpickett added a reviewer: omjavaid. DavidSpickett added a comment. This gives us the equivalent of GDB's "mtag check" but with some more flexibility and no extra command. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D106880/new/ https://revi

[Lldb-commits] [PATCH] D105182: [lldb] Add "memory tag write" command

2021-07-27 Thread David Spickett via Phabricator via lldb-commits
DavidSpickett updated this revision to Diff 362055. DavidSpickett added a comment. Add a link to intrinsics documentation in the test file. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D105182/new/ https://reviews.llvm.org/D105182 Files: lldb/so

[Lldb-commits] [PATCH] D105182: [lldb] Add "memory tag write" command

2021-07-28 Thread David Spickett via Phabricator via lldb-commits
This revision was landed with ongoing or failed builds. This revision was automatically updated to reflect the committed changes. Closed by commit rG6a7a2ee8161d: [lldb] Add "memory tag write" command (authored by DavidSpickett). Changed prior to commit: https://reviews.llvm.org/D105182?vs=3620

[Lldb-commits] [PATCH] D105183: [lldb] Add "memory tag write" --end-addr option

2021-07-28 Thread David Spickett via Phabricator via lldb-commits
This revision was landed with ongoing or failed builds. This revision was automatically updated to reflect the committed changes. Closed by commit rG6eded00e0c6b: [lldb] Add "memory tag write" --end-addr option (authored by DavidSpickett). Repository: rG LLVM Github Monorepo CHANGES SINCE LAST

[Lldb-commits] [PATCH] D104914: [lldb] Correct format of qMemTags type field

2021-07-28 Thread David Spickett via Phabricator via lldb-commits
DavidSpickett updated this revision to Diff 362366. DavidSpickett added a comment. - Rebase onto main - Update the way we cast down to int32_t to avoid use of static_cast. We weren't invoking the undefined behaviour of unsigned to signed due to the limit check. However I think this shows our inte

[Lldb-commits] [PATCH] D102757: [lldb] Remove non address bits when looking up memory regions

2021-07-28 Thread David Spickett via Phabricator via lldb-commits
DavidSpickett updated this revision to Diff 362383. DavidSpickett added a comment. - Rebase onto main - Add DoGetMemoryRegionInfo for ScriptedProcess I'm going to build this and the follow up patch on Windows to get some more coverage. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST A

[Lldb-commits] [PATCH] D103626: [lldb][AArch64] Remove non address bits from memory read arguments

2021-07-28 Thread David Spickett via Phabricator via lldb-commits
DavidSpickett updated this revision to Diff 362384. DavidSpickett added a comment. Rebase onto main. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D103626/new/ https://reviews.llvm.org/D103626 Files: lldb/source/Commands/CommandObjectMemory.cpp

[Lldb-commits] [PATCH] D105178: [lldb][AArch64] Annotate synchronous tag faults

2021-07-29 Thread David Spickett via Phabricator via lldb-commits
This revision was landed with ongoing or failed builds. This revision was automatically updated to reflect the committed changes. Closed by commit rGd510b5f199d6: [lldb][AArch64] Annotate synchronous tag faults (authored by DavidSpickett). Repository: rG LLVM Github Monorepo CHANGES SINCE LAST

[Lldb-commits] [PATCH] D107079: [lldb] Change the log format to JSON instead of plain text

2021-07-29 Thread David Spickett via Phabricator via lldb-commits
DavidSpickett added a comment. > With the added channels in each message we could just do the filtering on our > side and tell people to just enable every channel in every category. +1 to this, was the first thing I tried to do on the viewer you linked. > Will there be an upstream log viewer? I

[Lldb-commits] [PATCH] D107079: [lldb] Change the log format to JSON instead of plain text

2021-07-29 Thread David Spickett via Phabricator via lldb-commits
DavidSpickett added inline comments. Comment at: lldb/packages/Python/lldbsuite/test/lldbutil.py:1579 +# Remove the suffix that isn't part of the JSON payload +reply = reply[:-3] +dylib_info = json.loads(reply) Coul

[Lldb-commits] [PATCH] D106880: [lldb][AArch64] Mark mismatched tags in tag read output

2021-07-29 Thread David Spickett via Phabricator via lldb-commits
DavidSpickett updated this revision to Diff 362794. DavidSpickett added a comment. Rebase Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D106880/new/ https://reviews.llvm.org/D106880 Files: lldb/source/Commands/CommandObjectMemoryTag.cpp lldb/t

[Lldb-commits] [PATCH] D107140: [lldb] Show memory tags in memory read output

2021-07-30 Thread David Spickett via Phabricator via lldb-commits
DavidSpickett created this revision. Herald added subscribers: mgrang, mgorny. DavidSpickett requested review of this revision. Herald added a project: LLDB. Herald added a subscriber: lldb-commits. This extends DumpDataExtractor to also print memory tags if called with an execution context on a t

[Lldb-commits] [PATCH] D107140: [lldb] Show memory tags in memory read output

2021-07-30 Thread David Spickett via Phabricator via lldb-commits
DavidSpickett added reviewers: omjavaid, pcc. DavidSpickett added a subscriber: pcc. DavidSpickett added a comment. DumpDataExtractor has formatting unittests. Due to memory tags being read from the execution context there are no new unittests. (the existing ones pass) Also since this code isn't

[Lldb-commits] [PATCH] D107140: [lldb] Show memory tags in memory read output

2021-07-30 Thread David Spickett via Phabricator via lldb-commits
DavidSpickett added a comment. Also Omair we talked about 13 backports to get MTE support to a good place. This is one that I think would be ok to not do so, given that tag reading can be done manually as needed and it has some complexity to be considered. Repository: rG LLVM Github Monorepo

[Lldb-commits] [PATCH] D104914: [lldb] Correct format of qMemTags type field

2021-07-30 Thread David Spickett via Phabricator via lldb-commits
This revision was landed with ongoing or failed builds. This revision was automatically updated to reflect the committed changes. Closed by commit rG555cd03193c9: [lldb] Correct format of qMemTags type field (authored by DavidSpickett). Repository: rG LLVM Github Monorepo CHANGES SINCE LAST AC

[Lldb-commits] [PATCH] D106880: [lldb][AArch64] Mark mismatched tags in tag read output

2021-07-30 Thread David Spickett via Phabricator via lldb-commits
This revision was landed with ongoing or failed builds. This revision was automatically updated to reflect the committed changes. Closed by commit rG98b5659b53ff: [lldb][AArch64] Mark mismatched tags in tag read output (authored by DavidSpickett). Repository: rG LLVM Github Monorepo CHANGES SI

[Lldb-commits] [PATCH] D107213: Disassemble AArch64 pc-relative address calculations & symbolicate

2021-08-02 Thread David Spickett via Phabricator via lldb-commits
DavidSpickett added a comment. The test is with MachO but I assume this would apply to ELF, COFF etc, since it's a general disassembly feature? Comment at: lldb/source/Plugins/Disassembler/LLVMC/DisassemblerLLVMC.cpp:1315 + if (target->GetArchitecture().GetMachine() == ll

[Lldb-commits] [PATCH] D107213: Disassemble AArch64 pc-relative address calculations & symbolicate

2021-08-04 Thread David Spickett via Phabricator via lldb-commits
DavidSpickett added a comment. > Yeah, this is a very aarch64 specific thing in the generic symbolizer, but > it's not an especially large function so I didn't feel too bad about it. If > we started needing to handle multi-instruction sequences like this in the > symbolizer (where we save state

[Lldb-commits] [PATCH] D105182: [lldb] Add "memory tag write" command

2021-08-06 Thread David Spickett via Phabricator via lldb-commits
DavidSpickett added a comment. > Many different types of memory tagging exist, MTE is but one. Sure. I'm not opposed to making changes to adapt to the properties of different tags. However the most concrete one I have access to it MTE so that has shaped the initial support and assumptions. > C

[Lldb-commits] [PATCH] D107213: Disassemble AArch64 pc-relative address calculations & symbolicate

2021-08-06 Thread David Spickett via Phabricator via lldb-commits
DavidSpickett added inline comments. Comment at: lldb/source/Plugins/Disassembler/LLVMC/DisassemblerLLVMC.cpp:1328 +(m_adrp_insn & 0x9f00) == 0x9000 && +(m_adrp_insn & 0x1f) == ((value >> 5) & 0x1f)) { + // Bitmasking lifted from MachODump

[Lldb-commits] [PATCH] D102757: [lldb] Remove non address bits when looking up memory regions

2021-08-10 Thread David Spickett via Phabricator via lldb-commits
DavidSpickett updated this revision to Diff 365435. DavidSpickett added a comment. Rebase Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D102757/new/ https://reviews.llvm.org/D102757 Files: lldb/include/lldb/Target/Process.h lldb/source/Plugins/

[Lldb-commits] [PATCH] D103626: [lldb][AArch64] Remove non address bits from memory read arguments

2021-08-10 Thread David Spickett via Phabricator via lldb-commits
DavidSpickett updated this revision to Diff 365436. DavidSpickett added a comment. Rebase Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D103626/new/ https://reviews.llvm.org/D103626 Files: lldb/source/Commands/CommandObjectMemory.cpp lldb/test/

[Lldb-commits] [PATCH] D107213: Disassemble AArch64 pc-relative address calculations & symbolicate

2021-08-12 Thread David Spickett via Phabricator via lldb-commits
DavidSpickett accepted this revision. DavidSpickett added a comment. This revision is now accepted and ready to land. LGTM Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D107213/new/ https://reviews.llvm.org/D107213 _

[Lldb-commits] [PATCH] D107704: [LLDB][NFC] Simplify IOHandler's getLine to avoid strange casts and redundant checks

2021-08-12 Thread David Spickett via Phabricator via lldb-commits
DavidSpickett added a comment. > Only clang-tidy is upset and it is falsely flagging "missing" files This is because llvm precommit doesn't actually build lldb (due to some test failures they were/are having) so those headers are unknown to clang-tidy when it runs. You can ignore it. CHANGES

[Lldb-commits] [PATCH] D108739: [LLDB] AArch64 SVE restore SVE registers after expression

2021-09-01 Thread David Spickett via Phabricator via lldb-commits
DavidSpickett added inline comments. Comment at: lldb/source/Plugins/Process/Linux/NativeRegisterContextLinux_arm64.cpp:451 Status NativeRegisterContextLinux_arm64::ReadAllRegisterValues( lldb::DataBufferSP &data_sp) { Do we need PAC registers here too?

[Lldb-commits] [PATCH] D96458: [LLDB] Add support for Arm64/Linux dynamic register sets

2021-02-11 Thread David Spickett via Phabricator via lldb-commits
DavidSpickett added inline comments. Comment at: lldb/source/Plugins/Process/Linux/NativeRegisterContextLinux_arm64.cpp:454 bool NativeRegisterContextLinux_arm64::IsSVE(unsigned reg) const { - if (GetRegisterInfo().GetRegisterSetFromRegisterIndex(reg) == - RegisterInfoPOS

[Lldb-commits] [PATCH] D96459: [LLDB] Pull AuxVec info into NativeRegisterContextLinux_arm64

2021-02-11 Thread David Spickett via Phabricator via lldb-commits
DavidSpickett added inline comments. Comment at: lldb/source/Plugins/Process/Linux/NativeRegisterContextLinux_arm64.cpp:104 + + return 0; +} Do I understand correctly that this will be filled in in a further patch? So right now it's only returning 0 because it

[Lldb-commits] [PATCH] D96463: [LLDB] Arm64/Linux test case for MTE and Pointer Authentication regset

2021-02-11 Thread David Spickett via Phabricator via lldb-commits
DavidSpickett added a reviewer: DavidSpickett. DavidSpickett added inline comments. Comment at: lldb/test/API/commands/register/register/aarch64_dynamic_regset/TestArm64DynamicRegsets.py:35 + +p_value_bytes = ['0xff', '0x55', '0x11', '0x01', '0x00'] +for i in ran

[Lldb-commits] [PATCH] D95601: [lldb][AArch64] Add MTE memory tag reading to lldb-server

2021-02-15 Thread David Spickett via Phabricator via lldb-commits
DavidSpickett added a comment. To get the review going consider further splitting up these patches into separate chunks containing, for example MemoryTagHandler API and related unit tests, GDB remote addons, ptrace work etc. Also add reference to GDB mailing list discussion where design of qM

[Lldb-commits] [PATCH] D95601: [lldb][AArch64] Add MTE memory tag reading to lldb-server

2021-02-15 Thread David Spickett via Phabricator via lldb-commits
DavidSpickett added inline comments. Comment at: lldb/source/Plugins/Process/Linux/NativeProcessLinux.cpp:1518 + Status error = NativeProcessLinux::PtraceWrapper( + details->ptrace_read_req, GetID(), + reinterpret_cast(range.GetRangeBase()), omjavaid w

[Lldb-commits] [PATCH] D95602: [lldb][AArch64] Add MTE memory tag reading for lldb

2021-02-16 Thread David Spickett via Phabricator via lldb-commits
DavidSpickett added a comment. > This patch also looks quite good. Some minor nits inline and also move gdb* > changes into a single patch with both client and server side code. Cool, I wasn't sure how to split while keeping it readable but that sounds good. Comment at: lldb/

[Lldb-commits] [PATCH] D96460: [LLDB] Arm64/Linux Add MTE and Pointer Authentication registers

2021-02-16 Thread David Spickett via Phabricator via lldb-commits
DavidSpickett added inline comments. Comment at: lldb/source/Plugins/Process/Linux/NativeRegisterContextLinux_arm64.cpp:1198 + + if (m_mte_ctrl_is_valid) +return error; omjavaid wrote: > DavidSpickett wrote: > > Just to confirm I understand this logic. > >

[Lldb-commits] [PATCH] D96840: [LLDB] [docs] Update the list of supported architectures on Windows

2021-02-17 Thread David Spickett via Phabricator via lldb-commits
DavidSpickett added subscribers: omjavaid, DavidSpickett. DavidSpickett added a reviewer: omjavaid. DavidSpickett added a comment. Do we support 32 bit Arm specifically? (I'm not very familiar with Windows targets) @omjavaid Has done some testing on the latest Windows On Arm which is AArch64. I

[Lldb-commits] [PATCH] D96463: [LLDB] Arm64/Linux test case for MTE and Pointer Authentication regset

2021-02-17 Thread David Spickett via Phabricator via lldb-commits
DavidSpickett added inline comments. Comment at: lldb/test/API/commands/register/register/aarch64_dynamic_regset/TestArm64DynamicRegsets.py:35 + +p_value_bytes = ['0xff', '0x55', '0x11', '0x01', '0x00'] +for i in range(16): omjavaid wrote: > Davi

[Lldb-commits] [PATCH] D96947: [lldb] Prevent double new lines behind errors/warning/messages from LLDB commands

2021-02-18 Thread David Spickett via Phabricator via lldb-commits
DavidSpickett added a comment. Thanks for looking at this, I had the same confusion adding some new commands. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D96947/new/ https://reviews.llvm.org/D96947 ___ lldb-commits mailing list lldb-commits@

[Lldb-commits] [PATCH] D96463: [LLDB] Arm64/Linux test case for MTE and Pointer Authentication regset

2021-02-22 Thread David Spickett via Phabricator via lldb-commits
DavidSpickett added a comment. Some python nits otherwise the test looks good. Comment at: lldb/test/API/commands/register/register/aarch64_dynamic_regset/TestArm64DynamicRegsets.py:16 +self.assertTrue(reg_value.IsValid(), +'Verify we have a reg

[Lldb-commits] [PATCH] D96459: [LLDB] Pull AuxVec info into NativeRegisterContextLinux_arm64

2021-02-22 Thread David Spickett via Phabricator via lldb-commits
DavidSpickett added inline comments. Comment at: lldb/source/Plugins/Process/Linux/NativeProcessLinux.cpp:2038 + return m_aux_vector->GetAuxValue(type); +} Do we not get this from the protected `GetAuxValue` on `NativeProcessELF`? CHANGES SINCE LAST ACTION h

[Lldb-commits] [PATCH] D96460: [LLDB] Arm64/Linux Add MTE and Pointer Authentication registers

2021-02-22 Thread David Spickett via Phabricator via lldb-commits
DavidSpickett added inline comments. Comment at: lldb/source/Plugins/Process/Linux/NativeRegisterContextLinux_arm64.cpp:1128 + if (error.Success()) m_sve_header_is_valid = true; Indent here Actually, for these you could just do `m_sve_header_is_valid = e

[Lldb-commits] [PATCH] D96460: [LLDB] Arm64/Linux Add MTE and Pointer Authentication registers

2021-02-23 Thread David Spickett via Phabricator via lldb-commits
DavidSpickett added inline comments. Comment at: lldb/source/Plugins/Process/Utility/RegisterInfoPOSIX_arm64.cpp:276 +if (opt_regsets & eRegsetEnableMTE) + m_mte_regset_enabled = true; } omjavaid wrote: > DavidSpickett wrote: > > (like earlier) would

[Lldb-commits] [PATCH] D96463: [LLDB] Arm64/Linux test case for MTE and Pointer Authentication regset

2021-02-23 Thread David Spickett via Phabricator via lldb-commits
DavidSpickett added inline comments. Comment at: lldb/test/API/commands/register/register/aarch64_dynamic_regset/TestArm64DynamicRegsets.py:45 + +self.expect("register read ffr", substrs=[p_regs_value]) + omjavaid wrote: > DavidSpickett wrote: > > Do we

[Lldb-commits] [PATCH] D97281: [lldb][AArch64] Add class for managing memory tags

2021-02-23 Thread David Spickett via Phabricator via lldb-commits
DavidSpickett created this revision. Herald added subscribers: danielkiss, kristof.beyls, mgorny. DavidSpickett requested review of this revision. Herald added a project: LLDB. Herald added a subscriber: lldb-commits. This adds the MemoryTagManager class and a specialisation of that class for AArc

[Lldb-commits] [PATCH] D97281: [lldb][AArch64] Add class for managing memory tags

2021-02-23 Thread David Spickett via Phabricator via lldb-commits
DavidSpickett added reviewers: labath, omjavaid. DavidSpickett added a comment. Herald added a subscriber: JDevlieghere. Omair, I've taken one of your suggestions on the class name from the other review. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org

[Lldb-commits] [PATCH] D97282: [lldb][AArch64] Add memory-tagging qSupported feature

2021-02-23 Thread David Spickett via Phabricator via lldb-commits
DavidSpickett created this revision. Herald added subscribers: danielkiss, kristof.beyls, krytarowski. DavidSpickett requested review of this revision. Herald added a project: LLDB. Herald added a subscriber: lldb-commits. This feature "memory-tagging+" indicates that lldb-server supports memory t

[Lldb-commits] [PATCH] D97282: [lldb][AArch64] Add memory-tagging qSupported feature

2021-02-23 Thread David Spickett via Phabricator via lldb-commits
DavidSpickett added a comment. This feature name matches the one GDB is planning to use: https://sourceware.org/pipermail/gdb-patches/2021-January/175514.html Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D97282/new/ https://reviews.llvm.org/D97282

[Lldb-commits] [PATCH] D95601: [lldb][AArch64] Add MTE memory tag reading to lldb-server

2021-02-23 Thread David Spickett via Phabricator via lldb-commits
DavidSpickett updated this revision to Diff 325767. DavidSpickett added a comment. Split the patches into smaller changes. (see stack) Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D95601/new/ https://reviews.llvm.org/D95601 Files: lldb/include/l

[Lldb-commits] [PATCH] D95602: [lldb][AArch64] Add MTE memory tag reading for lldb

2021-02-23 Thread David Spickett via Phabricator via lldb-commits
DavidSpickett updated this revision to Diff 325769. DavidSpickett added a comment. Split into smaller changes. Tag read command is now a further change. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D95602/new/ https://reviews.llvm.org/D95602 Files

[Lldb-commits] [PATCH] D97284: [lldb][AArch64] Add MTE CPU feature test predicate

2021-02-23 Thread David Spickett via Phabricator via lldb-commits
DavidSpickett created this revision. Herald added subscribers: danielkiss, kristof.beyls. DavidSpickett requested review of this revision. Herald added a project: LLDB. Herald added a subscriber: lldb-commits. Change the logic slightly so that the feature can be anywhere in the list. Repository:

[Lldb-commits] [PATCH] D97284: [lldb][AArch64] Add MTE CPU feature test predicate

2021-02-23 Thread David Spickett via Phabricator via lldb-commits
DavidSpickett added a reviewer: omjavaid. DavidSpickett added a comment. Herald added a subscriber: JDevlieghere. I think we both have something like this in our changes. Yours will probably land sooner but here it is anyway. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION ht

[Lldb-commits] [PATCH] D97285: [lldb][AArch64] Add "memory tag read" command

2021-02-23 Thread David Spickett via Phabricator via lldb-commits
DavidSpickett created this revision. Herald added subscribers: danielkiss, kristof.beyls, mgorny. DavidSpickett requested review of this revision. Herald added a project: LLDB. Herald added a subscriber: lldb-commits. This new command looks much like "memory read" and mirrors its basic behaviour.

[Lldb-commits] [PATCH] D97285: [lldb][AArch64] Add "memory tag read" command

2021-02-23 Thread David Spickett via Phabricator via lldb-commits
DavidSpickett added reviewers: omjavaid, labath. DavidSpickett added a comment. This command is described in the RFC under the name "mtag showatag" (https://lists.llvm.org/pipermail/lldb-dev/2020-August/016402.html). The change of naming was suggested in feedback and I think it does fit better w

[Lldb-commits] [PATCH] D95601: [lldb][AArch64] Add memory tag reading to lldb-server

2021-02-23 Thread David Spickett via Phabricator via lldb-commits
DavidSpickett added inline comments. Comment at: lldb/test/API/tools/lldb-server/memory-tagging/main.c:36 + // This intrinsic treats the addresses as if they were untagged + while (__arm_mte_ptrdiff(tagged_ptr, buf) < page_size) { +// This sets the allocation tag --

[Lldb-commits] [PATCH] D97285: [lldb][AArch64] Add "memory tag read" command

2021-02-23 Thread David Spickett via Phabricator via lldb-commits
DavidSpickett added inline comments. Comment at: lldb/test/API/linux/aarch64/mte_tag_read/main.c:46 + // A different tag so that buf_alt_tag > buf if you don't handle the tag + char *buf_alt_tag = __arm_mte_create_random_tag(buf, ~(1 << 10)); + https://develope

[Lldb-commits] [PATCH] D97285: [lldb][AArch64] Add "memory tag read" command

2021-02-23 Thread David Spickett via Phabricator via lldb-commits
DavidSpickett updated this revision to Diff 325775. DavidSpickett added a comment. - Add some comments to explain the intrinsics used. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D97285/new/ https://reviews.llvm.org/D97285 Files: lldb/source/Co

[Lldb-commits] [PATCH] D97284: [lldb][AArch64] Add MTE CPU feature test predicate

2021-03-01 Thread David Spickett via Phabricator via lldb-commits
DavidSpickett updated this revision to Diff 327061. DavidSpickett added a comment. Rename to be AArch64 specific. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D97284/new/ https://reviews.llvm.org/D97284 Files: lldb/packages/Python/lldbsuite/test

[Lldb-commits] [PATCH] D97285: [lldb][AArch64] Add "memory tag read" command

2021-03-01 Thread David Spickett via Phabricator via lldb-commits
DavidSpickett updated this revision to Diff 327062. DavidSpickett added a comment. Update after changing previous patch. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D97285/new/ https://reviews.llvm.org/D97285 Files: lldb/source/Commands/CMakeLi

[Lldb-commits] [PATCH] D97281: [lldb][AArch64] Add class for managing memory tags

2021-03-01 Thread David Spickett via Phabricator via lldb-commits
DavidSpickett added inline comments. Comment at: lldb/source/Plugins/Process/Utility/MemoryTagManagerAArch64MTE.cpp:43 + +ptrdiff_t MemoryTagManagerAArch64MTE::AddressDiff(lldb::addr_t addr1, + lldb::addr_t addr2) const {

[Lldb-commits] [PATCH] D95602: [lldb][AArch64] Add MTE memory tag reading to lldb

2021-03-01 Thread David Spickett via Phabricator via lldb-commits
DavidSpickett added a comment. In D95602#2593980 , @omjavaid wrote: > I guess we also need LLDB API interface for reading/writing memory tags. So > that we can do something like process.ReadMemoryTags() from python. Do you > plan on adding it in a later

<    8   9   10   11   12   13   14   15   16   >