macro.h revision 33965
172210Sasmodai/* macro.h - header file for macro support for gas and gasp 272210Sasmodai Copyright (C) 1994, 1995 Free Software Foundation, Inc. 372210Sasmodai 472210Sasmodai Written by Steve and Judy Chamberlain of Cygnus Support, 572210Sasmodai sac@cygnus.com 672705Sphantom 772267Sache This file is part of GAS, the GNU Assembler. 872210Sasmodai 972210Sasmodai GAS is free software; you can redistribute it and/or modify 1072210Sasmodai it under the terms of the GNU General Public License as published by 1172210Sasmodai the Free Software Foundation; either version 2, or (at your option) 1272210Sasmodai any later version. 1372210Sasmodai 1472275Sache GAS is distributed in the hope that it will be useful, 1572327Sache but WITHOUT ANY WARRANTY; without even the implied warranty of 1672210Sasmodai MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 1772210Sasmodai GNU General Public License for more details. 1872210Sasmodai 1972210Sasmodai You should have received a copy of the GNU General Public License 2072210Sasmodai along with GAS; see the file COPYING. If not, write to the Free 2172210Sasmodai Software Foundation, 59 Temple Place - Suite 330, Boston, MA 2272210Sasmodai 02111-1307, USA. */ 2372210Sasmodai 2472210Sasmodai#ifndef MACRO_H 2572210Sasmodai 2672210Sasmodai#define MACRO_H 2772210Sasmodai 2872210Sasmodai#include "ansidecl.h" 2972210Sasmodai#include "sb.h" 3072210Sasmodai 3172210Sasmodai/* Whether any macros have been defined. */ 3272210Sasmodai 3372210Sasmodaiextern int macro_defined; 3472210Sasmodai 3572210Sasmodai/* The macro nesting level. */ 3672210Sasmodai 37extern int macro_nest; 38 39extern int buffer_and_nest 40 PARAMS ((const char *, const char *, sb *, int (*) PARAMS ((sb *)))); 41extern void macro_init 42 PARAMS ((int alternate, int mri, int strip_at, 43 int (*) PARAMS ((const char *, int, sb *, int *)))); 44extern const char *define_macro 45 PARAMS ((int idx, sb *in, sb *label, int (*get_line) PARAMS ((sb *)), 46 const char **namep)); 47extern int check_macro PARAMS ((const char *, sb *, int, const char **)); 48extern void delete_macro PARAMS ((const char *)); 49extern const char *expand_irp 50 PARAMS ((int, int, sb *, sb *, int (*) PARAMS ((sb *)), int)); 51 52#endif 53