summaryrefslogtreecommitdiffstats
path: root/sys/fs
diff options
context:
space:
mode:
authorjake <jake@FreeBSD.org>2003-04-03 18:43:40 +0000
committerjake <jake@FreeBSD.org>2003-04-03 18:43:40 +0000
commitaca72a7a77a602e7e160b91c98fd6d8e40eaf6f7 (patch)
tree70a23fb5f3c2600b3419c28b73852f077c6a483a /sys/fs
parent9fc72a0ca0c33bbf04fe0c339088174a153cfaa3 (diff)
downloadFreeBSD-src-aca72a7a77a602e7e160b91c98fd6d8e40eaf6f7.zip
FreeBSD-src-aca72a7a77a602e7e160b91c98fd6d8e40eaf6f7.tar.gz
Add optimized block copy and zero functions using vis instructions, which
can do 64 bytes at a time and don't allocate lines in the L2 cache. These assume that everything is 64 byte aligned, and that there's more than 128 bytes of data (best for whole pages). The block load and store instructions don't follow normal memory ordering rules and require either a memory barrier or move between registers before the data can actually be used. This implementation correctly shuffles around 3 out of the 4 sets of registers in order to avoid memory barriers expect for the last 2 blocks.
Diffstat (limited to 'sys/fs')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud