• caitp's avatar
    Reland [typedarrays] move %TypedArray%.prototype.copyWithin to C++ · dc302c74
    caitp authored
    - Removes shared InnerArrayCopyWithin JS builtin from src/js/array.js
    - Implements %TypedArray%.prototype.copyWithin as a C++ builtin, which
    relies on std::memmove rather than accessing individual eleements.
    - Fixes the case where copyWithin is invoked on a TypedArray with a
    detached buffer.
    - Add tests to ensure that +/-Infinity (for all 3 parameters) is handled
      correctly by the
    algorithm
    
    The C++ version gets through the benchmark more than 25000 times as
    quickly as the JS implementation.
    
    BUG=v8:5925, v8:5929, v8:4648
    R=cbruni@chromium.org, adamk@chromium.org, littledan@chromium.org
    
    Review-Url: https://codereview.chromium.org/2697593002
    Cr-Commit-Position: refs/heads/master@{#43213}
    dc302c74
Name
Last commit
Last update
..
regress-2034.js Loading commit data...
regress-2156.js Loading commit data...
regress-2186.js Loading commit data...
regress-2219.js Loading commit data...
regress-2225.js Loading commit data...
regress-2243.js Loading commit data...
regress-2322.js Loading commit data...
regress-2506.js Loading commit data...
regress-2681.js Loading commit data...
regress-2691.js Loading commit data...
regress-2829.js Loading commit data...
regress-2858.js Loading commit data...
regress-3426.js Loading commit data...
regress-347906.js Loading commit data...
regress-3501.js Loading commit data...
regress-3683.js Loading commit data...
regress-3741.js Loading commit data...
regress-3902.js Loading commit data...
regress-3938.js Loading commit data...
regress-4056.js Loading commit data...
regress-4097.js Loading commit data...
regress-411237.js Loading commit data...
regress-4160.js Loading commit data...
regress-4211.js Loading commit data...
regress-4298.js Loading commit data...
regress-4395-global-eval.js Loading commit data...
regress-4395.js Loading commit data...
regress-4400.js Loading commit data...
regress-4417.js Loading commit data...
regress-4466.js Loading commit data...
regress-4482.js Loading commit data...
regress-4522.js Loading commit data...
regress-455141.js Loading commit data...
regress-4585.js Loading commit data...
regress-474783.js Loading commit data...
regress-4759.js Loading commit data...
regress-508074.js Loading commit data...
regress-513474.js Loading commit data...
regress-517455.js Loading commit data...
regress-5337.js Loading commit data...
regress-5598.js Loading commit data...
regress-576662.js Loading commit data...
regress-5929-1.js Loading commit data...
regress-594084.js Loading commit data...
regress-650172.js Loading commit data...
regress-660925.js Loading commit data...
regress-666622.js Loading commit data...
regress-arrow-duplicate-params.js Loading commit data...
regress-cr372788.js Loading commit data...
regress-cr493566.js Loading commit data...
regress-cr512574.js Loading commit data...
regress-crbug-248025.js Loading commit data...
regress-crbug-346141.js Loading commit data...
regress-crbug-448730.js Loading commit data...
regress-crbug-461520.js Loading commit data...
regress-crbug-465671-null.js Loading commit data...
regress-crbug-465671.js Loading commit data...
regress-inlined-new-target.js Loading commit data...
regress-lookup-transition.js Loading commit data...
regress-new-target-context.js Loading commit data...