qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] Re: [PATCH][RFC] Run time TCGv size check for debugging


From: Fabrice Bellard
Subject: Re: [Qemu-devel] Re: [PATCH][RFC] Run time TCGv size check for debugging
Date: Thu, 30 Oct 2008 10:38:20 +0100
User-agent: Thunderbird 2.0.0.5 (X11/20070727)

Paul Brook wrote:
> On Wednesday 29 October 2008, Fabrice Bellard wrote:
>> Blue Swirl wrote:
>>> Hi,
>>>
>>> When emulating a mixed 32/64 bit Qemu target CPUs it's easy to confuse
>>> the TCGv size, passing 32 bit TCGv to a function expecting a 64 bit
>>> one and vice versa. This patch adds a run time sanity check for TCGv
>>> sizes.
>>>
>>> Because a 32 bit Qemu host does not really use 64 bit TCGvs, the patch
>>> is only functional on a 64 bit host. Of course also a pure 32 bit Qemu
>>> target is not likely to suffer from TCGv size confusion.
>>>
>>> Some use cases are not covered yet. Comments?
>> Theses tests can be done at compile time by introducing the TCGv_i32 and
>> TCGv_i64 types. The same can be done with the helpers by using a few
>> macros to declare them.
> 
> That would also require updating all the target code in translate.c to use 
> these types.  In principle there's no reason why this couldn't be done, but 
> it'd be a much more invasive change.

If you define TCGv as the word size of the emulated CPU, it will
eliminates most of the changes.

> AFAIK there's no way of doing compile time inheritance checking in C.

Fabrice.





reply via email to

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