Received: by 2002:ad5:474a:0:0:0:0:0 with SMTP id i10csp3684050imu; Mon, 14 Jan 2019 07:19:25 -0800 (PST) X-Google-Smtp-Source: ALg8bN54OvOyJELv9BZbbYoBJh9LKuXcvpCMm//5lqdagfEnYh1rC4sCDwzhgFWoGnlHt7u7qm9H X-Received: by 2002:a63:68c4:: with SMTP id d187mr20803832pgc.11.1547479165210; Mon, 14 Jan 2019 07:19:25 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1547479165; cv=none; d=google.com; s=arc-20160816; b=s+dBrwrUps9iOUi6QmQKzNpyge5L8o5ZVHeKIGujFOXpk0oJpu375AZ5tWIFg65aa0 uF0JYKQFYRGZHYJXvr5XTM+Mf0OXPW6wgAT+oubRKFc4aDankAnzTydB0LhiouKI02mA uHL8Q9ET6kXAYztiK++VLLLOVaj83p4JyZQo2ceK67Vn1lBSAvdVvOAqcRloH9ReXd8I y+Dy+2NY3SyjjEsoXTvGnZvXnKt/22ijVg8vmNSCCigLDcJzPb8en0vBDxKa2CQolbwG SAQcPkl7UXBzss8HK/hEpTcK2+ZNpek01cNzRo5MPKwhX4qgOKHfWUcvbA0FEMjxm2BW vRqg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:references:in-reply-to:message-id:date :subject:cc:to:from:dkim-signature; bh=hy3DecZD6hkEps251NzCOulhaPWGA8fdtRceF9SnhfQ=; b=y/6IPMFuyfpV/vLgCXy0LjQD2ZGdc1ASRu6GxY9HySuGYZJ1+E/GxkKwLwA93Gzatb H4U70xZBNUTv4Z6W/6bUk4l+w2r08a6EQLfbd3NPCBJP5PLKhLZDknmv71PAF9rI0pKK ACDYSNnQici1ZU5u63yMUB5XdqafDXxAE5OVfTYmFTJ3Z5Bzkmk2bNp7ibKnhe1LBDEI CiRgmiAzmfk5g+3ufECvLRo5LqFjgpGwyCjutOzPPR3EOc/OyiUw+o9IrnPLrh4Cu+vP hkX8Yd6OzatOZEx3MmNIzkfbFuqtSQRu0jarS5K9vNeaZfTL8ANFHQMZemJ3ZW0rq47n FSdw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@synopsys.com header.s=mail header.b=kYQHWMMn; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=synopsys.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id j21si511656pfn.277.2019.01.14.07.19.09; Mon, 14 Jan 2019 07:19:25 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@synopsys.com header.s=mail header.b=kYQHWMMn; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=synopsys.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726803AbfANPRN (ORCPT + 99 others); Mon, 14 Jan 2019 10:17:13 -0500 Received: from us01smtprelay-2.synopsys.com ([198.182.60.111]:32902 "EHLO smtprelay.synopsys.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726755AbfANPRH (ORCPT ); Mon, 14 Jan 2019 10:17:07 -0500 Received: from mailhost.synopsys.com (mailhost1.synopsys.com [10.12.238.239]) by smtprelay.synopsys.com (Postfix) with ESMTP id 6D39B10C1375; Mon, 14 Jan 2019 07:17:07 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=synopsys.com; s=mail; t=1547479027; bh=Th0aMmoqXykae17QutbAQZjcPAwhC62MQIBQ8R0lB2c=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=kYQHWMMnBA1fUitDAFQoT96nU9FmUy1p+rF98351Ox9SHT7FX8Q8egq3npLDDPLFE /XVkM/vipiF9syWAgQYv1gTAKEsn+FzEBW1eegyM26oAAUKKSO8fMLNXwiy8QeXdPE +w906TSEX4CXBWc0jcHwH1sLcbg+DqMfj569v0TcwZQTB0hRRL7ZYXn3in3v0KxxFW ZkHxTbGFrtBvRG7sK7NCrcRy9bApxih2FRdXN4KRWQ9/hzXZvqjcY/zndScFrIqOV0 H6atkCZHR2Advt0b180iTm3frlwISaVMWaU0DAqojVhe2qlNalTcjaluxm6ju7BJGM QrqDOWHv4pstQ== Received: from paltsev-e7480.internal.synopsys.com (paltsev-e7480.internal.synopsys.com [10.121.3.66]) by mailhost.synopsys.com (Postfix) with ESMTP id C497758B3; Mon, 14 Jan 2019 07:17:05 -0800 (PST) From: Eugeniy Paltsev To: linux-snps-arc@lists.infradead.org, Vineet Gupta Cc: linux-kernel@vger.kernel.org, Alexey Brodkin , Eugeniy Paltsev Subject: [PATCH 2/2] ARCv2: LIB: memset: move st instruction series to macros Date: Mon, 14 Jan 2019 18:16:49 +0300 Message-Id: <20190114151649.32726-2-Eugeniy.Paltsev@synopsys.com> X-Mailer: git-send-email 2.14.5 In-Reply-To: <20190114151649.32726-1-Eugeniy.Paltsev@synopsys.com> References: <20190114151649.32726-1-Eugeniy.Paltsev@synopsys.com> Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Move store 32 byte instruction series to macros to make code more readable. Signed-off-by: Eugeniy Paltsev --- arch/arc/lib/memset-archs.S | 63 +++++++++++++++------------------------------ 1 file changed, 21 insertions(+), 42 deletions(-) diff --git a/arch/arc/lib/memset-archs.S b/arch/arc/lib/memset-archs.S index c7717832336f..4a0d562d23cd 100644 --- a/arch/arc/lib/memset-archs.S +++ b/arch/arc/lib/memset-archs.S @@ -31,6 +31,24 @@ # endif #endif /* L1_CACHE_SHIFT!=6 */ +.macro MEMSET_32BYTE val, adr +#ifdef CONFIG_ARC_HAS_LL64 + std.ab \val, [\adr, 8] + std.ab \val, [\adr, 8] + std.ab \val, [\adr, 8] + std.ab \val, [\adr, 8] +#else + st.ab \val, [\adr, 4] + st.ab \val, [\adr, 4] + st.ab \val, [\adr, 4] + st.ab \val, [\adr, 4] + st.ab \val, [\adr, 4] + st.ab \val, [\adr, 4] + st.ab \val, [\adr, 4] + st.ab \val, [\adr, 4] +#endif +.endm + ENTRY_CFI(memset) PREFETCHW_INSTR([r0]) ; Prefetch the first write location mov.f 0, r2 @@ -70,53 +88,14 @@ ENTRY_CFI(memset) lpnz @.Lset64bytes ;; LOOP START PREALLOC_INSTR([r3, 64]) ;Prefetch the next write location -#ifdef CONFIG_ARC_HAS_LL64 - std.ab r4, [r3, 8] - std.ab r4, [r3, 8] - std.ab r4, [r3, 8] - std.ab r4, [r3, 8] - std.ab r4, [r3, 8] - std.ab r4, [r3, 8] - std.ab r4, [r3, 8] - std.ab r4, [r3, 8] -#else - st.ab r4, [r3, 4] - st.ab r4, [r3, 4] - st.ab r4, [r3, 4] - st.ab r4, [r3, 4] - st.ab r4, [r3, 4] - st.ab r4, [r3, 4] - st.ab r4, [r3, 4] - st.ab r4, [r3, 4] - st.ab r4, [r3, 4] - st.ab r4, [r3, 4] - st.ab r4, [r3, 4] - st.ab r4, [r3, 4] - st.ab r4, [r3, 4] - st.ab r4, [r3, 4] - st.ab r4, [r3, 4] - st.ab r4, [r3, 4] -#endif + MEMSET_32BYTE r4, r3 + MEMSET_32BYTE r4, r3 .Lset64bytes: lsr.f lp_count, r2, 5 ;Last remaining max 124 bytes lpnz .Lset32bytes ;; LOOP START -#ifdef CONFIG_ARC_HAS_LL64 - std.ab r4, [r3, 8] - std.ab r4, [r3, 8] - std.ab r4, [r3, 8] - std.ab r4, [r3, 8] -#else - st.ab r4, [r3, 4] - st.ab r4, [r3, 4] - st.ab r4, [r3, 4] - st.ab r4, [r3, 4] - st.ab r4, [r3, 4] - st.ab r4, [r3, 4] - st.ab r4, [r3, 4] - st.ab r4, [r3, 4] -#endif + MEMSET_32BYTE r4, r3 .Lset32bytes: and.f lp_count, r2, 0x1F ;Last remaining 31 bytes -- 2.14.5