Lines Matching refs:cfa

255 	cfi->cfa.base = CFI_UNDEFINED;  in init_cfi_state()
1790 state->cfa = initial_func_cfi.cfa; in set_func_state()
1793 state->stack_size = initial_func_cfi.cfa.offset; in set_func_state()
1871 if (arch_decode_hint_reg(hint->sp_reg, &cfi.cfa.base)) { in read_unwind_hints()
1877 cfi.cfa.offset = hint->sp_offset; in read_unwind_hints()
2166 if (cfi->cfa.base != initial_func_cfi.cfa.base || cfi->drap) in has_modified_stack_frame()
2169 if (cfi->cfa.offset != initial_func_cfi.cfa.offset) in has_modified_stack_frame()
2172 if (cfi->stack_size != initial_func_cfi.cfa.offset) in has_modified_stack_frame()
2188 if (cfi->cfa.base == CFI_BP && cfi->regs[CFI_BP].base == CFI_CFA && in has_valid_stack_frame()
2202 struct cfi_reg *cfa = &cfi->cfa; in update_cfi_state_regs() local
2204 if (cfa->base != CFI_SP && cfa->base != CFI_SP_INDIRECT) in update_cfi_state_regs()
2209 cfa->offset += 8; in update_cfi_state_regs()
2213 cfa->offset -= 8; in update_cfi_state_regs()
2218 cfa->offset -= op->src.offset; in update_cfi_state_regs()
2294 struct cfi_reg *cfa = &cfi->cfa; in update_cfi_state() local
2298 if (cfa->base == CFI_UNDEFINED) { in update_cfi_state()
2317 cfa->base == CFI_SP && in update_cfi_state()
2319 regs[CFI_BP].offset == -cfa->offset) { in update_cfi_state()
2322 cfa->base = op->dest.reg; in update_cfi_state()
2335 else if (op->src.reg == CFI_SP && cfa->base == CFI_SP) { in update_cfi_state()
2352 cfa->base == CFI_BP) { in update_cfi_state()
2362 else if (op->dest.reg == cfa->base) { in update_cfi_state()
2365 if (cfa->base == CFI_SP && in update_cfi_state()
2376 cfa->offset = -cfi->vals[op->src.reg].offset; in update_cfi_state()
2377 cfi->stack_size = cfa->offset; in update_cfi_state()
2380 cfa->base = CFI_UNDEFINED; in update_cfi_state()
2381 cfa->offset = 0; in update_cfi_state()
2392 if (cfa->base == CFI_SP) in update_cfi_state()
2393 cfa->offset -= op->src.offset; in update_cfi_state()
2404 if (op->src.reg == CFI_SP && cfa->base == CFI_SP) { in update_cfi_state()
2430 cfa->base = CFI_SP; in update_cfi_state()
2431 cfa->offset = cfi->stack_size = -op->src.offset; in update_cfi_state()
2437 if (op->dest.reg == cfi->cfa.base) { in update_cfi_state()
2447 (cfi->drap_reg != CFI_UNDEFINED && cfa->base != CFI_SP) || in update_cfi_state()
2448 (cfi->drap_reg == CFI_UNDEFINED && cfa->base != CFI_BP)) { in update_cfi_state()
2456 cfa->base = cfi->drap_reg; in update_cfi_state()
2457 cfa->offset = cfi->stack_size = 0; in update_cfi_state()
2470 if (!cfi->drap && op->dest.reg == cfa->base) { in update_cfi_state()
2473 cfa->base = CFI_SP; in update_cfi_state()
2476 if (cfi->drap && cfa->base == CFI_BP_INDIRECT && in update_cfi_state()
2481 cfa->base = cfi->drap_reg; in update_cfi_state()
2482 cfa->offset = 0; in update_cfi_state()
2492 if (cfa->base == CFI_SP) in update_cfi_state()
2493 cfa->offset -= 8; in update_cfi_state()
2502 cfa->base = cfi->drap_reg; in update_cfi_state()
2503 cfa->offset = 0; in update_cfi_state()
2513 } else if (op->src.reg == cfa->base && in update_cfi_state()
2514 op->src.offset == regs[op->dest.reg].offset + cfa->offset) { in update_cfi_state()
2534 if (cfa->base == CFI_SP) in update_cfi_state()
2535 cfa->offset += 8; in update_cfi_state()
2541 if (op->src.reg == cfa->base && op->src.reg == cfi->drap_reg) { in update_cfi_state()
2544 cfa->base = CFI_BP_INDIRECT; in update_cfi_state()
2545 cfa->offset = -cfi->stack_size; in update_cfi_state()
2550 } else if (op->src.reg == CFI_BP && cfa->base == cfi->drap_reg) { in update_cfi_state()
2569 cfa->base != CFI_BP) in update_cfi_state()
2576 if (op->src.reg == cfa->base && op->src.reg == cfi->drap_reg) { in update_cfi_state()
2579 cfa->base = CFI_BP_INDIRECT; in update_cfi_state()
2580 cfa->offset = op->dest.offset; in update_cfi_state()
2590 } else if (op->dest.reg == cfa->base) { in update_cfi_state()
2595 op->dest.offset - cfi->cfa.offset); in update_cfi_state()
2601 if ((!cfi->drap && cfa->base != CFI_BP) || in update_cfi_state()
2602 (cfi->drap && cfa->base != cfi->drap_reg)) { in update_cfi_state()
2614 cfa->base = CFI_SP; in update_cfi_state()
2615 cfa->offset -= 8; in update_cfi_state()
2629 if (cfa->base == CFI_SP) in update_cfi_state()
2630 cfa->offset -= 8; in update_cfi_state()
2725 if (memcmp(&cfi1->cfa, &cfi2->cfa, sizeof(cfi1->cfa))) { in insn_cfi_match()
2729 cfi1->cfa.base, cfi1->cfa.offset, in insn_cfi_match()
2730 cfi2->cfa.base, cfi2->cfa.offset); in insn_cfi_match()
3141 if (state.cfi.cfa.base == CFI_UNDEFINED) in validate_branch()