]> Cypherpunks repositories - gostls13.git/commit
runtime: use unoptimized memmove and memclr on Plan 9
authorAnthony Martin <ality@pbrane.org>
Thu, 13 Mar 2014 01:12:25 +0000 (18:12 -0700)
committerAnthony Martin <ality@pbrane.org>
Thu, 13 Mar 2014 01:12:25 +0000 (18:12 -0700)
commit8303a13bb8e46a11c64080f4da1b6c9ed11ac5a2
tree87c2882d1b08e123da71bb6eae4b08f7bfe02b50
parentb67979320a9214b7d1b75bbd2d11ea5a1aa40323
runtime: use unoptimized memmove and memclr on Plan 9

On Plan 9, the kernel disallows the use of floating point
instructions while handling a note. Previously, we worked
around this by using a simple loop in place of memmove.

When I added that work-around, I verified that all paths
from the note handler didn't end up calling memmove. Now
that memclr is using SSE instructions, the same process
will have to be done again.

Instead of doing that, however, this CL just punts and
uses unoptimized functions everywhere on Plan 9.

LGTM=rsc
R=rsc, 0intro
CC=golang-codereviews
https://golang.org/cl/73830044
src/pkg/runtime/memclr_386.s
src/pkg/runtime/memclr_amd64.s
src/pkg/runtime/memclr_plan9_386.s [new file with mode: 0644]
src/pkg/runtime/memclr_plan9_amd64.s [new file with mode: 0644]
src/pkg/runtime/memmove_386.s
src/pkg/runtime/memmove_amd64.s
src/pkg/runtime/memmove_plan9_386.s [new file with mode: 0644]
src/pkg/runtime/memmove_plan9_amd64.s [new file with mode: 0644]