From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:37116) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1UwYl0-0004OH-9F for qemu-devel@nongnu.org; Tue, 09 Jul 2013 10:19:13 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1UwYkw-00027D-DH for qemu-devel@nongnu.org; Tue, 09 Jul 2013 10:19:06 -0400 Received: from mail-pd0-x22f.google.com ([2607:f8b0:400e:c02::22f]:61555) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1UwYkw-00026y-5s for qemu-devel@nongnu.org; Tue, 09 Jul 2013 10:19:02 -0400 Received: by mail-pd0-f175.google.com with SMTP id 4so5284930pdd.6 for ; Tue, 09 Jul 2013 07:19:01 -0700 (PDT) Sender: Richard Henderson From: Richard Henderson Date: Tue, 9 Jul 2013 07:18:26 -0700 Message-Id: <1373379515-28596-7-git-send-email-rth@twiddle.net> In-Reply-To: <1373379515-28596-1-git-send-email-rth@twiddle.net> References: <1373379515-28596-1-git-send-email-rth@twiddle.net> Subject: [Qemu-devel] [PULL 06/15] tcg: Allow non-constant control macros List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org Cc: aliguori@us.ibm.com This allows TCG_TARGET_HAS_* to be a variable rather than a constant, which allows easier support for differing ISA levels for the host. Reviewed-by: Peter Maydell Signed-off-by: Richard Henderson --- tcg/tcg-opc.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tcg/tcg-opc.h b/tcg/tcg-opc.h index 12967fb..c94e255 100644 --- a/tcg/tcg-opc.h +++ b/tcg/tcg-opc.h @@ -40,7 +40,7 @@ DEF(set_label, 0, 0, 1, TCG_OPF_BB_END) DEF(call, 0, 1, 2, TCG_OPF_CALL_CLOBBER) /* variable number of parameters */ DEF(br, 0, 0, 1, TCG_OPF_BB_END) -#define IMPL(X) (X ? 0 : TCG_OPF_NOT_PRESENT) +#define IMPL(X) (__builtin_constant_p(X) && !(X) ? TCG_OPF_NOT_PRESENT : 0) #if TCG_TARGET_REG_BITS == 32 # define IMPL64 TCG_OPF_64BIT | TCG_OPF_NOT_PRESENT #else -- 1.8.1.4