Date: Mon, 29 Aug 2016 06:07:44 +0000 (UTC) From: Bruce Evans <bde@FreeBSD.org> To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r304986 - head/sys/amd64/amd64 Message-ID: <201608290607.u7T67ire065642@repo.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: bde Date: Mon Aug 29 06:07:43 2016 New Revision: 304986 URL: https://svnweb.freebsd.org/changeset/base/304986 Log: Restore the nontemporal pagezero() under the name sse2_pagezero() (the same name as for i386). It is not reconnected yet. Which method is better is too machine-dependent and system-dependent to replace the old method unconditionally. Modified: head/sys/amd64/amd64/support.S Modified: head/sys/amd64/amd64/support.S ============================================================================== --- head/sys/amd64/amd64/support.S Mon Aug 29 05:59:12 2016 (r304985) +++ head/sys/amd64/amd64/support.S Mon Aug 29 06:07:43 2016 (r304986) @@ -72,6 +72,24 @@ ENTRY(pagezero) ret END(pagezero) +/* Address: %rdi */ +ENTRY(sse2_pagezero) + PUSH_FRAME_POINTER + movq $-PAGE_SIZE,%rdx + subq %rdx,%rdi + xorl %eax,%eax +1: + movnti %rax,(%rdi,%rdx) + movnti %rax,8(%rdi,%rdx) + movnti %rax,16(%rdi,%rdx) + movnti %rax,24(%rdi,%rdx) + addq $32,%rdx + jne 1b + sfence + POP_FRAME_POINTER + ret +END(pagezero) + ENTRY(bcmp) PUSH_FRAME_POINTER movq %rdx,%rcx
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201608290607.u7T67ire065642>