• binji's avatar
    [Atomics] code stubs for atomic operations · 5e9ddf6c
    binji authored
    Reland of (https://codereview.chromium.org/1617503003)
    
    * New atomic code stubs for x64, ia32, arm, arm64
    * Add convenience functions JumpIfNotValidSmiValue, JumpIfUintNotValidSmiValue
      to macro-assembler-ia32 (API based on x64 macro assembler)
    * Remove runtime implementation of Atomics.load, the code stub should always be
      called instead
    * Add new test to mjsunit atomics test; check that Smi values of different
      sizes are supported when possible, else fall back to HeapNumbers
    
    These changes were needed to add another codestub:
    * Bump kStubMajorKeyBits from 7 to 8
    * Reduce ScriptContextFieldStub::kSlotIndexBits from 13 to 12
    
    BUG=v8:4614
    LOG=y
    TBR=jarin@chromium.org,bmeurer@chromium.org,rodolph.perfetta@gmail.com,machenbach@chromium.org
    
    Review URL: https://codereview.chromium.org/1617503003
    
    Cr-Commit-Position: refs/heads/master@{#35427}
    
    Review URL: https://codereview.chromium.org/1881383003
    
    Cr-Commit-Position: refs/heads/master@{#35453}
    5e9ddf6c
Name
Last commit
Last update
..
OWNERS Loading commit data...
assembler-arm64-inl.h Loading commit data...
assembler-arm64.cc Loading commit data...
assembler-arm64.h Loading commit data...
builtins-arm64.cc Loading commit data...
code-stubs-arm64.cc Loading commit data...
code-stubs-arm64.h Loading commit data...
codegen-arm64.cc Loading commit data...
codegen-arm64.h Loading commit data...
constants-arm64.h Loading commit data...
cpu-arm64.cc Loading commit data...
decoder-arm64-inl.h Loading commit data...
decoder-arm64.cc Loading commit data...
decoder-arm64.h Loading commit data...
deoptimizer-arm64.cc Loading commit data...
disasm-arm64.cc Loading commit data...
disasm-arm64.h Loading commit data...
frames-arm64.cc Loading commit data...
frames-arm64.h Loading commit data...
instructions-arm64.cc Loading commit data...
instructions-arm64.h Loading commit data...
instrument-arm64.cc Loading commit data...
instrument-arm64.h Loading commit data...
interface-descriptors-arm64.cc Loading commit data...
interface-descriptors-arm64.h Loading commit data...
macro-assembler-arm64-inl.h Loading commit data...
macro-assembler-arm64.cc Loading commit data...
macro-assembler-arm64.h Loading commit data...
simulator-arm64.cc Loading commit data...
simulator-arm64.h Loading commit data...
utils-arm64.cc Loading commit data...
utils-arm64.h Loading commit data...