From 6dbaf336b6d1b4a7a28ca7bfb744411e091281f8 Mon Sep 17 00:00:00 2001 From: hongzhidao Date: Sun, 28 Jul 2019 02:26:23 -0400 Subject: [PATCH] Moving ctor from njs_vmcode_t to corresponding structure. --- njs/njs_disassembler.c | 6 +++--- njs/njs_generator.c | 6 +++--- njs/njs_vmcode.c | 6 +++--- njs/njs_vmcode.h | 4 +++- 4 files changed, 12 insertions(+), 10 deletions(-) diff --git a/njs/njs_disassembler.c b/njs/njs_disassembler.c index 6ec0cd49..20181e0f 100644 --- a/njs/njs_disassembler.c +++ b/njs/njs_disassembler.c @@ -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; diff --git a/njs/njs_generator.c b/njs/njs_generator.c index 0b30b7d7..045214d4 100644 --- a/njs/njs_generator.c +++ b/njs/njs_generator.c @@ -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; diff --git a/njs/njs_vmcode.c b/njs/njs_vmcode.c index c94648f4..825e0b32 100644 --- a/njs/njs_vmcode.c +++ b/njs/njs_vmcode.c @@ -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); diff --git a/njs/njs_vmcode.h b/njs/njs_vmcode.h index b063a4d1..96c4672c 100644 --- a/njs/njs_vmcode.h +++ b/njs/njs_vmcode.h @@ -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; -- 2.47.3