diff options
author | escoffon <escoffon> | 1998-06-10 12:32:36 (GMT) |
---|---|---|
committer | escoffon <escoffon> | 1998-06-10 12:32:36 (GMT) |
commit | 0c5942c4533ba53f9a91fc95bf9309ea2e1b2603 (patch) | |
tree | 92d719e43ececb3575fd0cc33b1583b9dfd30e18 /generic/tclCompile.h | |
parent | 36dcbab765eba736c60ae35a104bb19d759d63e2 (diff) | |
download | tcl-0c5942c4533ba53f9a91fc95bf9309ea2e1b2603.zip tcl-0c5942c4533ba53f9a91fc95bf9309ea2e1b2603.tar.gz tcl-0c5942c4533ba53f9a91fc95bf9309ea2e1b2603.tar.bz2 |
- Added the flags field in a ByteCode struct, and added one flag:
TCL_BYTECODE_PRECOMPILED to mark ByteCodes generated from .tbc files
- Added the TclGetInstructionTable procedure
Diffstat (limited to 'generic/tclCompile.h')
-rw-r--r-- | generic/tclCompile.h | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/generic/tclCompile.h b/generic/tclCompile.h index 6dc3f03..c9b01bc 100644 --- a/generic/tclCompile.h +++ b/generic/tclCompile.h @@ -309,6 +309,12 @@ typedef struct CompileEnv { * CmdLocation map, and the compilation AuxData array. */ +/* + * A PRECOMPILED bytecode struct is one that was generated from a compiled + * image rather than implicitly compiled from source + */ +#define TCL_BYTECODE_PRECOMPILED 0x0001 + typedef struct ByteCode { Interp *iPtr; /* Interpreter containing the code being * compiled. Commands and their compile @@ -323,6 +329,9 @@ typedef struct ByteCode { * plus 1 for each execution of the code * currently active. This structure can be * freed when refCount becomes zero. */ + unsigned int flags; /* flags describing state for the codebyte. + * this variable holds ORed values from the + * TCL_BYTECODE_ masks defined above */ char *source; /* The source string from which this * ByteCode was compiled. Note that this * pointer is not owned by the ByteCode and @@ -758,6 +767,7 @@ EXTERN void TclEmitForwardJump _ANSI_ARGS_((CompileEnv *envPtr, EXTERN ExceptionRange * TclGetExceptionRangeForPc _ANSI_ARGS_(( unsigned char *pc, int catchOnly, ByteCode* codePtr)); +EXTERN InstructionDesc * TclGetInstructionTable _ANSI_ARGS_(()); EXTERN int TclExecuteByteCode _ANSI_ARGS_((Tcl_Interp *interp, ByteCode *codePtr)); EXTERN void TclExpandCodeArray _ANSI_ARGS_(( |