Chromium Code Reviews| Index: runtime/vm/code_patcher.cc |
| diff --git a/runtime/vm/code_patcher.cc b/runtime/vm/code_patcher.cc |
| index 6fda035f4047783368cc8dffa9e299c6d09d6b20..3711e3a86f50ca754e20b8a37918e3062f5fc26e 100644 |
| --- a/runtime/vm/code_patcher.cc |
| +++ b/runtime/vm/code_patcher.cc |
| @@ -65,12 +65,23 @@ void CodePatcher::RestoreEntry(const Code& code) { |
| } |
| +bool CodePatcher::IsEntryPatched(const Code& code) { |
| + const uword patch_addr = code.GetPcForDeoptId(Isolate::kNoDeoptId, |
|
srdjan
2013/12/30 17:54:46
weird indent
Cutch
2013/12/30 21:32:40
Done.
|
| + PcDescriptors::kEntryPatch); |
| + if (patch_addr == 0) { |
| + return false; |
| + } |
| + JumpPattern jmp_entry(patch_addr, code); |
| + return jmp_entry.IsValid(); |
| +} |
| + |
| + |
| bool CodePatcher::CodeIsPatchable(const Code& code) { |
| const uword patch_addr = code.GetPcForDeoptId(Isolate::kNoDeoptId, |
| PcDescriptors::kEntryPatch); |
| // kEntryPatch may not exist which means the function is not patchable. |
| if (patch_addr == 0) { |
| - return true; |
| + return false; |
| } |
| JumpPattern jmp_entry(patch_addr, code); |
| if (code.Size() < (jmp_entry.pattern_length_in_bytes() * 2)) { |