You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Unfortunately this causes some problems.
Assume the correctly disassembled instruction packet:
>s0x00005170>pi40x00005170 / immext(##0x1c00) ; #1 in packet
0x00005174 | R11= ##loc.start_ ; #2 in packet
0x00005178 | immext(##0x1c00) ; #3 in packet
0x0000517c \ R12= ##loc.start_ ; #4 in packet
now do:
>s0x00005174>pi1
/ R11= ##loc.start_ // Is marked as #1, but is #2 in packet
Bug: R11 = ##loc.start_ should be prefixed with a | but has a / because the last disassembled instruction (R12 = ##loc.start_ at 0x0000517c) was marked as the last packet in the packet.
To solve this the plugin somehow needs to peek into the previous instruction in memory. This way it could check, whether it is indeed the first one.
The text was updated successfully, but these errors were encountered:
Hexagon instructions can belong to instruction packets. To mark those packet the assembly gets prefixed (with
/,\,|
) like that:Here is how the plugin assigns the correct packet prefix to the assembly:
\
, setnew_pkt_starts = true
/
|
, if it is not the last instr. nor the first one.The logic is implemented in hex_set_pkt_info().
Unfortunately this causes some problems.
Assume the correctly disassembled instruction packet:
now do:
Bug:
R11 = ##loc.start_
should be prefixed with a|
but has a/
because the last disassembled instruction (R12 = ##loc.start_
at0x0000517c
) was marked as the last packet in the packet.To solve this the plugin somehow needs to peek into the previous instruction in memory. This way it could check, whether it is indeed the first one.
The text was updated successfully, but these errors were encountered: