From patchwork Wed Sep 7 21:10:47 2016 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Richard Henderson X-Patchwork-Id: 667182 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from lists.gnu.org (lists.gnu.org [IPv6:2001:4830:134:3::11]) (using TLSv1 with cipher AES256-SHA (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 3sTxVb5GFMz9s3s for ; Thu, 8 Sep 2016 07:31:35 +1000 (AEST) Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.b=M2V0+zzP; dkim-atps=neutral Received: from localhost ([::1]:43167 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bhkRQ-00042j-E6 for incoming@patchwork.ozlabs.org; Wed, 07 Sep 2016 17:31:32 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:52487) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bhk8L-0000ck-09 for qemu-devel@nongnu.org; Wed, 07 Sep 2016 17:11:49 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1bhk8E-0002oG-UU for qemu-devel@nongnu.org; Wed, 07 Sep 2016 17:11:47 -0400 Received: from mail-yb0-x243.google.com ([2607:f8b0:4002:c09::243]:34969) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bhk8E-0002o9-Qh for qemu-devel@nongnu.org; Wed, 07 Sep 2016 17:11:42 -0400 Received: by mail-yb0-x243.google.com with SMTP id y64so502975yby.2 for ; Wed, 07 Sep 2016 14:11:42 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references; bh=ppZ868ztkhJXEyPp42KaJJDm8o6aFem1R2nICPSBt4w=; b=M2V0+zzP2Qc9HUgNpp3JlTVT9Rn3N8cqowiaynp0NdwbZYkP7dpg9D/LF2aHv4SiKR sY0fyQT5kPdKE7zN9Jghsy5fWXQU3Okgo3MTOqqlocEHuP9RtJvHVDW8Ff7EAGALTFhE h0I3kwZvBYfZvV69h2STbOVg9zxA/6lderkSV9LY7JvKi1YHT/yaFlAiiZW5zx5sGVgi n0erj/QxRTFV327wdXSb9eQdKHW/NPwRhpqAdTNti/1zIAM06CkBp+mBIYGPiuHtmrZG Bodmz1DX1Ub3h4osTmUY1b7UenKBqueKfR3sWyihboNoA2ijzjshjm7V75VhEFqky9wt Jtlg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references; bh=ppZ868ztkhJXEyPp42KaJJDm8o6aFem1R2nICPSBt4w=; b=SccbvFTJzQvS/o1zGGrU0LpcRyvqeWFocbOItHcXe99b00ORrYvapvOJQuKLzlm+9V XjFwEmxDzUNU/3hv5T0x6zAoHBklPLJ/PEIHGUw9cO+uT2wEDjqZUzvrbeIZBAHJgKZt 2uBI+dHhS51BZ8/t7Ql44XbK7uaDadQFnCX9jsfkYUR7knDszWvx42ENIn02dEB+NYbT qo7iw9aqhzu1zkppRWW0HmWAONahnhV5MrpjdmIodaYFDv1PKQi3NqxbsSB80M7FzAvl ubGsLba08TEdQGoKvZRMV5mYcRgQw7JlMt7nqRXPeV3Jbf+Z4HB+bBPkARUXAKWw8GjT XIEg== X-Gm-Message-State: AE9vXwNUcKnlZ2JUbBm/DjILKdhLtA0ccLeg4GWu2X81dCFUS7o1dnXDyYpbZ6Y2QPwcNQ== X-Received: by 10.37.52.138 with SMTP id b132mr11763576yba.27.1473282702569; Wed, 07 Sep 2016 14:11:42 -0700 (PDT) Received: from bigtime.com (174-24-157-40.tukw.qwest.net. [174.24.157.40]) by smtp.gmail.com with ESMTPSA id 17sm15558301ywk.17.2016.09.07.14.11.41 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Wed, 07 Sep 2016 14:11:42 -0700 (PDT) From: Richard Henderson To: qemu-devel@nongnu.org Date: Wed, 7 Sep 2016 14:10:47 -0700 Message-Id: <1473282648-23487-18-git-send-email-rth@twiddle.net> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1473282648-23487-1-git-send-email-rth@twiddle.net> References: <1473282648-23487-1-git-send-email-rth@twiddle.net> X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 2607:f8b0:4002:c09::243 Subject: [Qemu-devel] [PULL 17/18] target-i386: Generate fences for x86 X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: peter.maydell@linaro.org, Pranith Kumar Errors-To: qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org Sender: "Qemu-devel" From: Pranith Kumar Signed-off-by: Pranith Kumar Message-Id: <20160714202026.9727-15-bobby.prani@gmail.com> Signed-off-by: Richard Henderson --- target-i386/translate.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/target-i386/translate.c b/target-i386/translate.c index fa2ac48..9447557 100644 --- a/target-i386/translate.c +++ b/target-i386/translate.c @@ -8012,13 +8012,21 @@ static target_ulong disas_insn(CPUX86State *env, DisasContext *s, || (prefixes & PREFIX_LOCK)) { goto illegal_op; } + tcg_gen_mb(TCG_MO_ST_ST | TCG_BAR_SC); break; case 0xe8 ... 0xef: /* lfence */ + if (!(s->cpuid_features & CPUID_SSE) + || (prefixes & PREFIX_LOCK)) { + goto illegal_op; + } + tcg_gen_mb(TCG_MO_LD_LD | TCG_BAR_SC); + break; case 0xf0 ... 0xf7: /* mfence */ if (!(s->cpuid_features & CPUID_SSE2) || (prefixes & PREFIX_LOCK)) { goto illegal_op; } + tcg_gen_mb(TCG_MO_ALL | TCG_BAR_SC); break; default: