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

Delta Between Two Patch Sets: src/cmd/6g/list.c

Issue 6922048: code review 6922048: cmd/{5,6,8}g: reduce size of Prog and Addr (Closed)
Left Patch Set: diff -r ec3ae5b98922 https://code.google.com/p/go Created 12 years, 3 months ago
Right Patch Set: diff -r 8ea9d438b64e https://go.googlecode.com/hg/ Created 12 years, 3 months 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:
Right: Side by side diff | Download
« no previous file with change/comment | « src/cmd/6g/gsubr.c ('k') | src/cmd/6g/peep.c » ('j') | no next file with change/comment »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
LEFTRIGHT
(no file at all)
1 // Derived from Inferno utils/6c/list.c 1 // Derived from Inferno utils/6c/list.c
2 // http://code.google.com/p/inferno-os/source/browse/utils/6c/list.c 2 // http://code.google.com/p/inferno-os/source/browse/utils/6c/list.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 89 matching lines...) Expand 10 before | Expand all | Expand 10 after
100 snprint(str, sizeof(str), "$%lld,%R", a->offset, i); 100 snprint(str, sizeof(str), "$%lld,%R", a->offset, i);
101 else 101 else
102 snprint(str, sizeof(str), "%R", i); 102 snprint(str, sizeof(str), "%R", i);
103 break; 103 break;
104 104
105 case D_NONE: 105 case D_NONE:
106 str[0] = 0; 106 str[0] = 0;
107 break; 107 break;
108 108
109 case D_BRANCH: 109 case D_BRANCH:
110 » » if(a->branch == nil) 110 » » if(a->u.branch == nil)
111 snprint(str, sizeof(str), "<nil>"); 111 snprint(str, sizeof(str), "<nil>");
112 else 112 else
113 » » » snprint(str, sizeof(str), "%d", a->branch->loc); 113 » » » snprint(str, sizeof(str), "%d", a->u.branch->loc);
114 break; 114 break;
115 115
116 case D_EXTERN: 116 case D_EXTERN:
117 snprint(str, sizeof(str), "%S+%lld(SB)", a->sym, a->offset); 117 snprint(str, sizeof(str), "%S+%lld(SB)", a->sym, a->offset);
118 break; 118 break;
119 119
120 case D_STATIC: 120 case D_STATIC:
121 snprint(str, sizeof(str), "%S<>+%lld(SB)", a->sym, a->offset); 121 snprint(str, sizeof(str), "%S<>+%lld(SB)", a->sym, a->offset);
122 break; 122 break;
123 123
124 case D_AUTO: 124 case D_AUTO:
125 snprint(str, sizeof(str), "%S+%lld(SP)", a->sym, a->offset); 125 snprint(str, sizeof(str), "%S+%lld(SP)", a->sym, a->offset);
126 break; 126 break;
127 127
128 case D_PARAM: 128 case D_PARAM:
129 snprint(str, sizeof(str), "%S+%lld(FP)", a->sym, a->offset); 129 snprint(str, sizeof(str), "%S+%lld(FP)", a->sym, a->offset);
130 break; 130 break;
131 131
132 case D_CONST: 132 case D_CONST:
133 if(fp->flags & FmtLong) { 133 if(fp->flags & FmtLong) {
134 d1 = a->offset & 0xffffffffLL; 134 d1 = a->offset & 0xffffffffLL;
135 d2 = (a->offset>>32) & 0xffffffffLL; 135 d2 = (a->offset>>32) & 0xffffffffLL;
136 snprint(str, sizeof(str), "$%lud-%lud", (ulong)d1, (ulon g)d2); 136 snprint(str, sizeof(str), "$%lud-%lud", (ulong)d1, (ulon g)d2);
137 break; 137 break;
138 } 138 }
139 snprint(str, sizeof(str), "$%lld", a->offset); 139 snprint(str, sizeof(str), "$%lld", a->offset);
140 break; 140 break;
141 141
142 case D_FCONST: 142 case D_FCONST:
143 » » snprint(str, sizeof(str), "$(%.17e)", a->dval); 143 » » snprint(str, sizeof(str), "$(%.17e)", a->u.dval);
144 break; 144 break;
145 145
146 case D_SCONST: 146 case D_SCONST:
147 » » snprint(str, sizeof(str), "$\"%Y\"", a->sval); 147 » » snprint(str, sizeof(str), "$\"%Y\"", a->u.sval);
148 break; 148 break;
149 149
150 case D_ADDR: 150 case D_ADDR:
151 a->type = a->index; 151 a->type = a->index;
152 a->index = D_NONE; 152 a->index = D_NONE;
153 snprint(str, sizeof(str), "$%D", a); 153 snprint(str, sizeof(str), "$%D", a);
154 a->index = a->type; 154 a->index = a->type;
155 a->type = D_ADDR; 155 a->type = D_ADDR;
156 goto conv; 156 goto conv;
157 } 157 }
(...skipping 194 matching lines...) Expand 10 before | Expand all | Expand 10 after
352 *p++ = 't'; 352 *p++ = 't';
353 continue; 353 continue;
354 } 354 }
355 *p++ = (c>>6) + '0'; 355 *p++ = (c>>6) + '0';
356 *p++ = ((c>>3) & 7) + '0'; 356 *p++ = ((c>>3) & 7) + '0';
357 *p++ = (c & 7) + '0'; 357 *p++ = (c & 7) + '0';
358 } 358 }
359 *p = 0; 359 *p = 0;
360 return fmtstrcpy(fp, str); 360 return fmtstrcpy(fp, str);
361 } 361 }
LEFTRIGHT

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