frchain_now->frch_cfi_data = NULL;
}
+/* Set the last FDE .*/
+void
+cfi_set_last_fde (struct fde_entry *fde)
+{
+ last_fde = fde;
+}
+
/* Set the return column for the current FDE. */
void
return;
}
- last_fde = frchain_now->frch_cfi_data->cur_fde_data;
+ cfi_set_last_fde (frchain_now->frch_cfi_data->cur_fde_data);
cfi_end_fde (symbol_temp_new_now ());
return;
}
- last_fde = frchain_now->frch_cfi_data->cur_fde_data;
+ cfi_set_last_fde (frchain_now->frch_cfi_data->cur_fde_data);
if ((all_cfi_sections & CFI_EMIT_target) != 0
|| (all_cfi_sections & CFI_EMIT_eh_frame_compact) != 0)
if (last_fde->eh_header_type == EH_COMPACT_HAS_LSDA)
output_compact_unwind_data (last_fde, align);
- last_fde = NULL;
+ cfi_set_last_fde (NULL);
return;
}
#include "dwarf2.h"
struct symbol;
+struct fde_entry;
extern const pseudo_typeS cfi_pseudo_table[];
/* Entry points for backends to add unwind information. */
extern void cfi_new_fde (struct symbol *);
extern void cfi_end_fde (struct symbol *);
+extern void cfi_set_last_fde (struct fde_entry *fde);
extern void cfi_set_return_column (unsigned);
extern void cfi_set_sections (void);
extern void cfi_add_advance_loc (struct symbol *);