qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Paolo Bonzini <pbonzini@redhat.com>
To: qemu-devel@nongnu.org
Cc: rth@twiddle.net, thuth@redhat.com, anthony.xu@intel.com,
	berrange@redhat.com, a.rigo@virtualopensystems.com,
	yang.zhong@intel.com
Subject: [Qemu-devel] [PATCH 08/22] tcg: make tcg_allowed global
Date: Mon,  3 Jul 2017 18:34:39 +0200	[thread overview]
Message-ID: <1499099693-22903-9-git-send-email-pbonzini@redhat.com> (raw)
In-Reply-To: <1499099693-22903-1-git-send-email-pbonzini@redhat.com>

From: Yang Zhong <yang.zhong@intel.com>

Change the tcg_enabled() and make sure user build still enable tcg
even x86 softmmu disable tcg.

Signed-off-by: Yang Zhong <yang.zhong@intel.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
---
 accel/tcg/cpu-exec-common.c | 2 ++
 accel/tcg/tcg-all.c         | 1 -
 accel/tcg/translate-all.c   | 6 +-----
 include/qemu-common.h       | 7 ++++++-
 4 files changed, 9 insertions(+), 7 deletions(-)

diff --git a/accel/tcg/cpu-exec-common.c b/accel/tcg/cpu-exec-common.c
index e81da27..5b4ae54 100644
--- a/accel/tcg/cpu-exec-common.c
+++ b/accel/tcg/cpu-exec-common.c
@@ -23,6 +23,8 @@
 #include "exec/exec-all.h"
 #include "exec/memory-internal.h"
 
+bool tcg_allowed;
+
 /* exit the current TB, but without causing any exception to be raised */
 void cpu_loop_exit_noexc(CPUState *cpu)
 {
diff --git a/accel/tcg/tcg-all.c b/accel/tcg/tcg-all.c
index c1ccad3..56dbb56 100644
--- a/accel/tcg/tcg-all.c
+++ b/accel/tcg/tcg-all.c
@@ -33,7 +33,6 @@
 #include "qemu/main-loop.h"
 
 unsigned long tcg_tb_size;
-static bool tcg_allowed = true;
 
 #ifndef CONFIG_USER_ONLY
 /* mask must never be zero, except for A20 change call */
diff --git a/accel/tcg/translate-all.c b/accel/tcg/translate-all.c
index 8428fce..4c1d8c9 100644
--- a/accel/tcg/translate-all.c
+++ b/accel/tcg/translate-all.c
@@ -784,6 +784,7 @@ static void tb_htable_init(void)
    size. */
 void tcg_exec_init(unsigned long tb_size)
 {
+    tcg_allowed = true;
     cpu_gen_init();
     page_init();
     tb_htable_init();
@@ -795,11 +796,6 @@ void tcg_exec_init(unsigned long tb_size)
 #endif
 }
 
-bool tcg_enabled(void)
-{
-    return tcg_ctx.code_gen_buffer != NULL;
-}
-
 /*
  * Allocate a new translation block. Flush the translation buffer if
  * too many translation blocks or too much generated code.
diff --git a/include/qemu-common.h b/include/qemu-common.h
index 387ef52..b5adbfa 100644
--- a/include/qemu-common.h
+++ b/include/qemu-common.h
@@ -76,8 +76,13 @@ int qemu_openpty_raw(int *aslave, char *pty_name);
     sendto(sockfd, buf, len, flags, destaddr, addrlen)
 #endif
 
+extern bool tcg_allowed;
 void tcg_exec_init(unsigned long tb_size);
-bool tcg_enabled(void);
+#ifdef CONFIG_TCG
+#define tcg_enabled() (tcg_allowed)
+#else
+#define tcg_enabled() 0
+#endif
 
 void cpu_exec_init_all(void);
 void cpu_exec_step_atomic(CPUState *cpu);
-- 
1.8.3.1

  parent reply	other threads:[~2017-07-03 16:35 UTC|newest]

Thread overview: 58+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-07-03 16:34 [Qemu-devel] [PATCH v3 00/22] add disable-tcg option for x86 build Paolo Bonzini
2017-07-03 16:34 ` [Qemu-devel] [PATCH 01/22] configure: factor out list of supported Xen/KVM/HAX targets Paolo Bonzini
2017-07-03 19:30   ` Richard Henderson
2017-07-04  8:28   ` Daniel P. Berrange
2017-07-04  9:44     ` Paolo Bonzini
2017-07-04  9:50       ` Daniel P. Berrange
2017-07-03 16:34 ` [Qemu-devel] [PATCH 02/22] configure: early test for supported targets Paolo Bonzini
2017-07-03 19:32   ` Richard Henderson
2017-07-04  8:32   ` Daniel P. Berrange
2017-07-04 11:08     ` Paolo Bonzini
2017-07-03 16:34 ` [Qemu-devel] [PATCH 03/22] configure: add --disable-tcg configure option Paolo Bonzini
2017-07-03 19:37   ` Richard Henderson
2017-07-04  8:33   ` Daniel P. Berrange
2017-07-03 16:34 ` [Qemu-devel] [PATCH 04/22] vl: convert -tb-size to qemu_strtoul Paolo Bonzini
2017-07-03 19:46   ` Richard Henderson
2017-07-04  9:33     ` Paolo Bonzini
2017-07-04  9:37     ` Daniel P. Berrange
2017-07-03 16:34 ` [Qemu-devel] [PATCH 05/22] vl: add tcg_enabled() for tcg related code Paolo Bonzini
2017-07-03 19:46   ` Richard Henderson
2017-07-03 16:34 ` [Qemu-devel] [PATCH 06/22] tcg: move page_size_init() function Paolo Bonzini
2017-07-03 19:58   ` Richard Henderson
2017-07-03 16:34 ` [Qemu-devel] [PATCH 07/22] tcg: tcg_handle_interrupt() function Paolo Bonzini
2017-07-03 19:59   ` Richard Henderson
2017-07-03 16:34 ` Paolo Bonzini [this message]
2017-07-03 20:01   ` [Qemu-devel] [PATCH 08/22] tcg: make tcg_allowed global Richard Henderson
2017-07-03 16:34 ` [Qemu-devel] [PATCH 09/22] monitor: disable "info jit" and "info opcount" if !TCG Paolo Bonzini
2017-07-03 20:02   ` Richard Henderson
2017-07-03 16:34 ` [Qemu-devel] [PATCH 10/22] vapic: use tcg_enabled Paolo Bonzini
2017-07-03 20:02   ` Richard Henderson
2017-07-03 16:34 ` [Qemu-devel] [PATCH 11/22] tcg: add the tcg-stub.c file into accel/stubs/ Paolo Bonzini
2017-07-03 20:03   ` Richard Henderson
2017-07-03 16:34 ` [Qemu-devel] [PATCH 12/22] tcg: move tb_lock out of translate-all.h Paolo Bonzini
2017-07-03 20:04   ` Richard Henderson
2017-07-03 16:34 ` [Qemu-devel] [PATCH 13/22] exec: elide calls to tb_lock and tb_unlock Paolo Bonzini
2017-07-03 20:07   ` Richard Henderson
2017-07-03 16:34 ` [Qemu-devel] [PATCH 14/22] tcg: add CONFIG_TCG guards in headers Paolo Bonzini
2017-07-03 20:10   ` Richard Henderson
2017-07-04  9:35     ` Paolo Bonzini
2017-07-03 16:34 ` [Qemu-devel] [PATCH 15/22] tcg: add the CONFIG_TCG into Makefiles Paolo Bonzini
2017-07-03 20:10   ` Richard Henderson
2017-07-03 16:34 ` [Qemu-devel] [PATCH 16/22] target/i386: move cpu_sync_bndcs_hflags() function Paolo Bonzini
2017-07-03 20:11   ` Richard Henderson
2017-07-03 16:34 ` [Qemu-devel] [PATCH 17/22] target/i386: make cpu_get_fp80()/cpu_set_fp80() static Paolo Bonzini
2017-07-03 20:12   ` Richard Henderson
2017-07-03 16:34 ` [Qemu-devel] [PATCH 18/22] target/i386: split cpu_set_mxcsr() and make cpu_set_fpuc() inline Paolo Bonzini
2017-07-03 20:14   ` Richard Henderson
2017-07-04  9:41     ` Paolo Bonzini
2017-07-03 16:34 ` [Qemu-devel] [PATCH 19/22] target/i386: move TLB refill function out of helper.c Paolo Bonzini
2017-07-03 20:15   ` Richard Henderson
2017-07-03 16:34 ` [Qemu-devel] [PATCH 20/22] target/i386: add the tcg_enabled() in target/i386/ Paolo Bonzini
2017-07-03 20:19   ` Richard Henderson
2017-07-04  9:58     ` Paolo Bonzini
2017-07-03 16:34 ` [Qemu-devel] [PATCH 21/22] target/i386: add the CONFIG_TCG into Makefiles Paolo Bonzini
2017-07-03 20:20   ` Richard Henderson
2017-07-03 16:34 ` [Qemu-devel] [PATCH 22/22] configure: warn on untested --disable-tcg Paolo Bonzini
2017-07-03 20:21   ` Richard Henderson
2017-07-04  8:33   ` Daniel P. Berrange
  -- strict thread matches above, loose matches on Subject: below --
2017-07-04 11:11 [Qemu-devel] [PATCH v4 00/22] add disable-tcg option for x86 build Paolo Bonzini
2017-07-04 11:12 ` [Qemu-devel] [PATCH 08/22] tcg: make tcg_allowed global Paolo Bonzini

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1499099693-22903-9-git-send-email-pbonzini@redhat.com \
    --to=pbonzini@redhat.com \
    --cc=a.rigo@virtualopensystems.com \
    --cc=anthony.xu@intel.com \
    --cc=berrange@redhat.com \
    --cc=qemu-devel@nongnu.org \
    --cc=rth@twiddle.net \
    --cc=thuth@redhat.com \
    --cc=yang.zhong@intel.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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).