Home | History | Annotate | Download | only in gas

Lines Matching defs:xlate_ctx

857   struct sframe_xlate_ctx* xlate_ctx = XCNEW (struct sframe_xlate_ctx);
858 return xlate_ctx;
864 sframe_xlate_ctx_init (struct sframe_xlate_ctx *xlate_ctx)
866 xlate_ctx->dw_fde = NULL;
867 xlate_ctx->first_fre = NULL;
868 xlate_ctx->last_fre = NULL;
869 xlate_ctx->cur_fre = NULL;
870 xlate_ctx->remember_fre = NULL;
871 xlate_ctx->num_xlate_fres = 0;
877 sframe_xlate_ctx_cleanup (struct sframe_xlate_ctx *xlate_ctx)
879 sframe_row_entry_free (xlate_ctx->first_fre);
880 XDELETE (xlate_ctx->remember_fre);
881 XDELETE (xlate_ctx->cur_fre);
887 sframe_xlate_ctx_finalize (struct sframe_xlate_ctx *xlate_ctx,
890 sframe_fde->dw_fde = xlate_ctx->dw_fde;
891 sframe_fde->sframe_fres = xlate_ctx->first_fre;
892 sframe_fde->num_fres = xlate_ctx->num_xlate_fres;
899 sframe_xlate_ctx_add_fre (struct sframe_xlate_ctx *xlate_ctx,
902 gas_assert (xlate_ctx && fre);
905 if (!xlate_ctx->first_fre)
906 xlate_ctx->first_fre = fre;
907 else if (xlate_ctx->last_fre)
908 xlate_ctx->last_fre->next = fre;
910 xlate_ctx->last_fre = fre;
913 xlate_ctx->num_xlate_fres++;
960 sframe_xlate_do_advance_loc (struct sframe_xlate_ctx *xlate_ctx,
963 struct sframe_row_entry *last_fre = xlate_ctx->last_fre;
967 struct sframe_row_entry *cur_fre = xlate_ctx->cur_fre;
975 sframe_xlate_ctx_add_fre (xlate_ctx, cur_fre);
976 last_fre = xlate_ctx->last_fre;
978 xlate_ctx->cur_fre = sframe_row_entry_new ();
979 cur_fre = xlate_ctx->cur_fre;
992 xlate_ctx->cur_fre = sframe_row_entry_new ();
993 cur_fre = xlate_ctx->cur_fre;
1006 sframe_xlate_do_def_cfa (struct sframe_xlate_ctx *xlate_ctx,
1011 struct sframe_row_entry *cur_fre = xlate_ctx->cur_fre;
1014 xlate_ctx->cur_fre = sframe_row_entry_new ();
1015 cur_fre = xlate_ctx->cur_fre;
1017 get_dw_fde_start_addrS (xlate_ctx->dw_fde));
1041 sframe_xlate_do_def_cfa_register (struct sframe_xlate_ctx *xlate_ctx,
1044 struct sframe_row_entry *last_fre = xlate_ctx->last_fre;
1046 struct sframe_row_entry *cur_fre = xlate_ctx->cur_fre;
1073 sframe_xlate_do_def_cfa_offset (struct sframe_xlate_ctx *xlate_ctx,
1079 xlate_ctx->cur_fre;
1107 sframe_xlate_do_offset (struct sframe_xlate_ctx *xlate_ctx,
1113 struct sframe_row_entry *cur_fre = xlate_ctx->cur_fre;
1143 sframe_xlate_do_val_offset (const struct sframe_xlate_ctx *xlate_ctx ATTRIBUTE_UNUSED,
1174 s390_sframe_xlate_do_register (struct sframe_xlate_ctx *xlate_ctx,
1180 struct sframe_row_entry *cur_fre = xlate_ctx->cur_fre;
1204 sframe_xlate_do_register (struct sframe_xlate_ctx *xlate_ctx ATTRIBUTE_UNUSED,
1209 return s390_sframe_xlate_do_register (xlate_ctx, cfi_insn);
1233 sframe_xlate_do_remember_state (struct sframe_xlate_ctx *xlate_ctx)
1235 struct sframe_row_entry *last_fre = xlate_ctx->last_fre;
1247 if (!xlate_ctx->remember_fre)
1248 xlate_ctx->remember_fre = sframe_row_entry_new ();
1249 sframe_row_entry_initialize (xlate_ctx->remember_fre, last_fre);
1258 sframe_xlate_do_restore_state (struct sframe_xlate_ctx *xlate_ctx)
1263 struct sframe_row_entry *cur_fre = xlate_ctx->cur_fre;
1265 gas_assert (xlate_ctx->remember_fre);
1269 sframe_row_entry_initialize (cur_fre, xlate_ctx->remember_fre);
1280 sframe_xlate_do_restore (struct sframe_xlate_ctx *xlate_ctx,
1283 struct sframe_row_entry *cie_fre = xlate_ctx->first_fre;
1287 struct sframe_row_entry *cur_fre = xlate_ctx->cur_fre;
1323 sframe_xlate_do_aarch64_negate_ra_state (struct sframe_xlate_ctx *xlate_ctx,
1326 struct sframe_row_entry *cur_fre = xlate_ctx->cur_fre;
1340 sframe_xlate_do_aarch64_negate_ra_state_with_pc (struct sframe_xlate_ctx *xlate_ctx ATTRIBUTE_UNUSED,
1360 sframe_xlate_do_gnu_window_save (struct sframe_xlate_ctx *xlate_ctx,
1368 return sframe_xlate_do_aarch64_negate_ra_state (xlate_ctx, cfi_insn);
1385 sframe_xlate_do_escape_expr (const struct sframe_xlate_ctx *xlate_ctx,
1426 || reg == xlate_ctx->cur_fre->cfa_base_reg)
1453 sframe_xlate_do_escape_val_offset (const struct sframe_xlate_ctx *xlate_ctx,
1505 err = sframe_xlate_do_val_offset (xlate_ctx, &temp, true);
1532 sframe_xlate_do_cfi_escape (const struct sframe_xlate_ctx *xlate_ctx,
1569 err = sframe_xlate_do_escape_expr (xlate_ctx, cfi_insn, &warn_p);
1573 err = sframe_xlate_do_escape_val_offset (xlate_ctx, cfi_insn, &warn_p);
1607 sframe_xlate_do_cfi_undefined (const struct sframe_xlate_ctx *xlate_ctx ATTRIBUTE_UNUSED,
1658 sframe_xlate_do_same_value (const struct sframe_xlate_ctx *xlate_ctx,
1661 struct sframe_row_entry *cur_fre = xlate_ctx->cur_fre;
1727 sframe_do_cfi_insn (struct sframe_xlate_ctx *xlate_ctx,
1739 err = sframe_xlate_do_advance_loc (xlate_ctx, cfi_insn);
1742 err = sframe_xlate_do_def_cfa (xlate_ctx, cfi_insn);
1745 err = sframe_xlate_do_def_cfa_register (xlate_ctx, cfi_insn);
1748 err = sframe_xlate_do_def_cfa_offset (xlate_ctx, cfi_insn);
1751 err = sframe_xlate_do_offset (xlate_ctx, cfi_insn);
1754 err = sframe_xlate_do_val_offset (xlate_ctx, cfi_insn, false);
1757 err = sframe_xlate_do_remember_state (xlate_ctx);
1760 err = sframe_xlate_do_restore_state (xlate_ctx);
1763 err = sframe_xlate_do_restore (xlate_ctx, cfi_insn);
1768 err = sframe_xlate_do_gnu_window_save (xlate_ctx, cfi_insn);
1771 err = sframe_xlate_do_aarch64_negate_ra_state_with_pc (xlate_ctx, cfi_insn);
1774 err = sframe_xlate_do_register (xlate_ctx, cfi_insn);
1777 err = sframe_xlate_do_cfi_escape (xlate_ctx, cfi_insn);
1780 err = sframe_xlate_do_cfi_undefined (xlate_ctx, cfi_insn);
1783 err = sframe_xlate_do_same_value (xlate_ctx, cfi_insn);
1805 sframe_do_fde (struct sframe_xlate_ctx *xlate_ctx,
1811 xlate_ctx->dw_fde = dw_fde;
1814 if (xlate_ctx->dw_fde->return_column != DWARF2_DEFAULT_RETURN_COLUMN)
1817 xlate_ctx->dw_fde->return_column);
1825 err = sframe_do_cfi_insn (xlate_ctx, cfi_insn);
1836 if (xlate_ctx->cur_fre)
1838 sframe_xlate_ctx_add_fre (xlate_ctx, xlate_ctx->cur_fre);
1839 xlate_ctx->cur_fre = NULL;
1842 if (xlate_ctx->last_fre)
1844 xlate_ctx->last_fre->pc_end
1845 = get_dw_fde_end_addrS (xlate_ctx->dw_fde);
1855 for (fre = xlate_ctx->first_fre; fre; fre = fre->next)
1882 struct sframe_xlate_ctx *xlate_ctx = sframe_xlate_ctx_alloc ();
1888 sframe_xlate_ctx_init (xlate_ctx);
1894 int err = sframe_do_fde (xlate_ctx, dw_fde);
1895 if (err || xlate_ctx->num_xlate_fres == 0)
1897 sframe_xlate_ctx_cleanup (xlate_ctx);
1904 sframe_xlate_ctx_finalize (xlate_ctx, sframe_fde);
1910 XDELETE (xlate_ctx);