Re: [PATCH 3/6] alpha: Unify the not-implemented system call entry name

From: Richard Henderson
Date: Sat Aug 11 2018 - 00:10:09 EST


On 08/10/2018 07:45 PM, Al Viro wrote:
> BTW, seeing that it's your code - why was unop used in
> alpha_ni_syscall? I don't remember the rules re pipeline
> stalls; is it that some earlier variants prefer unop to
> nop in such places? It's not that microoptimizing that
> one makes any difference, but just out of curiosity -
> would something like
> lda $0, -ENOSYS
> stq $sp, 0($sp) /* sp != 0 */
> ret
> do just as well there?

Oh that. Well, unop is a "load" and pairs with everything
on all cpus, where nop is an integer and doesn't always
pair. So I got into the habit of using unop for everything.

The extra nop was so that lda + unop // stq + ret paired up
in in two cycles as opposed to lda /stall/ stq // ret in
three cycles on ev4+ev5. ev6 didn't care. FWIW.


r~