On 27 December 2013 14:49, Richard Henderson wrote:
> On 12/26/2013 01:27 PM, Peter Maydell wrote:
>>> The only time s->addseg will be false in 16-bit mode is during translation
>>> of
>>> LEA. I do need the addseg check there for LEA cleanup, but this change
>>> should
>>> not affect gen_strin
On 12/26/2013 01:27 PM, Peter Maydell wrote:
>> The only time s->addseg will be false in 16-bit mode is during translation of
>> LEA. I do need the addseg check there for LEA cleanup, but this change
>> should
>> not affect gen_string_movl.
>
> Oh, is that the bit that does:
>
> val = s
On 26 December 2013 21:27, Peter Maydell wrote:
> Why is it OK to skip the addition of the base address for ES
> (in the movl_A0_EDI case) when the comment for addseg says
> it only applies to CS/DS/ES?
Scratch that, misread of the comment. addseg applies to DS/ES/SS.
> Why is it not OK to skip
On 26 December 2013 19:31, Richard Henderson wrote:
> On 12/26/2013 10:38 AM, Peter Maydell wrote:
>> The old MO_16 code for gen_string_movl* doesn't care
>> about s->addseg, and always performs an add of a segment.
>> This new code might stop without doing the addition.
>
> The only time s->addse
On 12/26/2013 10:38 AM, Peter Maydell wrote:
> The old MO_16 code for gen_string_movl* doesn't care
> about s->addseg, and always performs an add of a segment.
> This new code might stop without doing the addition.
The only time s->addseg will be false in 16-bit mode is during translation of
LEA.
On 29 November 2013 03:00, Richard Henderson wrote:
> Add forgotten zero-extension in the TARGET_X86_64, !CODE64, ss32 case;
> use this new function to implement gen_string_movl_A0_EDI,
> gen_string_movl_A0_ESI, gen_add_A0_ds_seg.
I'm afraid I can't figure out how this code matches up with the pr
Add forgotten zero-extension in the TARGET_X86_64, !CODE64, ss32 case;
use this new function to implement gen_string_movl_A0_EDI,
gen_string_movl_A0_ESI, gen_add_A0_ds_seg.
Signed-off-by: Richard Henderson
---
target-i386/translate.c | 159
1 file