From 4a27a18807cb8bbaae125e2dad89e62991eef644 Mon Sep 17 00:00:00 2001 From: "Yukihiro \"Matz\" Matsumoto" Date: Sat, 20 Apr 2024 09:54:55 +0900 Subject: [PATCH] dump.c: adjust local variable declarations --- src/dump.c | 94 +++++++++++++++++++----------------------------------- 1 file changed, 33 insertions(+), 61 deletions(-) diff --git a/src/dump.c b/src/dump.c index c1e99c2c6..8be13829e 100644 --- a/src/dump.c +++ b/src/dump.c @@ -97,13 +97,10 @@ dump_float(mrb_state *mrb, uint8_t *buf, mrb_float f) static size_t get_pool_block_size(mrb_state *mrb, const mrb_irep *irep) { - int pool_no; - size_t size = 0; - - size += sizeof(uint16_t); /* plen */ + size_t size = sizeof(uint16_t); /* plen */ size += irep->plen * sizeof(uint8_t); /* len(n) */ - for (pool_no = 0; pool_no < irep->plen; pool_no++) { + for (int pool_no = 0; pool_no < irep->plen; pool_no++) { int ai = mrb_gc_arena_save(mrb); switch (irep->pool[pool_no].tt) { @@ -159,14 +156,13 @@ get_pool_block_size(mrb_state *mrb, const mrb_irep *irep) static ptrdiff_t write_pool_block(mrb_state *mrb, const mrb_irep *irep, uint8_t *buf) { - int pool_no; uint8_t *cur = buf; mrb_int len; const char *ptr; cur += uint16_to_bin(irep->plen, cur); /* number of pool */ - for (pool_no = 0; pool_no < irep->plen; pool_no++) { + for (int pool_no = 0; pool_no < irep->plen; pool_no++) { int ai = mrb_gc_arena_save(mrb); switch (irep->pool[pool_no].tt) { @@ -249,17 +245,14 @@ get_syms_block_size(mrb_state *mrb, const mrb_irep *irep) static ptrdiff_t write_syms_block(mrb_state *mrb, const mrb_irep *irep, uint8_t *buf) { - int sym_no; uint8_t *cur = buf; - const char *name; cur += uint16_to_bin(irep->slen, cur); /* number of symbol */ - for (sym_no = 0; sym_no < irep->slen; sym_no++) { + for (int sym_no = 0; sym_no < irep->slen; sym_no++) { if (irep->syms[sym_no] != 0) { mrb_int len; - - name = mrb_sym_name_len(mrb, irep->syms[sym_no], &len); + const char *name = mrb_sym_name_len(mrb, irep->syms[sym_no], &len); mrb_assert_int_fit(mrb_int, len, uint16_t, UINT16_MAX); cur += uint16_to_bin((uint16_t)len, cur); /* length of symbol name */ @@ -278,9 +271,7 @@ write_syms_block(mrb_state *mrb, const mrb_irep *irep, uint8_t *buf) static size_t get_irep_record_size_1(mrb_state *mrb, const mrb_irep *irep) { - size_t size = 0; - - size += get_irep_header_size(mrb); + size_t size = get_irep_header_size(mrb); size += get_iseq_block_size(mrb, irep); size += get_pool_block_size(mrb, irep); size += get_syms_block_size(mrb, irep); @@ -290,9 +281,8 @@ get_irep_record_size_1(mrb_state *mrb, const mrb_irep *irep) static size_t get_irep_record_size(mrb_state *mrb, const mrb_irep *irep) { - size_t size = 0; + size_t size = get_irep_record_size_1(mrb, irep); - size = get_irep_record_size_1(mrb, irep); for (int irep_no = 0; irep_no < irep->rlen; irep_no++) { size += get_irep_record_size(mrb, irep->reps[irep_no]); } @@ -357,8 +347,6 @@ write_section_irep_header(mrb_state *mrb, size_t section_size, uint8_t *bin) static int write_section_irep(mrb_state *mrb, const mrb_irep *irep, uint8_t *bin, size_t *len_p, uint8_t flags) { - int result; - size_t rsize = 0; uint8_t *cur = bin; if (mrb == NULL || bin == NULL) { @@ -367,7 +355,8 @@ write_section_irep(mrb_state *mrb, const mrb_irep *irep, uint8_t *bin, size_t *l cur += sizeof(struct rite_section_irep_header); - result = write_irep_record(mrb, irep, cur, &rsize, flags); + size_t rsize = 0; + int result = write_irep_record(mrb, irep, cur, &rsize, flags); if (result != MRB_DUMP_OK) { return result; } @@ -381,13 +370,10 @@ write_section_irep(mrb_state *mrb, const mrb_irep *irep, uint8_t *bin, size_t *l static size_t get_debug_record_size(mrb_state *mrb, const mrb_irep *irep) { - size_t ret = 0; - uint16_t f_idx; - - ret += sizeof(uint32_t); /* record size */ + size_t ret = sizeof(uint32_t); /* record size */ ret += sizeof(uint16_t); /* file count */ - for (f_idx = 0; f_idx < irep->debug_info->flen; ++f_idx) { + for (uint16_t f_idx = 0; f_idx < irep->debug_info->flen; ++f_idx) { mrb_irep_debug_info_file const* file = irep->debug_info->files[f_idx]; ret += sizeof(uint32_t); /* position */ @@ -462,7 +448,6 @@ static size_t write_debug_record_1(mrb_state *mrb, const mrb_irep *irep, uint8_t *bin, mrb_sym const* filenames, uint16_t filenames_len) { uint8_t *cur; - ptrdiff_t ret; cur = bin + sizeof(uint32_t); /* skip record size */ cur += uint16_to_bin(irep->debug_info->flen, cur); /* file count */ @@ -508,7 +493,7 @@ write_debug_record_1(mrb_state *mrb, const mrb_irep *irep, uint8_t *bin, mrb_sym } } - ret = cur - bin; + ptrdiff_t ret = cur - bin; mrb_assert_int_fit(ptrdiff_t, ret, uint32_t, UINT32_MAX); uint32_to_bin((uint32_t)ret, bin); @@ -535,18 +520,15 @@ write_debug_record(mrb_state *mrb, const mrb_irep *irep, uint8_t *bin, mrb_sym c static int write_section_debug(mrb_state *mrb, const mrb_irep *irep, uint8_t *cur, mrb_sym const *filenames, uint16_t filenames_len) { - size_t section_size = 0; const uint8_t *bin = cur; - struct rite_section_debug_header *header; - size_t dlen; if (mrb == NULL || cur == NULL) { return MRB_DUMP_INVALID_ARGUMENT; } - header = (struct rite_section_debug_header*)bin; - cur += sizeof(struct rite_section_debug_header); - section_size += sizeof(struct rite_section_debug_header); + struct rite_section_debug_header *header = (struct rite_section_debug_header*)bin; + size_t section_size = sizeof(struct rite_section_debug_header); + cur += section_size; /* filename table */ cur += uint16_to_bin(filenames_len, cur); @@ -564,7 +546,7 @@ write_section_debug(mrb_state *mrb, const mrb_irep *irep, uint8_t *cur, mrb_sym } /* debug records */ - dlen = write_debug_record(mrb, irep, cur, filenames, filenames_len); + size_t dlen = write_debug_record(mrb, irep, cur, filenames, filenames_len); section_size += dlen; memcpy(header->section_ident, RITE_SECTION_DEBUG_IDENT, sizeof(header->section_ident)); @@ -600,13 +582,12 @@ static int write_lv_sym_table(mrb_state *mrb, uint8_t **start, mrb_sym const *syms, uint32_t syms_len) { uint8_t *cur = *start; - const char *str; - mrb_int str_len; cur += uint32_to_bin(syms_len, cur); for (uint32_t i = 0; i < syms_len; i++) { - str = mrb_sym_name_len(mrb, syms[i], &str_len); + mrb_int str_len; + const char *str = mrb_sym_name_len(mrb, syms[i], &str_len); cur += uint16_to_bin((uint16_t)str_len, cur); memcpy(cur, str, str_len); cur += str_len; @@ -675,34 +656,30 @@ static int write_section_lv(mrb_state *mrb, const mrb_irep *irep, uint8_t *start, mrb_sym const *syms, uint32_t const syms_len) { uint8_t *cur = start; - struct rite_section_lv_header *header; - ptrdiff_t diff; - int result = MRB_DUMP_OK; if (mrb == NULL || cur == NULL) { return MRB_DUMP_INVALID_ARGUMENT; } - header = (struct rite_section_lv_header*)cur; + struct rite_section_lv_header *header = (struct rite_section_lv_header*)cur; cur += sizeof(struct rite_section_lv_header); - result = write_lv_sym_table(mrb, &cur, syms, syms_len); + int result = write_lv_sym_table(mrb, &cur, syms, syms_len); if (result != MRB_DUMP_OK) { - goto lv_section_exit; + return result; } result = write_lv_record(mrb, irep, &cur, syms, syms_len); if (result != MRB_DUMP_OK) { - goto lv_section_exit; + return result; } memcpy(header->section_ident, RITE_SECTION_LV_IDENT, sizeof(header->section_ident)); - diff = cur - start; + ptrdiff_t diff = cur - start; mrb_assert_int_fit(ptrdiff_t, diff, size_t, SIZE_MAX); uint32_to_bin((uint32_t)diff, header->section_size); -lv_section_exit: return result; } @@ -726,7 +703,7 @@ static mrb_bool debug_info_defined_p(const mrb_irep *irep) { if (!irep->debug_info) return FALSE; - for (int i=0; irlen; i++) { + for (int i = 0; i < irep->rlen; i++) { if (!debug_info_defined_p(irep->reps[i])) return FALSE; } return TRUE; @@ -747,9 +724,6 @@ lv_defined_p(const mrb_irep *irep) int mrb_dump_irep(mrb_state *mrb, const mrb_irep *irep, uint8_t flags, uint8_t **bin, size_t *bin_size) { - int result = MRB_DUMP_GENERAL_FAILURE; - size_t malloc_size; - size_t section_irep_size; size_t section_lineno_size = 0, section_lv_size = 0; uint8_t *cur = NULL; mrb_bool const debug_info_defined = debug_info_defined_p(irep), lv_defined = lv_defined_p(irep); @@ -761,7 +735,7 @@ mrb_dump_irep(mrb_state *mrb, const mrb_irep *irep, uint8_t flags, uint8_t **bin return MRB_DUMP_GENERAL_FAILURE; } - section_irep_size = sizeof(struct rite_section_irep_header); + size_t section_irep_size = sizeof(struct rite_section_irep_header); section_irep_size += get_irep_record_size(mrb, irep); /* DEBUG section size */ @@ -785,13 +759,13 @@ mrb_dump_irep(mrb_state *mrb, const mrb_irep *irep, uint8_t flags, uint8_t **bin section_lv_size += get_lv_section_size(mrb, irep, lv_syms, lv_syms_len); } - malloc_size = sizeof(struct rite_binary_header) + - section_irep_size + section_lineno_size + section_lv_size + - sizeof(struct rite_binary_footer); + size_t malloc_size = sizeof(struct rite_binary_header) + + section_irep_size + section_lineno_size + section_lv_size + + sizeof(struct rite_binary_footer); cur = *bin = (uint8_t*)mrb_malloc(mrb, malloc_size); cur += sizeof(struct rite_binary_header); - result = write_section_irep(mrb, irep, cur, §ion_irep_size, flags); + int result = write_section_irep(mrb, irep, cur, §ion_irep_size, flags); if (result != MRB_DUMP_OK) { goto error_exit; } @@ -838,14 +812,13 @@ int mrb_dump_irep_binary(mrb_state *mrb, const mrb_irep *irep, uint8_t flags, FILE* fp) { uint8_t *bin = NULL; - size_t bin_size = 0; - int result; if (fp == NULL) { return MRB_DUMP_INVALID_ARGUMENT; } - result = mrb_dump_irep(mrb, irep, flags, &bin, &bin_size); + size_t bin_size; + int result = mrb_dump_irep(mrb, irep, flags, &bin, &bin_size); if (result == MRB_DUMP_OK) { if (fwrite(bin, sizeof(bin[0]), bin_size, fp) != bin_size) { result = MRB_DUMP_WRITE_FAULT; @@ -860,13 +833,12 @@ int mrb_dump_irep_cfunc(mrb_state *mrb, const mrb_irep *irep, uint8_t flags, FILE *fp, const char *initname) { uint8_t *bin = NULL; - size_t bin_size = 0, bin_idx = 0; - int result; if (fp == NULL || initname == NULL || initname[0] == '\0') { return MRB_DUMP_INVALID_ARGUMENT; } - result = mrb_dump_irep(mrb, irep, flags, &bin, &bin_size); + size_t bin_size, bin_idx = 0; + int result = mrb_dump_irep(mrb, irep, flags, &bin, &bin_size); if (result == MRB_DUMP_OK) { if (fprintf(fp, "#include \n") < 0) { /* for uint8_t under at least Darwin */ mrb_free(mrb, bin);