1993-03-21 12:45:37 +03:00
|
|
|
|
|
|
|
/********************************************
|
|
|
|
sizes.h
|
1993-07-03 03:56:52 +04:00
|
|
|
copyright 1991, 1992. Michael D. Brennan
|
1993-03-21 12:45:37 +03:00
|
|
|
|
|
|
|
This is a source file for mawk, an implementation of
|
|
|
|
the AWK programming language.
|
|
|
|
|
|
|
|
Mawk is distributed without warranty under the terms of
|
|
|
|
the GNU General Public License, version 2, 1991.
|
|
|
|
********************************************/
|
|
|
|
|
|
|
|
/* $Log: sizes.h,v $
|
1993-07-03 03:56:52 +04:00
|
|
|
/* Revision 1.2 1993/07/02 23:57:56 jtc
|
|
|
|
/* Updated to mawk 1.1.4
|
1993-03-21 12:45:37 +03:00
|
|
|
/*
|
1993-07-03 03:56:52 +04:00
|
|
|
* Revision 5.3 1992/12/17 02:48:01 mike
|
|
|
|
* 1.1.2d changes for DOS
|
|
|
|
*
|
|
|
|
* Revision 5.2 1992/08/27 03:20:08 mike
|
|
|
|
* patch2: increase A_HASH_PRIME
|
|
|
|
*
|
|
|
|
* Revision 5.1 1991/12/05 07:59:35 brennan
|
1993-03-21 12:45:37 +03:00
|
|
|
* 1.1 pre-release
|
1993-07-03 03:56:52 +04:00
|
|
|
*
|
1993-03-21 12:45:37 +03:00
|
|
|
*/
|
|
|
|
|
|
|
|
/* sizes.h */
|
|
|
|
|
|
|
|
#ifndef SIZES_H
|
|
|
|
#define SIZES_H
|
|
|
|
|
|
|
|
#if ! HAVE_SMALL_MEMORY
|
1993-07-03 03:56:52 +04:00
|
|
|
#define EVAL_STACK_SIZE 256 /* initial size , can grow */
|
1993-03-21 12:45:37 +03:00
|
|
|
/* number of fields at startup, must be a power of 2
|
|
|
|
and FBANK_SZ-1 must be divisible by 3! */
|
|
|
|
#define FBANK_SZ 256
|
|
|
|
#define FB_SHIFT 8 /* lg(FBANK_SZ) */
|
|
|
|
#define NUM_FBANK 128 /* see MAX_FIELD below */
|
|
|
|
|
|
|
|
#else /* have to be frugal with memory */
|
|
|
|
|
|
|
|
#define EVAL_STACK_SIZE 64
|
|
|
|
#define FBANK_SZ 64
|
|
|
|
#define FB_SHIFT 6 /* lg(FBANK_SZ) */
|
|
|
|
#define NUM_FBANK 16 /* see MAX_FIELD below */
|
|
|
|
|
|
|
|
#endif
|
|
|
|
|
|
|
|
#define MAX_SPLIT (FBANK_SZ-1) /* needs to be divisble by 3*/
|
|
|
|
#define MAX_FIELD (NUM_FBANK*FBANK_SZ - 1)
|
|
|
|
|
|
|
|
#define MIN_SPRINTF 400
|
|
|
|
|
|
|
|
|
|
|
|
#define BUFFSZ 4096
|
|
|
|
/* starting buffer size for input files, grows if
|
|
|
|
necessary */
|
|
|
|
|
1993-07-03 03:56:52 +04:00
|
|
|
#if LM_DOS
|
|
|
|
/* trade some space for IO speed */
|
|
|
|
#undef BUFFSZ
|
|
|
|
#define BUFFSZ 8192
|
|
|
|
/* maximum input buffers that will fit in 64K */
|
|
|
|
#define MAX_BUFFS ((int)(0x10000L/BUFFSZ) - 1)
|
|
|
|
#endif
|
|
|
|
|
1993-03-21 12:45:37 +03:00
|
|
|
#define HASH_PRIME 53
|
1993-07-03 03:56:52 +04:00
|
|
|
|
|
|
|
#if ! HAVE_SMALL_MEMORY
|
|
|
|
#define A_HASH_PRIME 199
|
|
|
|
#else
|
|
|
|
#define A_HASH_PRIME 37
|
|
|
|
#endif
|
1993-03-21 12:45:37 +03:00
|
|
|
|
|
|
|
|
|
|
|
#define MAX_COMPILE_ERRORS 5 /* quit if more than 4 errors */
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/* AWF showed the need for this */
|
|
|
|
#define MAIN_PAGE_SZ 4096 /* max instr in main block */
|
|
|
|
#if 0
|
|
|
|
#define PAGE_SZ 1024 /* max instructions for other blocks */
|
|
|
|
#endif
|
|
|
|
/* these used to be different */
|
|
|
|
#define PAGE_SZ 4096
|
|
|
|
|
|
|
|
#endif /* SIZES_H */
|