aicasm.h revision 23934
150476Speter/* 213546Sjulian * Assembler for the sequencer program downloaded to Aic7xxx SCSI host adapters 394797Sobrien * 413546Sjulian * Copyright (c) 1997 Justin T. Gibbs. 594797Sobrien * All rights reserved. 694797Sobrien * 794797Sobrien * Redistribution and use in source and binary forms, with or without 894797Sobrien * modification, are permitted provided that the following conditions 994797Sobrien * are met: 10169524Sdeischen * 1. Redistributions of source code must retain the above copyright 11169524Sdeischen * notice immediately at the beginning of the file, without modification, 12157694Sru * this list of conditions, and the following disclaimer. 13125230Sdeischen * 2. Redistributions in binary form must reproduce the above copyright 14169524Sdeischen * notice, this list of conditions and the following disclaimer in the 15169524Sdeischen * documentation and/or other materials provided with the distribution. 16169524Sdeischen * 3. The name of the author may not be used to endorse or promote products 17169524Sdeischen * derived from this software without specific prior written permission. 18148297Skensmith * 19113658Sdeischen * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND 20103388Smini * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 2194797Sobrien * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 22113658Sdeischen * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE FOR 23113658Sdeischen * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 24115399Skan * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 25133801Sdavidxu * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 26115399Skan * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 2736831Sjb * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 28103412Smini * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 2936831Sjb * SUCH DAMAGE. 30113786Sdeischen * 31157243Sdes * $Id: aic7xxx_asm.h,v 1.1.2.1 1997/03/16 07:21:32 gibbs Exp $ 3236831Sjb */ 33117706Sdavidxu 34117706Sdavidxu#include <sys/queue.h> 35117706Sdavidxu 36117706Sdavidxu#ifndef TRUE 37156774Sdeischen#define TRUE 1 38156774Sdeischen#endif 39115399Skan 40156774Sdeischen#ifndef FALSE 41156774Sdeischen#define FALSE 0 42136910Sru#endif 4313546Sjulian 44116705Smarceltypedef struct path_entry { 45116705Smarcel char *directory; 46116705Smarcel int quoted_includes_only; 47103388Smini SLIST_ENTRY(path_entry) links; 4813546Sjulian} *path_entry_t; 49169524Sdeischen 50169524Sdeischentypedef enum { 51169524Sdeischen QUOTED_INCLUDE, 52169524Sdeischen BRACKETED_INCLUDE, 53169524Sdeischen SOURCE_FILE 54169524Sdeischen} include_type; 55169524Sdeischen 56169524SdeischenSLIST_HEAD(path_list, path_entry); 57169524Sdeischen 58169524Sdeischenextern struct path_list search_path; 5913546Sjulianextern struct symlist patch_options; 60extern int includes_search_curdir; /* False if we've seen -I- */ 61extern char *appname; 62extern int yylineno; 63extern char *yyfilename; 64 65void stop __P((const char *errstring, int err_code)); 66void include_file __P((char *file_name, include_type type)); 67struct instruction *seq_alloc __P((void)); 68struct patch *patch_alloc __P((void)); 69