detached 5378e2e

purego: use R10 instead of R12 (#65)

R12 is callee-saved but we aren't saving it. Use R10 since it is caller saved.

This a back port of commit 382f4c69b85482e885511dd001710fd145469a76

Closes #64
commit
5378e2e5b9a7622c02c41d64ca196d52ccadcc9c
author
TotallyGamerJet · · 2022-11-09 13:42 UTC
committer
GitHub · · 2022-11-09 13:42 UTC
parent
786906f
signature
GPG Unverified4AEE18F83AFDEB23 The key is unknown
refs
tag: v0.1.1
1 file · +4 -4
M sys_darwin_amd64.s +4 -4
@@ -88,7 +88,7 @@ TEXT callbackasm1(SB), NOSPLIT, $0
8888 MOVQ 0(SP), AX
8989 ADDQ $8, SP
9090
91- MOVQ 0(SP), R12 // get the return SP so that we can align register args with stack args
91+ MOVQ 0(SP), R10 // get the return SP so that we can align register args with stack args
9292
9393 // make space for first six arguments below the frame
9494 ADJSP $6*8, SP
@@ -100,7 +100,7 @@ TEXT callbackasm1(SB), NOSPLIT, $0
100100 MOVQ R9, 48(SP)
101101 LEAQ 8(SP), R8 // R8 = address of args vector
102102
103- MOVQ R12, 0(SP) // push the stack pointer below registers
103+ MOVQ R10, 0(SP) // push the stack pointer below registers
104104
105105 // determine index into runtime·cbs table
106106 MOVQ $callbackasm(SB), DX
@@ -139,10 +139,10 @@ TEXT callbackasm1(SB), NOSPLIT, $0
139139
140140 POP_REGS_HOST_TO_ABI0()
141141
142- MOVQ 0(SP), R12 // get the SP back
142+ MOVQ 0(SP), R10 // get the SP back
143143
144144 ADJSP $-6*8, SP // remove arguments
145145
146- MOVQ R12, 0(SP)
146+ MOVQ R10, 0(SP)
147147
148148 RET
@@ -88,7 +88,7 @@ TEXT callbackasm1(SB), NOSPLIT, $0
88 MOVQ 0(SP), AX88 MOVQ 0(SP), AX
89 ADDQ $8, SP89 ADDQ $8, SP
90 90
91- MOVQ 0(SP), R12 // get the return SP so that we can align register args with stack args91+ MOVQ 0(SP), R10 // get the return SP so that we can align register args with stack args
92 92
93 // make space for first six arguments below the frame93 // make space for first six arguments below the frame
94 ADJSP $6*8, SP94 ADJSP $6*8, SP
@@ -100,7 +100,7 @@ TEXT callbackasm1(SB), NOSPLIT, $0
100 MOVQ R9, 48(SP)100 MOVQ R9, 48(SP)
101 LEAQ 8(SP), R8 // R8 = address of args vector101 LEAQ 8(SP), R8 // R8 = address of args vector
102 102
103- MOVQ R12, 0(SP) // push the stack pointer below registers103+ MOVQ R10, 0(SP) // push the stack pointer below registers
104 104
105 // determine index into runtime·cbs table105 // determine index into runtime·cbs table
106 MOVQ $callbackasm(SB), DX106 MOVQ $callbackasm(SB), DX
@@ -139,10 +139,10 @@ TEXT callbackasm1(SB), NOSPLIT, $0
139 139
140 POP_REGS_HOST_TO_ABI0()140 POP_REGS_HOST_TO_ABI0()
141 141
142- MOVQ 0(SP), R12 // get the SP back142+ MOVQ 0(SP), R10 // get the SP back
143 143
144 ADJSP $-6*8, SP // remove arguments144 ADJSP $-6*8, SP // remove arguments
145 145
146- MOVQ R12, 0(SP)146+ MOVQ R10, 0(SP)
147 147
148 RET148 RET

Keyboard shortcuts

Single-key shortcuts are on. ctrl k and esc work whatever this says.

ctrl k :
go to a section, branch, tag, file or repository
?
this list
j k
move the row cursor down / up
enter
open the row under the cursor; on Files, a directory opens or closes in place
↑ ↓ ← → home end
in the file tree (focus on a row): previous / next row, close / open a directory or go to its parent / first entry, first / last row. They never open a file
l h
on Files: open a directory or a file / close a directory or go up to its parent, then to the parent page. Elsewhere: into the side panel (on a merge request, its files) / back to the content; there j k move between its controls
g g G
first / last row
/
filter the list; on Files, find a file anywhere in the repository (esc clears, enter opens the best match)
b
switch branch or tag
g s g f g c g b g m g i g r g a
tabs: summary, files, commits, branches & tags, merge requests, issues, releases, actions (when available)
g h
home
w
wide mode: use the whole width of the screen, or not (remembered)
y
copy a permalink pinned to the commit
d u x
diff: split / unified / collapse or expand all
e E
diff: the whole file in view / every file, with the lines the hunks hide
n
merge request: next note in the diff
esc
close a dialog, leave a field

Branches 1

Tags 102

↑↓ moveenter openesc close