diff options
Diffstat (limited to 'src/cmd/8a/a.h')
-rw-r--r-- | src/cmd/8a/a.h | 215 |
1 files changed, 0 insertions, 215 deletions
diff --git a/src/cmd/8a/a.h b/src/cmd/8a/a.h deleted file mode 100644 index c5c22d7ba..000000000 --- a/src/cmd/8a/a.h +++ /dev/null @@ -1,215 +0,0 @@ -// Inferno utils/8a/a.h -// http://code.google.com/p/inferno-os/source/browse/utils/8a/a.h -// -// Copyright © 1994-1999 Lucent Technologies Inc. All rights reserved. -// Portions Copyright © 1995-1997 C H Forsyth (forsyth@terzarima.net) -// Portions Copyright © 1997-1999 Vita Nuova Limited -// Portions Copyright © 2000-2007 Vita Nuova Holdings Limited (www.vitanuova.com) -// Portions Copyright © 2004,2006 Bruce Ellis -// Portions Copyright © 2005-2007 C H Forsyth (forsyth@terzarima.net) -// Revisions Copyright © 2000-2007 Lucent Technologies Inc. and others -// Portions Copyright © 2009 The Go Authors. All rights reserved. -// -// Permission is hereby granted, free of charge, to any person obtaining a copy -// of this software and associated documentation files (the "Software"), to deal -// in the Software without restriction, including without limitation the rights -// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -// copies of the Software, and to permit persons to whom the Software is -// furnished to do so, subject to the following conditions: -// -// The above copyright notice and this permission notice shall be included in -// all copies or substantial portions of the Software. -// -// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -// THE SOFTWARE. - -#include <bio.h> -#include "../8l/8.out.h" - - -#ifndef EXTERN -#define EXTERN extern -#endif - -#undef getc -#undef ungetc -#undef BUFSIZ - -#define getc ccgetc -#define ungetc ccungetc - -typedef struct Sym Sym; -typedef struct Ref Ref; -typedef struct Gen Gen; -typedef struct Io Io; -typedef struct Hist Hist; -typedef struct Gen2 Gen2; - -#define MAXALIGN 7 -#define FPCHIP 1 -#define NSYMB 500 -#define BUFSIZ 8192 -#define HISTSZ 20 -#ifndef EOF -#define EOF (-1) -#endif -#define IGN (-2) -#define GETC() ((--fi.c < 0)? filbuf(): *fi.p++ & 0xff) -#define NHASH 503 -#define STRINGSZ 200 -#define NMACRO 10 - -struct Sym -{ - Sym* link; - Ref* ref; - char* macro; - int32 value; - ushort type; - char *name; - char sym; -}; -#define S ((Sym*)0) - -struct Ref -{ - int class; -}; - -EXTERN struct -{ - char* p; - int c; -} fi; - -struct Io -{ - Io* link; - char b[BUFSIZ]; - char* p; - short c; - short f; -}; -#define I ((Io*)0) - -EXTERN struct -{ - Sym* sym; - short type; -} h[NSYM]; - -struct Gen -{ - double dval; - char sval[8]; - int32 offset; - int32 offset2; - Sym* sym; - short type; - short index; - short scale; -}; -struct Gen2 -{ - Gen from; - Gen to; -}; - -struct Hist -{ - Hist* link; - char* name; - int32 line; - int32 offset; -}; -#define H ((Hist*)0) - -enum -{ - CLAST, - CMACARG, - CMACRO, - CPREPROC, -}; - - -EXTERN char debug[256]; -EXTERN Sym* hash[NHASH]; -EXTERN char** Dlist; -EXTERN int nDlist; -EXTERN Hist* ehist; -EXTERN int newflag; -EXTERN Hist* hist; -EXTERN char* hunk; -EXTERN char** include; -EXTERN Io* iofree; -EXTERN Io* ionext; -EXTERN Io* iostack; -EXTERN int32 lineno; -EXTERN int nerrors; -EXTERN int32 nhunk; -EXTERN int ninclude; -EXTERN int32 nsymb; -EXTERN Gen nullgen; -EXTERN char* outfile; -EXTERN int pass; -EXTERN char* pathname; -EXTERN int32 pc; -EXTERN int peekc; -EXTERN int32 stmtline; -EXTERN int sym; -EXTERN char* symb; -EXTERN int thechar; -EXTERN char* thestring; -EXTERN int32 thunk; -EXTERN Biobuf obuf; - -void* alloc(int32); -void* allocn(void*, int32, int32); -void ensuresymb(int32); -void errorexit(void); -void pushio(void); -void newio(void); -void newfile(char*, int); -Sym* slookup(char*); -Sym* lookup(void); -void syminit(Sym*); -int32 yylex(void); -int getc(void); -int getnsc(void); -void unget(int); -int escchar(int); -void cinit(void); -void checkscale(int); -void pinit(char*); -void cclean(void); -int isreg(Gen*); -void outcode(int, Gen2*); -void outhist(void); -void zaddr(Gen*, int); -void zname(char*, int, int); -void ieeedtod(Ieee*, double); -int filbuf(void); -Sym* getsym(void); -void domacro(void); -void macund(void); -void macdef(void); -void macexpand(Sym*, char*); -void macinc(void); -void macprag(void); -void maclin(void); -void macif(int); -void macend(void); -void dodefine(char*); -void prfile(int32); -void linehist(char*, int); -void gethunk(void); -void yyerror(char*, ...); -int yyparse(void); -void setinclude(char*); -int assemble(char*); |