|
(Committing on behalf of etiennep@).
This CL adds DEX References read / write for 11 basic types. Details:
- Add InstructionParser to visit DEX instructions in the insns member
of a CodeItem, taking care to skip non-instruction "payloads".
- Add InstructionReferenceReader to visit CodeItem References found in
|[lo, hi)|, using provided callbacks to apply type filters and
extract targets.
- Add ItemReferenceReader to visit fixed-sized items to extract
Referenes from a "member variable of interest", using a callback
to extract targets.
- DisassemblerDex: Add MakeRead*() and MakeWrite*() to return a visitor
to read / write supported DEX References.
- Add DEX unit test to audit the error-prone look-up table from
DisassemblerDex::MakeReferenceGroups().
Change-Id: Ice12a867aab4fdcb4a152bb1946ea7515ad426ef
Reviewed-on: https://chromium-review.googlesource.com/994066
Reviewed-by: Samuel Huang <huangs@chromium.org>
Reviewed-by: Yaron Friedman <yfriedman@chromium.org>
Commit-Queue: Samuel Huang <huangs@chromium.org>
Cr-Commit-Position: refs/heads/master@{#549178}
NOKEYCHECK=True
GitOrigin-RevId: 7b249ec48aa0f1058496a1b7f095b0f126011bf6
|