Lines Matching full:loc_regs
41 dwarf_loc_regs_t* loc_regs) {
44 (*loc_regs)[entry.first] = entry.second;
53 loc_regs->pc_start = cur_pc_;
56 loc_regs->pc_end = cur_pc_;
60 loc_regs->pc_end = fde_->pc_end;
63 loc_regs->pc_start = cur_pc_;
87 (*loc_regs)[cfa_low] = {.type = DWARF_LOCATION_OFFSET,
100 loc_regs->erase(cfa_low);
102 (*loc_regs)[cfa_low] = reg_entry->second;
135 if (!(this->*handle_func)(loc_regs)) {
340 bool DwarfCfa<AddressType>::cfa_offset(dwarf_loc_regs_t* loc_regs) {
342 (*loc_regs)[reg] = {.type = DWARF_LOCATION_OFFSET, .values = {operands_[1]}};
347 bool DwarfCfa<AddressType>::cfa_restore(dwarf_loc_regs_t* loc_regs) {
356 loc_regs->erase(reg);
358 (*loc_regs)[reg] = reg_entry->second;
364 bool DwarfCfa<AddressType>::cfa_undefined(dwarf_loc_regs_t* loc_regs) {
366 (*loc_regs)[reg] = {.type = DWARF_LOCATION_UNDEFINED};
371 bool DwarfCfa<AddressType>::cfa_same_value(dwarf_loc_regs_t* loc_regs) {
373 loc_regs->erase(reg);
378 bool DwarfCfa<AddressType>::cfa_register(dwarf_loc_regs_t* loc_regs) {
381 (*loc_regs)[reg] = {.type = DWARF_LOCATION_REGISTER, .values = {reg_dst}};
386 bool DwarfCfa<AddressType>::cfa_remember_state(dwarf_loc_regs_t* loc_regs) {
387 loc_reg_state_.push(*loc_regs);
392 bool DwarfCfa<AddressType>::cfa_restore_state(dwarf_loc_regs_t* loc_regs) {
397 *loc_regs = loc_reg_state_.top();
403 bool DwarfCfa<AddressType>::cfa_def_cfa(dwarf_loc_regs_t* loc_regs) {
404 (*loc_regs)[CFA_REG] = {.type = DWARF_LOCATION_REGISTER, .values = {operands_[0], operands_[1]}};
409 bool DwarfCfa<AddressType>::cfa_def_cfa_register(dwarf_loc_regs_t* loc_regs) {
410 auto cfa_location = loc_regs->find(CFA_REG);
411 if (cfa_location == loc_regs->end() || cfa_location->second.type != DWARF_LOCATION_REGISTER) {
422 bool DwarfCfa<AddressType>::cfa_def_cfa_offset(dwarf_loc_regs_t* loc_regs) {
424 auto cfa_location = loc_regs->find(CFA_REG);
425 if (cfa_location == loc_regs->end() || cfa_location->second.type != DWARF_LOCATION_REGISTER) {
435 bool DwarfCfa<AddressType>::cfa_def_cfa_expression(dwarf_loc_regs_t* loc_regs) {
439 (*loc_regs)[CFA_REG] = {.type = DWARF_LOCATION_VAL_EXPRESSION,
445 bool DwarfCfa<AddressType>::cfa_expression(dwarf_loc_regs_t* loc_regs) {
447 (*loc_regs)[reg] = {.type = DWARF_LOCATION_EXPRESSION,
453 bool DwarfCfa<AddressType>::cfa_offset_extended_sf(dwarf_loc_regs_t* loc_regs) {
456 (*loc_regs)[reg] = {.type = DWARF_LOCATION_OFFSET, .values = {static_cast<uint64_t>(value)}};
461 bool DwarfCfa<AddressType>::cfa_def_cfa_sf(dwarf_loc_regs_t* loc_regs) {
463 (*loc_regs)[CFA_REG] = {.type = DWARF_LOCATION_REGISTER,
469 bool DwarfCfa<AddressType>::cfa_def_cfa_offset_sf(dwarf_loc_regs_t* loc_regs) {
471 auto cfa_location = loc_regs->find(CFA_REG);
472 if (cfa_location == loc_regs->end() || cfa_location->second.type != DWARF_LOCATION_REGISTER) {
483 bool DwarfCfa<AddressType>::cfa_val_offset(dwarf_loc_regs_t* loc_regs) {
486 (*loc_regs)[reg] = {.type = DWARF_LOCATION_VAL_OFFSET, .values = {static_cast<uint64_t>(offset)}};
491 bool DwarfCfa<AddressType>::cfa_val_offset_sf(dwarf_loc_regs_t* loc_regs) {
494 (*loc_regs)[reg] = {.type = DWARF_LOCATION_VAL_OFFSET, .values = {static_cast<uint64_t>(offset)}};
499 bool DwarfCfa<AddressType>::cfa_val_expression(dwarf_loc_regs_t* loc_regs) {
501 (*loc_regs)[reg] = {.type = DWARF_LOCATION_VAL_EXPRESSION,
507 bool DwarfCfa<AddressType>::cfa_gnu_negative_offset_extended(dwarf_loc_regs_t* loc_regs) {
510 (*loc_regs)[reg] = {.type = DWARF_LOCATION_OFFSET, .values = {static_cast<uint64_t>(offset)}};