| Index: src/arm/simulator-arm.h
|
| ===================================================================
|
| --- src/arm/simulator-arm.h (revision 4311)
|
| +++ src/arm/simulator-arm.h (working copy)
|
| @@ -89,8 +89,8 @@
|
|
|
|
|
| #include "constants-arm.h"
|
| +#include "hashmap.h"
|
|
|
| -
|
| namespace assembler {
|
| namespace arm {
|
|
|
| @@ -162,6 +162,9 @@
|
| // Pop an address from the JS stack.
|
| uintptr_t PopAddress();
|
|
|
| + // ICache checking.
|
| + void FlushICache(void* start, size_t size);
|
| +
|
| private:
|
| enum special_values {
|
| // Known bad pc value to ensure that the simulator does not execute
|
| @@ -239,6 +242,11 @@
|
| // Executes one instruction.
|
| void InstructionDecode(Instr* instr);
|
|
|
| + // ICache.
|
| + void CheckICache(Instr* instr);
|
| + void FlushOnePage(intptr_t start, int size);
|
| + char* GetCachePage(void* page);
|
| +
|
| // Runtime call support.
|
| static void* RedirectExternalReference(void* external_function,
|
| bool fp_return);
|
| @@ -276,6 +284,9 @@
|
| int icount_;
|
| static bool initialized_;
|
|
|
| + // Icache simulation
|
| + v8::internal::HashMap i_cache_;
|
| +
|
| // Registered breakpoints.
|
| Instr* break_pc_;
|
| instr_t break_instr_;
|
|
|