From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([140.186.70.92]:43167) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1RZMWR-00068k-I4 for qemu-devel@nongnu.org; Sat, 10 Dec 2011 07:59:24 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1RZMWQ-0005zU-5E for qemu-devel@nongnu.org; Sat, 10 Dec 2011 07:59:23 -0500 Received: from mout.web.de ([212.227.15.4]:63417) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1RZMWP-0005zC-Na for qemu-devel@nongnu.org; Sat, 10 Dec 2011 07:59:22 -0500 From: =?UTF-8?q?Andreas=20F=C3=A4rber?= Date: Sat, 10 Dec 2011 13:58:12 +0100 Message-Id: <1323521895-26693-4-git-send-email-andreas.faerber@web.de> In-Reply-To: <1323521895-26693-1-git-send-email-andreas.faerber@web.de> References: <1323521895-26693-1-git-send-email-andreas.faerber@web.de> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Subject: [Qemu-devel] [RFC 3/6] tcg: Add tcg_gen_qemu_{ld,st}64_tl() List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org Cc: =?UTF-8?q?Andreas=20F=C3=A4rber?= Encapsule the conversion from/to i64. This avoids a temporary and a tcg_gen_trunc_i64_tl()/ext_tl_i64(). Signed-off-by: Andreas Färber --- tcg/tcg-op.h | 12 ++++++++++++ 1 files changed, 12 insertions(+), 0 deletions(-) diff --git a/tcg/tcg-op.h b/tcg/tcg-op.h index d065e74..07c6d3e 100644 --- a/tcg/tcg-op.h +++ b/tcg/tcg-op.h @@ -3217,6 +3217,18 @@ static inline void tcg_gen_deposit_tl(TCGv ret, TCGv arg1, TCGv arg2, #endif } +#if TARGET_LONG_BITS == 64 +static inline void tcg_gen_qemu_ld64_tl(TCGv ret, TCGv addr, int mem_index) +{ + tcg_gen_qemu_ld64(MAKE_TCGV_I64(GET_TCGV_TL(ret)), addr, mem_index); +} + +static inline void tcg_gen_qemu_st64_tl(TCGv arg, TCGv addr, int mem_index) +{ + tcg_gen_qemu_st64(MAKE_TCGV_I64(GET_TCGV_TL(arg)), addr, mem_index); +} +#endif + static inline TCGv tcg_const_tl(tcg_target_long val) { #if TARGET_LONG_BITS == 64 -- 1.7.7