HomeFreeBSD

amd64: clean up copyin/copyout

Description

amd64: clean up copyin/copyout

  • move the PSL.AC comment to the fault handler
  • stop testing for zero-sized ops. after several minutes of package

building there were no copyin calls with zero bytes and very few
copyout. the semantic of returning 0 in this case is preserved

  • shorten exit paths by clearing %eax earlier
  • replace xchg with 3 movs. this is what compilers do. a naive

benchmark on EPYC suggests about 1% increase in thoughput thanks to
this change.

  • remove the useless movb %cl,%al from copyout. it looks like a

leftover from many years ago

Reviewed by: kib
Approved by: re (gjb)
Differential Revision: https://reviews.freebsd.org/D17286

Details

Provenance
mjgAuthored on
Reviewer
kib
Differential Revision
D17286: amd64: clean up copyin/copyout
Parents
rS338966: MFC r333081 (by eadler):
Branches
Unknown
Tags
Unknown