From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([208.118.235.92]:41842) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1TBqae-0004ug-DB for qemu-devel@nongnu.org; Wed, 12 Sep 2012 13:19:11 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1TBqaZ-0002rL-BV for qemu-devel@nongnu.org; Wed, 12 Sep 2012 13:19:04 -0400 From: Stefan Weil Date: Wed, 12 Sep 2012 19:18:55 +0200 Message-Id: <1347470335-15184-1-git-send-email-sw@weilnetz.de> Subject: [Qemu-devel] [PATCH] tcg: Fix MAX_OPC_PARAM_IARGS List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Blue Swirl Cc: Stefan Weil , qemu-devel@nongnu.org, qemu-stable@nongnu.org DEF_HELPER_FLAGS_5 was added some time ago without adjusting MAX_OPC_PARAM_IARGS. Fixing the definition becomes more important as QEMU is using an increasing number of helper functions called with 5 arguments. Add also a comment to avoid future problems when DEF_HELPER_FLAGS_6 will be added. Signed-off-by: Stefan Weil --- Hi, I think this patch should be added to the latest stable versions, too. Please note that this patch breaks compilation with --enable-tcg-interpreter. TCI code is designed for up to 4 arguments and needs modifications. The current TCI binaries crash at runtime, so the patch just makes it obvious that TCI needs to be fixed. Regards, Stefan Weil def-helper.h | 2 ++ exec-all.h | 2 +- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/def-helper.h b/def-helper.h index b98ff69..022a9ce 100644 --- a/def-helper.h +++ b/def-helper.h @@ -128,6 +128,8 @@ #define DEF_HELPER_5(name, ret, t1, t2, t3, t4, t5) \ DEF_HELPER_FLAGS_5(name, 0, ret, t1, t2, t3, t4, t5) +/* MAX_OPC_PARAM_IARGS must be set to n if last entry is DEF_HELPER_FLAGS_n. */ + #endif /* DEF_HELPER_H */ #ifndef GEN_HELPER diff --git a/exec-all.h b/exec-all.h index ac19c02..8977729 100644 --- a/exec-all.h +++ b/exec-all.h @@ -51,7 +51,7 @@ typedef struct TranslationBlock TranslationBlock; #else #define MAX_OPC_PARAM_PER_ARG 1 #endif -#define MAX_OPC_PARAM_IARGS 4 +#define MAX_OPC_PARAM_IARGS 5 #define MAX_OPC_PARAM_OARGS 1 #define MAX_OPC_PARAM_ARGS (MAX_OPC_PARAM_IARGS + MAX_OPC_PARAM_OARGS) -- 1.7.10