Commit bf1838f
committed
[lldb] Pass address expression command args through FixAnyAddress
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://1548857271 parent 59e812f commit bf1838f
File tree
3 files changed
+58
-11
lines changed- lldb
- source/Interpreter
- test/API/macosx/arm-corefile-regctx
3 files changed
+58
-11
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
175 | 175 | | |
176 | 176 | | |
177 | 177 | | |
178 | | - | |
179 | | - | |
| 178 | + | |
180 | 179 | | |
181 | 180 | | |
182 | 181 | | |
| |||
Lines changed: 2 additions & 1 deletion
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | 1 | | |
2 | 2 | | |
3 | | - | |
4 | 3 | | |
5 | 4 | | |
6 | 5 | | |
| |||
44 | 43 | | |
45 | 44 | | |
46 | 45 | | |
| 46 | + | |
| 47 | + | |
47 | 48 | | |
48 | 49 | | |
49 | 50 | | |
| |||
Lines changed: 55 additions & 8 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
10 | 10 | | |
11 | 11 | | |
12 | 12 | | |
| 13 | + | |
13 | 14 | | |
| 15 | + | |
| 16 | + | |
14 | 17 | | |
| 18 | + | |
| 19 | + | |
15 | 20 | | |
| 21 | + | |
| 22 | + | |
16 | 23 | | |
| 24 | + | |
| 25 | + | |
17 | 26 | | |
| 27 | + | |
| 28 | + | |
18 | 29 | | |
| 30 | + | |
| 31 | + | |
19 | 32 | | |
| 33 | + | |
| 34 | + | |
20 | 35 | | |
21 | | - | |
| 36 | + | |
22 | 37 | | |
23 | 38 | | |
24 | 39 | | |
| |||
129 | 144 | | |
130 | 145 | | |
131 | 146 | | |
| 147 | + | |
| 148 | + | |
| 149 | + | |
| 150 | + | |
| 151 | + | |
| 152 | + | |
| 153 | + | |
| 154 | + | |
| 155 | + | |
| 156 | + | |
| 157 | + | |
| 158 | + | |
| 159 | + | |
| 160 | + | |
| 161 | + | |
| 162 | + | |
| 163 | + | |
| 164 | + | |
132 | 165 | | |
133 | 166 | | |
134 | 167 | | |
| |||
157 | 190 | | |
158 | 191 | | |
159 | 192 | | |
160 | | - | |
| 193 | + | |
161 | 194 | | |
162 | | - | |
| 195 | + | |
| 196 | + | |
163 | 197 | | |
| 198 | + | |
164 | 199 | | |
165 | 200 | | |
166 | 201 | | |
| |||
174 | 209 | | |
175 | 210 | | |
176 | 211 | | |
177 | | - | |
| 212 | + | |
| 213 | + | |
| 214 | + | |
178 | 215 | | |
179 | | - | |
| 216 | + | |
| 217 | + | |
180 | 218 | | |
| 219 | + | |
| 220 | + | |
| 221 | + | |
| 222 | + | |
| 223 | + | |
181 | 224 | | |
182 | 225 | | |
183 | | - | |
| 226 | + | |
184 | 227 | | |
| 228 | + | |
185 | 229 | | |
186 | 230 | | |
| 231 | + | |
187 | 232 | | |
| 233 | + | |
188 | 234 | | |
189 | 235 | | |
| 236 | + | |
190 | 237 | | |
191 | 238 | | |
192 | 239 | | |
| |||
201 | 248 | | |
202 | 249 | | |
203 | 250 | | |
204 | | - | |
| 251 | + | |
205 | 252 | | |
206 | 253 | | |
207 | 254 | | |
208 | 255 | | |
209 | | - | |
| 256 | + | |
210 | 257 | | |
211 | 258 | | |
212 | 259 | | |
| |||
0 commit comments