qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] qemu vs gcc4


From: Rob Landley
Subject: Re: [Qemu-devel] qemu vs gcc4
Date: Wed, 25 Oct 2006 15:39:18 -0400
User-agent: KMail/1.9.1

On Tuesday 24 October 2006 8:24 pm, Paul Brook wrote:
> ColdFire is the only target that uses it exclusively.  Arm is currently a 
> hybrid of dyngen and the new backend.  So is i386, to a lesser extent. 
> Other targets have minimal changes necessary to make them work.

Ok.

> > Do you have a quick "here's you how try it out" thing?  (For example, when
> > I first show people qemu I boot a knoppix cd image under it.  Fast and
> > shiny. :)
> 
> One of my goals when writing it was to be able to reuse most of the existing 
> qemu code. There should be no user-visible impact. Unless you already 
> understand how qemu/dyngen works it's not going to mean a lot to you.

I read Fabrice's presentation, and looked through the code a bit, 
but "understand" is _way_ too strong a word. :)

> The end result is very similar, just a slightly different strategy for
> getting there. 

A strategy that might work with gcc 4.x? :)

> In theory it should allow better performance, but that's still a way off.

I was poking at the tcc code to generate stuff and optimize a couple weeks 
ago.  I don't suppose there's any possible re-use between the two?

> https://nowt.dyndns.org/ has patches against cvs (thought they may be
> slightly out of date), and a complete svn repository you can checkout. Build
> it just like normal qemu.

Which in my case means applying the patch to get it to build with gcc 4.x, 
which does indeed apply without rejects to your svn repository.  
Unfortunately, the result doesn't build:

gcc -Wall -O2 -g -fno-strict-aliasing -I. -I.. 
-I/home/landley/qemu/nowt.dyndns.org/qemu/target-sparc 
-I/home/landley/qemu/nowt.dyndns.org/qemu 
-I/home/landley/qemu/nowt.dyndns.org/qemu/host-i386 -D_GNU_SOURCE 
-D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE 
-I/home/landley/qemu/nowt.dyndns.org/qemu/fpu 
-I/home/landley/qemu/nowt.dyndns.org/qemu/slirp -c -o 
tcx.o /home/landley/qemu/nowt.dyndns.org/qemu/hw/tcx.c
/home/landley/qemu/nowt.dyndns.org/qemu/hw/tcx.c: In 
function ‘tcx_draw_line32’:
/home/landley/qemu/nowt.dyndns.org/qemu/hw/tcx.c:94: error: invalid lvalue in 
increment
/home/landley/qemu/nowt.dyndns.org/qemu/hw/tcx.c: In 
function ‘tcx_draw_line16’:
/home/landley/qemu/nowt.dyndns.org/qemu/hw/tcx.c:106: error: invalid lvalue in 
increment
make[1]: *** [tcx.o] Error 1
make[1]: Leaving directory 
`/home/landley/qemu/nowt.dyndns.org/qemu/sparc-softmmu'
make: *** [subdir-sparc-softmmu] Error 2

I don't have gcc 3.x installed on my laptop.

Rob
-- 
"Perfection is reached, not when there is no longer anything to add, but
when there is no longer anything to take away." - Antoine de Saint-Exupery




reply via email to

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