qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH 0/3] tci rewrite


From: Richard Henderson
Subject: Re: [Qemu-devel] [PATCH 0/3] tci rewrite
Date: Tue, 13 May 2014 14:52:46 -0700
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:24.0) Gecko/20100101 Thunderbird/24.5.0

On 05/13/2014 02:49 PM, Peter Maydell wrote:
> On 13 May 2014 22:22, Richard Henderson <address@hidden> wrote:
>> There are a number of problems with the current interpreter:
>>
>>   (1) It uses direct unaligned accesses as part of the bytecode stream.
>>       This fails with SIGBUS for strict alignment hosts.  This could of
>>       course be fixed to use "proper" unaligned accesses, but this would
>>       just be slow.
>>
>>   (2) The method by which it implements calls is non-portable, and really
>>       only works for x86.
>>
>>   (3) The code is full of ifdefs and TODOs that never got completed.
>>
>>   (4) The "registers" are in a global "tci_reg" array that implies that
>>       if threads are ever used, we'll immediately get corruption.  Fixing
>>       this is complicated by the structure of the interpreter.
>>
>>   (5) It hasn't been updated to the "new" ldst opcodes.
>>
>> To me, all of this adds up to a complete rewrite.
> 
> Does the TCG interpreter actually have any interesting uses
> to merit our carrying it around, maintaining it and (in this case)
> rewriting it? Mostly I just see it when people accidentally configure
> it and I have to say "don't do that, you really want the native TCG
> backend".

The only interesting use I can think of is pure portability to otherwise
unsupported hosts.  Rare these days, but there are still some kicking.

When do folks accidentally configure it?


r~




reply via email to

[Prev in Thread] Current Thread [Next in Thread]