1
0
mirror of https://github.com/chai2010/advanced-go-programming-book.git synced 2025-05-23 20:02:22 +00:00
advanced-go-programming-book/images/ch3-9-func-decl-02.ditaa.txt
2018-12-14 21:50:29 +08:00

31 lines
1.6 KiB
Plaintext

func Swap(a, b int) (int, int)
+----------+
| |
| stack |
| cRED | call frame
+----------+ +-----------+ <-=-arg+argsize(FP)
| stack | <--------=- | argsize | <------------------------+argsize
| | | cPNK | :
|call frame| +-----------+ <-=-arg+0(FP) |
| | | | cAAA | |
| | | +-----------+ <-=-tmp-0(SP) |
|cRED| | <--------=- | framesize | <---------+framesize |
| v | | cRED | : |
+----------+ <-=-0(SP) +-----------+ <-=-0(SP) | |
| cAAA | | |
| unused | | |
| | | |
+----------+ | |
| cGRE | | |
| heap | | |
| | +------+------------+------------+---+------+
+----------+ | | | | | |
| cBLU | +-----=- | TEXT | ·Swap(SB), | $framesize | - | 32 |
| data | | | cYEL | cYEL | cRED | | cRED |
+----------+ | +------+------------+------------+---+------+
| cYEL | <--+TEXT |
| text | :
+----------+ <--------------------------+SB