Linux Kernel
3.7.1
Main Page
Related Pages
Modules
Namespaces
Data Structures
Files
File List
Globals
All
Data Structures
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Macros
Groups
Pages
drivers
scsi
aic7xxx
aicasm
aicasm.h
Go to the documentation of this file.
1
/*
2
* Assembler for the sequencer program downloaded to Aic7xxx SCSI host adapters
3
*
4
* Copyright (c) 1997 Justin T. Gibbs.
5
* Copyright (c) 2001, 2002 Adaptec Inc.
6
* All rights reserved.
7
*
8
* Redistribution and use in source and binary forms, with or without
9
* modification, are permitted provided that the following conditions
10
* are met:
11
* 1. Redistributions of source code must retain the above copyright
12
* notice, this list of conditions, and the following disclaimer,
13
* without modification.
14
* 2. Redistributions in binary form must reproduce at minimum a disclaimer
15
* substantially similar to the "NO WARRANTY" disclaimer below
16
* ("Disclaimer") and any redistribution must be conditioned upon
17
* including a substantially similar Disclaimer requirement for further
18
* binary redistribution.
19
* 3. Neither the names of the above-listed copyright holders nor the names
20
* of any contributors may be used to endorse or promote products derived
21
* from this software without specific prior written permission.
22
*
23
* Alternatively, this software may be distributed under the terms of the
24
* GNU General Public License ("GPL") version 2 as published by the Free
25
* Software Foundation.
26
*
27
* NO WARRANTY
28
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
29
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
30
* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR
31
* A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
32
* HOLDERS OR CONTRIBUTORS BE LIABLE FOR SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
33
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
34
* OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
35
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
36
* STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
37
* IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
38
* POSSIBILITY OF SUCH DAMAGES.
39
*
40
* $Id: //depot/aic7xxx/aic7xxx/aicasm/aicasm.h#14 $
41
*
42
* $FreeBSD$
43
*/
44
45
#ifdef __linux__
46
#include "../queue.h"
47
#else
48
#include <sys/queue.h>
49
#endif
50
51
#ifndef TRUE
52
#define TRUE 1
53
#endif
54
55
#ifndef FALSE
56
#define FALSE 0
57
#endif
58
59
typedef
struct
path_entry
{
60
char
*
directory
;
61
int
quoted_includes_only
;
62
SLIST_ENTRY
(
path_entry
) links;
63
} *
path_entry_t
;
64
65
typedef enum {
66
QUOTED_INCLUDE
,
67
BRACKETED_INCLUDE
,
68
SOURCE_FILE
69
}
include_type
;
70
71
SLIST_HEAD
(path_list,
path_entry
);
72
73
extern
struct
path_list
search_path
;
74
extern
struct
cs_tailq
cs_tailq
;
75
extern
struct
scope_list
scope_stack
;
76
extern
struct
symlist
patch_functions
;
77
extern
int
includes_search_curdir
;
/* False if we've seen -I- */
78
extern
char
*
appname
;
79
extern
char
*
stock_include_file
;
80
extern
int
yylineno
;
81
extern
char
*
yyfilename
;
82
extern
char
*
prefix
;
83
extern
char
*
patch_arg_list
;
84
extern
char
*
versions
;
85
extern
int
src_mode
;
86
extern
int
dst_mode
;
87
struct
symbol
;
88
89
void
stop
(
const
char
*
errstring
,
int
err_code
);
90
void
include_file
(
char
*
file_name
,
include_type
type
);
91
void
expand_macro
(
struct
symbol
*macro_symbol);
92
struct
instruction
*
seq_alloc
(
void
);
93
struct
critical_section
*
cs_alloc
(
void
);
94
struct
scope
*
scope_alloc
(
void
);
95
void
process_scope
(
struct
scope
*);
Generated on Thu Jan 10 2013 14:19:09 for Linux Kernel by
1.8.2