[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [RFC PATCH 0/5] Add configure flag to disable TCG
From: |
Blue Swirl |
Subject: |
Re: [Qemu-devel] [RFC PATCH 0/5] Add configure flag to disable TCG |
Date: |
Sat, 3 Sep 2011 11:58:17 +0000 |
On Fri, Sep 2, 2011 at 9:47 PM, Anthony Liguori <address@hidden> wrote:
> Hi,
>
> There have been a few attempts in the past to allow TCG to be disabled
> at build time. Recently, Alex made the suggestion that we could do it by
> using
> the same trick that we used to introduce kvm support. That involves
> introducing
> a tcg_enabled() macro that will be (0) if TCG is disabled in the build.
>
> GCC is smart enough to do dead code elimination if it sees an if (0) and the
> result is that if you can do:
Is this also true for gcc optimization -O0? Didn't we have breakages
because of similar issues recently?
>
> if (tcg_enabled()) {
> foo();
> }
>
> and it's more or less equivalent to:
>
> #ifdef CONFIG_TCG
> foo();
> #endif
>
> Without the ugliness that comes from using the preprocessor. I think this
> ended
> up being pretty straight forward. exec.c could use a fair bit of cleanup but
> other than that, this pretty much eliminates all of the TCG code from the
> build.
>
> This absolutely is going to break non-x86 KVM builds if they use the
> --disable-tcg flag as I haven't tested those yet. The normal TCG build
> shouldn't be affected at all though.
>
> In principle, the code assumes that you need KVM if you don't have TCG. Of
> course, some extra logic could be added to allow for Xen if TCG isn't present.
>
>
>
- [Qemu-devel] [RFC PATCH 0/5] Add configure flag to disable TCG, Anthony Liguori, 2011/09/02
- [Qemu-devel] [PATCH 1/5] configure: add --disable-tcg configure option, Anthony Liguori, 2011/09/02
- [Qemu-devel] [PATCH 4/5] tcg: don't build tcg/tcg.o, tcg/optimize.o, or translate-all.o when TCG disabled, Anthony Liguori, 2011/09/02
- [Qemu-devel] [PATCH 2/5] vl: don't expose TCG as a supported accelerator if TCG is disabled, Anthony Liguori, 2011/09/02
- [Qemu-devel] [PATCH 3/5] tcg: add tcg_enabled() and stop compiling translate.o when TCG is disabled, Anthony Liguori, 2011/09/02
- [Qemu-devel] [PATCH 5/5] tcg: don't build cpu-exec.o, op_helper.o, or fpu/softloat.o when TCG disabled, Anthony Liguori, 2011/09/02
- Re: [Qemu-devel] [RFC PATCH 0/5] Add configure flag to disable TCG,
Blue Swirl <=
- Re: [Qemu-devel] [RFC PATCH 0/5] Add configure flag to disable TCG, Stefano Stabellini, 2011/09/05