malc wrote:
> > Inefficient in what way? The generated code only grows by a single
> > unconditional branch.
>
> The generated code grows by a memory write
Yes, an additional store instruction is generated, but the number of
store instructions *executed* does not change. The original code
alrea
On Sat, 10 Dec 2011, Andreas Gustafsson wrote:
> malc wrote:
> > On Sat, 10 Dec 2011, Andreas Gustafsson wrote:
> >
> > > When the i386 cmpxchg instruction is executed with a memory operand
> > > and the comparison result is "unequal", do the memory write before
> > > changing the accumulator ins
malc wrote:
> On Sat, 10 Dec 2011, Andreas Gustafsson wrote:
>
> > When the i386 cmpxchg instruction is executed with a memory operand
> > and the comparison result is "unequal", do the memory write before
> > changing the accumulator instead of the other way around, because
> > otherwise the new
On Sat, 10 Dec 2011, Andreas Gustafsson wrote:
> When the i386 cmpxchg instruction is executed with a memory operand
> and the comparison result is "unequal", do the memory write before
> changing the accumulator instead of the other way around, because
> otherwise the new accumulator value will i
When the i386 cmpxchg instruction is executed with a memory operand
and the comparison result is "unequal", do the memory write before
changing the accumulator instead of the other way around, because
otherwise the new accumulator value will incorrectly be used in the
comparison when the instructio
On Fri, 17 Jun 2011, Christoph Egger wrote:
> Correct emulation of i386 cmpxchg instruction in the case where the
> comparison outcome is unequal and the memory write causes a page
> fault.
>
> From: Andreas Gustafsson
> Signed-off-by: Christoph Egger
We've been through this a couple of times
Correct emulation of i386 cmpxchg instruction in the case where the
comparison outcome is unequal and the memory write causes a page
fault.
From: Andreas Gustafsson
Signed-off-by: Christoph Egger
diff --git a/target-i386/translate.c b/target-i386/translate.c
index 10bd72a..69a878f 100644
--- a