• brucedawson's avatar
    Reduce VC++ padding in IncrementalMarking class · f4a57545
    brucedawson authored
    IncrementalMarking has nine bytes of padding in 32-bit and 64-bit
    builds. Fixing 32-bit builds just requires moving the one-byte
    incremental_marking_job_ member. Fixing 64-bit requires moving the
    four-byte state_ member. This change reduces the padding to one byte.
    
    On 64-bit this reduces its size from 152 to 144. This also fits heap
    granularity better. On 32-bit it goes from 96 to 88 bytes.
    
    The initial padding was found with llvm-pdbdump.exe. The fix was
    verified by compiling v8/src/assembler.cc with the undocumented
    /d1reportSingleClassLayout option, like this:
    
        /d1reportSingleClassLayoutIncrementalMarking
    
    The savings should apply on all platforms, or at worst should make no
    difference except for improving alignment.
    
    Thanks to zturner@ for some llvm-pdbdump improvements.
    
    BUG=chromium:710933
    
    Review-Url: https://codereview.chromium.org/2808473003
    Cr-Commit-Position: refs/heads/master@{#44698}
    f4a57545
Name
Last commit
Last update
..
OWNERS Loading commit data...
array-buffer-tracker-inl.h Loading commit data...
array-buffer-tracker.cc Loading commit data...
array-buffer-tracker.h Loading commit data...
code-stats.cc Loading commit data...
code-stats.h Loading commit data...
concurrent-marking.cc Loading commit data...
concurrent-marking.h Loading commit data...
embedder-tracing.cc Loading commit data...
embedder-tracing.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...
marking.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...
page-parallel-job.h Loading commit data...
remembered-set.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...
slot-set.h Loading commit data...
spaces-inl.h Loading commit data...
spaces.cc Loading commit data...
spaces.h Loading commit data...
store-buffer.cc Loading commit data...
store-buffer.h Loading commit data...