- 05 Aug, 2010 1 commit
-
-
whesse@chromium.org authored
Modify polymorphic keyed load IC stub to load cached properties from the property array of a fast-case JSObject. Review URL: http://codereview.chromium.org/3053042 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5175 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 21 Jul, 2010 1 commit
-
-
ager@chromium.org authored
Review URL: http://codereview.chromium.org/3046006 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5105 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 30 Jun, 2010 1 commit
-
-
ager@chromium.org authored
The IC stub is completely generic, so there will only be one such stub in the system. Added a new overloaded version of the macro assembler RecordWrite method for cases where we have the address we store to computed up front. Review URL: http://codereview.chromium.org/2804029 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4991 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 23 Jun, 2010 1 commit
-
-
kaznacheev@chromium.org authored
Similar or duplicate checks are scattered around the code before doing the dictionary load. Also the entire branch in GenerateCallNormal that handles global/builtin receiver is guaranteed to bail out from GenerateDictionaryLoad, so there is no point in generating it at all. The purpose of the patch is: - making C++ code more compact and transparent, - not generating dead code. There is a tiny performance gain. The patch is ia32 only for now. Please tell me if I am missing anything. Review URL: http://codereview.chromium.org/2801007 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4926 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 16 Jun, 2010 1 commit
-
-
kaznacheev@chromium.org authored
Also edited ic-ia32.cc for clarity and better formatting. Review URL: http://codereview.chromium.org/2853003 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4873 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 10 Jun, 2010 1 commit
-
-
kaznacheev@chromium.org authored
This should make access faster for arrays of functions. Review URL: http://codereview.chromium.org/2754003 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4834 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 07 Jun, 2010 2 commits
-
-
vegorov@chromium.org authored
Review URL: http://codereview.chromium.org/2701003 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4806 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
kaznacheev@chromium.org authored
This speeds up constructs like this: var zz='replace'; '123'[zz]('3','4'); Review URL: http://codereview.chromium.org/2280007 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4804 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 04 Jun, 2010 1 commit
-
-
whesse@chromium.org authored
Add test_b(Operand, immediate) to ia32 assembler, and use it where possible. Improve comparison to a constant one-character string. Use CmpInstanceType in more places on ia32. Add IsObjectJSObjectType and IsInstanceJSObjectType to ia32 macro assembler, using a single branch for a range test. Review URL: http://codereview.chromium.org/2586001 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4795 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 02 Jun, 2010 1 commit
-
-
whesse@chromium.org authored
Review URL: http://codereview.chromium.org/2470001 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4787 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 01 Jun, 2010 1 commit
-
-
sgjesse@chromium.org authored
The generic keyed load stub was missing converting string keys to numberign keys and lookup in the keyed lookup cache. This is now added together with an additional counter on all platforms. Review URL: http://codereview.chromium.org/2441002 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4773 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 31 May, 2010 1 commit
-
-
whesse@chromium.org authored
Review URL: http://codereview.chromium.org/2330003 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4759 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 27 May, 2010 1 commit
-
-
vegorov@chromium.org authored
Reapply r4715 with fixes reviewed in http://codereview.chromium.org/2276002. Review URL: http://codereview.chromium.org/2255004 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4743 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 26 May, 2010 2 commits
-
-
vitalyr@chromium.org authored
These string methods can be composed from two basic blocks: charCodeAt and fromCharCode, both of which have fast cases for certain types of inputs. In this patch these two blocks are refactored to allow generating the fast cases without having to jump around the slow cases. In the slow cases since they can now be invoked both from inline runtime functions and from IC stubs we either have to save/restore state of the current frame or enter/leave a new internal frame. This is handled by new RuntimeCallHelper interface. Its implementation for virtual frame is based on FrameRegisterState class extracted from DeferredCode class. Review URL: http://codereview.chromium.org/2087009 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4733 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
vegorov@chromium.org authored
TBR=ager@chromium.org Review URL: http://codereview.chromium.org/2274001 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4723 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 25 May, 2010 1 commit
-
-
vegorov@chromium.org authored
- New сardmarking write 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). - Changes to enable oldspaces iteration without maps decoding: -- 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. Review URL: http://codereview.chromium.org/2144006 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4715 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 21 May, 2010 2 commits
-
-
vegorov@chromium.org authored
TBR=ager@chromium.org Review URL: http://codereview.chromium.org/2073018 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4704 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
vegorov@chromium.org authored
Reapplication of r4685 (reviewed http://codereview.chromium.org/2101002) with minor modifications: - Fix compilation problems on Win64. - Improve heap verification pass: search for garbage pointers to new space not only in dirty regions but in all regions. Review URL: http://codereview.chromium.org/2114015 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4703 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 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
-
- 17 May, 2010 1 commit
-
-
mark@chromium.org authored
Chromium build. v8.gyp no longer sets any V8_TARGET_ARCH_* macro on the Mac. Instead, the proper V8_TARGET_ARCH_* macro will be set by src/globals.h in the same way as the V8_HOST_ARCH_* macro when it detects that no target macro is currently defined. The Mac build will attempt to compile all ia32 and x86_64 .cc files. #ifdef guards in each of these target-specific source files prevent their compilation when the associated target is not selected. For completeness, these #ifdef guards are also provided for the arm and mips .cc files. BUG=706 TEST=x86_64 Mac GYP/Xcode-based Chromium build (still depends on other changes) Review URL: http://codereview.chromium.org/2133003 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4666 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
-
- 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
-
- 26 Mar, 2010 1 commit
-
-
ager@chromium.org authored
Fix bug in ARM pixel array load code and a typo in the x64 number dictionary load code. Fix bug in string dictionary probing where we did not bail out if the object has an interceptor. BUG=640 Review URL: http://codereview.chromium.org/1332003 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4292 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 23 Mar, 2010 1 commit
-
-
kasperl@chromium.org authored
now, the custom call generator stuff is disabled. Review URL: http://codereview.chromium.org/1094014 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4217 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 12 Mar, 2010 1 commit
-
-
ager@chromium.org authored
With my previous change to limit memory for object literals, we get more slow-case elements and this makes up for the slowdown when loading from those slow-case elements. The most complicated part here is the computation of the integer hash code. We might want to simplify the integer hash function. Review URL: http://codereview.chromium.org/857003 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4109 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 25 Feb, 2010 1 commit
-
-
whesse@chromium.org authored
Review URL: http://codereview.chromium.org/608031 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3955 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 24 Feb, 2010 1 commit
-
-
http://codereview.chromium.org/652118serya@chromium.org authored
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3937 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 18 Feb, 2010 2 commits
-
-
antonm@chromium.org authored
Review URL: http://codereview.chromium.org/647013 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3902 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
whesse@chromium.org authored
Review URL: http://codereview.chromium.org/601080 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3895 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 12 Feb, 2010 2 commits
-
-
antonm@chromium.org authored
Review URL: http://codereview.chromium.org/603028 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3847 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
whesse@chromium.org authored
Review URL: http://codereview.chromium.org/573009 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3841 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 09 Feb, 2010 2 commits
-
-
whesse@chromium.org authored
Eliminate unused function KeyedStoreIC::GenerateExtendStorage, and unused parameter from StubCompiler::GenerateStoreField. Review URL: http://codereview.chromium.org/575022 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3824 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
whesse@chromium.org authored
Change GenerateLoadStringLength to have two scratch registers on all platforms. This is needed so that the LoadIC can pass the receiver in a register, and not have it overwritten, and also simplifies the code. Review URL: http://codereview.chromium.org/596011 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3820 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 08 Feb, 2010 1 commit
-
-
whesse@chromium.org authored
Review URL: http://codereview.chromium.org/583008 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3817 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 01 Feb, 2010 2 commits
-
-
whesse@chromium.org authored
Review URL: http://codereview.chromium.org/558067 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3754 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
whesse@chromium.org authored
Review URL: http://codereview.chromium.org/555162 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3750 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-