1. 03 May, 2019 1 commit
  2. 02 Jun, 2017 1 commit
    • jarin's avatar
      This is a first step towards reducing the number of stores/loads when... · f0645612
      jarin authored
      This is a first step towards reducing the number of stores/loads when suspending/resuming a generator.
      
      Unfortunately, even for an empty generator, we still use 8 register for various things (try-finally, copies of generator object, parser-introduced temporaries). I will try to get rid of these in separate CLs.
      
      Changes:
      
      - SuspendGenerator bytecode now takes register list to save.
      - ResumeGenerator was split into two bytecodes:
        * Resume generator reads the state out and marks the generator as
            'executing'.
        * RestoreGeneratorRegisters reloads the registers from
            the generator.
          + this required adding support for output register list.
      
      - Introduced generator_object_ register in the bytecode generator.
        * in subsequent CLs, I will make better use of it, the goal is
            to get rid if the .generator_object local variable.
      
      - Taught register optimizer to flush unassigned registers.
      
      BUG=v8:6379
      
      Review-Url: https://codereview.chromium.org/2894293003
      Cr-Commit-Position: refs/heads/master@{#45675}
      f0645612
  3. 31 May, 2016 1 commit
  4. 04 Apr, 2016 1 commit
    • mstarzinger's avatar
      Fix resuming generator marked for optimization. · 6ab9c185
      mstarzinger authored
      This fixes a corner case where the generator function of a suspended
      generator has been marked for optimization. We assume the optimization
      approach will cause a bailout because generators are not optimized. But
      resuming is more resilient by always activating the unoptimized code.
      
      R=neis@chromium.org,bmeurer@chromium.org
      TEST=mjsunit/regress/regress-crbug-513471
      BUG=chromium:513471
      LOG=n
      
      Review URL: https://codereview.chromium.org/1856683002
      
      Cr-Commit-Position: refs/heads/master@{#35234}
      6ab9c185
  5. 03 Feb, 2016 1 commit
  6. 02 Feb, 2016 1 commit
  7. 29 Jan, 2016 1 commit
    • littledan's avatar
      Fix Unicode string normalization with null bytes · f3e41d96
      littledan authored
      Previously, String.prototype.normalize constructed its ICU input
      string as a null-terminated string. This creates a bug for strings
      which contain a null byte, which is allowed in ECMAScript. This
      patch constructs the ICU string based on its length so that the
      entire string is normalized.
      
      R=jshin@chromium.org
      BUG=v8:4654
      LOG=Y
      
      Review URL: https://codereview.chromium.org/1645223003
      
      Cr-Commit-Position: refs/heads/master@{#33614}
      f3e41d96
  8. 04 Jan, 2016 1 commit