On 23 May 2013 13:00, Peter Maydell <peter.mayd...@linaro.org> wrote: > +#define DO_GEN_ST(OP) \ > +static inline void gen_aa32_##OP(TCGv_i32 val, TCGv_i32 addr, int index) \ > +{ \ > + TCGv addr64 = tcg_temp_new(); \ > + TCGv val64 = tcg_temp_new(); \ > + tcg_gen_extu_i32_i64(addr64, addr); \ > + tcg_gen_extu_i32_i64(val64, val); \ > + tcg_gen_qemu_##OP(val64, addr64, index); \ > + tcg_temp_free(addr64); \
This is missing a 'tcg_temp_free(val64);'. If I add that I can get 32 bit ARM cpu/guests to run in a qemu-system-aarch64 binary (without it they work but the tcg temp leak alarm goes off). -- PMM