- 30 Dec, 2010 1 commit
-
-
fschneider@chromium.org authored
1. Separating out the instance-type check from the array-length operation. 2. I also changed the bounds-check on keyed loads to use the length property for JS arrays (like we do for array stores). The new pattern should use less registers and allow more checks to be eliminated. Review URL: http://codereview.chromium.org/5961016 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6125 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 25 Dec, 2010 1 commit
-
-
vitalyr@chromium.org authored
Review URL: http://codereview.chromium.org/6072009 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6120 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 22 Dec, 2010 1 commit
-
-
vitalyr@chromium.org authored
Review URL: http://codereview.chromium.org/6009005 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6112 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 20 Dec, 2010 1 commit
-
-
whesse@chromium.org authored
Add untagged double versions of Math.sin and Math.cos. Merge classes TranscendentalCacheStub and TranscendentalCacheSSE2Stub. Review URL: http://codereview.chromium.org/5996002 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6083 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 17 Dec, 2010 1 commit
-
-
fschneider@chromium.org authored
This prevents code motion from hoisting map-checks across such stores which may result in unnecessary deoptimizations. In the following example program we would move a map-check from the inner loop out before the outer loop which is not desirable: function f() { var o = {}; var j = 0; o.a = 1; do { o.b = 6; // Map transition for (var i=0; i<10; i++) { o.a = o.b + i; } } while(++j < 1) {} } for (var i = 0; i < 1000000; i++) f(); Review URL: http://codereview.chromium.org/5991001 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6071 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 16 Dec, 2010 3 commits
-
-
fschneider@chromium.org authored
The overflow conditions were not correctly detected for certain add, sub and mul instructions. I replaced the previous code by using 64-bit arithmetic to correctly identify overflows for *, + and -. Review URL: http://codereview.chromium.org/5860009 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6055 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
ager@chromium.org authored
function for the data. This leads to wrong results where operations are wrongly assumed to have the same value as a previous (different) operation. Provide the data comparison functions. BUG=995 Review URL: http://codereview.chromium.org/5898003 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6052 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
kmillikin@chromium.org authored
Before, when we deoptimized after a branch we jumped to before the branch was taken in the unoptimized code with a token value that indicated when edge to take. There was a lot of machinery to track this value through the short-circuit logical operations and logical negation, and to handle it properly at inline function return sites. There was also machinery to prevent incorrectly seeing this environment with the extra value never actually materialized in the unoptimized code. Instead, now we deoptimize directly to one of the targets of the branch. Much but not yet all of the extra machinery has been removed or simplified. The cost is that branching control structures (the looping statements, if statements, conditional expressions, and the short-circuit binary logical operations) need extra AST IDs to identify the branch targets. Review URL: http://codereview.chromium.org/5908001 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6049 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 15 Dec, 2010 1 commit
-
-
erik.corry@gmail.com authored
Review URL: http://codereview.chromium.org/5806001 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6027 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 14 Dec, 2010 2 commits
-
-
vitalyr@chromium.org authored
Two old id types are replaced by builtin function ids. We can use these in the code generators to emit custom code for the selected functions. Review URL: http://codereview.chromium.org/5767002 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6013 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
whesse@chromium.org authored
Reapply change 5989, adding untagged double calls to Math.pow, with problem in generated code for TranscendentalCacheSSE2Stub (unguarded SSE 4.1 code) fixed. Review URL: http://codereview.chromium.org/5726008 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6010 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 13 Dec, 2010 2 commits
-
-
whesse@chromium.org authored
Review URL: http://codereview.chromium.org/5804003 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5991 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
whesse@chromium.org authored
Review URL: http://codereview.chromium.org/5741003 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5989 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 08 Dec, 2010 1 commit
-
-
whesse@chromium.org authored
Review URL: http://codereview.chromium.org/5640004 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5949 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 07 Dec, 2010 3 commits
-
-
kasperl@chromium.org authored
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5922 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
kasperl@chromium.org authored
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5921 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
kasperl@chromium.org authored
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5920 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-