• jkummerow's avatar
    Introduce {FAST,SLOW}_STRING_WRAPPER_ELEMENTS · f4872f74
    jkummerow authored
    String wrappers (new String("foo")) are special objects: their string
    characters are accessed like elements, and they also have an elements
    backing store. This used to require a bunch of explicit checks like:
    
    if (obj->IsJSValue() && JSValue::cast(obj)->value()->IsString()) {
      /* Handle string characters */
    }
    // Handle regular elements (for string wrappers and other objects)
    obj->GetElementsAccessor()->Whatever(...);
    
    This CL introduces new ElementsKinds for string wrapper objects (one for
    fast elements, one for dictionary elements), which allow folding the
    special-casing into new StringWrapperElementsAccessors.
    
    No observable change in behavior is intended.
    
    Review URL: https://codereview.chromium.org/1612323003
    
    Cr-Commit-Position: refs/heads/master@{#33616}
    f4872f74
Name
Last commit
Last update
..
OWNERS Loading commit data...
array-buffer-tracker.cc Loading commit data...
array-buffer-tracker.h Loading commit data...
gc-idle-time-handler.cc Loading commit data...
gc-idle-time-handler.h Loading commit data...
gc-tracer.cc Loading commit data...
gc-tracer.h Loading commit data...
heap-inl.h Loading commit data...
heap.cc Loading commit data...
heap.h Loading commit data...
incremental-marking-inl.h Loading commit data...
incremental-marking-job.cc Loading commit data...
incremental-marking-job.h Loading commit data...
incremental-marking.cc Loading commit data...
incremental-marking.h Loading commit data...
mark-compact-inl.h Loading commit data...
mark-compact.cc Loading commit data...
mark-compact.h Loading commit data...
memory-reducer.cc Loading commit data...
memory-reducer.h Loading commit data...
object-stats.cc Loading commit data...
object-stats.h Loading commit data...
objects-visiting-inl.h Loading commit data...
objects-visiting.cc Loading commit data...
objects-visiting.h Loading commit data...
scavenge-job.cc Loading commit data...
scavenge-job.h Loading commit data...
scavenger-inl.h Loading commit data...
scavenger.cc Loading commit data...
scavenger.h Loading commit data...
slots-buffer.cc Loading commit data...
slots-buffer.h Loading commit data...
spaces-inl.h Loading commit data...
spaces.cc Loading commit data...
spaces.h Loading commit data...
store-buffer-inl.h Loading commit data...
store-buffer.cc Loading commit data...
store-buffer.h Loading commit data...