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 // TODO(rsc): | 5 // TODO(rsc): |
6 // assume CLD? | 6 // assume CLD? |
7 | 7 |
8 #include <u.h> | 8 #include <u.h> |
9 #include <libc.h> | 9 #include <libc.h> |
10 #include "gg.h" | 10 #include "gg.h" |
(...skipping 224 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
235 case OMINUS: | 235 case OMINUS: |
236 case OCOM: | 236 case OCOM: |
237 a = optoas(n->op, nl->type); | 237 a = optoas(n->op, nl->type); |
238 goto uop; | 238 goto uop; |
239 | 239 |
240 // symmetric binary | 240 // symmetric binary |
241 case OAND: | 241 case OAND: |
242 case OOR: | 242 case OOR: |
243 case OXOR: | 243 case OXOR: |
244 case OADD: | 244 case OADD: |
245 case OADDPTR: | |
246 case OMUL: | 245 case OMUL: |
247 a = optoas(n->op, nl->type); | 246 a = optoas(n->op, nl->type); |
248 if(a == AIMULB) { | 247 if(a == AIMULB) { |
249 cgen_bmul(n->op, nl, nr, res); | 248 cgen_bmul(n->op, nl, nr, res); |
250 break; | 249 break; |
251 } | 250 } |
252 goto sbop; | 251 goto sbop; |
253 | 252 |
254 // asymmetric binary | 253 // asymmetric binary |
255 case OSUB: | 254 case OSUB: |
(...skipping 1315 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1571 regfree(&nodl); | 1570 regfree(&nodl); |
1572 return 0; | 1571 return 0; |
1573 | 1572 |
1574 yes: | 1573 yes: |
1575 if(freer) | 1574 if(freer) |
1576 regfree(&nodr); | 1575 regfree(&nodr); |
1577 if(freel) | 1576 if(freel) |
1578 regfree(&nodl); | 1577 regfree(&nodl); |
1579 return 1; | 1578 return 1; |
1580 } | 1579 } |
LEFT | RIGHT |