Mercurial > hg > xemacs-beta
comparison src/bytecode.h @ 5140:e5380fdaf8f1
merge
| author | Ben Wing <ben@xemacs.org> |
|---|---|
| date | Sat, 13 Mar 2010 05:38:34 -0600 |
| parents | a9c41067dd88 |
| children | 308d34e9f07d |
comparison
equal
deleted
inserted
replaced
| 5139:a48ef26d87ee | 5140:e5380fdaf8f1 |
|---|---|
| 32 #define INCLUDED_bytecode_h_ | 32 #define INCLUDED_bytecode_h_ |
| 33 | 33 |
| 34 #ifdef NEW_GC | 34 #ifdef NEW_GC |
| 35 struct compiled_function_args | 35 struct compiled_function_args |
| 36 { | 36 { |
| 37 struct lrecord_header header; | 37 NORMAL_LISP_OBJECT_HEADER header; |
| 38 long size; | 38 long size; |
| 39 Lisp_Object args[1]; | 39 Lisp_Object args[1]; |
| 40 }; | 40 }; |
| 41 | 41 |
| 42 typedef struct compiled_function_args Lisp_Compiled_Function_Args; | 42 typedef struct compiled_function_args Lisp_Compiled_Function_Args; |
| 43 | 43 |
| 44 DECLARE_LRECORD (compiled_function_args, Lisp_Compiled_Function_Args); | 44 DECLARE_LISP_OBJECT (compiled_function_args, Lisp_Compiled_Function_Args); |
| 45 | 45 |
| 46 #define XCOMPILED_FUNCTION_ARGS(x) \ | 46 #define XCOMPILED_FUNCTION_ARGS(x) \ |
| 47 XRECORD (x, compiled_function_args, Lisp_Compiled_Function_Args) | 47 XRECORD (x, compiled_function_args, Lisp_Compiled_Function_Args) |
| 48 #define wrap_compiled_function_args(p) wrap_record (p, compiled_function_args) | 48 #define wrap_compiled_function_args(p) wrap_record (p, compiled_function_args) |
| 49 #define COMPILED_FUNCTION_ARGS_P(x) RECORDP (x, compiled_function_args) | 49 #define COMPILED_FUNCTION_ARGS_P(x) RECORDP (x, compiled_function_args) |
| 81 #define BYTE_CODE_METER | 81 #define BYTE_CODE_METER |
| 82 #endif | 82 #endif |
| 83 | 83 |
| 84 struct Lisp_Compiled_Function | 84 struct Lisp_Compiled_Function |
| 85 { | 85 { |
| 86 struct lrecord_header lheader; | 86 FROB_BLOCK_LISP_OBJECT_HEADER lheader; |
| 87 unsigned short stack_depth; | 87 unsigned short stack_depth; |
| 88 unsigned short specpdl_depth; | 88 unsigned short specpdl_depth; |
| 89 struct | 89 struct |
| 90 { | 90 { |
| 91 unsigned int documentationp: 1; | 91 unsigned int documentationp: 1; |
| 146 Elemcount program_length, | 146 Elemcount program_length, |
| 147 #endif | 147 #endif |
| 148 int stack_depth, | 148 int stack_depth, |
| 149 Lisp_Object *constants_data); | 149 Lisp_Object *constants_data); |
| 150 | 150 |
| 151 DECLARE_LRECORD (compiled_function, Lisp_Compiled_Function); | 151 DECLARE_LISP_OBJECT (compiled_function, Lisp_Compiled_Function); |
| 152 #define XCOMPILED_FUNCTION(x) XRECORD (x, compiled_function, \ | 152 #define XCOMPILED_FUNCTION(x) XRECORD (x, compiled_function, \ |
| 153 Lisp_Compiled_Function) | 153 Lisp_Compiled_Function) |
| 154 #define wrap_compiled_function(p) wrap_record (p, compiled_function) | 154 #define wrap_compiled_function(p) wrap_record (p, compiled_function) |
| 155 #define COMPILED_FUNCTIONP(x) RECORDP (x, compiled_function) | 155 #define COMPILED_FUNCTIONP(x) RECORDP (x, compiled_function) |
| 156 #define CHECK_COMPILED_FUNCTION(x) CHECK_RECORD (x, compiled_function) | 156 #define CHECK_COMPILED_FUNCTION(x) CHECK_RECORD (x, compiled_function) |
