diff options
author | Samuel Huang <huangs@chromium.org> | 2018-03-13 21:35:53 +0000 |
---|---|---|
committer | Edward Lesmes <ehmaldonado@google.com> | 2021-07-23 21:52:01 +0000 |
commit | 56a6ff47bca7087db1916b2beeedee283cd1caf2 (patch) | |
tree | 4dba54508860de2e38422e938f49a9d8b9666155 /disassembler_win32.cc | |
parent | 06f1ae9aaca969ee95ef840f22b6b461c304542d (diff) | |
download | zucchini-56a6ff47bca7087db1916b2beeedee283cd1caf2.tar.gz |
[Zucchini] Zucchini-gen: Make number of CreateEquivalenceMap() generations depend on Disassembler.
The number of CreateEquivalenceMap() iterations used be constant
kNumIteraitons = 2. This CL makes the value depend on architecture.
Current assignment:
- DisassemblerNoOp: 1, since no pointers are identified (though in this
case, CreateEquivalenceMap() should not be called).
- DisassemblerWin32: 2.
Upcoming DisassemblerDex will use 4.
Also applying generic cleanups on headers and comments.
Bug: 729154
Change-Id: Ia12d98fcba500e4c81c8a5d356ce4cadf424ffde
Reviewed-on: https://chromium-review.googlesource.com/961273
Reviewed-by: agrieve <agrieve@chromium.org>
Commit-Queue: Samuel Huang <huangs@chromium.org>
Cr-Commit-Position: refs/heads/master@{#542919}
NOKEYCHECK=True
GitOrigin-RevId: 55aea0a875b80e614464fdd157d9717471f9d64f
Diffstat (limited to 'disassembler_win32.cc')
-rw-r--r-- | disassembler_win32.cc | 6 |
1 files changed, 2 insertions, 4 deletions
diff --git a/disassembler_win32.cc b/disassembler_win32.cc index 5bdc503..a932bea 100644 --- a/disassembler_win32.cc +++ b/disassembler_win32.cc @@ -86,8 +86,9 @@ bool DisassemblerWin32<Traits>::QuickDetect(ConstBufferView image) { return ReadWin32Header<Traits>(image, &source); } +// |num_equivalence_iterations_| = 2 for reloc -> abs32. template <class Traits> -DisassemblerWin32<Traits>::DisassemblerWin32() = default; +DisassemblerWin32<Traits>::DisassemblerWin32() : Disassembler(2) {} template <class Traits> DisassemblerWin32<Traits>::~DisassemblerWin32() = default; @@ -309,9 +310,6 @@ bool DisassemblerWin32<Traits>::ParseAndStoreRelocBlocks() { &reloc_block_offsets_); } -// TODO(huangs): Print warning if too few abs32 references are found. -// Empirically, file size / # relocs is < 100, so take 200 as the -// threshold for warning. template <class Traits> bool DisassemblerWin32<Traits>::ParseAndStoreAbs32() { if (has_parsed_abs32_) |