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 <u.h> | 5 #include <u.h> |
6 #include <libc.h> | 6 #include <libc.h> |
7 #include "gg.h" | 7 #include "gg.h" |
8 | 8 |
9 /* | 9 /* |
10 * generate: | 10 * generate: |
(...skipping 236 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
247 gins(optoas(OMINUS, nl->type), &n2, &n1); | 247 gins(optoas(OMINUS, nl->type), &n2, &n1); |
248 gmove(&n1, res); | 248 gmove(&n1, res); |
249 regfree(&n1); | 249 regfree(&n1); |
250 goto ret; | 250 goto ret; |
251 | 251 |
252 // symmetric binary | 252 // symmetric binary |
253 case OAND: | 253 case OAND: |
254 case OOR: | 254 case OOR: |
255 case OXOR: | 255 case OXOR: |
256 case OADD: | 256 case OADD: |
| 257 case OADDPTR: |
257 case OMUL: | 258 case OMUL: |
258 a = optoas(n->op, nl->type); | 259 a = optoas(n->op, nl->type); |
259 goto sbop; | 260 goto sbop; |
260 | 261 |
261 // asymmetric binary | 262 // asymmetric binary |
262 case OSUB: | 263 case OSUB: |
263 a = optoas(n->op, nl->type); | 264 a = optoas(n->op, nl->type); |
264 goto abop; | 265 goto abop; |
265 | 266 |
266 case OHMUL: | 267 case OHMUL: |
(...skipping 1493 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1760 regfree(&nodl); | 1761 regfree(&nodl); |
1761 return 0; | 1762 return 0; |
1762 | 1763 |
1763 yes: | 1764 yes: |
1764 if(freer) | 1765 if(freer) |
1765 regfree(&nodr); | 1766 regfree(&nodr); |
1766 if(freel) | 1767 if(freel) |
1767 regfree(&nodl); | 1768 regfree(&nodl); |
1768 return 1; | 1769 return 1; |
1769 } | 1770 } |
LEFT | RIGHT |