1. 21 Jun, 2016 28 commits
  2. 20 Jun, 2016 12 commits
    • bjaideep's avatar
      PPC/s390: [builtins] Use BUILTIN frame in DatePrototype_GetField · c0630818
      bjaideep authored
      Port 198e09de
      
      Original commit message:
      
          Construct a BUILTIN frame before throwing an exception from runtime.
      
      R=jgruber@chromium.org, joransiu@ca.ibm.com, jyan@ca.ibm.com, michael_dawson@ca.ibm.com, mbrandy@us.ibm.com
      BUG=
      
      Review-Url: https://codereview.chromium.org/2083523004
      Cr-Commit-Position: refs/heads/master@{#37118}
      c0630818
    • bjaideep's avatar
      PPC/s390: [cleanup] Remove dead code from DeclareLookupSlot and rename it · 97ae43ac
      bjaideep authored
      Port cbc6adc8
      
      Original commit message:
      
          Runtime_DeclareLookupSlot is used when generating code for var and function declarations
          originating in an eval. Over time, it's accumulated quite a bit of cruft, which this CL removes:
      
            - With legacy const gone, lookup slots never have any property attributes.
            - There was a bit signaling that the variable was from an eval, but that was redundant since
              DeclareLookupSlot is only used for eval.
            - Some Proxy-related code didn't make sense here.
      
          Its name was also not terribly clear: while "LookupSlot" is used in several places, this
          particular function is only used for declaring variables and functions inside sloppy eval.
          Renamed (and split into two) to make this clear for future archeologists.
      
          Also added various DCHECKs to check the assumptions being made.
      
      R=adamk@chromium.org, joransiu@ca.ibm.com, jyan@ca.ibm.com, michael_dawson@ca.ibm.com, mbrandy@us.ibm.com
      
      BUG=
      LOG=N
      
      Review-Url: https://codereview.chromium.org/2085623003
      Cr-Commit-Position: refs/heads/master@{#37117}
      97ae43ac
    • bjaideep's avatar
      PPC/s390: [wasm] Separate compilation from instantiation · 8071e21c
      bjaideep authored
      Port c1d01aea
      
      Original commit message:
      
          Compilation of wasm functions happens before instantiation. Imports are linked afterwards, at instantiation time. Globals and memory are also
          allocated and then tied in via relocation at instantiation time.
      
          This paves the way for implementing Wasm.compile, a prerequisite to
          offering the compiled code serialization feature.
      
          Currently, the WasmModule::Compile method just returns a fixed array
          containing the code objects. More appropriate modeling of the compiled module to come.
      
          Opportunistically centralized the logic on how to update memory
          references, size, and globals, since that logic is the exact same on each
          architecture, except for the actual storing of values back in the
          instruction stream.
      
      R=mtrofin@chromium.org, joransiu@ca.ibm.com, jyan@ca.ibm.com, michael_dawson@ca.ibm.com, mbrandy@us.ibm.com
      
      BUG=v8:5072
      LOG=N
      
      Review-Url: https://codereview.chromium.org/2087453002
      Cr-Commit-Position: refs/heads/master@{#37116}
      8071e21c
    • bjaideep's avatar
      PPC/s390: [builtins] Introduce proper Float64Tan operator. · f1c2729d
      bjaideep authored
      Port c87168bc
      
      Original commit message:
      
          Import base::ieee754::tan() from fdlibm and introduce Float64Tan TurboFan
          operator based on that, similar to what we do for Float64Cos and Float64Sin.
          Rewrite Math.tan() as TurboFan builtin and use those operators to also
          inline Math.tan() into optimized TurboFan functions.
      
          Drive-by-fix: Kill the %_ConstructDouble intrinsics, and provide only
          the %ConstructDouble runtime entry for writing tests.
      
      R=bmeurer@chromium.org, joransiu@ca.ibm.com, jyan@ca.ibm.com, michael_dawson@ca.ibm.com, mbrandy@us.ibm.com
      
      BUG=v8:5086,v8:5126
      LOG=N
      
      Review-Url: https://codereview.chromium.org/2080303002
      Cr-Commit-Position: refs/heads/master@{#37115}
      f1c2729d
    • brettw's avatar
      Windows GN build flag fixes. · 3665ae7d
      brettw authored
      This brings some more flags in line with the GYP build on Windows. In particular, this ads the SSE2 flag on x86, and the stack linker flag on x64.
      
      Review-Url: https://codereview.chromium.org/2077173002
      Cr-Commit-Position: refs/heads/master@{#37114}
      3665ae7d
    • lpy's avatar
      Revert of Refactor CpuProfiler. (patchset #13 id:240001 of... · d6be0bf6
      lpy authored
      Revert of Refactor CpuProfiler. (patchset #13 id:240001 of https://codereview.chromium.org/2053523003/ )
      
      Reason for revert:
      MIPS compilation error.
      
      Original issue's description:
      > Refactor CpuProfiler.
      >
      > Currently CpuProfiler is a subclass of CodeEventListener, it listens code events
      > from Logger, constructs and stores CodeEventsContainer. This patch is part of
      > the effort to split the logic of CodeEventListener as ProfilerListener out of
      > the profiling functionality logic in CpuProfiler. A ProfilerListener will listen
      > to code events, construct code event to CodeEventsContainer and pass it to code
      > event handler.
      >
      > The reason we refactor CpuProfiler is that eventually we want to move
      > CpuProfiler as part of sampler library and code event listener should stay
      > inside V8.
      >
      > Main changes:
      > 1. Refactored CpuProfiler into two parts, the CpuProfiler with profling
      > functionality and the ProfilerListener listening to code events from Logger.
      > 2. Created CodeEventObserver and made CpuProfiler inherit from it.
      > ProfilerListener will have a list of observers and call CodeEventHandler once a
      > code event is created.
      > 3. Moved code entry list from CodeEntry to ProfilerListener.
      >
      > Minor changes:
      > 1. Moved static code entry as part of CodeEntry.
      > 2. Added ProfilerListener to Logger.
      >
      > BUG=v8:4789
      >
      > Committed: https://crrev.com/cb59fc1facc9b390e2c7544b4da56a4e0a9b3222
      > Cr-Commit-Position: refs/heads/master@{#37112}
      
      TBR=alph@chromium.org,jochen@chromium.org,yangguo@chromium.org
      # Skipping CQ checks because original CL landed less than 1 days ago.
      NOPRESUBMIT=true
      NOTREECHECKS=true
      NOTRY=true
      BUG=v8:4789
      
      Review-Url: https://codereview.chromium.org/2079273003
      Cr-Commit-Position: refs/heads/master@{#37113}
      d6be0bf6
    • lpy's avatar
      Refactor CpuProfiler. · cb59fc1f
      lpy authored
      Currently CpuProfiler is a subclass of CodeEventListener, it listens code events
      from Logger, constructs and stores CodeEventsContainer. This patch is part of
      the effort to split the logic of CodeEventListener as ProfilerListener out of
      the profiling functionality logic in CpuProfiler. A ProfilerListener will listen
      to code events, construct code event to CodeEventsContainer and pass it to code
      event handler.
      
      The reason we refactor CpuProfiler is that eventually we want to move
      CpuProfiler as part of sampler library and code event listener should stay
      inside V8.
      
      Main changes:
      1. Refactored CpuProfiler into two parts, the CpuProfiler with profling
      functionality and the ProfilerListener listening to code events from Logger.
      2. Created CodeEventObserver and made CpuProfiler inherit from it.
      ProfilerListener will have a list of observers and call CodeEventHandler once a
      code event is created.
      3. Moved code entry list from CodeEntry to ProfilerListener.
      
      Minor changes:
      1. Moved static code entry as part of CodeEntry.
      2. Added ProfilerListener to Logger.
      
      BUG=v8:4789
      
      Review-Url: https://codereview.chromium.org/2053523003
      Cr-Commit-Position: refs/heads/master@{#37112}
      cb59fc1f
    • adamk's avatar
      [cleanup] Remove dead code from DeclareLookupSlot and rename it · cbc6adc8
      adamk authored
      Runtime_DeclareLookupSlot is used when generating code for var and function declarations
      originating in an eval. Over time, it's accumulated quite a bit of cruft, which this CL removes:
      
        - With legacy const gone, lookup slots never have any property attributes.
        - There was a bit signaling that the variable was from an eval, but that was redundant since
          DeclareLookupSlot is only used for eval.
        - Some Proxy-related code didn't make sense here.
      
      Its name was also not terribly clear: while "LookupSlot" is used in several places, this
      particular function is only used for declaring variables and functions inside sloppy eval.
      Renamed (and split into two) to make this clear for future archeologists.
      
      Also added various DCHECKs to check the assumptions being made.
      
      Review-Url: https://codereview.chromium.org/2061173002
      Cr-Commit-Position: refs/heads/master@{#37111}
      cbc6adc8
    • jpp's avatar
      V8. ASM-2-WASM. Another asm-types.h revision. · 4257fdea
      jpp authored
      BUG=
      
      Review-Url: https://codereview.chromium.org/2078053002
      Cr-Commit-Position: refs/heads/master@{#37110}
      4257fdea
    • yangguo's avatar
      [snapshot] serialize embedder-provided external references. · 0b177bc0
      yangguo authored
      R=jochen@chromium.org, vogelheim@chromium.org
      BUG=chromium:617892
      
      Review-Url: https://codereview.chromium.org/2066993004
      Cr-Commit-Position: refs/heads/master@{#37109}
      0b177bc0
    • mlippautz's avatar
      [heap] Filter out stale left-trimmed handles · d800a659
      mlippautz authored
      BUG=chromium:620553
      LOG=N
      R=jochen@chromium.org
      
      Review-Url: https://codereview.chromium.org/2078403002
      Cr-Commit-Position: refs/heads/master@{#37108}
      d800a659
    • yangguo's avatar
      [debug] always add debug slot for statements. · 9611a4d2
      yangguo authored
      Previously we would elide debug slots if the statement position it
      belongs to has just already been written. The motivation is that since
      we should only break once per statement, we can elide debug slots that
      has the same statement position as the previous debug slot.
      
      This is an unnecessary optimization, since the debugger has yet another
      check against breaking twice at the same statement at runtime, in
      Debug::Break.
      
      This optimization can also be wrong, if there is control flow involved,
      for example if we can jump to the elided debug slot without executing
      the previous debug slot.
      
      CQ_INCLUDE_TRYBOTS=tryserver.chromium.linux:linux_chromium_rel_ng;tryserver.blink:linux_blink_rel
      R=jgruber@chromium.org
      
      Review-Url: https://codereview.chromium.org/2080173002
      Cr-Commit-Position: refs/heads/master@{#37107}
      9611a4d2