Index: src/ppc/simulator-ppc.cc |
diff --git a/src/ppc/simulator-ppc.cc b/src/ppc/simulator-ppc.cc |
index 2816a8775190e3b57f74d2a5c5463cdbba28b563..84fbb399b3ecf5e5078e5f63af1c0410e3a9948b 100644 |
--- a/src/ppc/simulator-ppc.cc |
+++ b/src/ppc/simulator-ppc.cc |
@@ -658,9 +658,8 @@ void Simulator::set_last_debugger_input(char* input) { |
last_debugger_input_ = input; |
} |
- |
-void Simulator::FlushICache(base::HashMap* i_cache, void* start_addr, |
- size_t size) { |
+void Simulator::FlushICache(base::CustomMatcherHashMap* i_cache, |
+ void* start_addr, size_t size) { |
intptr_t start = reinterpret_cast<intptr_t>(start_addr); |
int intra_line = (start & CachePage::kLineMask); |
start -= intra_line; |
@@ -680,8 +679,8 @@ void Simulator::FlushICache(base::HashMap* i_cache, void* start_addr, |
} |
} |
- |
-CachePage* Simulator::GetCachePage(base::HashMap* i_cache, void* page) { |
+CachePage* Simulator::GetCachePage(base::CustomMatcherHashMap* i_cache, |
+ void* page) { |
base::HashMap::Entry* entry = i_cache->LookupOrInsert(page, ICacheHash(page)); |
if (entry->value == NULL) { |
CachePage* new_page = new CachePage(); |
@@ -692,7 +691,8 @@ CachePage* Simulator::GetCachePage(base::HashMap* i_cache, void* page) { |
// Flush from start up to and not including start + size. |
-void Simulator::FlushOnePage(base::HashMap* i_cache, intptr_t start, int size) { |
+void Simulator::FlushOnePage(base::CustomMatcherHashMap* i_cache, |
+ intptr_t start, int size) { |
DCHECK(size <= CachePage::kPageSize); |
DCHECK(AllOnOnePage(start, size - 1)); |
DCHECK((start & CachePage::kLineMask) == 0); |
@@ -704,7 +704,8 @@ void Simulator::FlushOnePage(base::HashMap* i_cache, intptr_t start, int size) { |
memset(valid_bytemap, CachePage::LINE_INVALID, size >> CachePage::kLineShift); |
} |
-void Simulator::CheckICache(base::HashMap* i_cache, Instruction* instr) { |
+void Simulator::CheckICache(base::CustomMatcherHashMap* i_cache, |
+ Instruction* instr) { |
intptr_t address = reinterpret_cast<intptr_t>(instr); |
void* page = reinterpret_cast<void*>(address & (~CachePage::kPageMask)); |
void* line = reinterpret_cast<void*>(address & (~CachePage::kLineMask)); |
@@ -737,7 +738,7 @@ void Simulator::Initialize(Isolate* isolate) { |
Simulator::Simulator(Isolate* isolate) : isolate_(isolate) { |
i_cache_ = isolate_->simulator_i_cache(); |
if (i_cache_ == NULL) { |
- i_cache_ = new base::HashMap(&ICacheMatch); |
+ i_cache_ = new base::CustomMatcherHashMap(&ICacheMatch); |
isolate_->set_simulator_i_cache(i_cache_); |
} |
Initialize(isolate); |
@@ -872,7 +873,8 @@ class Redirection { |
// static |
-void Simulator::TearDown(base::HashMap* i_cache, Redirection* first) { |
+void Simulator::TearDown(base::CustomMatcherHashMap* i_cache, |
+ Redirection* first) { |
Redirection::DeleteChain(first); |
if (i_cache != nullptr) { |
for (base::HashMap::Entry* entry = i_cache->Start(); entry != nullptr; |