LEFT | RIGHT |
(no file at all) | |
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 #include "zasm_GOOS_GOARCH.h" | 5 #include "zasm_GOOS_GOARCH.h" |
6 #include "funcdata.h" | 6 #include "funcdata.h" |
7 #include "textflag.h" | 7 #include "textflag.h" |
8 | 8 |
9 TEXT runtime·rt0_go(SB),NOSPLIT,$0 | 9 TEXT runtime·rt0_go(SB),NOSPLIT,$0 |
10 // copy arguments forward on an even stack | 10 // copy arguments forward on an even stack |
(...skipping 2266 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2277 | 2277 |
2278 // Called from cgo wrappers, this function returns g->m->curg.stack.hi. | 2278 // Called from cgo wrappers, this function returns g->m->curg.stack.hi. |
2279 // Must obey the gcc calling convention. | 2279 // Must obey the gcc calling convention. |
2280 TEXT _cgo_topofstack(SB),NOSPLIT,$0 | 2280 TEXT _cgo_topofstack(SB),NOSPLIT,$0 |
2281 get_tls(CX) | 2281 get_tls(CX) |
2282 MOVL g(CX), AX | 2282 MOVL g(CX), AX |
2283 MOVL g_m(AX), AX | 2283 MOVL g_m(AX), AX |
2284 MOVL m_curg(AX), AX | 2284 MOVL m_curg(AX), AX |
2285 MOVL (g_stack+stack_hi)(AX), AX | 2285 MOVL (g_stack+stack_hi)(AX), AX |
2286 RET | 2286 RET |
| 2287 |
| 2288 // The top-most function running on a goroutine |
| 2289 // returns to goexit+PCQuantum. |
| 2290 TEXT runtime·goexit(SB),NOSPLIT,$0-0 |
| 2291 BYTE $0x90 // NOP |
| 2292 CALL runtime·goexit1(SB) // does not return |
LEFT | RIGHT |