Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
J
jacobsa-fuse
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
Kirill Smelkov
jacobsa-fuse
Commits
05b45914
Commit
05b45914
authored
Dec 19, 2016
by
Aaron Jacobs
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
buffer: split runtime.s into pre- and post-Go 1.8 files.
Go 1.8 renamed this function; cf. golang/go@87e48c5.
parent
641629d1
Changes
3
Show whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
40 additions
and
0 deletions
+40
-0
internal/buffer/runtime.go
internal/buffer/runtime.go
+2
-0
internal/buffer/runtime_go1.8.s
internal/buffer/runtime_go1.8.s
+37
-0
internal/buffer/runtime_other.s
internal/buffer/runtime_other.s
+1
-0
No files found.
internal/buffer/runtime.go
View file @
05b45914
...
...
@@ -19,6 +19,8 @@ import "unsafe"
//go:noescape
// Zero the n bytes starting at p.
//
// REQUIRES: the region does not contain any Go pointers.
func
memclr
(
p
unsafe
.
Pointer
,
n
uintptr
)
//go:noescape
...
...
internal/buffer/runtime_go1.8.s
0 → 100644
View file @
05b45914
//
Copyright
2015
Google
Inc
.
All
Rights
Reserved
.
//
//
Licensed
under
the
Apache
License
,
Version
2
.0
(
the
"License"
)
;
//
you
may
not
use
this
file
except
in
compliance
with
the
License
.
//
You
may
obtain
a
copy
of
the
License
at
//
//
http
://
www.apache.org
/
licenses
/
LICENSE
-2.0
//
//
Unless
required
by
applicable
law
or
agreed
to
in
writing
,
software
//
distributed
under
the
License
is
distributed
on
an
"AS IS"
BASIS
,
//
WITHOUT
WARRANTIES
OR
CONDITIONS
OF
ANY
KIND
,
either
express
or
implied
.
//
See
the
License
for
the
specific
language
governing
permissions
and
//
limitations
under
the
License
.
//
+
build
amd64
arm64
ppc64
ppc64le
//
+
build
go1
.8
//
Assembly
code
isn
't subject to visibility restrictions, so we can jump
//
directly
into
package
runtime
.
//
//
Technique
copied
from
here
:
//
https
://
github.com
/
golang
/
go
/
blob
/
d8c6dac
/
src
/
os
/
signal
/
sig.s
#include "textflag.h"
#ifdef GOARCH_ppc64
#define JMP BR
#endif
#ifdef GOARCH_ppc64le
#define JMP BR
#endif
TEXT
·
memclr
(
SB
),
NOSPLIT
,$0-16
JMP
runtime
·
memclrNoHeapPointers
(
SB
)
TEXT
·
memmove
(
SB
),
NOSPLIT
,$0-24
JMP
runtime
·
memmove
(
SB
)
internal/buffer/runtime.s
→
internal/buffer/runtime
_other
.s
View file @
05b45914
...
...
@@ -13,6 +13,7 @@
//
limitations
under
the
License
.
//
+
build
amd64
arm64
ppc64
ppc64le
//
+
build
!
go1
.8
//
Assembly
code
isn
't subject to visibility restrictions, so we can jump
//
directly
into
package
runtime
.
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment