/[jscoverage]/trunk/js/jsgc.cpp
ViewVC logotype

Diff of /trunk/js/jsgc.cpp

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 398 by siliconforks, Thu Oct 23 19:03:33 2008 UTC revision 399 by siliconforks, Tue Dec 9 03:37:47 2008 UTC
# Line 2796  Line 2796 
2796               * Don't mark what has not been pushed yet, or what has been               * Don't mark what has not been pushed yet, or what has been
2797               * popped already.               * popped already.
2798               */               */
             JS_ASSERT((size_t) (fp->regs->sp - fp->slots) <=  
                       fp->script->nslots);  
2799              nslots = (uintN) (fp->regs->sp - fp->slots);              nslots = (uintN) (fp->regs->sp - fp->slots);
2800              TRACE_JSVALS(trc, nslots, fp->slots, "slot");              TRACE_JSVALS(trc, nslots, fp->slots, "slot");
2801          }          }
# Line 3002  Line 3000 
3000  void  void
3001  js_TraceTraceMonitor(JSTracer *trc, JSTraceMonitor *tm)  js_TraceTraceMonitor(JSTracer *trc, JSTraceMonitor *tm)
3002  {  {
3003      if (IS_GC_MARKING_TRACER(trc))      if (IS_GC_MARKING_TRACER(trc)) {
3004          tm->recoveryDoublePoolPtr = tm->recoveryDoublePool;          tm->recoveryDoublePoolPtr = tm->recoveryDoublePool;
3005            /* Make sure the global shape changes and will force a flush
3006               of the code cache. */
3007            tm->globalShape = -1;
3008        }
3009  }  }
3010    
3011  void  void
# Line 3357  Line 3359 
3359    }    }
3360  #endif  #endif
3361    
3362      /* Clear property and JIT caches (only for cx->thread if JS_THREADSAFE). */      /* Clear property and JIT oracle caches (only for cx->thread if JS_THREADSAFE). */
3363      js_FlushPropertyCache(cx);      js_FlushPropertyCache(cx);
3364  #ifdef JS_TRACER  #ifdef JS_TRACER
     js_FlushJITCache(cx);  
3365      js_FlushJITOracle(cx);      js_FlushJITOracle(cx);
3366  #endif  #endif
3367    
# Line 3385  Line 3386 
3386          GSN_CACHE_CLEAR(&acx->thread->gsnCache);          GSN_CACHE_CLEAR(&acx->thread->gsnCache);
3387          js_FlushPropertyCache(acx);          js_FlushPropertyCache(acx);
3388  #ifdef JS_TRACER  #ifdef JS_TRACER
3389          js_FlushJITCache(acx);          js_FlushJITOracle(acx);
3390  #endif  #endif
3391          DestroyScriptsToGC(cx, &acx->thread->scriptsToGC);          DestroyScriptsToGC(cx, &acx->thread->scriptsToGC);
3392      }      }
# Line 3674  Line 3675 
3675          goto restart;          goto restart;
3676      }      }
3677    
3678      if (rt->shapeGen & SHAPE_OVERFLOW_BIT) {      if (rt->shapeGen >= SHAPE_OVERFLOW_BIT - 1) {
3679          /*          /*
3680           * FIXME bug 440834: The shape id space has overflowed. Currently we           * FIXME bug 440834: The shape id space has overflowed. Currently we
3681           * cope badly with this. Every call to js_GenerateShape does GC, and           * cope badly with this. Every call to js_GenerateShape does GC, and

Legend:
Removed from v.398  
changed lines
  Added in v.399

  ViewVC Help
Powered by ViewVC 1.1.24