Changeset 14499 for release/1.6/source
- Timestamp:
- Dec 20, 2010, 8:54:00 PM (10 years ago)
- Location:
- release/1.6/source
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
release/1.6/source
- Property svn:mergeinfo changed
/trunk/source merged: 14494-14495
- Property svn:mergeinfo changed
-
release/1.6/source/lisp-kernel/arm-gc.c
r14485 r14499 144 144 145 145 void 146 check_xp(ExceptionInformation *xp) 147 { 148 natural *regs = (natural *) xpGPRvector(xp); 149 LispObj lr_value; 150 int r; 151 152 for (r = arg_z; r <= Rfn; r++) { 153 check_node((regs[r])); 154 } 155 } 156 157 158 159 void 160 check_tcrs(TCR *first) 161 { 162 xframe_list *xframes; 163 ExceptionInformation *xp; 164 165 TCR *tcr = first; 166 LispObj *tlb_start,*tlb_end; 167 168 do { 169 xp = tcr->gc_context; 170 if (xp) { 171 check_xp(xp); 172 } 173 for (xframes = (xframe_list *) tcr->xframe; 174 xframes; 175 xframes = xframes->prev) { 176 check_xp(xframes->curr); 177 } 178 tlb_start = tcr->tlb_pointer; 179 if (tlb_start) { 180 tlb_end = tlb_start + ((tcr->tlb_limit)>>fixnumshift); 181 check_range(tlb_start,tlb_end,false); 182 } 183 tcr = tcr->next; 184 } while (tcr != first); 185 } 186 187 void 146 188 check_all_areas(TCR *tcr) 147 189 { … … 169 211 break; 170 212 213 case AREA_CSTACK: 214 check_range((LispObj *)a->active, (LispObj *)a->high, true); 215 break; 216 171 217 } 172 218 a = a->succ; 173 219 code = (a->code); 174 220 } 221 check_tcrs(tcr); 175 222 } 176 223 -
release/1.6/source/lisp-kernel/arm-spentry.s
r14272 r14499 4160 4160 __(b 9f) 4161 4161 2: 4162 __(orr imm1,imm1,fixnumone) /* force odd */ 4162 4163 __(mov imm1,imm1,lsl #num_subtag_bits-fixnumshift) 4163 4164 __(orr imm1,imm1,#subtag_u32_vector)
Note: See TracChangeset
for help on using the changeset viewer.