- 26 Oct, 2009 1 commit
-
-
mikhail.naganov@gmail.com authored
- account code objects in retainers profile; - differentiate between function boilerplates and closures; - simplify code; Review URL: http://codereview.chromium.org/335016 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3124 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 23 Oct, 2009 1 commit
-
-
kbr@chromium.org authored
This is per resolution in the WebGL working group to make these types match the WebIDL IndexSetter and IndexGetter semantics, which are still being defined but will very likely not throw. Review URL: http://codereview.chromium.org/328007 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3117 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 22 Oct, 2009 1 commit
-
-
kbr@chromium.org authored
specification under development. This is a follow-on CL to http://codereview.chromium.org/293023 . Based on review feedback, defined the behavior of storing NaN and +/-Infinity into external arrays of integer types as storing 0. Added test cases. Added fucomi instruction to assembler. Fixed bug in KeyedLoadIC::GenerateExternalArray when allocation of HeapNumber failed. Fixed bug in encoding of 16-bit immediate arithmetic instructions in 64-bit port. Removed raising of exceptions for negative array indices passed to external arrays and associated tests. Based on current discussion in WebGL working group, will probably end up removing the exception throwing altogether. Review URL: http://codereview.chromium.org/294022 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3113 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 21 Oct, 2009 1 commit
-
-
antonm@chromium.org authored
better for various kinds of strings. Review URL: http://codereview.chromium.org/293027 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3103 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 20 Oct, 2009 2 commits
-
-
kbr@chromium.org authored
specification under development. The optimizations are patterned after those previously done for CanvasPixelArray. This CL adds all of the necessary framework but continues to use the generic KeyedLoadIC and KeyedStoreIC code, to create a baseline for benchmarking purposes. The next CL will add the optimized ICs to ic-ia32.cc and ic-x64.cc. These new CanvasArray types have different semantics than CanvasPixelArray; out-of-range values are clamped via C cast semantics, which is cheaper than the clamping behavior specified by CanvasPixelArray. Out-of-range indices raise exceptions instead of being silently ignored. As part of this work, pulled FloatingPointHelper::AllocateHeapNumber up to MacroAssembler on ia32 and x64 platforms. Slightly refactored KeyedLoadIC and KeyedStoreIC. Fixed encoding for fistp_d on x64 and added a few more instructions that are needed for the new ICs. The test cases in test-api.cc have been verified by hand to exercise all of the generated code paths in the forthcoming specialized ICs. Review URL: http://codereview.chromium.org/293023 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3096 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
antonm@chromium.org authored
Review URL: http://codereview.chromium.org/294019 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3090 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 15 Oct, 2009 1 commit
-
-
whesse@chromium.org authored
Fix X64 build in the case that debugger support is disabled. Change function name from IsCallInstruction to IsPatchedReturnSequence on all platforms. Review URL: http://codereview.chromium.org/267116 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3072 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 14 Oct, 2009 1 commit
-
-
lrn@chromium.org authored
Review URL: http://codereview.chromium.org/275016 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3059 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 12 Oct, 2009 1 commit
-
-
whesse@chromium.org authored
Review URL: http://codereview.chromium.org/269050 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3047 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 06 Oct, 2009 1 commit
-
-
whesse@chromium.org authored
Review URL: http://codereview.chromium.org/200095 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3021 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 30 Sep, 2009 1 commit
-
-
christian.plesner.hansen@gmail.com authored
callbacks to be called directly from native code. Review URL: http://codereview.chromium.org/242050 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2995 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 21 Sep, 2009 1 commit
-
-
whesse@chromium.org authored
Stop "cooking" targets of jumps and calls in code objects. Do not convert jump and call targets to absolute pointers to Code objects during GC, heap verification, and serialization. Review URL: http://codereview.chromium.org/203070 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2941 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 17 Sep, 2009 1 commit
-
-
christian.plesner.hansen@gmail.com authored
Review URL: http://codereview.chromium.org/209013 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2911 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 15 Sep, 2009 1 commit
-
-
whesse@chromium.org authored
Review URL: http://codereview.chromium.org/193111 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2888 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 09 Sep, 2009 1 commit
-
-
mikhail.naganov@gmail.com authored
Also: - move constructor name getter near similar class name getter method; - if the constructor is not present, use 'Object', as for class name, this eliminates a special case. Review URL: http://codereview.chromium.org/202018 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2859 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 28 Aug, 2009 1 commit
-
-
sgjesse@chromium.org authored
Make a copy of the descriptor array when copying a map with pre-allocated properties. The garbage collector assumes that no two maps point to the same descriptor array. A simple reduction is missing. BUG=http://crbug.com/20330 TEST=none Review URL: http://codereview.chromium.org/177018 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2780 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 26 Aug, 2009 2 commits
-
-
sgjesse@chromium.org authored
For objects which only have simple assignments of the form this.x = ...; a specialized constructor stub is now generated. This generated code allocates the object and fills in the initial properties directly. If this fails for some reason code continues in the generic constructor stub which in turn might pass control to the runtime system. Added counter to see how many objects are constructed using a specialized stub. The specialized stub is only implemented for ia32 architecture in this change. For x64 and ARM the generic construct stub is used. This is change is identical to http://codereview.chromium.org/174392 (committed in r2753 and reverted in r2754) except that a few parts have already been committed from http://codereview.chromium.org/173469 (committed in r2762). Review URL: http://codereview.chromium.org/173470 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2764 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
sgjesse@chromium.org authored
When copying a map always set the descriptor array to describe the pre-allocated properties, even when descriptors are to be dropped. Added a test which otherwise failed with an assert on ARM in debug mode. The reason for it only surfasing on ARM is that the NewObject runtime function is always used for allocating new JSObjects on ARM. This change includes a few parts of http://codereview.chromium.org/174392 needed to trigger the error. Review URL: http://codereview.chromium.org/173469 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2762 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 25 Aug, 2009 2 commits
-
-
sgjesse@chromium.org authored
Review URL: http://codereview.chromium.org/173349 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2754 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
sgjesse@chromium.org authored
For objects which only have simple assignments of the form this.x = ...; a specialized constructor stub is now generated. This generated code allocates the object and fills in the initial properties directly. If this fails for some reason code continues in the generic constructor stub which in turn might pass control to the runtime system. Added counter to see how many objects are constructed using a specialized stub. The specialized stub is only implemented for ia32 architecture in this change. For x64 and ARM the generic construct stub is used. Review URL: http://codereview.chromium.org/174392 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2753 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 19 Aug, 2009 1 commit
-
-
sgjesse@chromium.org authored
During parsing functions are analyzed for statements of the form this.x = ...;. These assignments are categorized in two types: simple and non simple. The simple ones are where the right hand side is known to be either a constant or an argument to the function. If a function only contains statements of this type the property names are collected and for the simple assignments the index of the argument or the constant value assigned are stored as well. When the initial map for a function is created and the function consists of only this type of assignemnts the initial map is created with a descriptor array describing these properties which will be known to always exist in an object created from the function. The information on this property assignments is not collected during pre-parsing so if compiling using pre-parse data these optimization hints are not available. Next step will be to use the information collected for the simple assignments to generate constructor code which will create and initialize the object from this information without calling the code for the function. Review URL: http://codereview.chromium.org/172088 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2710 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 06 Aug, 2009 1 commit
-
-
vitalyr@chromium.org authored
Also inlined Object::IsInstanceOf. This new function is intended to be used to speed up DOM bindings. Review URL: http://codereview.chromium.org/165044 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2636 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 30 Jul, 2009 2 commits
-
-
sgjesse@chromium.org authored
Allocate the code stubs dictionary and non monomorphic cache dictionary with an initial size which avoids these dictionaries to be expanded during bootstrapping. This gets rid of 9 dictionary expansions during bootstrapping. Preallocate the dictionary when normalizing an object to a size sufficient for holding the number of properties which is expected to be added to the object. This is used when ceating an object from an object literal boilerplate where multiple properties are known to be added. This gets rid of 10 dictionary expansions during bootstrapping. There are now 3 dictionary expansions left during bootstrapping. Review URL: http://codereview.chromium.org/160382 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2584 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
sgjesse@chromium.org authored
The global object is now allocated and initialized as a normalized object. Review URL: http://codereview.chromium.org/159587 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2582 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 28 Jul, 2009 5 commits
-
-
iposva@chromium.org authored
to handle infinity properly. Review URL: http://codereview.chromium.org/159518 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2564 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
antonm@chromium.org authored
Review URL: http://codereview.chromium.org/155682 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2562 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
kasperl@chromium.org authored
failures on ARM hardware. Review URL: http://codereview.chromium.org/160269 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2557 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
kasperl@chromium.org authored
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2550 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
iposva@chromium.org authored
indexed property accesses. - The IC stubs have not been updated to handle these directly, but at least we do not have to leave the VM to access bytes. Review URL: http://codereview.chromium.org/159263 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2549 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 17 Jul, 2009 1 commit
-
-
kasperl@chromium.org authored
the performance issue with number dictionaries. TBR=kmillikin@chromium.org git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2490 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 16 Jul, 2009 4 commits
-
-
bak@chromium.org authored
This is necessary for hash codes for string where the array index is encoded. Review URL: http://codereview.chromium.org/149753 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2488 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
bak@chromium.org authored
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2487 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
bak@chromium.org authored
Review URL: http://codereview.chromium.org/155350 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2486 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
http://codereview.chromium.org/149542yurys@chromium.org authored
Reapply http://codereview.chromium.org/149542 now that issue with Mac builder is fixed(http://codereview.chromium.org/155591) Review URL: http://codereview.chromium.org/149746 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2479 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 15 Jul, 2009 1 commit
-
-
yurys@chromium.org authored
Review URL: http://codereview.chromium.org/149672 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2469 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 14 Jul, 2009 1 commit
-
-
yurys@chromium.org authored
Related Chromium bug: http://code.google.com/p/chromium/issues/detail?id=16427 Review URL: http://codereview.chromium.org/149542 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2458 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 13 Jul, 2009 1 commit
-
-
http://crbug.com/16276kasperl@chromium.org authored
for global objects in the assembly code for dictionary loads. Review URL: http://codereview.chromium.org/155418 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2435 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 10 Jul, 2009 2 commits
-
-
ager@chromium.org authored
The abstractions have led to bugs because it looks like descriptor streams are GC safe but they are not. I have moved the descriptor stream helper functions to descriptor arrays and I find most of the code just as readable now as it was before. Review URL: http://codereview.chromium.org/149458 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2428 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
kasperl@chromium.org authored
lookup through the prototype chain. Review URL: http://codereview.chromium.org/155344 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2425 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 08 Jul, 2009 1 commit
-
-
erik.corry@gmail.com authored
register on ARM. * Make some compile-time loops into run-time loops for compactness. Review URL: http://codereview.chromium.org/149324 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2398 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-