Lines Matching refs:orc
146 static struct orc_entry *orc; in orc_find() local
183 orc = orc_module_find(ip); in orc_find()
184 if (orc) in orc_find()
185 return orc; in orc_find()
242 struct orc_entry *orc = _orc; in unwind_module_init() local
246 orc_size % sizeof(*orc) != 0 || in unwind_module_init()
247 num_entries != orc_size / sizeof(*orc)); in unwind_module_init()
256 cur_orc_table = orc; in unwind_module_init()
261 mod->arch.orc_unwind = orc; in unwind_module_init()
271 struct orc_entry *orc; in unwind_init() local
290 orc = __orc_find(__start_orc_unwind_ip, __start_orc_unwind, in unwind_init()
293 if (!orc) { in unwind_init()
298 orc_lookup[i] = orc - __start_orc_unwind; in unwind_init()
302 orc = __orc_find(__start_orc_unwind_ip, __start_orc_unwind, num_entries, in unwind_init()
304 if (!orc) { in unwind_init()
308 orc_lookup[lookup_num_blocks-1] = orc - __start_orc_unwind; in unwind_init()
421 struct orc_entry *orc; in unwind_next_frame() local
443 orc = orc_find(state->signal ? state->ip : state->ip - 1); in unwind_next_frame()
444 if (!orc) { in unwind_next_frame()
451 orc = &orc_fp_entry; in unwind_next_frame()
456 if (orc->sp_reg == ORC_REG_UNDEFINED) { in unwind_next_frame()
457 if (!orc->end) in unwind_next_frame()
464 switch (orc->sp_reg) { in unwind_next_frame()
466 sp = state->sp + orc->sp_offset; in unwind_next_frame()
470 sp = state->bp + orc->sp_offset; in unwind_next_frame()
479 sp = state->bp + orc->sp_offset; in unwind_next_frame()
517 orc->sp_reg, (void *)state->ip); in unwind_next_frame()
525 if (orc->sp_reg == ORC_REG_SP_INDIRECT) in unwind_next_frame()
526 sp += orc->sp_offset; in unwind_next_frame()
530 switch (orc->type) { in unwind_next_frame()
575 orc->type, (void *)orig_ip); in unwind_next_frame()
580 switch (orc->bp_reg) { in unwind_next_frame()
587 if (!deref_stack_reg(state, sp + orc->bp_offset, &state->bp)) in unwind_next_frame()
592 if (!deref_stack_reg(state, state->bp + orc->bp_offset, &state->bp)) in unwind_next_frame()
598 orc->bp_reg, (void *)orig_ip); in unwind_next_frame()