OLD | NEW |
1 // Copyright 2009 The Go Authors. All rights reserved. | 1 // Copyright 2009 The Go Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style | 2 // Use of this source code is governed by a BSD-style |
3 // license that can be found in the LICENSE file. | 3 // license that can be found in the LICENSE file. |
4 // | 4 // |
5 // System calls and other sys.stuff for AMD64, FreeBSD | 5 // System calls and other sys.stuff for AMD64, FreeBSD |
6 // /usr/src/sys/kern/syscalls.master for syscall numbers. | 6 // /usr/src/sys/kern/syscalls.master for syscall numbers. |
7 // | 7 // |
8 | 8 |
9 #include "zasm_GOOS_GOARCH.h" | 9 #include "zasm_GOOS_GOARCH.h" |
10 ········ | 10 ········ |
(...skipping 120 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
131 JCC 2(PC) | 131 JCC 2(PC) |
132 MOVL $0xf1, 0xf1 // crash | 132 MOVL $0xf1, 0xf1 // crash |
133 RET | 133 RET |
134 | 134 |
135 TEXT runtime·sigtramp(SB),7,$64 | 135 TEXT runtime·sigtramp(SB),7,$64 |
136 get_tls(BX) | 136 get_tls(BX) |
137 ········ | 137 ········ |
138 // check that m exists | 138 // check that m exists |
139 MOVQ m(BX), BP | 139 MOVQ m(BX), BP |
140 CMPQ BP, $0 | 140 CMPQ BP, $0 |
141 » JNE» 2(PC) | 141 » JNE» 4(PC) |
| 142 » MOVQ» DI, 0(SP) |
142 CALL runtime·badsignal(SB) | 143 CALL runtime·badsignal(SB) |
| 144 RET |
143 | 145 |
144 // save g | 146 // save g |
145 MOVQ g(BX), R10 | 147 MOVQ g(BX), R10 |
146 MOVQ R10, 40(SP) | 148 MOVQ R10, 40(SP) |
147 ········ | 149 ········ |
148 // g = m->signal | 150 // g = m->signal |
149 MOVQ m_gsignal(BP), BP | 151 MOVQ m_gsignal(BP), BP |
150 MOVQ BP, g(BX) | 152 MOVQ BP, g(BX) |
151 ········ | 153 ········ |
152 MOVQ DI, 0(SP) | 154 MOVQ DI, 0(SP) |
(...skipping 88 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
241 | 243 |
242 TEXT runtime·sigprocmask(SB),7,$0 | 244 TEXT runtime·sigprocmask(SB),7,$0 |
243 MOVL $3, DI // arg 1 - how (SIG_SETMASK) | 245 MOVL $3, DI // arg 1 - how (SIG_SETMASK) |
244 MOVQ 8(SP), SI // arg 2 - set | 246 MOVQ 8(SP), SI // arg 2 - set |
245 MOVQ 16(SP), DX // arg 3 - oset | 247 MOVQ 16(SP), DX // arg 3 - oset |
246 MOVL $340, AX // sys_sigprocmask | 248 MOVL $340, AX // sys_sigprocmask |
247 SYSCALL | 249 SYSCALL |
248 JAE 2(PC) | 250 JAE 2(PC) |
249 MOVL $0xf1, 0xf1 // crash | 251 MOVL $0xf1, 0xf1 // crash |
250 RET | 252 RET |
OLD | NEW |