1. 23 Nov, 2015 1 commit
  2. 16 Sep, 2014 1 commit
  3. 21 Aug, 2014 1 commit
  4. 02 Jul, 2014 1 commit
  5. 11 Mar, 2014 1 commit
  6. 19 Apr, 2013 1 commit
    • mstarzinger@chromium.org's avatar
      Generator objects can suspend · 0f348e55
      mstarzinger@chromium.org authored
      * src/ast.h:
      * src/parser.cc: Differentiate between the different kinds of yields, in
        anticipation of boxing return values.  Parse `return' into `yield' in
        a generator.
      
      * src/runtime.h:
      * src/runtime.cc (Runtime_SuspendJSGeneratorObject): New horrible
        runtime function: saves continuation, context, and operands into the
        generator object.
      
      * src/arm/full-codegen-arm.cc (VisitYield):
      * src/ia32/full-codegen-ia32.cc (VisitYield):
      * src/x64/full-codegen-x64.cc (VisitYield): Arrange to call
        SuspendJSGeneratorObject.  If the call returns the hole, we suspend.
        Otherwise we resume.
      
      BUG=v8:2355
      TEST=These codepaths are tested when the generator is first invoked, and so
      are covered by mjsunit/harmony/generators-objects.js.
      
      Review URL: https://codereview.chromium.org/13704010
      
      Patch from Andy Wingo <wingo@igalia.com>.
      
      git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14353 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
      0f348e55
  7. 05 Apr, 2013 1 commit
  8. 02 Apr, 2013 1 commit
    • mstarzinger@chromium.org's avatar
      Add parser support for generators. · 2816f196
      mstarzinger@chromium.org authored
      This patchset begins by adding support for "yield", which is unlike other tokens
      in JS. In a generator, whether strict or classic, it is a syntactic keyword.
      In classic mode it is an identifier. In strict mode it is reserved.
      
      This patch adds YIELD as a token to the scanner, and adapts the preparser and
      parser appropriately. It also parses "function*", indicating that a function is
      actually a generator, for both eagerly and lazily parsed functions.
      
      Currently "yield" just compiles as "return".
      
      BUG=v8:2355
      TEST=mjsunit/harmony/generators-parsing
      
      Review URL: https://codereview.chromium.org/12646003
      Patch from Andy Wingo <wingo@igalia.com>.
      
      git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14116 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
      2816f196