- 27 Jun, 2013 6 commits
-
-
bmeurer@chromium.org authored
R=bmeurer@chromium.org Review URL: https://codereview.chromium.org/18023005 Patch from Haitao Feng <haitao.feng@intel.com>. git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15351 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
bmeurer@chromium.org authored
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15350 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
yurys@chromium.org authored
This change introduces StackFrameIteratorBase which owns singleton frame instances and encapsulates some basic iterator functionality. It has two actual implementations: StackFrameIterator and SafeStackFrameIterator. All logic specific to frame iteration at a random point (basically checks that fp and sp extracted from stack frames are within current stack boundaries) used only by CPU profiler is now concentrated in SafeStackFrameIterator. Generic stack iteration used in all other places is put into StackFrameIterator. Also this iterator unlike SafeStackFrameIterator iterates through stack handlers. StackAddressValidator and ExitFrameValidator classes were removed in favor of inline checks and simple methods. BUG=None R=loislo@chromium.org, svenpanne@chromium.org Review URL: https://codereview.chromium.org/17819003 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15349 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
yurys@chromium.org authored
CPU profiler doesn't use stack handlers so there is no need to iterate through them while traversing stack. This change SafeStackFrameIterator always iterate only frames and removes checks corresponding to the handlers iteration. The problem described in the bug occurred because of a false assumption in SafeStackFrameIterator that if Isolate::c_entry_fp is not NULL then the top frame on the stack is always a C++ frame. It is false because we may have entered JS code again, in which case JS_ENTRY code stub generated by JSEntryStub::GenerateBody() will save current c_entry_fp value but not reset it to NULL and after that it will create ENTRY stack frame and JS_ENTRY handler on the stack and put the latter into Isolate::handler(top). This means that if we start iterating from c_entry_fp frame and try to compare the frame's sp with Isolate::handler()->address() it will turn out that frame->sp() > handler->address() and the condition in SafeStackFrameIterator::CanIterateHandles is not held. BUG=252097 R=loislo@chromium.org, svenpanne@chromium.org Review URL: https://codereview.chromium.org/17589022 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15348 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
titzer@chromium.org authored
Fix elements-kind test to disable optimization of important functions under test; add simpler versions of elements kind test. Review URL: https://codereview.chromium.org/17872002 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15347 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
dslomov@chromium.org authored
ES6 bug 695 (https://bugs.ecmascript.org/show_bug.cgi?id=695). This never worked in WebKit, so no compatibility issues. R=rossberg@chromium.org Review URL: https://codereview.chromium.org/17904007 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15346 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 26 Jun, 2013 17 commits
-
-
palfia@homejinni.com authored
Port r15344 (9fd1942) BUG= Review URL: https://codereview.chromium.org/17887007 Patch from Balazs Kilvady <kilvadyb@homejinni.com>. git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15345 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
olivf@chromium.org authored
BUG= R=ulan@chromium.org Review URL: https://codereview.chromium.org/16026023 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15344 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
mstarzinger@chromium.org authored
R=danno@chromium.org Review URL: https://codereview.chromium.org/17840004 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15343 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
peter.rybin@gmail.com authored
R=yangguo@chromium.org Review URL: https://codereview.chromium.org/17644013 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15342 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
danno@chromium.org authored
R=mstarzinger@chromium.org, ulan@chromium.org Review URL: https://codereview.chromium.org/17895004 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15341 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
loislo@chromium.org authored
In almost all the places where we create CodeEntry we use default values. Lets move them into arguments default values. BUG=none TEST=no logic changes. R=yangguo@chromium.org, yurys@chromium.org Committed: https://code.google.com/p/v8/source/detail?r=15333 Review URL: https://codereview.chromium.org/17836002 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15340 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
machenbach@chromium.org authored
This initial CL contains the new test suite code and two tests for demonstration. Other tests will follow in a separate CL. R=jkummerow@chromium.org Review URL: https://codereview.chromium.org/17260002 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15339 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
mstarzinger@chromium.org authored
R=hpayer@chromium.org BUG=v8:1490 Review URL: https://codereview.chromium.org/17833002 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15338 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
bmeurer@chromium.org authored
There's no need to differentiate between an actual Zone and its scope. Instead we bind the lifetime of the Zone memory to the lifetime of the Zone itself, which is way easier to understand than having to dig through the code looking for zone scopes. Depends on https://codereview.chromium.org/17826004/ R=danno@chromium.org BUG= Review URL: https://codereview.chromium.org/17827005 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15337 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
bmeurer@chromium.org authored
No one is using the DONT_DELETE_ON_EXIT mode for ZoneScopes anymore, so we can safely assume that all ZoneScopes are DELETE_ON_EXIT now. R=danno@chromium.org BUG= Review URL: https://codereview.chromium.org/17826004 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15336 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
loislo@chromium.org authored
This reverts commit a6cc1e3b563c0d0689da35dbf8163545c8146ddd. One test starts failing on Windows. BUG=none TBR= yurys@chromium.org Review URL: https://codereview.chromium.org/17875002 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15335 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
jkummerow@chromium.org authored
BUG=v8:2692 R=svenpanne@chromium.org Review URL: https://codereview.chromium.org/17865002 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15334 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
loislo@chromium.org authored
In almost all the places where we create CodeEntry we use default values. Lets move them into arguments default values. BUG=none TEST=no logic changes. R=yangguo@chromium.org, yurys@chromium.org Review URL: https://codereview.chromium.org/17836002 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15333 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
rossberg@chromium.org authored
Also, renamed Integer31 back to Smi, and Integer32 to Signed32. R=jkummerow@chromium.org BUG= Review URL: https://codereview.chromium.org/17589013 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15332 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
titzer@chromium.org authored
Change PC for OSR entries to point to something more sensible (i.e. the first UnknownOsrValue), removing the need to record spilled OSR values and the need for duplicate deopt entries. Review URL: https://codereview.chromium.org/16381006 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15331 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
bmeurer@chromium.org authored
R=danno@chromium.org BUG= Review URL: https://codereview.chromium.org/17817003 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15330 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
svenpanne@chromium.org authored
BUG=v8:2746 R=svenpanne@chromium.org Review URL: https://codereview.chromium.org/17781002 Patch from Adam Klein <adamk@chromium.org>. git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15329 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 25 Jun, 2013 17 commits
-
-
mvstanton@chromium.org authored
This eliminates a large amount of hand-written assembly in the platforms. BUG= R=danno@chromium.org, mstarzinger@chromium.org Review URL: https://codereview.chromium.org/16453002 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15328 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
loislo@chromium.org authored
CPUProfiler: It is not clear why we are using Handle<Object> for scriptId. Lets flip it into Smi/int. By the nature it is integer. So we can work with it as with Smi internaly and use int in the external API. BUG=none TEST=existing tests R=jkummerow@chromium.org Review URL: https://codereview.chromium.org/17600006 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15327 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
jkummerow@chromium.org authored
This allows to compile non-C++ files in the v8 standalone build, e.g. assembly files found in ICU. R=jkummerow@chromium.org BUG=v8:2745 Review URL: https://codereview.chromium.org/17638009 Patch from Jochen Eisinger <jochen@chromium.org>. git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15326 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
peter.rybin@gmail.com authored
R=yangguo@chromium.org Review URL: https://codereview.chromium.org/17636007 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15323 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
prybin@chromium.org authored
R=yangguo@chromium.org Review URL: https://codereview.chromium.org/15960016 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15322 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
bmeurer@chromium.org authored
Add new base class CompilationPhase, which is the base for both HPhase, LPhase and LAllocatorPhase. HPhase is now for Hydrogen passes only, LPhase is for Lithium passes and LAllocatorPhase is for LAllocator phases. R=svenpanne@chromium.org BUG= Review URL: https://codereview.chromium.org/17572011 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15321 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
alph@chromium.org authored
R=svenpanne@chromium.org, yurys@chromium.org Review URL: https://codereview.chromium.org/17616002 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15320 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
olivf@chromium.org authored
BUG= R=jkummerow@chromium.org, rossberg@chromium.org Review URL: https://codereview.chromium.org/17444011 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15319 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
hpayer@chromium.org authored
BUG= R=mstarzinger@chromium.org Review URL: https://codereview.chromium.org/17590016 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15318 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
yurys@chromium.org authored
This change removes per-isolate counter of active SafeStackFrameIterators. The counter is used by stack frames implementations to avoid accessing pointers to heap objects when traversing stack for CPU profiler (so called "safe" mode). Each StackFrame instance is owned by single iterator and has a pointer to it so we can simply mark the iterator as "safe" or not and read the field in the stack frames instead of going into the isolate. BUG=None R=loislo@chromium.org, svenpanne@chromium.org Review URL: https://codereview.chromium.org/17585008 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15317 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
bmeurer@chromium.org authored
TBR=svenpanne@chromium.org BUG= Review URL: https://codereview.chromium.org/17612007 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15316 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
bmeurer@chromium.org authored
REGEXP was added to Code::Kind after TO_BOOLEAN_IC, but NUMBER_OF_KINDS, which is used as array size for table[] in ReportCodeKindStatistics, was still TO_BOOLEAN_IC + 1 (indirectly via LAST_IC_KIND). BUG= R=svenpanne@chromium.org Review URL: https://codereview.chromium.org/17636003 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15315 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
bmeurer@chromium.org authored
Use CODE_KIND_LIST() to automatically generate the case statements for Code::Kind2String(). BUG= R=svenpanne@chromium.org Review URL: https://codereview.chromium.org/17571016 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15314 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
mstarzinger@chromium.org authored
The initialization sequence in Blink has been adapted to use explicit isolate initialization instead of through calling v8::Null() as the first API call. R=svenpanne@chromium.org Review URL: https://codereview.chromium.org/17642011 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15311 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
hpayer@chromium.org authored
BUG= R=mstarzinger@chromium.org Review URL: https://codereview.chromium.org/17580011 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15306 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
yurys@chromium.org authored
SafeStackFrameIterator was used solely to implement SafeStackTraceFrameIterator. This CL simply merges them and updates usage of SafeStackTraceFrameIterator to use SafeStackFrameIterator (a bit shorter name). BUG=None R=loislo@chromium.org, svenpanne@chromium.org Review URL: https://codereview.chromium.org/17579005 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15305 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
palfia@homejinni.com authored
Insert proper padding after lazy deoptimization points. This change makes sure, that patching does not overwrite the code after the lazy deoptimization point. TEST=mjsunit/regress/regress-2653 BUG= Review URL: https://codereview.chromium.org/17587020 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15304 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-