Rietveld Code Review Tool
Help | Bug tracker | Discussion group | Source code | Sign in
(679)

Side by Side Diff: src/cmd/5l/pass.c

Issue 884041: code review 884041: runtime: various arm fixes (Closed)
Patch Set: code review 884041: runtime: various arm fixes Created 15 years ago
Left:
Right:
Use n/p to move between diff chunks; N/P to move between comments. Please Sign in to add in-line comments.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Inferno utils/5l/pass.c 1 // Inferno utils/5l/pass.c
2 // http://code.google.com/p/inferno-os/source/browse/utils/5l/pass.c 2 // http://code.google.com/p/inferno-os/source/browse/utils/5l/pass.c
3 // 3 //
4 // Copyright © 1994-1999 Lucent Technologies Inc. All rights reserved. 4 // Copyright © 1994-1999 Lucent Technologies Inc. All rights reserved.
5 // Portions Copyright © 1995-1997 C H Forsyth (forsyth@terzarima.net) 5 // Portions Copyright © 1995-1997 C H Forsyth (forsyth@terzarima.net)
6 // Portions Copyright © 1997-1999 Vita Nuova Limited 6 // Portions Copyright © 1997-1999 Vita Nuova Limited
7 // Portions Copyright © 2000-2007 Vita Nuova Holdings Limited (www.vitanuov a.com) 7 // Portions Copyright © 2000-2007 Vita Nuova Holdings Limited (www.vitanuov a.com)
8 // Portions Copyright © 2004,2006 Bruce Ellis 8 // Portions Copyright © 2004,2006 Bruce Ellis
9 // Portions Copyright © 2005-2007 C H Forsyth (forsyth@terzarima.net) 9 // Portions Copyright © 2005-2007 C H Forsyth (forsyth@terzarima.net)
10 // Revisions Copyright © 2000-2007 Lucent Technologies Inc. and others 10 // Revisions Copyright © 2000-2007 Lucent Technologies Inc. and others
(...skipping 214 matching lines...) Expand 10 before | Expand all | Expand 10 after
225 setarch(p); 225 setarch(p);
226 a = p->as; 226 a = p->as;
227 if(a == ATEXT) 227 if(a == ATEXT)
228 curtext = p; 228 curtext = p;
229 if(!curtext->from.sym->reachable) { 229 if(!curtext->from.sym->reachable) {
230 p = p->cond; 230 p = p->cond;
231 goto loop; 231 goto loop;
232 } 232 }
233 if(a == AB) { 233 if(a == AB) {
234 q = p->cond; 234 q = p->cond;
235 » » if(q != P) { 235 » » if(q != P && q->as != ATEXT) {
kaib 2010/04/05 10:34:38 heh, this would have taken me a while to find..
rsc1 2010/04/05 17:48:57 Me too.
236 p->mark |= FOLL; 236 p->mark |= FOLL;
237 p = q; 237 p = q;
238 if(!(p->mark & FOLL)) 238 if(!(p->mark & FOLL))
239 goto loop; 239 goto loop;
240 } 240 }
241 } 241 }
242 if(p->mark & FOLL) { 242 if(p->mark & FOLL) {
243 for(i=0,q=p; i<4; i++,q=q->link) { 243 for(i=0,q=p; i<4; i++,q=q->link) {
244 if(q == lastp) 244 if(q == lastp)
245 break; 245 break;
(...skipping 727 matching lines...) Expand 10 before | Expand all | Expand 10 after
973 newdata(et, off, sizeof(int32), D_EXTERN); 973 newdata(et, off, sizeof(int32), D_EXTERN);
974 off += sizeof(int32); 974 off += sizeof(int32);
975 } 975 }
976 et->value = off; 976 et->value = off;
977 if(sv == 0) 977 if(sv == 0)
978 sv = 1; 978 sv = 1;
979 str->value = sv; 979 str->value = sv;
980 exports = ne; 980 exports = ne;
981 free(esyms); 981 free(esyms);
982 } 982 }
OLDNEW

Powered by Google App Engine
RSS Feeds Recent Issues | This issue
This is Rietveld f62528b