qemu-devel
[Top][All Lists]
Advanced

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

[Qemu-devel] Re: QEMU fails with different levels of compiler optimizati


From: André Braga
Subject: [Qemu-devel] Re: QEMU fails with different levels of compiler optimization
Date: Wed, 28 Jul 2004 02:37:14 -0300

On Fri, 23 Jul 2004 23:38:44 +0200, Felix von Leitner <address@hidden> wrote:
> -O3 is basically the same as -O2 -finline-functions.

And -frename-registers. I explicitly opted not to run -O3 because of
that. But I surely wanted the other flags turned on.

> And enabling mmx 3dnow and sse is superfluous if you use
> -march=athlon-xp. 

I thought so also, and I even suspect that turning the verbose flag on
GCC shows that those are enabled when you run -march=athlon-xp, but
the GCC manpage on the subject is somewhat unclear:
http://gcc.gnu.org/onlinedocs/gcc-3.4.1/gcc/X86-Built-in-Functions.html#X86%20Built-in%20Functions

> The point is, optimizing qemu is not what you need to
> do to improve runtime.  qemu is a code generator.  You would need to
> improve the code qemu generates.

Unless I completely missed the point made on
http://fabrice.bellard.free.fr/qemu/qemu-tech.html#TOC9 , QEMU doesn't
actually generate code "by hand", but instead it relies on what GCC
outputs when compiling op.c . Thus, if by any chance I can get GCC to
produce more optimized code when compiling op.c, that would mean QEMU
as a whole would use the smartest possible logic on my processor, and
so it would run way faster than vanilla compilations.

I'm forwarding this to Fabrice just in case he finds it worthy to
comment on my hypothesis -- whether it's correct or not, and if
compiler optimizations can indeed produce faster code and/or more
performing emulation in this case. I hope he won't get pissed off :)

Thanks!


-- 
"Structure is nothing if it is all you've got. Skeletons spook people
if they try to walk around on their own; I really wonder why XML does
not"
-Erik Naggum




reply via email to

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