Changeset 185161 in webkit for trunk/Source/JavaScriptCore/bytecode/CallLinkStatus.cpp
- Timestamp:
- Jun 3, 2015, 1:08:01 PM (10 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/JavaScriptCore/bytecode/CallLinkStatus.cpp
r185131 r185161 136 136 const ConcurrentJITLocker&, CallLinkInfo& callLinkInfo) 137 137 { 138 if (callLinkInfo.clearedByGC) 139 return takesSlowPath(); 140 138 141 // Note that despite requiring that the locker is held, this code is racy with respect 139 142 // to the CallLinkInfo: it may get cleared while this code runs! This is because … … 148 151 // that is still marginally valid (i.e. the pointers ain't stale). This kind of raciness 149 152 // is probably OK for now. 150 151 // FIXME: If the GC often clears this call, we should probably treat it like it always takes the152 // slow path. We could be smart about this; for example if we cleared a specific callee but the153 // despecified executable was alive then we could note that separately.154 // https://bugs.webkit.org/show_bug.cgi?id=145502155 153 156 154 // PolymorphicCallStubRoutine is a GCAwareJITStubRoutine, so if non-null, it will stay alive
Note:
See TracChangeset
for help on using the changeset viewer.