Thread (12 messages) 12 messages, 2 authors, 2021-05-11

Re: [PATCH v1 1/3] arm64/sve: Split _sve_flush macro into separate Z, P and FFR flushes

flat view

From: Dave Martin <Dave.Martin@arm.com>
Date: 2021-05-10 15:50:39

On Mon, May 10, 2021 at 04:22:53PM +0100, Mark Brown wrote:
On Mon, May 10, 2021 at 03:57:11PM +0100, Dave P Martin wrote:
quoted
quoted
+.macro sve_flush_ffr
 		_sve_wrffr	0
quoted
This doesn't flush the FFR as advertised, but writes whatever happens to
be in P0 to the FFR.
Oh, bother - the way the macros work mean the argument isn't super clear
there, it looks like it writes an immediate value, and then of course
the generated code looks identical.  Will fix.
quoted
Thinking about it, is there ever a situation when we would want to flush
the P-regs and not the FFR (or vice-versa)?  I can't see where we would
want to do that myself.
quoted
If not, can we keep these combined?  We could either keep the name
sve_flush_p (since the FFR is a predicate register, if a weird kind of
one), or go with something more descriptive such as sve_flush_p_and_ffr.
Not right now but I do expect to build on this in the not too distant
future.
OK, but due to the fact that we need to dirty a P-register in order to
zero the FFR, these still don't feel like independent operations.

Can we control the clearing of the FFR (or not) with an argument to a
combined macro?

Cheers
---Dave

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help