On 5/12/15 00:55, Richard Henderson wrote: > On 05/10/2015 03:45 PM, Chen Gang wrote: >>> +static void gen_cmpltsi(struct DisasContext *dc, >>> + uint8_t rdst, uint8_t rsrc, int8_t imm8) >>> +{ >>> + qemu_log_mask(CPU_LOG_TB_IN_ASM, "cmpltsi r%d, r%d, %d\n", >>> + rdst, rsrc, imm8); >>> + tcg_gen_setcondi_i64(TCG_COND_LTU, dest_gr(dc, rdst), load_gr(dc, >>> rsrc), >>> + (int64_t)imm8);
It is another bug (which the root cause to lead current _init_malloc to assert). Need use TCG_COND_LT instead of TCG_COND_LTU. >>> +} >>> + >>> +static void gen_cmpltui(struct DisasContext *dc, >>> + uint8_t rdst, uint8_t rsrc, uint8_t imm8) Need to be int8_t for imm8. >>> +{ >>> + qemu_log_mask(CPU_LOG_TB_IN_ASM, "cmpltui r%d, r%d, %d\n", >>> + rdst, rsrc, imm8); >>> + tcg_gen_setcondi_i64(TCG_COND_LTU, >>> + dest_gr(dc, rdst), load_gr(dc, rsrc), imm8); >>> +} >>> + >>> +static void gen_cmpeqi(struct DisasContext *dc, >>> + uint8_t rdst, uint8_t rsrc, uint8_t imm8) Need to be int8_t for imm8. >>> +{ >>> + qemu_log_mask(CPU_LOG_TB_IN_ASM, "cmpeqi r%d, r%d, %d\n", rdst, rsrc, >>> imm8); >>> + tcg_gen_setcondi_i64(TCG_COND_EQ, >>> + dest_gr(dc, rdst), load_gr(dc, rsrc), imm8); >>> +} > Merge these. > Thank you again for your reviewing. Next, I shall continue to print "Hello world". Thanks. -- Chen Gang Open, share, and attitude like air, water, and life which God blessed