LEFT | RIGHT |
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 /* | 5 /* |
6 * portable half of code generator. | 6 * portable half of code generator. |
7 * mainly statements and control flow. | 7 * mainly statements and control flow. |
8 */ | 8 */ |
9 | 9 |
| 10 #include <u.h> |
| 11 #include <libc.h> |
10 #include "go.h" | 12 #include "go.h" |
11 | 13 |
12 static void cgen_dcl(Node *n); | 14 static void cgen_dcl(Node *n); |
13 static void cgen_proc(Node *n, int proc); | 15 static void cgen_proc(Node *n, int proc); |
14 static void checkgoto(Node*, Node*); | 16 static void checkgoto(Node*, Node*); |
15 | 17 |
16 static Label *labellist; | 18 static Label *labellist; |
17 static Label *lastlabel; | 19 static Label *lastlabel; |
18 | 20 |
19 Node* | 21 Node* |
(...skipping 849 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
869 stksize += w; | 871 stksize += w; |
870 stksize = rnd(stksize, t->align); | 872 stksize = rnd(stksize, t->align); |
871 if(thechar == '5') | 873 if(thechar == '5') |
872 stksize = rnd(stksize, widthptr); | 874 stksize = rnd(stksize, widthptr); |
873 n->xoffset = -stksize; | 875 n->xoffset = -stksize; |
874 | 876 |
875 // print("\ttmpname (%d): %N\n", stksize, n); | 877 // print("\ttmpname (%d): %N\n", stksize, n); |
876 | 878 |
877 *nn = *n; | 879 *nn = *n; |
878 } | 880 } |
LEFT | RIGHT |