Lines Matching refs:pc

32 bool PCIsInCodeRange(const v8::MemoryRange& code_range, void* pc) {
33 return pc >= code_range.start &&
34 pc < CalculateEnd(code_range.start, code_range.length_in_bytes);
40 void* pc) {
46 MemoryRange fake_range{pc, 1};
52 DCHECK_IMPLIES(it != code_pages + code_pages_length, pc < it->start);
55 return it->start <= pc && pc < CalculateEnd(it->start, it->length_in_bytes);
58 bool IsInJSEntryRange(const JSEntryStubs& entry_stubs, void* pc) {
59 return PCIsInCodeRange(entry_stubs.js_entry_stub.code, pc) ||
60 PCIsInCodeRange(entry_stubs.js_construct_entry_stub.code, pc) ||
61 PCIsInCodeRange(entry_stubs.js_run_microtasks_entry_stub.code, pc);
64 bool IsInUnsafeJSEntryRange(const JSEntryStubs& entry_stubs, void* pc) {
65 return IsInJSEntryRange(entry_stubs, pc);
78 void* GetReturnAddressFromFP(void* fp, void* pc,
83 if (IsInJSEntryRange(entry_stubs, pc)) {
92 void* GetCallerFPFromFP(void* fp, void* pc, const JSEntryStubs& entry_stubs) {
95 if (IsInJSEntryRange(entry_stubs, pc)) {
103 void* GetCallerSPFromFP(void* fp, void* pc, const JSEntryStubs& entry_stubs) {
106 if (IsInJSEntryRange(entry_stubs, pc)) {
123 void* pc = register_state->pc;
124 if (PCIsInV8(code_pages_length, code_pages, pc) &&
125 !IsInUnsafeJSEntryRange(entry_stubs, pc)) {
131 void* next_pc = GetReturnAddressFromFP(current_fp, pc, entry_stubs);
133 current_fp = GetCallerFPFromFP(current_fp, pc, entry_stubs);
135 pc = next_pc;
136 next_pc = GetReturnAddressFromFP(current_fp, pc, entry_stubs);
139 void* final_sp = GetCallerSPFromFP(current_fp, pc, entry_stubs);
147 void* final_fp = GetCallerFPFromFP(current_fp, pc, entry_stubs);
150 register_state->pc = next_pc;
155 if (IsInJSEntryRange(entry_stubs, pc)) {
164 void* pc) {
165 return pc && PCIsInCodePages(code_pages_length, code_pages, pc);