author | Jan Vrany <jan.vrany@fit.cvut.cz> |
Thu, 12 Jun 2014 01:21:45 +0100 | |
changeset 12 | 568a2971c977 |
child 78 | c24e7d8bc881 |
permissions | -rw-r--r-- |
12
568a2971c977
Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
1 |
"{ Package: 'jv:libgdbs' }" |
568a2971c977
Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
2 |
|
568a2971c977
Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
3 |
GDBMICommand subclass:#GDBMI_data_read_memory_bytes |
568a2971c977
Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
4 |
instanceVariableNames:'' |
568a2971c977
Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
5 |
classVariableNames:'' |
568a2971c977
Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
6 |
poolDictionaries:'' |
568a2971c977
Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
7 |
category:'GDB-Core-Commands-MI' |
568a2971c977
Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
8 |
! |
568a2971c977
Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
9 |
|
568a2971c977
Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
10 |
!GDBMI_data_read_memory_bytes class methodsFor:'documentation'! |
568a2971c977
Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
11 |
|
568a2971c977
Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
12 |
documentation |
568a2971c977
Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
13 |
" |
568a2971c977
Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
14 |
The `-data-read-memory-bytes' Command |
568a2971c977
Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
15 |
------------------------------------- |
568a2971c977
Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
16 |
|
568a2971c977
Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
17 |
Synopsis |
568a2971c977
Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
18 |
........ |
568a2971c977
Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
19 |
|
568a2971c977
Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
20 |
-data-read-memory-bytes [ -o BYTE-OFFSET ] |
568a2971c977
Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
21 |
ADDRESS COUNT |
568a2971c977
Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
22 |
|
568a2971c977
Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
23 |
where: |
568a2971c977
Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
24 |
|
568a2971c977
Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
25 |
`ADDRESS' |
568a2971c977
Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
26 |
An expression specifying the address of the first memory word to be |
568a2971c977
Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
27 |
read. Complex expressions containing embedded white space should |
568a2971c977
Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
28 |
be quoted using the C convention. |
568a2971c977
Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
29 |
|
568a2971c977
Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
30 |
`COUNT' |
568a2971c977
Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
31 |
The number of bytes to read. This should be an integer literal. |
568a2971c977
Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
32 |
|
568a2971c977
Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
33 |
`BYTE-OFFSET' |
568a2971c977
Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
34 |
The offsets in bytes relative to ADDRESS at which to start |
568a2971c977
Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
35 |
reading. This should be an integer literal. This option is |
568a2971c977
Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
36 |
provided so that a frontend is not required to first evaluate |
568a2971c977
Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
37 |
address and then perform address arithmetics itself. |
568a2971c977
Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
38 |
|
568a2971c977
Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
39 |
|
568a2971c977
Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
40 |
This command attempts to read all accessible memory regions in the |
568a2971c977
Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
41 |
specified range. First, all regions marked as unreadable in the memory |
568a2971c977
Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
42 |
map (if one is defined) will be skipped. *Note Memory Region |
568a2971c977
Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
43 |
Attributes::. Second, {No value for `GDBN'} will attempt to read the |
568a2971c977
Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
44 |
remaining regions. For each one, if reading full region results in an |
568a2971c977
Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
45 |
errors, {No value for `GDBN'} will try to read a subset of the region. |
568a2971c977
Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
46 |
|
568a2971c977
Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
47 |
In general, every single byte in the region may be readable or not, |
568a2971c977
Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
48 |
and the only way to read every readable byte is to try a read at every |
568a2971c977
Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
49 |
address, which is not practical. Therefore, {No value for `GDBN'} will |
568a2971c977
Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
50 |
attempt to read all accessible bytes at either beginning or the end of |
568a2971c977
Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
51 |
the region, using a binary division scheme. This heuristic works well |
568a2971c977
Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
52 |
for reading accross a memory map boundary. Note that if a region has a |
568a2971c977
Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
53 |
readable range that is neither at the beginning or the end, {No value |
568a2971c977
Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
54 |
for `GDBN'} will not read it. |
568a2971c977
Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
55 |
|
568a2971c977
Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
56 |
The result record (*note GDB/MI Result Records::) that is output of |
568a2971c977
Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
57 |
the command includes a field named `memory' whose content is a list of |
568a2971c977
Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
58 |
tuples. Each tuple represent a successfully read memory block and has |
568a2971c977
Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
59 |
the following fields: |
568a2971c977
Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
60 |
|
568a2971c977
Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
61 |
`begin' |
568a2971c977
Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
62 |
The start address of the memory block, as hexadecimal literal. |
568a2971c977
Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
63 |
|
568a2971c977
Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
64 |
`end' |
568a2971c977
Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
65 |
The end address of the memory block, as hexadecimal literal. |
568a2971c977
Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
66 |
|
568a2971c977
Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
67 |
`offset' |
568a2971c977
Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
68 |
The offset of the memory block, as hexadecimal literal, relative to |
568a2971c977
Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
69 |
the start address passed to `-data-read-memory-bytes'. |
568a2971c977
Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
70 |
|
568a2971c977
Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
71 |
`contents' |
568a2971c977
Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
72 |
The contents of the memory block, in hex. |
568a2971c977
Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
73 |
|
568a2971c977
Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
74 |
|
568a2971c977
Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
75 |
{No value for `GDBN'} Command |
568a2971c977
Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
76 |
............................. |
568a2971c977
Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
77 |
|
568a2971c977
Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
78 |
The corresponding {No value for `GDBN'} command is `x'. |
568a2971c977
Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
79 |
|
568a2971c977
Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
80 |
Example |
568a2971c977
Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
81 |
....... |
568a2971c977
Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
82 |
|
568a2971c977
Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
83 |
(gdb) |
568a2971c977
Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
84 |
-data-read-memory-bytes &a 10 |
568a2971c977
Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
85 |
^done,memory=[{begin='0xbffff154',offset='0x00000000', |
568a2971c977
Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
86 |
end='0xbffff15e', |
568a2971c977
Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
87 |
contents='01000000020000000300'}] |
568a2971c977
Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
88 |
(gdb) |
568a2971c977
Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
89 |
|
568a2971c977
Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
90 |
|
568a2971c977
Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
91 |
" |
568a2971c977
Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
92 |
! ! |
568a2971c977
Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
93 |
|
568a2971c977
Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
94 |
!GDBMI_data_read_memory_bytes methodsFor:'accessing'! |
568a2971c977
Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
95 |
|
568a2971c977
Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
96 |
operation |
568a2971c977
Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
97 |
^ 'data-read-memory-bytes' |
568a2971c977
Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
98 |
! ! |
568a2971c977
Generated classes for MI commands.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
99 |