]> git.kaiwu.me - njs.git/commitdiff
Moving ctor from njs_vmcode_t to corresponding structure.
authorhongzhidao <hongzhidao@gmail.com>
Sun, 28 Jul 2019 06:26:23 +0000 (02:26 -0400)
committerhongzhidao <hongzhidao@gmail.com>
Sun, 28 Jul 2019 06:26:23 +0000 (02:26 -0400)
njs/njs_disassembler.c
njs/njs_generator.c
njs/njs_vmcode.c
njs/njs_vmcode.h

index 6ec0cd4904e3e9290d2f4e06da484426467397fe..20181e0f804bdfad4c095e074785d497e52ecc89 100644 (file)
@@ -196,7 +196,7 @@ njs_disassemble(u_char *start, u_char *end)
 
             nxt_printf("%05uz ARRAY             %04Xz %uz%s\n",
                        p - start, (size_t) array->retval,
-                       (size_t) array->length, array->code.ctor ? " INIT" : "");
+                       (size_t) array->length, array->ctor ? " INIT" : "");
 
             p += sizeof(njs_vmcode_array_t);
 
@@ -282,7 +282,7 @@ njs_disassemble(u_char *start, u_char *end)
 
             nxt_printf("%05uz FUNCTION FRAME    %04Xz %uz%s\n",
                        p - start, (size_t) function->name, function->nargs,
-                       function->code.ctor ? " CTOR" : "");
+                       function->ctor ? " CTOR" : "");
 
             p += sizeof(njs_vmcode_function_frame_t);
 
@@ -295,7 +295,7 @@ njs_disassemble(u_char *start, u_char *end)
             nxt_printf("%05uz METHOD FRAME      %04Xz %04Xz %uz%s\n",
                        p - start, (size_t) method->object,
                        (size_t) method->method, method->nargs,
-                       method->code.ctor ? " CTOR" : "");
+                       method->ctor ? " CTOR" : "");
 
             p += sizeof(njs_vmcode_method_frame_t);
             continue;
index 0b30b7d7a39417501d42e009dd856fdaf1c0743d..045214d4a648e451fbffa2e745a84cd714204b27 100644 (file)
@@ -1907,7 +1907,7 @@ njs_generate_array(njs_vm_t *vm, njs_generator_t *generator,
 
     njs_generate_code(generator, njs_vmcode_array_t, array,
                       NJS_VMCODE_ARRAY, 1, 1);
-    array->code.ctor = node->ctor;
+    array->ctor = node->ctor;
     array->retval = node->index;
     array->length = node->u.length;
 
@@ -2605,7 +2605,7 @@ njs_generate_function_call(njs_vm_t *vm, njs_generator_t *generator,
     njs_generate_code(generator, njs_vmcode_function_frame_t, func,
                       NJS_VMCODE_FUNCTION_FRAME, 2, 0);
     func_offset = njs_code_offset(generator, func);
-    func->code.ctor = node->ctor;
+    func->ctor = node->ctor;
     func->name = name->index;
 
     ret = njs_generate_call(vm, generator, node);
@@ -2649,7 +2649,7 @@ njs_generate_method_call(njs_vm_t *vm, njs_generator_t *generator,
     njs_generate_code(generator, njs_vmcode_method_frame_t, method,
                       NJS_VMCODE_METHOD_FRAME, 3, 0);
     method_offset = njs_code_offset(generator, method);
-    method->code.ctor = node->ctor;
+    method->ctor = node->ctor;
     method->object = prop->left->index;
     method->method = prop->right->index;
 
index c94648f498ffdb15b4e655b839b3a205ce813719..825e0b32c467e6e5d36090b1e615d3c3295c3558 100644 (file)
@@ -681,7 +681,7 @@ next:
                 ret = njs_function_frame_create(vm, value1,
                                                 &njs_value_undefined,
                                                 (uintptr_t) value2,
-                                                function_frame->code.ctor);
+                                                function_frame->ctor);
 
                 if (nxt_slow_path(ret != NXT_OK)) {
                     goto error;
@@ -901,7 +901,7 @@ njs_vmcode_array(njs_vm_t *vm, u_char *pc)
 
     if (nxt_fast_path(array != NULL)) {
 
-        if (code->code.ctor) {
+        if (code->ctor) {
             /* Array of the form [,,,], [1,,]. */
             value = array->start;
             length = array->length;
@@ -1808,7 +1808,7 @@ njs_vmcode_method_frame(njs_vm_t *vm, njs_value_t *object, njs_value_t *name,
     }
 
     ret = njs_function_frame_create(vm, value, object, method->nargs,
-                                    method->code.ctor);
+                                    method->ctor);
 
     if (nxt_fast_path(ret == NXT_OK)) {
         return sizeof(njs_vmcode_method_frame_t);
index b063a4d1c85546c67eecaa01aff27800183f6bdb..96c4672c5d385c0f964be18b356103390d85807a 100644 (file)
@@ -120,7 +120,6 @@ typedef struct {
     njs_vmcode_operation_t     operation;
     uint8_t                    operands;   /* 2 bits */
     uint8_t                    retval;     /* 1 bit  */
-    uint8_t                    ctor;       /* 1 bit  */
 } njs_vmcode_t;
 
 
@@ -182,6 +181,7 @@ typedef struct {
     njs_vmcode_t               code;
     njs_index_t                retval;
     uintptr_t                  length;
+    uint8_t                    ctor;       /* 1 bit  */
 } njs_vmcode_array_t;
 
 
@@ -286,6 +286,7 @@ typedef struct {
     njs_vmcode_t               code;
     njs_index_t                nargs;
     njs_index_t                name;
+    uint8_t                    ctor;       /* 1 bit  */
 } njs_vmcode_function_frame_t;
 
 
@@ -294,6 +295,7 @@ typedef struct {
     njs_index_t                nargs;
     njs_index_t                object;
     njs_index_t                method;
+    uint8_t                    ctor;       /* 1 bit  */
 } njs_vmcode_method_frame_t;