diff options
author | Norbert Preining <norbert@preining.info> | 2019-09-02 13:46:59 +0900 |
---|---|---|
committer | Norbert Preining <norbert@preining.info> | 2019-09-02 13:46:59 +0900 |
commit | e0c6872cf40896c7be36b11dcc744620f10adf1d (patch) | |
tree | 60335e10d2f4354b0674ec22d7b53f0f8abee672 /web/yacco2/library/gbl_defs.w |
Initial commit
Diffstat (limited to 'web/yacco2/library/gbl_defs.w')
-rw-r--r-- | web/yacco2/library/gbl_defs.w | 58 |
1 files changed, 58 insertions, 0 deletions
diff --git a/web/yacco2/library/gbl_defs.w b/web/yacco2/library/gbl_defs.w new file mode 100644 index 0000000000..5f4433e49f --- /dev/null +++ b/web/yacco2/library/gbl_defs.w @@ -0,0 +1,58 @@ +@q file: gbl_defs.w@> +@q% Copyright Dave Bone 1998 - 2015@> +@q% /*@> +@q% This Source Code Form is subject to the terms of the Mozilla Public@> +@q% License, v. 2.0. If a copy of the MPL was not distributed with this@> +@q% file, You can obtain one at http://mozilla.org/MPL/2.0/.@> +@q% */@> +@** Global macro definitions. +These are references throughout all Yacco2's |cweb| files. +One definition to watch for is |SIZE_CAbs_lr1_sym|. It attempts +to optimize the allocation of raw characters. +Due to some of |CAbs_lr1_sym| items --- the boolean and short ints, +there are slack bytes +generated when alignment for 64 bit support takes place for pointers +on 8 byte boundries. +|SIZE_RC_MALLOC| is used to eliminate dflt ctor of |CAbs_lr1_sym|. +@d START_OF_LRK_ENUMERATE 0 +@d END_OF_LRK_ENUMERATE 7 +@d START_OF_RC_ENUMERATE END_OF_LRK_ENUMERATE+1 +@d END_OF_RC_ENUMERATE START_OF_RC_ENUMERATE+256-1 +@d START_OF_ERROR_ENUMERATE END_OF_RC_ENUMERATE+1 +@d SEQ_SRCH_VS_BIN_SRCH_LIMIT 71 +@d MAX_UINT (0xffffffff) //1024*1024*1024*4 - 1 +@d MAX_USINT 256*256 - 1 +@d MAX_LR_STK_ITEMS 256 +@d C_MAX_LR_STK_ITEMS MAX_LR_STK_ITEMS+1 +@d BITS_PER_WORD 32 +@d BITS_PER_WORD_REL_0 BITS_PER_WORD - 1 +@d MAX_NO_THDS 1024 +@d START_OF_RC_ENUM 8 +@d SIZE_CAbs_lr1_sym 56 // 32 bit: 24..28 bytes, 64 bit: 56 +@d NO_CAbs_lr1_sym_ENTRIES 1024*1024 +@d SIZE_RC_MALLOC NO_CAbs_lr1_sym_ENTRIES*SIZE_CAbs_lr1_sym +@d ASCII_8_BIT 256 +@d START_LINE_NO 1 +@d START_CHAR_POS 0 +@d LINE_FEED 10 +@d EOF_CHAR_SUB 256 +@d YES true +@d NO false +@d ON true +@d OFF false +@d BUFFER_SIZE 1024*4 +@d BIG_BUFFER_32K 1024*32 +@d SMALL_BUFFER_4K 1024*4 +@d THREAD_WORKING 0 +@d THREAD_WAITING_FOR_WORK 1 +@d ALL_THREADS_BUSY 2 +@d NO_THREAD_AT_ALL 3 +@d THREAD_TO_EXIT 4 +@d EVENT_RECEIVED 0 +@d WAIT_FOR_EVENT 1 +@d Token_start_pos 0 // rel 0 for now +@d No_Token_start_pos Token_start_pos - 1 // rel 0 for now +@d CALLED_AS_THREAD true +@d CALLED_AS_PROC false +@d ACCEPT_FILTER true +@d BYPASS_FILTER false |