- 07 Nov, 2014 1 commit
-
-
dslomov@chromium.org authored
This implements correct semantics for "extensible" top level lexical scope. The entire lexical scope is represented at runtime by GlobalContextTable, reachable from native context and accumulating global contexts from every script loaded into the context. When the new script starts executing, it does the following validation: - checks the GlobalContextTable and global object (non-configurable own) properties against the set of declarations it introduces and reports potential conflicts. - invalidates the conflicting PropertyCells on global object, so that any code depending on them will miss/deopt causing any contextual lookups to be reexecuted under the new bindings - adds the lexical bindings it introduces to the GlobalContextTable Loads and stores for contextual lookups are modified so that they check the GlobalContextTable before looking up properties on global object, thus implementing the shadowing of global object properties by lexical declarations. R=adamk@chromium.org, rossberg@chromium.org Review URL: https://codereview.chromium.org/705663004 Cr-Commit-Position: refs/heads/master@{#25220} git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@25220 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 06 Nov, 2014 1 commit
-
-
svenpanne@chromium.org authored
The idea behind of this solution is to use the existing "relocation info" instead of consumption the CodeLinePosition events emitted by the V8 compilers. During generation code and relocation info are generated simultaneously. When code generation is done you each code object has associated "relocation info". Relocation information lets V8 to mark interesting places in the generated code: the pointers that might need to be relocated (after garbage collection), correspondences between the machine program counter and source locations for stack walking. This patch: 1. Add more source positions info in reloc info to make it suitable for source level mapping. The amount of data should not be increased dramatically because (1) V8 already marks interesting places in the generated code and (2) V8 does not write redundant information (it writes a pair (pc_offset, pos) only if pos is changed and skips other). I measured it on Octane benchmark - for unoptimized code the number of source positions may achieve 2x ('lin_solve' from NavierStokes benchmark). 2. When a sample happens, CPU profiler finds a code object by pc, then use its reloc info to match the sample to a source line. If a source line is found that hit counter is increased by one for this line. 3. Add a new public V8 API to get the hit source lines by CDT CPU profiler. Note that it's expected a minor patch in Blink to pack the source level info in JSON to be shown. 4.Add a test that checks how the samples are distributed through source lines. It tests two cases: (1) relocation info created during code generation and (2) relocation info associated with precompiled function's version. Patch from Denis Pravdin <denis.pravdin@intel.com>; R=svenpanne@chromium.org, yurys@chromium.org Review URL: https://codereview.chromium.org/682143003 Patch from Weiliang <weiliang.lin@intel.com>. Cr-Commit-Position: refs/heads/master@{#25182} git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@25182 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 04 Nov, 2014 1 commit
-
-
aandrey@chromium.org authored
This is to show values preview of an iterator in DevTools console. API=v8::Value::IsMapIterator, v8::Value::IsSetIterator BUG=chromium:427868 R=arv@chromium.org, yangguo@chromium.org, adamk@chromium.org LOG=Y Review URL: https://codereview.chromium.org/693813002 Cr-Commit-Position: refs/heads/master@{#25100} git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@25100 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 03 Nov, 2014 1 commit
-
-
erikcorry@chromium.org authored
R=ulan@chromium.org, jochen@chromium.org BUG= Review URL: https://codereview.chromium.org/687003005 Cr-Commit-Position: refs/heads/master@{#25083} git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@25083 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 30 Oct, 2014 4 commits
-
-
aandrey@chromium.org authored
API=v8::Exception::GetMessage BUG=chromium:427954 R=yangguo@chromium.org LOG=Y Committed: https://code.google.com/p/v8/source/detail?r=25015 Review URL: https://codereview.chromium.org/687253002 Cr-Commit-Position: refs/heads/master@{#25021} git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@25021 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
machenbach@chromium.org authored
TBR=yangguo@chromium.org, machenbach@chromium.org LOG=N Review URL: https://codereview.chromium.org/688813002 Cr-Commit-Position: refs/heads/master@{#25017} git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@25017 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
aandrey@chromium.org authored
API=v8::Exception::GetMessage BUG=chromium:427954 R=yangguo@chromium.org LOG=Y Review URL: https://codereview.chromium.org/687253002 Cr-Commit-Position: refs/heads/master@{#25015} git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@25015 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
dcarney@chromium.org authored
R=svenpanne@chromium.org BUG= Review URL: https://codereview.chromium.org/686053003 Cr-Commit-Position: refs/heads/master@{#25011} git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@25011 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 29 Oct, 2014 1 commit
-
-
dcarney@chromium.org authored
BUG= R=dslomov@chromium.org Review URL: https://codereview.chromium.org/684103002 Cr-Commit-Position: refs/heads/master@{#24973} git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24973 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 28 Oct, 2014 1 commit
-
-
dcarney@chromium.org authored
R=marja@chromium.org, svenpanne@chromium.org BUG= Review URL: https://codereview.chromium.org/652193006 Cr-Commit-Position: refs/heads/master@{#24921} git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24921 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 27 Oct, 2014 3 commits
-
-
erikcorry@chromium.org authored
Revert of https://codereview.chromium.org/649563006/ due to layout test failures. BUG= R=mstarzinger@chromium.org Review URL: https://codereview.chromium.org/677403002 Cr-Commit-Position: refs/heads/master@{#24901} git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24901 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
erikcorry@chromium.org authored
R=jochen@chromium.org, ulan@chromium.org BUG= Review URL: https://codereview.chromium.org/649563006 Cr-Commit-Position: refs/heads/master@{#24899} git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24899 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
dcarney@chromium.org authored
BUG= R=svenpanne@chromium.org Review URL: https://codereview.chromium.org/669373002 Cr-Commit-Position: refs/heads/master@{#24893} git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24893 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 22 Oct, 2014 1 commit
-
-
bmeurer@chromium.org authored
This fixes the problem of not being able to detect ARM features on ChromeOS because sandbox cannot access /proc/self/auxv and /proc/cpuinfo there. Drive-by-cleanup to libc detection in two other places. R=svenpanne@chromium.org Review URL: https://codereview.chromium.org/672543002 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24789 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 21 Oct, 2014 4 commits
-
-
dslomov@chromium.org authored
Updates Object.prototype.toString() to use algorithm described in harmony drafts. Currently, the behaviour is essentially the same as ES262's version, however this changes when internal structures such as Promise make use of symbolToStringTag (as they are supposed to, see v8:3241), and changes further once Symbol.toStringTag is exposed publicly. BUG=v8:3241, v8:3502 LOG=N R=dslomov@chromium.org Review URL: https://codereview.chromium.org/546803003 Patch from Caitlin Potter <caitpotter88@gmail.com>. git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24783 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
verwaest@chromium.org authored
BUG= R=dcarney@chromium.org Review URL: https://codereview.chromium.org/670703002 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24767 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
svenpanne@chromium.org authored
Basically a follow-up to https://codereview.chromium.org/667573005/. LOG=y R=bmeurer@chromium.org Review URL: https://codereview.chromium.org/670673002 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24755 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
bmeurer@chromium.org authored
R=svenpanne@chromium.org Review URL: https://codereview.chromium.org/667573005 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24751 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 20 Oct, 2014 2 commits
-
-
yangguo@chromium.org authored
R=dcarney@chromium.org Review URL: https://codereview.chromium.org/665883002 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24744 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
bmeurer@chromium.org authored
R=svenpanne@chromium.org Review URL: https://codereview.chromium.org/656143004 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24735 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 17 Oct, 2014 1 commit
-
-
haraken@chromium.org authored
The Isolate version of v8::VisitHandlesWithClassIds is needed for https://codereview.chromium.org/651713002/ R=dcarney@chromium.org Review URL: https://codereview.chromium.org/664473002 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24671 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 16 Oct, 2014 1 commit
-
-
aandrey@chromium.org authored
This will be needed to get a stack trace from a DOMException. API=v8::Exception::GetStackTrace R=yangguo@chromium.org LOG=Y Review URL: https://codereview.chromium.org/655243002 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24655 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 14 Oct, 2014 1 commit
-
-
ulan@chromium.org authored
Introduce an object that holds a weak reference. Design document: http://goo.gl/9dSvvy. BUG= R=erik.corry@gmail.com Review URL: https://codereview.chromium.org/640303006 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24606 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 09 Oct, 2014 1 commit
-
-
rmcilroy@chromium.org authored
BUG=417668 LOG=N R=jochen@chromium.org Review URL: https://codereview.chromium.org/641653002 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24489 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 08 Oct, 2014 2 commits
-
-
mstarzinger@chromium.org authored
R=rossberg@chromium.org Review URL: https://codereview.chromium.org/635323002 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24471 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
jochen@chromium.org authored
BUG=v8:3618 R=ishell@chromium.org, svenpanne@chromium.org LOG=n Review URL: https://codereview.chromium.org/637263002 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24453 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 07 Oct, 2014 2 commits
-
-
jochen@chromium.org authored
Embedders that used this method to be able to store a Persistent in a container should use one of the containers in v8-util.h instead. Other uses are no longer supported. BUG=none R=dcarney@chromium.org LOG=y Review URL: https://codereview.chromium.org/635513002 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24436 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
yangguo@chromium.org authored
R=aandrey@chromium.org BUG=chromium:393913 LOG=N Review URL: https://codereview.chromium.org/630373003 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24432 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 06 Oct, 2014 3 commits
-
-
erikcorry@chromium.org authored
This relands https://codereview.chromium.org/619913002/ The test has been fixed to do a GC so it does not appear to leak in ASAN. In addition the test has been fixed to work in the no-i18n build, by incorporating the change from https://codereview.chromium.org/631743002/ R=ishell@chromium.org BUG= Review URL: https://codereview.chromium.org/628223002 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24423 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
rmcilroy@chromium.org authored
Adds a MonotonicallyIncreasingTime() function to the Platform API to enable the embedder to provide a time API to V8 which will be used for IdleNotification deadlines. BUG=417668 LOG=Y R=jochen@chromium.org Review URL: https://codereview.chromium.org/632663002 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24411 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
https://codereview.chromium.org/619913002/erikcorry@chromium.org authored
This is due to breakage on the ASAN memory leak bot, possibly due to pre-existing leaks in v8BreakIterator(). R=ishell@chromium.org BUG= Review URL: https://codereview.chromium.org/636493004 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24409 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 03 Oct, 2014 1 commit
-
-
erikcorry@chromium.org authored
R=marja@chromium.org BUG= Review URL: https://codereview.chromium.org/619913002 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24400 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 02 Oct, 2014 5 commits
-
-
yurys@chromium.org authored
Revert of Extend CPU profiler with mapping ticks to source lines (patchset #3 id:40001 of https://codereview.chromium.org/616963005/) Reason for revert: It broke layout test fast/events/window-onerror-02.html, error column reported by window.onerror is now wrong (I believe it is because of the change in full-codegen): http://build.chromium.org/p/client.v8/builders/V8-Blink%20Linux%2064%20%28dbg%29/builds/652 Original issue's description: > Extend CPU profiler with mapping ticks to source lines > > The idea behind of this solution is to use the existing "relocation info" instead of consumption the CodeLinePosition events emitted by the V8 compilers. > During generation code and relocation info are generated simultaneously. > When code generation is done you each code object has associated "relocation info". > Relocation information lets V8 to mark interesting places in the generated code: the pointers that might need to be relocated (after garbage collection), > correspondences between the machine program counter and source locations for stack walking. > > This patch: > 1. Add more source positions info in reloc info to make it suitable for source level mapping. > The amount of data should not be increased dramatically because (1) V8 already marks interesting places in the generated code and > (2) V8 does not write redundant information (it writes a pair (pc_offset, pos) only if pos is changed and skips other). > I measured it on Octane benchmark - for unoptimized code the number of source positions may achieve 2x ('lin_solve' from NavierStokes benchmark). > > 2. When a sample happens, CPU profiler finds a code object by pc, then use its reloc info to match the sample to a source line. > If a source line is found that hit counter is increased by one for this line. > > 3. Add a new public V8 API to get the hit source lines by CDT CPU profiler. > Note that it's expected a minor patch in Blink to pack the source level info in JSON to be shown. > > 4.Add a test that checks how the samples are distributed through source lines. > It tests two cases: (1) relocation info created during code generation and (2) relocation info associated with precompiled function's version. > > Patch from Denis Pravdin <denis.pravdin@intel.com> > BUG=None > LOG=Y > R=svenpanne@chromium.org > > Committed: https://code.google.com/p/v8/source/detail?r=24389 TBR=svenpanne@chromium.org,danno@chromium.org,alph@chromium.org,denis.pravdin@intel.com,weiliang.lin@intel.com BUG=None LOG=N Review URL: https://codereview.chromium.org/624443005 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24394 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
yangguo@chromium.org authored
R=mvstanton@chromium.org Review URL: https://codereview.chromium.org/604373008 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24391 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
yurys@chromium.org authored
The idea behind of this solution is to use the existing "relocation info" instead of consumption the CodeLinePosition events emitted by the V8 compilers. During generation code and relocation info are generated simultaneously. When code generation is done you each code object has associated "relocation info". Relocation information lets V8 to mark interesting places in the generated code: the pointers that might need to be relocated (after garbage collection), correspondences between the machine program counter and source locations for stack walking. This patch: 1. Add more source positions info in reloc info to make it suitable for source level mapping. The amount of data should not be increased dramatically because (1) V8 already marks interesting places in the generated code and (2) V8 does not write redundant information (it writes a pair (pc_offset, pos) only if pos is changed and skips other). I measured it on Octane benchmark - for unoptimized code the number of source positions may achieve 2x ('lin_solve' from NavierStokes benchmark). 2. When a sample happens, CPU profiler finds a code object by pc, then use its reloc info to match the sample to a source line. If a source line is found that hit counter is increased by one for this line. 3. Add a new public V8 API to get the hit source lines by CDT CPU profiler. Note that it's expected a minor patch in Blink to pack the source level info in JSON to be shown. 4.Add a test that checks how the samples are distributed through source lines. It tests two cases: (1) relocation info created during code generation and (2) relocation info associated with precompiled function's version. Patch from Denis Pravdin <denis.pravdin@intel.com> BUG=None LOG=Y R=svenpanne@chromium.org Review URL: https://codereview.chromium.org/616963005 Patch from Denis Pravdin <denis.pravdin@intel.com>. git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24389 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
jochen@chromium.org authored
On Win64, the first page is reserved for the embedder. BUG=v8:3597 R=svenpanne@chromium.org LOG=n Review URL: https://codereview.chromium.org/619233003 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24383 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
yangguo@chromium.org authored
API=v8::Object::GetIsolate() LOG=Y R=svenpanne@chromium.org Review URL: https://codereview.chromium.org/617263003 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24376 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 01 Oct, 2014 3 commits
-
-
yangguo@chromium.org authored
R=dslomov@chromium.org Review URL: https://codereview.chromium.org/618213002 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24362 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
yangguo@chromium.org authored
This reverts r24345. TBR=bmeurer@chromium.org Review URL: https://codereview.chromium.org/618123005 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24346 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
yangguo@chromium.org authored
Also refactor symbols in the root list. R=dslomov@chromium.org Review URL: https://codereview.chromium.org/614083002 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24345 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-