[all-commits] [llvm/llvm-project] 8461c0: [lldb] Pass address expression command args throug...
Jason Molenda via All-commits
all-commits at lists.llvm.org
Tue Jul 8 16:22:07 PDT 2025
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 8461c004358fd8b89ea1a947348e5440a914af52
https://github.com/llvm/llvm-project/commit/8461c004358fd8b89ea1a947348e5440a914af52
Author: Jason Molenda <jmolenda at apple.com>
Date: 2025-07-08 (Tue, 08 Jul 2025)
Changed paths:
M lldb/source/Interpreter/OptionArgParser.cpp
M lldb/test/API/macosx/arm-corefile-regctx/TestArmMachoCorefileRegctx.py
M lldb/test/API/macosx/arm-corefile-regctx/create-arm-corefiles.cpp
Log Message:
-----------
[lldb] Pass address expression command args through FixAnyAddress (#147011)
Commands that take an address expression/address through the
OptionArgParser::ToAddress method, which has filtered this
user-specified address through one of the Process Fix methods to clear
non-addressable bits (MTE, PAC, top byte ignore, etc). We don't know
what class of address this is, IMEM or DMEM, but this method is passing
the addresses through Process::FixCodeAddress, and on at least one
target, FixCodeAddress clears low bits which are invalid for
instructions.
Correct this to use FixAnyAddress, which doesn't make alignment
assumptions.
The actual issue found was by people debugging on a 32-bit ARM Cortex-M
part, who tried to do a memory read from an odd address, and lldb
returned results starting at the next lower even address.
rdar://154885727
To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications
More information about the All-commits
mailing list