From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([208.118.235.92]:60335) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1TFDQV-0004gT-Pe for qemu-devel@nongnu.org; Fri, 21 Sep 2012 20:18:32 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1TFDQU-00016i-TI for qemu-devel@nongnu.org; Fri, 21 Sep 2012 20:18:31 -0400 Received: from mail-pb0-f45.google.com ([209.85.160.45]:41851) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1TFDQU-00015F-Ln for qemu-devel@nongnu.org; Fri, 21 Sep 2012 20:18:30 -0400 Received: by mail-pb0-f45.google.com with SMTP id rp12so8738004pbb.4 for ; Fri, 21 Sep 2012 17:18:30 -0700 (PDT) Sender: Richard Henderson From: Richard Henderson Date: Fri, 21 Sep 2012 17:18:15 -0700 Message-Id: <1348273096-1495-8-git-send-email-rth@twiddle.net> In-Reply-To: <1348273096-1495-1-git-send-email-rth@twiddle.net> References: <1348273096-1495-1-git-send-email-rth@twiddle.net> Subject: [Qemu-devel] [PATCH 7/8] tcg: Sanity check deposit inputs List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org Cc: aurelien@aurel32.net Given these are constants, checking once here means everything after can assume they're correct. Signed-off-by: Richard Henderson --- tcg/tcg-op.h | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/tcg/tcg-op.h b/tcg/tcg-op.h index d2fb283..ecb1ac3 100644 --- a/tcg/tcg-op.h +++ b/tcg/tcg-op.h @@ -2081,6 +2081,10 @@ static inline void tcg_gen_deposit_i32(TCGv_i32 ret, TCGv_i32 arg1, uint32_t mask; TCGv_i32 t1; + tcg_debug_assert(ofs < 32); + tcg_debug_assert(len <= 32); + tcg_debug_assert(ofs + len <= 32); + if (ofs == 0 && len == 32) { tcg_gen_mov_i32(ret, arg2); return; @@ -2112,6 +2116,10 @@ static inline void tcg_gen_deposit_i64(TCGv_i64 ret, TCGv_i64 arg1, uint64_t mask; TCGv_i64 t1; + tcg_debug_assert(ofs < 64); + tcg_debug_assert(len <= 64); + tcg_debug_assert(ofs + len <= 64); + if (ofs == 0 && len == 64) { tcg_gen_mov_i64(ret, arg2); return; -- 1.7.11.4