qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [Qemu-devel] TCG debugging improvements
@ 2008-11-17 14:45 Paul Brook
  2008-11-17 20:08 ` Blue Swirl
  0 siblings, 1 reply; 4+ messages in thread
From: Paul Brook @ 2008-11-17 14:45 UTC (permalink / raw)
  To: qemu-devel

I'd just applied changes that enforce type size checking for TCG variables 
when DEBUG_TCGV is defined. This should help avoid subtle bugs due to 
64/32-bit mismatches.

I fixed a few bugs in the process, but it's mostly mechanical changes.  TCGv 
is target_ulong sized, so the majority of code remains unchanged.  Explicit 
sizes are typically only required when working with different sized ops, or 
floating point.

One of the main side-effects of this is that helper functions now need to be 
declared properly.  Previously we sort-of did this, but not consistently 
enough to enforce types.  With the exception of the SSE/MMX ops (which are 
table driven and use messy typecasts) we should be able to detect 
inconsistencies between the code generator and the helper function 
implementations.

There should be no functional changes.  I've tested what I can, but please 
test your favourite host/target.

Paul

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [Qemu-devel] TCG debugging improvements
  2008-11-17 14:45 [Qemu-devel] TCG debugging improvements Paul Brook
@ 2008-11-17 20:08 ` Blue Swirl
  2008-11-17 21:00   ` Andreas Färber
  2008-11-18  9:39   ` Aurelien Jarno
  0 siblings, 2 replies; 4+ messages in thread
From: Blue Swirl @ 2008-11-17 20:08 UTC (permalink / raw)
  To: qemu-devel

On 11/17/08, Paul Brook <paul@codesourcery.com> wrote:
> I'd just applied changes that enforce type size checking for TCG variables
>  when DEBUG_TCGV is defined. This should help avoid subtle bugs due to
>  64/32-bit mismatches.
>
>  I fixed a few bugs in the process, but it's mostly mechanical changes.  TCGv
>  is target_ulong sized, so the majority of code remains unchanged.  Explicit
>  sizes are typically only required when working with different sized ops, or
>  floating point.
>
>  One of the main side-effects of this is that helper functions now need to be
>  declared properly.  Previously we sort-of did this, but not consistently
>  enough to enforce types.  With the exception of the SSE/MMX ops (which are
>  table driven and use messy typecasts) we should be able to detect
>  inconsistencies between the code generator and the helper function
>  implementations.
>
>  There should be no functional changes.  I've tested what I can, but please
>  test your favourite host/target.

PPC is broken. This used to print something, now it doesn't:
./qemu-system-ppc -L ./pc-bios/ -hda /dev/null

Sparc32 and Sparc64 are fine, thanks for the fixes.

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [Qemu-devel] TCG debugging improvements
  2008-11-17 20:08 ` Blue Swirl
@ 2008-11-17 21:00   ` Andreas Färber
  2008-11-18  9:39   ` Aurelien Jarno
  1 sibling, 0 replies; 4+ messages in thread
From: Andreas Färber @ 2008-11-17 21:00 UTC (permalink / raw)
  To: qemu-devel


Am 17.11.2008 um 21:08 schrieb Blue Swirl:

> On 11/17/08, Paul Brook <paul@codesourcery.com> wrote:
>> I'd just applied changes that enforce type size checking for TCG  
>> variables
>> when DEBUG_TCGV is defined. This should help avoid subtle bugs due to
>> 64/32-bit mismatches.
>>
>> I fixed a few bugs in the process, but it's mostly mechanical  
>> changes.  TCGv
>> is target_ulong sized, so the majority of code remains unchanged.   
>> Explicit
>> sizes are typically only required when working with different sized  
>> ops, or
>> floating point.
>>
>> One of the main side-effects of this is that helper functions now  
>> need to be
>> declared properly.  Previously we sort-of did this, but not  
>> consistently
>> enough to enforce types.  With the exception of the SSE/MMX ops  
>> (which are
>> table driven and use messy typecasts) we should be able to detect
>> inconsistencies between the code generator and the helper function
>> implementations.
>>
>> There should be no functional changes.  I've tested what I can, but  
>> please
>> test your favourite host/target.
>
> PPC is broken. This used to print something, now it doesn't:
> ./qemu-system-ppc -L ./pc-bios/ -hda /dev/null

ppc64 mixed tl and i64 in some places, possibly also ppc tl and i32  
for SPE, maybe that's why?

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [Qemu-devel] TCG debugging improvements
  2008-11-17 20:08 ` Blue Swirl
  2008-11-17 21:00   ` Andreas Färber
@ 2008-11-18  9:39   ` Aurelien Jarno
  1 sibling, 0 replies; 4+ messages in thread
From: Aurelien Jarno @ 2008-11-18  9:39 UTC (permalink / raw)
  To: qemu-devel

Blue Swirl a écrit :
> On 11/17/08, Paul Brook <paul@codesourcery.com> wrote:
>> I'd just applied changes that enforce type size checking for TCG variables
>>  when DEBUG_TCGV is defined. This should help avoid subtle bugs due to
>>  64/32-bit mismatches.
>>
>>  I fixed a few bugs in the process, but it's mostly mechanical changes.  TCGv
>>  is target_ulong sized, so the majority of code remains unchanged.  Explicit
>>  sizes are typically only required when working with different sized ops, or
>>  floating point.
>>
>>  One of the main side-effects of this is that helper functions now need to be
>>  declared properly.  Previously we sort-of did this, but not consistently
>>  enough to enforce types.  With the exception of the SSE/MMX ops (which are
>>  table driven and use messy typecasts) we should be able to detect
>>  inconsistencies between the code generator and the helper function
>>  implementations.
>>
>>  There should be no functional changes.  I've tested what I can, but please
>>  test your favourite host/target.
> 
> PPC is broken. This used to print something, now it doesn't:
> ./qemu-system-ppc -L ./pc-bios/ -hda /dev/null
> 

That should be fixed in the SVN.

-- 
  .''`.  Aurelien Jarno	            | GPG: 1024D/F1BCDB73
 : :' :  Debian developer           | Electrical Engineer
 `. `'   aurel32@debian.org         | aurelien@aurel32.net
   `-    people.debian.org/~aurel32 | www.aurel32.net

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2008-11-18  9:39 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2008-11-17 14:45 [Qemu-devel] TCG debugging improvements Paul Brook
2008-11-17 20:08 ` Blue Swirl
2008-11-17 21:00   ` Andreas Färber
2008-11-18  9:39   ` Aurelien Jarno

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).