Chromium Code Reviews| Index: courgette/rel32_finder.h | 
| diff --git a/courgette/rel32_finder_win32_x86.h b/courgette/rel32_finder.h | 
| similarity index 57% | 
| rename from courgette/rel32_finder_win32_x86.h | 
| rename to courgette/rel32_finder.h | 
| index 98ebd9825a471d9aba01a75635cd4058e710dbc9..d2e3ec670ab2a7eeae1cb8c66557b9394057e3e7 100644 | 
| --- a/courgette/rel32_finder_win32_x86.h | 
| +++ b/courgette/rel32_finder.h | 
| @@ -1,9 +1,9 @@ | 
| -// Copyright 2015 The Chromium Authors. All rights reserved. | 
| +// Copyright 2016 The Chromium Authors. All rights reserved. | 
| // Use of this source code is governed by a BSD-style license that can be | 
| // found in the LICENSE file. | 
| -#ifndef COURGETTE_REL32_FINDER_WIN32_X86_H_ | 
| -#define COURGETTE_REL32_FINDER_WIN32_X86_H_ | 
| +#ifndef COURGETTE_REL32_FINDER_H_ | 
| +#define COURGETTE_REL32_FINDER_H_ | 
| #include <stdint.h> | 
| @@ -15,10 +15,11 @@ | 
| namespace courgette { | 
| // A helper class to scan through a section of code to extract RVAs. | 
| -class Rel32FinderWin32X86 { | 
| +class Rel32Finder { | 
| public: | 
| - Rel32FinderWin32X86(RVA relocs_start_rva, RVA relocs_end_rva); | 
| - virtual ~Rel32FinderWin32X86(); | 
| + Rel32Finder() = default; | 
| 
 
huangs
2016/05/26 22:40:55
If the default constructor is unused (perhaps by s
 
etiennep
2016/05/27 18:12:34
Done.
 
 | 
| + Rel32Finder(RVA relocs_start_rva, RVA relocs_end_rva); | 
| + virtual ~Rel32Finder() = default; | 
| // Swaps data in |rel32_locations_| with |dest|. | 
| void SwapRel32Locations(std::vector<RVA>* dest); | 
| @@ -38,11 +39,12 @@ class Rel32FinderWin32X86 { | 
| const uint8_t* end_pointer, | 
| RVA start_rva, | 
| RVA end_rva, | 
| + uint32_t size_of_image_, | 
| 
 
huangs
2016/05/26 22:11:17
|size_of_image|.  Trailing underscore is for priva
 
etiennep
2016/05/27 18:12:34
Done.
 
 | 
| const std::vector<RVA>& abs32_locations) = 0; | 
| protected: | 
| - const RVA relocs_start_rva_; | 
| - const RVA relocs_end_rva_; | 
| + const RVA relocs_start_rva_ = 0; | 
| 
 
huangs
2016/05/26 22:40:55
Remove " = 0" if we remove default constructor.
 
etiennep
2016/05/27 18:12:33
Done.
 
 | 
| + const RVA relocs_end_rva_ = 0; | 
| std::vector<RVA> rel32_locations_; | 
| @@ -51,21 +53,6 @@ class Rel32FinderWin32X86 { | 
| #endif | 
| }; | 
| -// The basic implementation performs naive scan for rel32 JMP and Jcc opcodes | 
| -// (excluding JPO/JPE) disregarding instruction alignment. | 
| -class Rel32FinderWin32X86_Basic : public Rel32FinderWin32X86 { | 
| - public: | 
| - Rel32FinderWin32X86_Basic(RVA relocs_start_rva, RVA relocs_end_rva); | 
| - virtual ~Rel32FinderWin32X86_Basic(); | 
| - | 
| - // Rel32FinderWin32X86 implementation. | 
| - void Find(const uint8_t* start_pointer, | 
| - const uint8_t* end_pointer, | 
| - RVA start_rva, | 
| - RVA end_rva, | 
| - const std::vector<RVA>& abs32_locations) override; | 
| -}; | 
| - | 
| } // namespace courgette | 
| -#endif // COURGETTE_REL32_FINDER_WIN32_X86_H_ | 
| +#endif // COURGETTE_REL32_FINDER_H_ |