- 17 May, 2012 1 commit
-
-
erik.corry@gmail.com authored
Remove %_SwapElements. This inlined runtime contained an optimization that was dangerous in the presence of incremental compaction. It also prevented QuickSort from array.js from being optimized by Crankshaft, so it is probably better to do without it. We have high hopes that this will fix bug=117879. Review URL: https://chromiumcodereview.appspot.com/10392150 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11588 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 16 May, 2012 1 commit
-
-
erik.corry@gmail.com authored
MIPS: Fix simplification of DoLoadNamedFieldPolymorphic. This is a commit of https://chromiumcodereview.appspot.com/10391096/ for Akos Palfi git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11572 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 11 May, 2012 1 commit
-
-
erik.corry@gmail.com authored
Review URL: https://chromiumcodereview.appspot.com/10386089 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11543 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 10 May, 2012 1 commit
-
-
erik.corry@gmail.com authored
This is now bug 2123. TBR=mstarzinger Review URL: https://chromiumcodereview.appspot.com/10391061 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11540 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 07 May, 2012 2 commits
-
-
yangguo@chromium.org authored
BUG=v8:2115 TEST=mjsunit/string-case,mjsunit/regress/regress-110509,mjsunit/math-floor Review URL: https://chromiumcodereview.appspot.com/10383044 Patch from Akos Palfi <palfia@homejinni.com>. git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11523 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
jkummerow@chromium.org authored
BUG=126414 TEST=mjsunit/regress/regress-crbug-126414 Review URL: https://chromiumcodereview.appspot.com/10375033 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11518 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 04 May, 2012 3 commits
-
-
danno@chromium.org authored
Port r11483 (c291e80e) BUG= TEST= Review URL: https://chromiumcodereview.appspot.com/10348016 Patch from Akos Palfi <palfia@homejinni.com>. git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11507 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
mstarzinger@chromium.org authored
Port r11492 (d14ada19) Original commit message: Fix register clobbering in LoadIC for interceptors. This fixes a corner-case where the receiver register was clobbered by LoadICs for interceptors and inlined followup code still relied on the receiver to be intact in case of prototype changes. BUG= TEST= Review URL: https://chromiumcodereview.appspot.com/10315016 Patch from Akos Palfi <palfia@homejinni.com>. git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11506 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
mstarzinger@chromium.org authored
Port r11491 (705d40cc) Original commit message: Implement clearing of CompareICs. This allows CompareICs to be cleared during garbage collection to avoid cross-context garbage retention through maps stored in CompareIC stubs for the KNOWN_OBJECTS state. BUG= TEST= Review URL: https://chromiumcodereview.appspot.com/10342024 Patch from Akos Palfi <palfia@homejinni.com>. git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11505 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 03 May, 2012 2 commits
-
-
peter.rybin@gmail.com authored
Review URL: https://chromiumcodereview.appspot.com/10263002 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11502 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
danno@chromium.org authored
Port r11454 (72c662fc) Original commit message: Reduce size of LIR instruction by one word and remove dead code. Until now we always recorded two deoptimization environments for instructions that are marked as calls. We actually don't need two for all LIR instructions except one (LInstanceOfKnownGlobal) where there is a lazy deoptimization point in deferred code. This change remove on of them and uses one virtual function instead to make LInstanceOfKnownGlobal work as before. Additionally, this change removes an unused predicate save_doubles_ from LIR instructions and removes some helper functions that are used only in one place. BUG= TEST= Review URL: https://chromiumcodereview.appspot.com/10233019 Patch from Akos Palfi <palfia@homejinni.com>. git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11501 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 02 May, 2012 1 commit
-
-
mstarzinger@chromium.org authored
Port r11470 (621f96c0) Original commit message: Fix LFastLiteral to check boilerplate elements kind. Adds a missing check that the elements kind of the boilerplate object still has the expected elements kind, unoptimized code can transition the boilerplate. Corner cases might cause the optimized code to be reentered again. BUG= TEST= Review URL: https://chromiumcodereview.appspot.com/10271018 Patch from Akos Palfi <palfia@homejinni.com>. git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11474 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 27 Apr, 2012 1 commit
-
-
yangguo@chromium.org authored
These were found by compilation errors with gcc 4.6. BUG= TEST= Review URL: https://chromiumcodereview.appspot.com/10253004 Patch from Daniel Kalmar <kalmard@homejinni.com>. git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11459 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 26 Apr, 2012 1 commit
-
-
fschneider@chromium.org authored
Until now we always recorded two deoptimization environments for instructions that are marked as calls. We actually don't need two for all LIR instructions except one (LInstanceOfKnownGlobal) where there is a lazy deoptimization point in deferred code. This change remove on of them and uses one virtual function instead to make LInstanceOfKnownGlobal work as before. Additionally, this change removes an unused predicate save_doubles_ from LIR instructions and removes some helper functions that are used only in one place. Review URL: https://chromiumcodereview.appspot.com/10035021 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11454 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 25 Apr, 2012 1 commit
-
-
mstarzinger@chromium.org authored
R=danno@chromium.org BUG=chromium:124594 TEST=mjsunit/regress/regress-124594 Review URL: https://chromiumcodereview.appspot.com/10155024 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11436 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 24 Apr, 2012 1 commit
-
-
fschneider@chromium.org authored
Landing for Rodolph Perfetta <rodolph.perfetta@gmail.com>. Original CL: http://codereview.chromium.org/9638018/ Review URL: https://chromiumcodereview.appspot.com/10197010 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11427 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 23 Apr, 2012 2 commits
-
-
fschneider@chromium.org authored
TBR=danno@chromium.org Review URL: https://chromiumcodereview.appspot.com/10190007 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11421 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
fschneider@chromium.org authored
BUG=none TEST=mjsunit/math-floor-of-div.js Landing for Rodolph Perfetta <rodolph.perfetta@gmail.com>. Review URL: https://chromiumcodereview.appspot.com/9638018 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11420 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 20 Apr, 2012 2 commits
-
-
erikcorry authored
MIPS: Do the qNaN fixup at de-serialization time. This is a commit of https://chromiumcodereview.appspot.com/10093007/ for Paul Lind git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11405 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
mstarzinger@chromium.org authored
Port r11391 (789b1078) BUG= TEST= Review URL: https://chromiumcodereview.appspot.com/10124013 Patch from Akos Palfi <palfia@homejinni.com>. git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11401 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 19 Apr, 2012 2 commits
-
-
fschneider@chromium.org authored
Make non-templatized versions of LIR printing functions. This avoid duplicating the code for each template instance. BUG=v8:1803 Review URL: https://chromiumcodereview.appspot.com/10123011 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11394 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
fschneider@chromium.org authored
~~ is commonly used to truncate a value to int32 (ToInt32). This change avoid actually emitting the bitwise operations, and just truncates the subexpression of ~~. BUG=v8:2037 TEST=test/mjsunit/compiler/optimize-bitnot.js Review URL: https://chromiumcodereview.appspot.com/10123007 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11390 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 18 Apr, 2012 7 commits
-
-
rossberg@chromium.org authored
Port r11336 (6dd4e844) Original commit message: Implement rudimentary module linking. Constructs the (generally cyclic) graph of module instance objects and populates their exports. Any exports other than nested modules are currently set to 'undefined' (but already present as properties). Details: - Added new type JSModule for instance objects: a JSObject carrying a context. - Statically allocate instance objects for all module literals (in parser 8-}). - Extend interfaces to record and unify concrete instance objects, and to support iteration over members. - Introduce new runtime function for pushing module contexts. - Generate code for allocating, initializing, and setting module contexts, and for populating instance objects from module literals. Currently, all non-module exports are still initialized with 'undefined'. - Module aliases are resolved statically, so no special code is required. - Make sure that code containing module constructs is never optimized (macrofy AST node construction flag setting while we're at it). - Add test case checking linkage. BUG= TEST= Review URL: https://chromiumcodereview.appspot.com/10035028 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11374 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
rossberg@chromium.org authored
Port r11332 (0e6df8b6) Original commit message: Refactor code generation for global declarations. BUG= TEST= Review URL: https://chromiumcodereview.appspot.com/10041029 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11373 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
rossberg@chromium.org authored
Port r11331 (bd7843a0) Original commit message: Refactoring of code generation for declarations, in preparation for modules. Do proper dispatch on declaration type instead of mingling together different code generation paths. Once we add more declaration forms, this is more scalable. BUG= TEST= Review URL: https://chromiumcodereview.appspot.com/10119017 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11372 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
yangguo@chromium.org authored
Port r11349 (5b381a). BUG= TEST= Review URL: https://chromiumcodereview.appspot.com/10107025 Patch from Daniel Kalmar <kalmard@homejinni.com>. git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11367 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
vegorov@chromium.org authored
Port r11278 (e5dc7ebd). Original commit message: Skip canonicalization check in LStoreKeyedFastDoubleElement when it is not needed: - if value is a result of integer32 to double conversion (can't be NaN); - if value was loaded from fast double backing store (already canonicalized). BUG= TEST= Review URL: https://chromiumcodereview.appspot.com/10071004 Patch from Daniel Kalmar <kalmard@homejinni.com>. git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11366 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
vegorov@chromium.org authored
Removed a constant now duplicated by r11344 (7c41cf72). This fixes compilation on MIPS (with the other submitted patches applied). BUG= TEST= Review URL: https://chromiumcodereview.appspot.com/10108023 Patch from Daniel Kalmar <kalmard@homejinni.com>. git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11365 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
vegorov@chromium.org authored
Provide known target as a hint to HInvokeFunction instruction so that it can statically determine if arguments adaptation is required. R=fschneider@chromium.org BUG=v8:2079 Review URL: https://chromiumcodereview.appspot.com/10116021 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11364 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 17 Apr, 2012 1 commit
-
-
mstarzinger@chromium.org authored
This makes sure that boilerplate objects for array literals with non-constant elements (which will contain the hole at non-constant positions) will not cause prototype chain lookups when generating optimized code. R=erik.corry@gmail.com BUG=chromium:123512 TEST=mjsunit/regress/regress-123512 Review URL: https://chromiumcodereview.appspot.com/10105025 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11350 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 13 Apr, 2012 3 commits
-
-
mstarzinger@chromium.org authored
Port r11306 (36b58f7). Original commit message: This passes the isolate through to API callback functions so that it is available through AccessorInfo and Arguments. This allows bindings to avoid unnecessary TLS lookups to retrieve the current isolate. BUG= TEST= Review URL: https://chromiumcodereview.appspot.com/10083001 Patch from Daniel Kalmar <kalmard@homejinni.com>. git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11319 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
fschneider@chromium.org authored
Port r11282 (bd2ab07). Patch by Daniel Kalmar. Original commit message: Some GWT compiled code results in array access that has a heap number (e.g. -0) as an index. Until now this would result in a generic IC. For example: a[-0] === a[0] or a[0.25 * 4] === a[1] This change detects heap numbers that are representable as a smi and converts them. As a result we can still use the fast keyed monomorphic ICs. Optimized code already handles keyed access with a double-key efficiently. As a result the frame rate on the reported benchmark improves by roughly 2x. BUG= TEST= Review URL: https://chromiumcodereview.appspot.com/10068012 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11318 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
erik.corry@gmail.com authored
MIPS: Implement CheckNotCharacterAfterMinusAnd. This is a commit of http://codereview.chromium.org/9721011/ for Daniel Kalmar git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11314 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 12 Apr, 2012 3 commits
-
-
jkummerow@chromium.org authored
R=danno@chromium.org BUG=122271 TEST=mjsunit/regress/regress-crbug-122271 Review URL: https://chromiumcodereview.appspot.com/10038010 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11286 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
erik.corry@gmail.com authored
to the MIPS FPU even when cross-building the snapshot. This is based on code from Daniel Kalmar from http://codereview.chromium.org/9910029/ Review URL: https://chromiumcodereview.appspot.com/10068006 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11283 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
erik.corry@gmail.com authored
Port regexp microoptimizations to MIPS. Also fix some formatting. This includes http://codereview.chromium.org/9965107/ from Daniel Kalmar git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11281 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 11 Apr, 2012 1 commit
-
-
vegorov@chromium.org authored
When pushing arguments use correct initial values instead of fetching them from the environment which can be modified. R=fschneider@chromium.org TEST=test/mjsunit/compiler/inline-arguments.js Review URL: https://chromiumcodereview.appspot.com/10033028 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11274 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 05 Apr, 2012 2 commits
-
-
mstarzinger@chromium.org authored
This is needed so that we can start removing write-barriers in optimized code if we can prove that the receiver object is always in new-space. TEST=cctest/test-heap/OptimizedAllocationAlwaysInNewSpace Review URL: https://chromiumcodereview.appspot.com/10008007 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11243 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
danno@chromium.org authored
Port r11010 (1daa81bc). MIPS-specific changes: -register codes and registers are defined using a macro to avoid redundancy -renamed s8_fp to fp, removed the "fp" alias -removed kSavedValueRegister (found by check-static-initializers.sh) Original commit message: Landing for pliard@chromium.org: Remove static initializers in v8. This change includes two CLs by pliard@chromium.org: 1. http://codereview.chromium.org/9447052/ (Add CallOnce() and simple LazyInstance implementation): Note that this implementation of LazyInstance does not handle global destructors (i.e. the lazy instances a This CL was initially reviewed on codereview.appspot.com: http://codereview.appspot.com/5687064/ 2. http://codereview.chromium.org/9455088/ (Remove static initializers in v8): This CL depends on CL 9447052 (adding CallOnce and LazyInstance). It is based on a patch sent by Digit. With this patch applied, we have only one static initializer left (in atomicops_internals_x86_gcc.cc). This This CL also modifies the presubmit script to check the number of static initializers. BUG= TEST= Review URL: https://chromiumcodereview.appspot.com/9689069 Patch from Daniel Kalmar <kalmard@homejinni.com>. git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11241 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 02 Apr, 2012 1 commit
-
-
erik.corry@gmail.com authored
Review URL: https://chromiumcodereview.appspot.com/9963051 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11207 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-