[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20230510035243.8586-4-zhang_fei_0403@163.com>
Date: Wed, 10 May 2023 11:52:43 +0800
From: zhangfei <zhang_fei_0403@....com>
To: ajones@...tanamicro.com
Cc: aou@...s.berkeley.edu, linux-kernel@...r.kernel.org,
linux-riscv@...ts.infradead.org, palmer@...belt.com,
paul.walmsley@...ive.com, zhang_fei_0403@....com,
zhangfei@...iscas.ac.cn
Subject: Re: [PATCH] riscv: Optimize memset
From: zhangfei <zhangfei@...iscas.ac.cn>
On Tue, May 09, 2023 11:16:33AM +0200, Andrew Jones wrote:
> On Tue, May 09, 2023 at 10:22:07AM +0800, zhangfei wrote:
> >
> > Hi,
> >
> > I filled head and tail with minimal branching. Each conditional ensures that
> > all the subsequently used offsets are well-defined and in the dest region.
>
> I know. You trimmed my comment, so I'll quote myself, here
>
> """
> After the check of a2 against 6 above we know that offsets 6(t0)
> and -7(a3) are safe. Are we trying to avoid too may redundant
> stores with these additional checks?
> """
>
> So, again. Why the additional check against 8 above and, the one you
> trimmed, checking 10?
Hi,
These additional checks are to avoid too many redundant stores.
Adding a check for more than 8 bytes is because after the loop
segment '3' comes out, the remaining bytes are less than 8 bytes,
which also avoids redundant stores.
Thanks,
Fei Zhang
Powered by blists - more mailing lists