1/* This file is listing.h
2   Copyright 1987, 1988, 1989, 1990, 1991, 1992, 1993, 1995, 1997, 1998,
3   2003 Free Software Foundation, Inc.
4
5   This file is part of GAS, the GNU Assembler.
6
7   GAS is free software; you can redistribute it and/or modify
8   it under the terms of the GNU General Public License as published by
9   the Free Software Foundation; either version 2, or (at your option)
10   any later version.
11
12   GAS is distributed in the hope that it will be useful,
13   but WITHOUT ANY WARRANTY; without even the implied warranty of
14   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
15   GNU General Public License for more details.
16
17   You should have received a copy of the GNU General Public License
18   along with GAS; see the file COPYING.  If not, write to the Free
19   Software Foundation, 51 Franklin Street - Fifth Floor, Boston, MA
20   02110-1301, USA.  */
21
22#ifndef __listing_h__
23#define __listing_h__
24
25#define LISTING_LISTING    1
26#define LISTING_SYMBOLS    2
27#define LISTING_NOFORM     4
28#define LISTING_HLL        8
29#define LISTING_NODEBUG   16
30#define LISTING_NOCOND	  32
31#define LISTING_MACEXP	  64
32
33#define LISTING_DEFAULT    (LISTING_LISTING | LISTING_HLL | LISTING_SYMBOLS)
34
35#ifndef NO_LISTING
36#define LISTING_NEWLINE() { if (listing) listing_newline(NULL); }
37#else
38#define LISTING_NEWLINE() {;}
39#endif
40#define LISTING_EOF()     LISTING_NEWLINE()
41
42#define LISTING_SKIP_COND() ((listing & LISTING_NOCOND) != 0)
43
44void listing_eject (int);
45void listing_error (const char *message);
46void listing_file (const char *name);
47void listing_flags (int);
48void listing_list (int on);
49void listing_newline (char *ps);
50void listing_prev_line (void);
51void listing_print (char *name);
52void listing_psize (int);
53void listing_nopage (int);
54void listing_source_file (const char *);
55void listing_source_line (unsigned int);
56void listing_title (int depth);
57void listing_warning (const char *message);
58void listing_width (unsigned int x);
59
60extern int listing_lhs_width;
61extern int listing_lhs_width_second;
62extern int listing_lhs_cont_lines;
63extern int listing_rhs_width;
64
65#endif /* __listing_h__ */
66
67/* end of listing.h */
68