[PATCH] target/arm: Fix temp double-free in sve ldr/str

2020-07-06 Thread Richard Henderson
The temp that gets assigned to clean_addr has been allocated with new_tmp_a64, which means that it will be freed at the end of the instruction. Freeing it earlier leads to assertion failure. The loop creates a complication, in which we allocate a new local temp, which does need freeing, and the

Re: [PATCH] target/arm: Fix temp double-free in sve ldr/str

2020-07-03 Thread Peter Maydell
On Thu, 2 Jul 2020 at 18:56, Richard Henderson wrote: > > The temp that gets assigned to clean_addr has been allocated with > new_tmp_a64, which means that it will be freed at the end of the > instruction. Freeing it earlier leads to assertion failure. > > The loop creates a complication, in

Re: [PATCH] target/arm: Fix temp double-free in sve ldr/str

2020-07-02 Thread Philippe Mathieu-Daudé
On 7/2/20 7:56 PM, Richard Henderson wrote: > The temp that gets assigned to clean_addr has been allocated with > new_tmp_a64, which means that it will be freed at the end of the > instruction. Freeing it earlier leads to assertion failure. > > The loop creates a complication, in which we

[PATCH] target/arm: Fix temp double-free in sve ldr/str

2020-07-02 Thread Richard Henderson
The temp that gets assigned to clean_addr has been allocated with new_tmp_a64, which means that it will be freed at the end of the instruction. Freeing it earlier leads to assertion failure. The loop creates a complication, in which we allocate a new local temp, which does need freeing, and the