Lines Matching refs:curr
625 memcpy(rs, &sr->curr, sizeof(*rs));
626 sr->curr.next = rs;
632 struct unw_reg_state *rs = sr->curr.next;
638 memcpy(&sr->curr, rs, sizeof(*rs));
758 reg = sr->curr.reg + unw.save_order[i];
779 regs[0] = sr->curr.reg + UNW_REG_F2;
780 regs[1] = sr->curr.reg + UNW_REG_R4;
781 regs[2] = sr->curr.reg + UNW_REG_B1;
788 spill_next_when(®s[kind - 1], sr->curr.reg + limit[kind - 1],
797 alloc_spill_area(&off, 16, sr->curr.reg + UNW_REG_F2, sr->curr.reg + UNW_REG_F31);
798 alloc_spill_area(&off, 8, sr->curr.reg + UNW_REG_B1, sr->curr.reg + UNW_REG_B5);
799 alloc_spill_area(&off, 8, sr->curr.reg + UNW_REG_R4, sr->curr.reg + UNW_REG_R7);
839 set_reg(sr->curr.reg + unw.save_order[i], UNW_WHERE_GR,
873 set_reg(sr->curr.reg + UNW_REG_B1 + i, UNW_WHERE_GR,
886 set_reg(sr->curr.reg + UNW_REG_B1 + i, UNW_WHERE_SPILL_HOME,
901 set_reg(sr->curr.reg + UNW_REG_R4 + i, UNW_WHERE_SPILL_HOME,
910 set_reg(sr->curr.reg + base + i, UNW_WHERE_SPILL_HOME,
925 set_reg(sr->curr.reg + UNW_REG_F2 + i, UNW_WHERE_SPILL_HOME,
940 set_reg(sr->curr.reg + UNW_REG_R4 + i, UNW_WHERE_GR,
953 set_reg(sr->curr.reg + UNW_REG_R4 + i, UNW_WHERE_SPILL_HOME,
964 set_reg(sr->curr.reg + UNW_REG_PSP, UNW_WHERE_NONE,
971 sr->curr.reg[UNW_REG_PSP].when = sr->region_start + min_t(int, t, sr->region_len - 1);
977 set_reg(sr->curr.reg + reg, UNW_WHERE_GR, sr->region_start + sr->region_len - 1, dst);
983 set_reg(sr->curr.reg + reg, UNW_WHERE_PSPREL, sr->region_start + sr->region_len - 1,
990 set_reg(sr->curr.reg + reg, UNW_WHERE_SPREL, sr->region_start + sr->region_len - 1,
1003 struct unw_reg_info *reg = sr->curr.reg + regnum;
1040 free_state_stack(&sr->curr);
1041 memcpy(&sr->curr, &ls->saved_state, sizeof(sr->curr));
1042 sr->curr.next = dup_state_stack(ls->saved_state.next);
1060 memcpy(&ls->saved_state, &sr->curr, sizeof(ls->saved_state));
1061 ls->saved_state.next = dup_state_stack(sr->curr.next);
1093 r = sr->curr.reg + decode_abreg(abreg, 0);
1114 r = sr->curr.reg + decode_abreg(abreg, 0);
1129 r = sr->curr.reg + decode_abreg(abreg, 1);
1144 r = sr->curr.reg + decode_abreg(abreg, 1);
1361 struct unw_reg_info *r = sr->curr.reg + i;
1406 struct unw_reg_info *r = sr->curr.reg + i;
1548 for (r = sr.curr.reg; r < sr.curr.reg + UNW_NUM_REGS; ++r)
1590 sr.curr.reg[UNW_REG_RP].where = UNW_WHERE_BR;
1591 sr.curr.reg[UNW_REG_RP].when = -1;
1592 sr.curr.reg[UNW_REG_RP].val = 0;
1614 sr.curr.reg[UNW_REG_PSP].val = 0;
1615 sr.curr.reg[UNW_REG_PSP].where = UNW_WHERE_NONE;
1616 sr.curr.reg[UNW_REG_PSP].when = UNW_WHEN_NEVER;
1617 for (r = sr.curr.reg; r < sr.curr.reg + UNW_NUM_REGS; ++r)
1633 if (sr.curr.reg[UNW_REG_RP].when >= sr.when_target) {
1634 sr.curr.reg[UNW_REG_RP].where = UNW_WHERE_BR;
1635 sr.curr.reg[UNW_REG_RP].when = -1;
1636 sr.curr.reg[UNW_REG_RP].val = sr.return_link_reg;
1638 __func__, ip, sr.curr.reg[UNW_REG_RP].where,
1639 sr.curr.reg[UNW_REG_RP].val);
1645 for (r = sr.curr.reg; r < sr.curr.reg + UNW_NUM_REGS; ++r) {
1647 UNW_DPRINT(1, " %s <- ", unw.preg_name[r - sr.curr.reg]);
1655 UNW_DPRINT(1, "%s+0x%lx", unw.preg_name[r - sr.curr.reg], r->val);
1675 if (sr.when_target > sr.curr.reg[UNW_REG_PSP].when
1676 && (sr.curr.reg[UNW_REG_PSP].where == UNW_WHERE_NONE)
1677 && sr.curr.reg[UNW_REG_PSP].val != 0) {
1681 insn.val = sr.curr.reg[UNW_REG_PSP].val; /* frame size */
1686 if (sr.when_target < sr.curr.reg[UNW_REG_PRI_UNAT_GR].when)
1688 else if (sr.when_target < sr.curr.reg[UNW_REG_PRI_UNAT_MEM].when)
1690 else if (sr.curr.reg[UNW_REG_PRI_UNAT_MEM].when > sr.curr.reg[UNW_REG_PRI_UNAT_GR].when)
1708 free_state_stack(&sr.curr);