- 20 May, 2010 2 commits
-
-
vegorov@chromium.org authored
TBR=ager@chromium.org Review URL: http://codereview.chromium.org/2071020 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4688 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
vegorov@chromium.org authored
-- layout change for FixedArrays: length is stored as a smis (initial patch by Kevin Millikin) -- layout change for SharedFunctionInfo: integer fields are stored as smi on arm, ia32 and rearranged on x64. -- layout change for String: meaning of LSB bit is fliped (1 now means hash not computed); on x64 padding is added. -- layout of maps is _not_ changed. Map space is currently iterated in a special way. - Cardmarking write barrier. New barrier handles large objects and normal objects in a similar fashion (no more additional space for pointer tracking is required, no conditional branches in WB code). Review URL: http://codereview.chromium.org/2101002 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4685 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 12 May, 2010 1 commit
-
-
ager@chromium.org authored
arguments in the presence of eval to avoid code duplication. Almost the same code was duplicated for loading properties and calling properties. Review URL: http://codereview.chromium.org/2053003 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4645 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 11 May, 2010 1 commit
-
-
sgjesse@chromium.org authored
Review URL: http://codereview.chromium.org/1990012 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4643 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 10 May, 2010 1 commit
-
-
erik.corry@gmail.com authored
of having a list of virtual frame pointers in the jump target we have one virtual frame, which is the frame that all have to merge to to branch to that frame. The virtual frame in the JumpTarget is inside the JumpTarget, rather than being an allocated object that is pointed to. Unfortunately this means that the JumpTarget class has to be able to see the size of a VirtualFrame object to compile, which in turn lead to a major reorganization of related .h files. The actual change of functionality in this change is intended to be minimal (we now assert that the virtual frames match when using JumpTarget instead of just assuming that they do). Review URL: http://codereview.chromium.org/1961004 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4631 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 07 May, 2010 1 commit
-
-
sgjesse@chromium.org authored
Review URL: http://codereview.chromium.org/1996006 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4614 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 04 May, 2010 1 commit
-
-
ager@chromium.org authored
from ia32 to arm. Original change: http://codereview.chromium.org/1709008 Review URL: http://codereview.chromium.org/1944001 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4575 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 03 May, 2010 1 commit
-
-
ager@chromium.org authored
Original code review for ia32 version: http://codereview.chromium.org/1709008 Review URL: http://codereview.chromium.org/1858002 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4569 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 29 Apr, 2010 1 commit
-
-
antonm@chromium.org authored
Keyed store stub sits high in sorting profiles. Swapping allows to save us additional type checks as we could both read and write elmenets (on fast path) without them. Review URL: http://codereview.chromium.org/1709008 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4551 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 28 Apr, 2010 1 commit
-
-
podivilov@chromium.org authored
http://compute1.aar:9013/golem/r4502-v8-podivilov-string-char-at2-x64-vs-4502-v8-x64.html Review URL: http://codereview.chromium.org/1750017 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4542 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 20 Apr, 2010 3 commits
-
-
vitalyr@chromium.org authored
(Fixed handling of out-of-bounds keys.) String keyed load used to call STRING_CHAR_AT builtin that performs two steps (get a char code, construct a one-char string from the code), both of which have fast cases implemented as inline runtime functions. In this chage most of the code from these functions is extracted to a set of common generator functions in StringStubBase and the fast cases are grouped together in the IC code. Review URL: http://codereview.chromium.org/1582041 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4450 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
vitalyr@chromium.org authored
Review URL: http://codereview.chromium.org/1633024 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4445 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
vitalyr@chromium.org authored
String keyed load used to call STRING_CHAR_AT builtin that performs two steps (get a char code, construct a one-char string from the code), both of which have fast cases implemented as inline runtime functions. In this chage most of the code from these functions is extracted to a set of common generator functions in StringStubBase and the fast cases are grouped together in the IC code. Review URL: http://codereview.chromium.org/1539039 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4444 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 14 Apr, 2010 1 commit
-
-
antonm@chromium.org authored
Review URL: http://codereview.chromium.org/1563005 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4418 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 13 Apr, 2010 1 commit
-
-
lrn@chromium.org authored
Avoid cloning using CloneRegExpResult for results that are just arrays. Made a more direct path for string.match with string argument. Review URL: http://codereview.chromium.org/1645001 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4395 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 12 Apr, 2010 1 commit
-
-
antonm@chromium.org authored
Review URL: http://codereview.chromium.org/1623004 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4381 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 07 Apr, 2010 1 commit
-
-
whesse@chromium.org authored
Change Math.random() to return 32 bits of random goodness, instead of 30 random bits. Math.random now allocates a HeapNumber inline, and calls a C funciton directly to put the random bits into it. Review URL: http://codereview.chromium.org/1599019 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4354 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 30 Mar, 2010 1 commit
-
-
kmillikin@chromium.org authored
Cut down on the number of arguments passed to the various binary operation code generator functions by passing along the expression itself, rather than a subset of its fields. Review URL: http://codereview.chromium.org/1592001 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4319 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 26 Mar, 2010 1 commit
-
-
http://codereview.chromium.org/1311003/diff/8001/9001ricow@chromium.org authored
Land http://codereview.chromium.org/1311003/diff/8001/9001 to allows us to push to trunk. Corrected the ASSERT from the review. Review URL: http://codereview.chromium.org/1404001 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4290 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 25 Mar, 2010 3 commits
-
-
whesse@chromium.org authored
Review URL: http://codereview.chromium.org/1233003 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4273 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
fschneider@chromium.org authored
Since we add more type (StringType, PrimitiveType) the name NumberInfo does not make sense anymore. Review URL: http://codereview.chromium.org/1207006 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4268 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
sgjesse@chromium.org authored
This re-applies r4220 and r4233, which was reverted in r4254 due to a bug. This bug has now been fixed, with the only change being line 2884 changed from __ SmiTag(left_side->reg()); to __ SmiTag(operand->reg()); Added a regression test. BUG=http://crbug.com/39160 TEST=test/mjsunit/regress/regress-crbug-39160.js Review URL: http://codereview.chromium.org/1251009 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4261 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 24 Mar, 2010 1 commit
-
-
kmillikin@chromium.org authored
This reverts svn revisons r4220 and r4233. Review URL: http://codereview.chromium.org/1279001 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4254 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 23 Mar, 2010 2 commits
-
-
sgjesse@chromium.org authored
Inline floating point compare instead of calling the stub when the following conditions are met: * Code is in a loop * Compare is not a for loop condition * Compare is not an equal comparison This inlined code handles heap number to heap number and heap number to smi compare. It can also handle smi to smi compare, but whenever there is a chance of comparing two smis the smi compare is inlined before the inlined floating point compare. Support for non SSE2 hardware is included. A new set of variants of the compare stub without the floating point comparison code is called if the inline comapre fails due to the operands not beeing heap numbers or smis. The virtual frame has been extended with a branch taking two live results to be carried through to the destination. This makes this change much simpler as the inlined code have two live results in registers and a number of bailouts. CompareStub::GetName needs to be updated as well. I will do that as a separate change. Also inlined equality check if both operands can't be NaN. This can only provide positive equals if it is the same object. Review URL: http://codereview.chromium.org/1117011 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4220 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
iposva@chromium.org authored
their place. - Add one field to the SharedFunctionInfo to remember the number of literals used in this function. Review URL: http://codereview.chromium.org/669240 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4211 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 22 Mar, 2010 1 commit
-
-
fschneider@chromium.org authored
This change fixes an assert we hit when we recognized a fast smi loop with a parameter as the loop variable. BUG=650 Review URL: http://codereview.chromium.org/1138003 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4202 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 17 Mar, 2010 1 commit
-
-
erik.corry@gmail.com authored
Review URL: http://codereview.chromium.org/1000007 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4169 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 16 Mar, 2010 1 commit
-
-
whesse@chromium.org authored
Review URL: http://codereview.chromium.org/975001 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4148 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 15 Mar, 2010 1 commit
-
-
whesse@chromium.org authored
Add static analysis to AST expressions that records whether a negative zero will be treated identically to a positive zero in the expression's context. Use this flag to avoid some tests in inlined smi code. Review URL: http://codereview.chromium.org/965001 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4130 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 11 Mar, 2010 2 commits
-
-
antonm@chromium.org authored
Review URL: http://codereview.chromium.org/669061 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4108 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
sgjesse@chromium.org authored
The inline runtime functions are now included in the fuzzing of the natives. The chack for the expected number of arguments passed have been moved to the parser which will generate a syntax error if a runtime function (either C++ or inline) is called with a different number of arguments than expected. Review URL: http://codereview.chromium.org/573056 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4096 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 08 Mar, 2010 1 commit
-
-
ricow@chromium.org authored
Also changed name of GeneratePow and the %_ call name to follow convention based on MathSin and MathCos. Moved GeneratePow down to the other methods. Review URL: http://codereview.chromium.org/661179 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4054 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 05 Mar, 2010 1 commit
-
-
erik.corry@gmail.com authored
Makes NumberInfo into a real class. Fix bug where NumberInfo was lost in ToRegister. Allow 17 bits in safe Smis instead of 16. Review URL: http://codereview.chromium.org/668151 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4046 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 01 Mar, 2010 1 commit
-
-
kaznacheev@chromium.org authored
This is a subset of a CL reviewed earlier(http://codereview.chromium.org/551093). The register usage optimisation part has been reviewed and submitted separately. Two fast cases supported: HeapNumber operands and String operands for ADD. Review URL: http://codereview.chromium.org/553117 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3988 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 26 Feb, 2010 3 commits
-
-
vitalyr@chromium.org authored
This speeds up string,charAt(n) and string[n]. Review URL: http://codereview.chromium.org/660184 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3980 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
ricow@chromium.org authored
same method as the old powi version in runtime.cc and also checks if the exponent is 0.5 or -0.5 in which case we calculate the square root or reciprocal value of the square root. Review URL: http://codereview.chromium.org/660072 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3964 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
fschneider@chromium.org authored
Introducing a virtual-frame-inl.h file containing some platform-independent virtual frame function which are small enough to be inlined. Removed unnecessary #include of virtual-frame.h from register-allocator-inl.h and added the necessary explicit includes in a number of files. Review URL: http://codereview.chromium.org/660104 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3962 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 23 Feb, 2010 1 commit
-
-
lrn@chromium.org authored
Review URL: http://codereview.chromium.org/652041 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3929 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 19 Feb, 2010 2 commits
-
-
whesse@chromium.org authored
Review URL: http://codereview.chromium.org/650028 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3921 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
kmillikin@chromium.org authored
A list of bailout descriptions is kept in the CompilationInfo structure that is shared between the primary and secondary code generators. The primary adds a description to the list for each bailout position. Responsibility for binding labels is moved from the primary to the secondary code generator. All the labels still target the start of the secondary code and the compilation state of the primary is still ignored. Move the compilation mode flag to the CompilationInfo. Review URL: http://codereview.chromium.org/651031 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3920 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-