finally, it works, c and asm are not same when share vars