190075Sobrien/* Dwarf2 assembler output helper routines.
2169689Skan   Copyright (C) 2001, 2003, 2005 Free Software Foundation, Inc.
390075Sobrien
490075SobrienThis file is part of GCC.
590075Sobrien
690075SobrienGCC is free software; you can redistribute it and/or modify it under
790075Sobrienthe terms of the GNU General Public License as published by the Free
890075SobrienSoftware Foundation; either version 2, or (at your option) any later
990075Sobrienversion.
1090075Sobrien
1190075SobrienGCC is distributed in the hope that it will be useful, but WITHOUT ANY
1290075SobrienWARRANTY; without even the implied warranty of MERCHANTABILITY or
1390075SobrienFITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
1490075Sobrienfor more details.
1590075Sobrien
1690075SobrienYou should have received a copy of the GNU General Public License
1790075Sobrienalong with GCC; see the file COPYING.  If not, write to the Free
18169689SkanSoftware Foundation, 51 Franklin Street, Fifth Floor, Boston, MA
19169689Skan02110-1301, USA.  */
2090075Sobrien
2190075Sobrien
22132718Skanextern void dw2_assemble_integer (int, rtx);
2390075Sobrien
24132718Skanextern void dw2_asm_output_data (int, unsigned HOST_WIDE_INT,
25132718Skan				 const char *, ...)
26117395Skan     ATTRIBUTE_NULL_PRINTF_3;
2790075Sobrien
28132718Skanextern void dw2_asm_output_delta (int, const char *, const char *,
29132718Skan				  const char *, ...)
30117395Skan     ATTRIBUTE_NULL_PRINTF_4;
3190075Sobrien
32169689Skanextern void dw2_asm_output_offset (int, const char *, section *,
33169689Skan				   const char *, ...)
34169689Skan     ATTRIBUTE_NULL_PRINTF_4;
3590075Sobrien
36132718Skanextern void dw2_asm_output_addr (int, const char *, const char *, ...)
37117395Skan     ATTRIBUTE_NULL_PRINTF_3;
3890075Sobrien
39132718Skanextern void dw2_asm_output_addr_rtx (int, rtx, const char *, ...)
40117395Skan     ATTRIBUTE_NULL_PRINTF_3;
4190075Sobrien
42169689Skanextern void dw2_asm_output_encoded_addr_rtx (int, rtx, bool,
43132718Skan					     const char *, ...)
44169689Skan     ATTRIBUTE_NULL_PRINTF_4;
4590075Sobrien
46132718Skanextern void dw2_asm_output_nstring (const char *, size_t,
47132718Skan				    const char *, ...)
48117395Skan     ATTRIBUTE_NULL_PRINTF_3;
4990075Sobrien
50132718Skanextern void dw2_asm_output_data_uleb128	(unsigned HOST_WIDE_INT,
51132718Skan					 const char *, ...)
52117395Skan     ATTRIBUTE_NULL_PRINTF_2;
5390075Sobrien
54132718Skanextern void dw2_asm_output_data_sleb128	(HOST_WIDE_INT,
55132718Skan					 const char *, ...)
56117395Skan     ATTRIBUTE_NULL_PRINTF_2;
5790075Sobrien
58132718Skanextern void dw2_asm_output_delta_uleb128 (const char *, const char *,
59132718Skan					  const char *, ...)
60117395Skan     ATTRIBUTE_NULL_PRINTF_3;
6190075Sobrien
62132718Skanextern int size_of_uleb128 (unsigned HOST_WIDE_INT);
63132718Skanextern int size_of_sleb128 (HOST_WIDE_INT);
64132718Skanextern int size_of_encoded_value (int);
65132718Skanextern const char *eh_data_format_name (int);
6690075Sobrien
67132718Skanextern void dw2_output_indirect_constants (void);
68169689Skan
69169689Skan/* These are currently unused.  */
70169689Skan
71169689Skan#if 0
72169689Skanextern void dw2_asm_output_pcrel (int, const char *, const char *, ...)
73169689Skan     ATTRIBUTE_NULL_PRINTF_3;
74169689Skan
75169689Skanextern void dw2_asm_output_delta_sleb128 (const char *, const char *,
76169689Skan					  const char *, ...)
77169689Skan     ATTRIBUTE_NULL_PRINTF_3;
78169689Skan#endif
79