On 09/02/2016 15:20, Peter Maydell wrote: > Compilation failure I'm afraid (all hosts): > > /home/pm215/qemu/target-i386/translate.c: In function ‘tcg_x86_init’: > /home/pm215/qemu/target-i386/translate.c:7724:34: error: passing > argument 1 of ‘tcg_global_mem_new_i32’ makes pointer from integer > without a cast [-Werror] > seg_base_names[i]); > ^ > In file included from /home/pm215/qemu/tcg/tcg-op.h:25:0, > from /home/pm215/qemu/target-i386/translate.c:24: > /home/pm215/qemu/tcg/tcg.h:644:24: note: expected ‘TCGv_ptr’ but > argument is of type ‘int’ > static inline TCGv_i32 tcg_global_mem_new_i32(TCGv_ptr reg, intptr_t offset, > ^
Hmm, not on my host and I don't see what's going on: static const char seg_base_names[6][8] = { [R_CS] = "cs_base", [R_DS] = "ds_base", [R_ES] = "es_base", [R_FS] = "fs_base", [R_GS] = "gs_base", [R_SS] = "ss_base", }; cpu_seg_base[i] = tcg_global_mem_new(TCG_AREG0, offsetof(CPUX86State, segs[i].base), seg_base_names[i]); There's no difference between that and e.g. cpu_cc_src2 = tcg_global_mem_new(TCG_AREG0, offsetof(CPUX86State, cc_src2), "cc_src2"); Paolo