comparison src/bytecode.c @ 420:41dbb7a9d5f2 r21-2-18

Import from CVS: tag r21-2-18
author cvs
date Mon, 13 Aug 2007 11:24:09 +0200
parents da8ed4261e83
children 11054d720c21
comparison
equal deleted inserted replaced
419:66615b78f1a5 420:41dbb7a9d5f2
54 #include "buffer.h" 54 #include "buffer.h"
55 #include "bytecode.h" 55 #include "bytecode.h"
56 #include "opaque.h" 56 #include "opaque.h"
57 #include "syntax.h" 57 #include "syntax.h"
58 58
59 #include <stddef.h>
60 #include <limits.h> 59 #include <limits.h>
61 60
62 EXFUN (Ffetch_bytecode, 1); 61 EXFUN (Ffetch_bytecode, 1);
63 62
64 Lisp_Object Qbyte_code, Qcompiled_functionp, Qinvalid_byte_code; 63 Lisp_Object Qbyte_code, Qcompiled_functionp, Qinvalid_byte_code;
2022 f->flags.domainp, 2021 f->flags.domainp,
2023 internal_hash (f->instructions, depth + 1), 2022 internal_hash (f->instructions, depth + 1),
2024 internal_hash (f->constants, depth + 1)); 2023 internal_hash (f->constants, depth + 1));
2025 } 2024 }
2026 2025
2026 static const struct lrecord_description compiled_function_description[] = {
2027 { XD_LISP_OBJECT, offsetof(struct Lisp_Compiled_Function, instructions), 4 },
2028 #ifdef COMPILED_FUNCTION_ANNOTATION_HACK
2029 { XD_LISP_OBJECT, offsetof(struct Lisp_Compiled_Function, annotated), 1 },
2030 #endif
2031 { XD_END }
2032 };
2033
2027 DEFINE_BASIC_LRECORD_IMPLEMENTATION ("compiled-function", compiled_function, 2034 DEFINE_BASIC_LRECORD_IMPLEMENTATION ("compiled-function", compiled_function,
2028 mark_compiled_function, 2035 mark_compiled_function,
2029 print_compiled_function, 0, 2036 print_compiled_function, 0,
2030 compiled_function_equal, 2037 compiled_function_equal,
2031 compiled_function_hash, 2038 compiled_function_hash,
2039 compiled_function_description,
2032 Lisp_Compiled_Function); 2040 Lisp_Compiled_Function);
2033 2041
2034 DEFUN ("compiled-function-p", Fcompiled_function_p, 1, 1, 0, /* 2042 DEFUN ("compiled-function-p", Fcompiled_function_p, 1, 1, 0, /*
2035 Return t if OBJECT is a byte-compiled function object. 2043 Return t if OBJECT is a byte-compiled function object.
2036 */ 2044 */