1 /* scfi.h - Support for synthesizing CFI for asm. 2 Copyright (C) 2023 Free Software Foundation, Inc. 3 4 This file is part of GAS, the GNU Assembler. 5 6 GAS is free software; you can redistribute it and/or modify 7 it under the terms of the GNU General Public License as published by 8 the Free Software Foundation; either version 3, or (at your option) 9 any later version. 10 11 GAS is distributed in the hope that it will be useful, 12 but WITHOUT ANY WARRANTY; without even the implied warranty of 13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 GNU General Public License for more details. 15 16 You should have received a copy of the GNU General Public License 17 along with GAS; see the file COPYING. If not, write to the Free 18 Software Foundation, 51 Franklin Street - Fifth Floor, Boston, MA 19 02110-1301, USA. */ 20 21 #ifndef SCFI_H 22 #define SCFI_H 23 24 #include "as.h" 25 #include "ginsn.h" 26 27 void scfi_ops_cleanup (scfi_opS **head); 28 29 /* Some SCFI ops are not synthesized and are only added externally when parsing 30 the assembler input. Two examples are CFI_label, and CFI_signal_frame. */ 31 void scfi_op_add_cfi_label (ginsnS *ginsn, const char *name); 32 void scfi_op_add_signal_frame (ginsnS *ginsn); 33 34 int scfi_emit_dw2cfi (const symbolS *func); 35 36 int scfi_synthesize_dw2cfi (const symbolS *func, gcfgS *gcfg, gbbS *root_bb); 37 38 #endif /* SCFI_H. */ 39