1. 04 Mar, 2015 5 commits
    • vogelheim's avatar
      Fix Initialize & Dispose for external snapshot. Make sure... · 2525e8f4
      vogelheim authored
      Fix Initialize & Dispose for external snapshot. Make sure v8::V8::(Initialize|Dispose) can be called in any order.
      
      This is a follow-on to crrev.com/960883003, which fixed a memory leak in this code, but uncovered another, more subtle bug:
      
      Previously, the code expected you would v8::V8::Initialize once, and v8::V8::Dispose once. The first bug was that in this case the holder_ variable would point to deallocated memory. The second bug was that once the snapshot was disposed, there was no way to get it back on a future Initialize. These are uncovered by the InitializeAndDisposeMultiple test case.
      
      The fix is to keep memory to the raw snapshot and to then cleanly build & destroy the tables in Initialize & Dispose. Since sometimes setNativesBlob is called just after Initialize, that situation must be handled, too.
      
      BUG=
      
      Review URL: https://codereview.chromium.org/974943003
      
      Cr-Commit-Position: refs/heads/master@{#26978}
      2525e8f4
    • mvstanton's avatar
      The Global Load IC doesn't yet play well with --vector-ics. · d232dcfd
      mvstanton authored
      Until this is addressed, we can simply use the regular IC, as we do
      in times of serialization.
      
      R=verwaest@chromium.org
      
      Review URL: https://codereview.chromium.org/974853002
      
      Cr-Commit-Position: refs/heads/master@{#26977}
      d232dcfd
    • thakis's avatar
      When using ninja and clang, make sure diagnostics are colored. · 30b995fc
      thakis authored
      BUG=none
      LOG=N
      
      Review URL: https://codereview.chromium.org/969653004
      
      Cr-Commit-Position: refs/heads/master@{#26976}
      30b995fc
    • thakis's avatar
      Use Rotate*() functions instead of doing this manually. · b97df837
      thakis authored
      Shouldn't make a difference in practice, but it's a bit more readable and it
      gets the case of a 0 shift correct without undefined behavior.
      
      BUG=463436
      LOG=N
      
      Review URL: https://codereview.chromium.org/975283002
      
      Cr-Commit-Position: refs/heads/master@{#26975}
      b97df837
    • hans's avatar
      ARM assembler: fix undefined behaviour in fits_shifter · 721fdb56
      hans authored
      Bit-shifts have undefined behaviour if the shift amount is greater
      or equal to the width of the type.
      
      In this case the code would do imm32 >> 32 when rot == 0.
      
      A newer version of Clang unrolled the loop, optimized the first
      iteration away, causing the test suite to fail with:
      
        #
        # Fatal error in ../src/arm/assembler-arm.cc, line 1212
        # Check failed: !rn.is(ip).
        #
      
      as well as crashing when running Chromium tests on Android (at least
      we think this was the cause, see the bug).
      
      BUG=463436, 444089
      LOG=Y
      
      Review URL: https://codereview.chromium.org/979633002
      
      Cr-Commit-Position: refs/heads/master@{#26974}
      721fdb56
  2. 03 Mar, 2015 26 commits
  3. 02 Mar, 2015 9 commits