- 20 Feb, 2012 1 commit
-
-
jkummerow@chromium.org authored
Hidden behind --type-info-threshold=X flag, usage dependent on experimental profiler. Review URL: https://chromiumcodereview.appspot.com/9403009 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10753 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 10 Feb, 2012 1 commit
-
-
danno@chromium.org authored
Supports growing non-COW JSArray by a single element if the backing store has room, and initial allocation of a backing store for the store to index zero of an empty array to kPreallocatedArrayElements elements (e.g. the [] array literal). Review URL: https://chromiumcodereview.appspot.com/9310117 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10673 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 09 Feb, 2012 1 commit
-
-
jkummerow@chromium.org authored
Review URL: https://chromiumcodereview.appspot.com/9361026 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10657 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 09 Dec, 2011 1 commit
-
-
ricow@chromium.org authored
Now with arm and x64 support. Additionally, added default unreachable case to switch statement in CompareIC::TargetState to make win and mac compilers happy. Reviewer guide: This is an exact copy of 10216 except: src/arm/* src/x64/* src/ic.cc (added default case to swith in CompareIC::TargetState) Review URL: http://codereview.chromium.org/8872060 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10219 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 08 Dec, 2011 2 commits
-
-
ricow@chromium.org authored
Missing arm and x64 implementations Review URL: http://codereview.chromium.org/8883023 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10217 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
ricow@chromium.org authored
This includes specialcasing the generation when we know that the maps of the two objects are the same. In addition, a new specialized compare ic known objects cache is created. The reason for the cache is that we need to have access to the stub code from the roots; if we do not, the GC will collect the stub. In this specialized case we use the map pointer as key in the cache, and we always do a lookup before generating code. Actually hitting something in the cache will happen very rarely, but we could potentially overwrite an existing stub, which again will lead to the GC collecting this old stub (even if it is referenced from other code objects) Review URL: http://codereview.chromium.org/8520006 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10216 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 05 Dec, 2011 1 commit
-
-
danno@chromium.org authored
Explicitly log generic stub transitions and the reason that they are happening. R=jkummerow@chromium.org BUG=none TEST=none Review URL: http://codereview.chromium.org/8803013 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10165 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 24 Oct, 2011 2 commits
-
-
kmillikin@chromium.org authored
Handlify StubCompiler functions for CallIC and KeyedCallIC cases Megamorphic, Arguments, DebugBreak, and DebugPrepareStepIn. R=ulan@chromium.org BUG= TEST= Review URL: http://codereview.chromium.org/8372029 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9750 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
kmillikin@chromium.org authored
These cases turn out to be easy. There is a lingering raw pointer implementation of TryCompileCallMiss because it's need by some of the unconverted call stubs. R=ulan@chromium.org BUG= TEST= Review URL: http://codereview.chromium.org/8366036 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9749 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 21 Oct, 2011 2 commits
-
-
ulan@chromium.org authored
BUG= TEST= Review URL: http://codereview.chromium.org/8356041 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9741 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
kmillikin@chromium.org authored
CallIC::GenerateInitialize and KeyedCallIC::GenerateInitialize are verified safe for GC. R=ulan@chromium.org BUG= TEST= Review URL: http://codereview.chromium.org/8361028 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9733 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 20 Oct, 2011 3 commits
-
-
kmillikin@chromium.org authored
R=ulan@chromium.org,vegorov@chromium.org BUG= TEST= Review URL: http://codereview.chromium.org/8357010 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9729 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
ulan@chromium.org authored
BUG= TEST= Review URL: http://codereview.chromium.org/8356039 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9727 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
ulan@chromium.org authored
BUG= TEST= Review URL: http://codereview.chromium.org/8352003 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9714 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 19 Oct, 2011 3 commits
-
-
jkummerow@chromium.org authored
TEST=mjsunit/elements-kind Review URL: http://codereview.chromium.org/8305001 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9702 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
kmillikin@chromium.org authored
R=ulan@chromium.org BUG= TEST= Review URL: http://codereview.chromium.org/8345038 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9701 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
ulan@chromium.org authored
BUG= TEST= Review URL: http://codereview.chromium.org/8341008 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9692 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 18 Oct, 2011 1 commit
-
-
ulan@chromium.org authored
BUG= TEST= Review URL: http://codereview.chromium.org/8337008 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9680 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 11 Oct, 2011 2 commits
-
-
jkummerow@chromium.org authored
Review URL: http://codereview.chromium.org/8233011 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9584 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
jkummerow@chromium.org authored
Review URL: http://codereview.chromium.org/8166017 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9577 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 13 Sep, 2011 1 commit
-
-
kmillikin@chromium.org authored
We passed this flag around in a lot of places and had differenc call ICs based on it, but never did any real specialization based on its value. R=fschneider@chromium.org BUG= TEST= Review URL: http://codereview.chromium.org/7869009 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9260 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 09 Sep, 2011 1 commit
-
-
danno@chromium.org authored
R=svenpanne@chromium.org BUG=none TEST=all Review URL: http://codereview.chromium.org/7849017 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9208 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 21 Jul, 2011 1 commit
-
-
svenpanne@chromium.org authored
The IC records the set of types it has seen, e.g. {String} or {Boolean, Undefined}, etc. Note that in theory this could lead to a large number of different ToBoolean ICs (512, to be exact, because we distinguish 9 types), but in practice only a small handful of them are actually generated. Currently the type recording part is only implemented on ia32, other platforms continue to work like they did before, though. Removed some dead code on the way. Review URL: http://codereview.chromium.org/7473028 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8716 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 08 Jul, 2011 1 commit
-
-
danno@chromium.org authored
In the process, add shared stubs for DictionaryValue lookups that are handled in the same way as fast elements and external array elements. Includes code for MIPS, which compiles and run polymorph-arrays.js successfully. R=jkummerow@chromium.org BUG=none TEST=test/mjsunit/polymorph-arrays.js Review URL: http://codereview.chromium.org/7227010 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8579 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 01 Jul, 2011 1 commit
-
-
jkummerow@chromium.org authored
Review URL: http://codereview.chromium.org/7283044 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8504 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 20 Jun, 2011 1 commit
-
-
jkummerow@chromium.org authored
Review URL: http://codereview.chromium.org/7170012 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8325 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 16 Jun, 2011 2 commits
-
-
karlklose@chromium.org authored
Review URL: http://codereview.chromium.org/7187007 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8315 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
karlklose@chromium.org authored
This reverts commit ceb31498b9d69edca3260820fb4047045891ce6d. TBR=kmillikin@chromium.org Review URL: http://codereview.chromium.org/7172030 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8308 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 15 Jun, 2011 1 commit
-
-
karlklose@chromium.org authored
Review URL: http://codereview.chromium.org/7167006 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8300 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 09 Jun, 2011 1 commit
-
-
danno@chromium.org authored
Dispatch on ElementsKind rather than ExternalArrayType when generating ICs and Crankshaft code for many element operations. This is preparation to be able to share more code in the various element accessor implementations. Merge logic to maintain external array and fast element stub caches. BUG=none TEST=none Review URL: http://codereview.chromium.org/7112010 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8244 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 07 Jun, 2011 1 commit
-
-
mikhail.naganov@gmail.com authored
Mainly, there were errors concerning blank lines before and after class access control sections [whitespace/blank_line]. BEFORE an access control section (e.g. public:, private:) there should be a blank line (except for the section right after the class declaration). AFTER an access control section there should be no blank line. TBR=ager@chromium.org git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8193 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 24 May, 2011 2 commits
-
-
ager@chromium.org authored
Only IA32 version for now. I'll start porting. Strict mode functions are to get 'undefined' as the receiver when called with an implicit receiver. Modes are bad! It forces us to have checks on all function calls. This change attempts to limit the cost by passing information about whether or not a call is with an implicit or explicit receiver in ecx as part of the calling convention. The cost is setting ecx on all calls and checking ecx on entry to strict mode functions. Implicit/explicit receiver state has to be maintained by ICs. Various stubs have to not clobber ecx or save and restore it. CallFunction stub needs to check if the receiver is implicit when it doesn't know from the context. Review URL: http://codereview.chromium.org/7039036 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8040 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
fschneider@chromium.org authored
There is no need for this long name. Review URL: http://codereview.chromium.org/7063017 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8031 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 18 May, 2011 2 commits
-
-
fschneider@chromium.org authored
When the stub return a heap number we do a state transition to a version HEAP_NUMBER that can handle -0. There is room for further improvement in the typefeedback for the case of -0. This change however does not address this and only fixes the acute issue. Review URL: http://codereview.chromium.org/7037025 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7944 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
danno@chromium.org authored
Better support for 'polymorphic' JS and external arrays Allow keyed store/load stubs to switch between external array and fast JS arrays without forcing a state transition to the generic stub. There CL consists of two pieces of functionality. First, code stubs for fast element arrays don't immediately transition to the MEGAMORPHIC state when there's a map mismatch. Second, two ICs are cached per map for fast elements, the MONOMORPHIC version, and a new MEGAMORPHIC version that handles two or more different maps and dispatches to shared stubs to perform the array operation. Review URL: http://codereview.chromium.org/7036016 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7935 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 17 May, 2011 2 commits
-
-
danno@chromium.org authored
TBR=danno@chromium.org git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7918 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
danno@chromium.org authored
Allow keyed store/load stubs to switch between external array and fast JS arrays without forcing a state transition to the generic stub. There CL consists of two pieces of functionality. First, code stubs for fast element arrays don't immediately transition to the MEGAMORPHIC state when there's a map mismatch. Second, two ICs are cached per map for fast elements, the MONOMORPHIC version, and a new MEGAMORPHIC version that handles two or more different maps. Currently, the only array types supported by the MEGAMORPHIC stub are fast elements for objects and JSArrays. BUG= TEST= Review URL: http://codereview.chromium.org/6894003 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7917 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 09 May, 2011 1 commit
-
-
vitalyr@chromium.org authored
Review URL: http://codereview.chromium.org/6960011 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7824 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 04 May, 2011 1 commit
-
-
vitalyr@chromium.org authored
BUG=1340 Review URL: http://codereview.chromium.org/6937001 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7783 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 29 Apr, 2011 1 commit
-
-
danno@chromium.org authored
TBR=ager@chromium.org git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7713 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-