From patchwork Tue Apr 30 16:52:31 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Alex_Benn=C3=A9e?= X-Patchwork-Id: 1093397 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=pass (mailfrom) smtp.mailfrom=nongnu.org (client-ip=209.51.188.17; helo=lists.gnu.org; envelope-from=qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org; receiver=) Authentication-Results: ozlabs.org; dmarc=fail (p=none dis=none) header.from=linaro.org Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (2048-bit key; unprotected) header.d=linaro.org header.i=@linaro.org header.b="YjeWPiwA"; dkim-atps=neutral Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 44tp3n4XZGz9s7T for ; Wed, 1 May 2019 03:12:05 +1000 (AEST) Received: from localhost ([127.0.0.1]:50432 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1hLWIV-0000ut-GV for incoming@patchwork.ozlabs.org; Tue, 30 Apr 2019 13:12:03 -0400 Received: from eggs.gnu.org ([209.51.188.92]:40451) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1hLW5U-0007Cl-Uu for qemu-devel@nongnu.org; Tue, 30 Apr 2019 12:58:37 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1hLW5T-0003mO-0A for qemu-devel@nongnu.org; Tue, 30 Apr 2019 12:58:36 -0400 Received: from mail-wr1-x442.google.com ([2a00:1450:4864:20::442]:39618) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1hLW5S-0003lo-Pt for qemu-devel@nongnu.org; Tue, 30 Apr 2019 12:58:34 -0400 Received: by mail-wr1-x442.google.com with SMTP id a9so21866015wrp.6 for ; Tue, 30 Apr 2019 09:58:34 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=gmFGO18R6wc6UEhG3xXAtJADNbztJhPGG+6VZwVsHPk=; b=YjeWPiwAXRvrcBmrLLYDDjlVMW5moWokvU97lMeQOX+3HCKRB89ZgJVXul9/mlsCf5 0C2OQyCZOgeTnQGN8n9d7gqkvYoIb0xYBExs6O+Hn7so22xk5qu1qgIW0RV+OpjCop92 DKRkxCEHQcLs91RIbVbkc6iP/fs3fDpMNuMAwUEHB6Z6/ZoSQujVKSIrw9D53WugfWI8 VciEi+lG8dRP/P/+dwoaRM3SgW/B+5YO+STK6sI35fHygUd72SN2bL/d5BPbcK4WdDAN B0iAiD/061jH9FRH6ySZOdCJJzweYIYcQqaYyeImdPtwxN8aAv2HnT4Yx+fi9fVkcjsf VB5g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=gmFGO18R6wc6UEhG3xXAtJADNbztJhPGG+6VZwVsHPk=; b=JpurGdDDDYSPntvMI/nMgSC9rDfuQCYVlF/etOKvtpSK+NGp7mKmU6Ae0oiFYlDWJK eUJIOyggBsqSL34ZgilYdLdOxdgRKDR3HSOXDEuo8BQRvx15l2SbJ8VzO59IiHD6RdK9 SIlkIzDBV3vOnRquGNK0WLP8ncqMrjddmwpfxrwYOBVfexo10p1SaEU51kg/rh8C214f od/8fXKSChcf14LbK9cThmuR/aOUlaZac4kwwOepmwMtHE83hJictmxHvKr38Jr/F/cv DoSFNmNIAQ1AO/skIPkv12QhfLb8ocLsXpmRbIbOfEtkrNRczj8r5Q1f6OK+sSJtmGX/ BKLw== X-Gm-Message-State: APjAAAXiEjfPwcRWNndfqsnRSMy67y5ltteXCeuQ6RN9W/hqE8kyzKE6 QpeCtWP2mAzhf88I4tjhZYtRBw== X-Google-Smtp-Source: APXvYqzYmPi4oXC/xqlVJ6QawC+b6wq3Q591rynNBiTp/TUbkVhbT0A0FX2Npms753llnHJM+KYAeA== X-Received: by 2002:adf:a202:: with SMTP id p2mr11994920wra.166.1556643513135; Tue, 30 Apr 2019 09:58:33 -0700 (PDT) Received: from zen.linaroharston ([81.128.185.34]) by smtp.gmail.com with ESMTPSA id w10sm3496524wrv.90.2019.04.30.09.58.32 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Tue, 30 Apr 2019 09:58:32 -0700 (PDT) Received: from zen.linaroharston. (localhost [127.0.0.1]) by zen.linaroharston (Postfix) with ESMTP id 1B1311FF9C; Tue, 30 Apr 2019 17:52:35 +0100 (BST) From: =?utf-8?q?Alex_Benn=C3=A9e?= To: qemu-devel@nongnu.org Date: Tue, 30 Apr 2019 17:52:31 +0100 Message-Id: <20190430165234.32272-13-alex.bennee@linaro.org> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20190430165234.32272-1-alex.bennee@linaro.org> References: <20190430165234.32272-1-alex.bennee@linaro.org> MIME-Version: 1.0 X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2a00:1450:4864:20::442 Subject: [Qemu-devel] [PATCH v5 12/15] cputlb: Do unaligned store recursion to outermost function 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: =?utf-8?q?Alex_Benn=C3=A9e?= , Richard Henderson , qemu-arm@nongnu.org, mark.cave-ayland@ilande.co.uk, cota@braap.org Errors-To: qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org Sender: "Qemu-devel" From: Richard Henderson This is less tricky than for loads, because we always fall back to single byte stores to implement unaligned stores. Signed-off-by: Richard Henderson Signed-off-by: Alex Bennée --- accel/tcg/cputlb.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/accel/tcg/cputlb.c b/accel/tcg/cputlb.c index e4d0c94301..a083324768 100644 --- a/accel/tcg/cputlb.c +++ b/accel/tcg/cputlb.c @@ -1413,9 +1413,9 @@ tcg_target_ulong helper_be_ldsl_mmu(CPUArchState *env, target_ulong addr, * Store Helpers */ -static void store_helper(CPUArchState *env, target_ulong addr, uint64_t val, - TCGMemOpIdx oi, uintptr_t retaddr, size_t size, - bool big_endian) +static inline void __attribute__((always_inline)) +store_helper(CPUArchState *env, target_ulong addr, uint64_t val, + TCGMemOpIdx oi, uintptr_t retaddr, size_t size, bool big_endian) { uintptr_t mmu_idx = get_mmuidx(oi); uintptr_t index = tlb_index(env, mmu_idx, addr); @@ -1514,7 +1514,7 @@ static void store_helper(CPUArchState *env, target_ulong addr, uint64_t val, /* Little-endian extract. */ val8 = val >> (i * 8); } - store_helper(env, addr + i, val8, oi, retaddr, 1, big_endian); + helper_ret_stb_mmu(env, addr + i, val8, oi, retaddr); } return; }