Fix issues reported by Coverity static analysis (#1974)

This commit is contained in:
Wenyong Huang 2023-02-22 11:10:21 +08:00 committed by GitHub
parent bb5629811f
commit 0fa0813a5a
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
5 changed files with 21 additions and 7 deletions

View File

@ -1657,8 +1657,6 @@ wasm_val_to_rt_val(WASMModuleInstanceCommon *inst_comm_rt, uint8 val_type_rt,
ret =
wasm_externref_obj2ref(inst_comm_rt, v->of.ref, (uint32 *)data);
break;
#else
(void)inst_comm_rt;
#endif
default:
LOG_WARNING("unexpected value type %d", val_type_rt);
@ -1666,6 +1664,7 @@ wasm_val_to_rt_val(WASMModuleInstanceCommon *inst_comm_rt, uint8 val_type_rt,
break;
}
(void)inst_comm_rt;
return ret;
}

View File

@ -560,6 +560,7 @@ address_of_const(JitCompContext *cc, JitReg reg, unsigned size)
unsigned no = jit_reg_no(reg);
unsigned idx = no & ~_JIT_REG_CONST_IDX_FLAG;
bh_assert(kind < JIT_REG_KIND_L32);
bh_assert(jit_reg_is_const_idx(reg) && idx < cc->_const_val._num[kind]);
return cc->_const_val._value[kind] + size * idx;
@ -572,6 +573,7 @@ next_of_const(JitCompContext *cc, JitReg reg)
unsigned no = jit_reg_no(reg);
unsigned idx = no & ~_JIT_REG_CONST_IDX_FLAG;
bh_assert(kind < JIT_REG_KIND_L32);
bh_assert(jit_reg_is_const_idx(reg) && idx < cc->_const_val._num[kind]);
return cc->_const_val._next[kind][idx];

View File

@ -1688,6 +1688,7 @@ jit_cc_is_hreg(JitCompContext *cc, JitReg reg)
unsigned kind = jit_reg_kind(reg);
unsigned no = jit_reg_no(reg);
bh_assert(jit_reg_is_variable(reg));
bh_assert(kind < JIT_REG_KIND_L32);
return no < cc->hreg_info->info[kind].num;
}
@ -1705,6 +1706,7 @@ jit_cc_is_hreg_fixed(JitCompContext *cc, JitReg reg)
unsigned kind = jit_reg_kind(reg);
unsigned no = jit_reg_no(reg);
bh_assert(jit_cc_is_hreg(cc, reg));
bh_assert(kind < JIT_REG_KIND_L32);
return !!cc->hreg_info->info[kind].fixed[no];
}
@ -1722,6 +1724,7 @@ jit_cc_is_hreg_caller_saved_native(JitCompContext *cc, JitReg reg)
unsigned kind = jit_reg_kind(reg);
unsigned no = jit_reg_no(reg);
bh_assert(jit_cc_is_hreg(cc, reg));
bh_assert(kind < JIT_REG_KIND_L32);
return !!cc->hreg_info->info[kind].caller_saved_native[no];
}
@ -1739,6 +1742,7 @@ jit_cc_is_hreg_caller_saved_jitted(JitCompContext *cc, JitReg reg)
unsigned kind = jit_reg_kind(reg);
unsigned no = jit_reg_no(reg);
bh_assert(jit_cc_is_hreg(cc, reg));
bh_assert(kind < JIT_REG_KIND_L32);
return !!cc->hreg_info->info[kind].caller_saved_jitted[no];
}

View File

@ -156,6 +156,7 @@ rc_get_vr(RegallocContext *rc, JitReg vreg)
unsigned no = jit_reg_no(vreg);
bh_assert(jit_reg_is_variable(vreg));
bh_assert(kind < JIT_REG_KIND_L32);
return &rc->vregs[kind][no];
}
@ -175,6 +176,7 @@ rc_get_hr(RegallocContext *rc, JitReg hreg)
unsigned no = jit_reg_no(hreg);
bh_assert(jit_reg_is_variable(hreg) && jit_cc_is_hreg(rc->cc, hreg));
bh_assert(kind < JIT_REG_KIND_L32);
return &rc->hregs[kind][no];
}
@ -208,7 +210,9 @@ static unsigned
get_reg_stride(JitReg reg)
{
static const uint8 strides[] = { 0, 1, 2, 1, 2, 2, 4, 8, 0 };
return strides[jit_reg_kind(reg)];
uint32 kind = jit_reg_kind(reg);
bh_assert(kind <= JIT_REG_KIND_L32);
return strides[kind];
}
/**
@ -582,13 +586,17 @@ static JitReg
allocate_hreg(RegallocContext *rc, JitReg vreg, JitInsn *insn, int distance)
{
const int kind = jit_reg_kind(vreg);
const HardReg *hregs = rc->hregs[kind];
const unsigned hreg_num = jit_cc_hreg_num(rc->cc, kind);
const HardReg *hregs;
unsigned hreg_num;
JitReg hreg, vreg_to_reload = 0;
int min_distance = distance, vr_distance;
VirtualReg *vr = rc_get_vr(rc, vreg);
unsigned i;
bh_assert(kind < JIT_REG_KIND_L32);
hregs = rc->hregs[kind];
hreg_num = jit_cc_hreg_num(rc->cc, kind);
if (hreg_num == 0)
/* Unsupported hard register kind. */
{

View File

@ -61,8 +61,9 @@ os_thread_create_with_prio(korp_tid *tid, thread_start_routine_t start,
pthread_attr_init(&tattr);
pthread_attr_setdetachstate(&tattr, PTHREAD_CREATE_JOINABLE);
if (pthread_attr_setstacksize(&tattr, stack_size) != 0) {
os_printf("Invalid thread stack size %u. Min stack size on Linux = %u",
stack_size, PTHREAD_STACK_MIN);
os_printf("Invalid thread stack size %u. "
"Min stack size on Linux = %u\n",
stack_size, (unsigned int)PTHREAD_STACK_MIN);
pthread_attr_destroy(&tattr);
return BHT_ERROR;
}