- 18 Feb, 2014 1 commit
-
-
svenpanne@chromium.org authored
Arithmetic right shifting is *not* division in two's complement representation, only in one's complement. So we convert to one's complement, shift, and go back to two's complement. By permutating the last steps, one can get efficient branch-free code. This insight comes from the paleozoic era of computer science, see the paper from 1976: Guy Lewis Steele Jr.: "Arithmetic Shifting Considered Harmful" ftp://publications.ai.mit.edu/ai-publications/pdf/AIM-378.pdf This results in better and more correct code than our previous "neg/shift/neg" dance. LOG=y BUG=v8:3151 R=bmeurer@chromium.org Review URL: https://codereview.chromium.org/166793002 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19434 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 20 Aug, 2013 1 commit
-
-
jkummerow@chromium.org authored
Refine the related test cases to cover truncating cases BUG= R=jkummerow@chromium.org Review URL: https://codereview.chromium.org/22964004 Patch from Weiliang Lin <weiliang.lin2@gmail.com>. git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16249 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 10 Dec, 2012 1 commit
-
-
yangguo@chromium.org authored
If the divisor is a Power-of-2 constant, we could use shifts instead of the expensive idiv instructions, which also loose the register constraints. Review URL: https://chromiumcodereview.appspot.com/11478043 Patch from Yuqiang Xian <yuqiang.xian@intel.com>. git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13178 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 08 Nov, 2012 1 commit
-
-
mstarzinger@chromium.org authored
This fixes a corner case when the instance prototype of a function is changed while inobject slack tracking is still in progress. This caused the intial map to be unrelated for functions with the same shared info and hence the shared construct stub is no longer generic enough to work for all those functions. R=danno@chromium.org BUG=chromium:157019 TEST=mjsunit/regress/regress-crbug-157019 Review URL: https://codereview.chromium.org/11293059 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12896 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 21 Feb, 2012 1 commit
-
-
vegorov@chromium.org authored
This makes LFunctionLiteral safe even when it is used from inside inlined function. All other architectures were implementing LFunctionLiteral correctly. R=mstarzinger@chromium.org TEST=test/mjsunit/regress/regress-inlining-function-literal-context.js Review URL: https://chromiumcodereview.appspot.com/9425061 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10778 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 19 Jan, 2012 1 commit
-
-
vegorov@chromium.org authored
R=ulan@chromium.org BUG=http://crbug.com/110509 TEST=test/mjsunit/regress/regress-110509.js Review URL: https://chromiumcodereview.appspot.com/9265003 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10434 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 13 Jan, 2012 1 commit
-
-
yangguo@chromium.org authored
BUG=v8:1898 TEST=mjsunit/regress/regress-1898.js Review URL: http://codereview.chromium.org/9190047 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10396 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 27 Nov, 2009 1 commit
-
-
fschneider@chromium.org authored
Also added a simple test that invokes a JS runtime function in top-level code. Review URL: http://codereview.chromium.org/437081 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3371 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 23 Oct, 2009 1 commit
-
-
sgjesse@chromium.org authored
If we had compiled the comment instead of the code it would have worked. BUG=483 TEST=mjsunit/regress/regress-483.js Review URL: http://codereview.chromium.org/332007 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3120 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 20 Oct, 2009 1 commit
-
-
sgjesse@chromium.org authored
The check for arguments in registers in one of the three versions of GenericBinaryOpStub::GenerateCall was plain wrong. BUG=475 TEST=mjsunit/regress/regress-475.js Review URL: http://codereview.chromium.org/307002 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3092 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 04 Mar, 2009 1 commit
-
-
olehougaard authored
Review URL: http://codereview.chromium.org/39126 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1416 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 26 Sep, 2008 1 commit
-
-
christian.plesner.hansen@gmail.com authored
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@386 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 09 Sep, 2008 1 commit
-
-
christian.plesner.hansen@gmail.com authored
Added presubmit step to check copyright. git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@242 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 22 Aug, 2008 1 commit
-
-
christian.plesner.hansen authored
In the shell sample don't print the result of executing a script, only evaluating expressions. Fixed issue when building samples on Windows using a shared V8 library. Added visibility option on Linux build which makes the generated library 18% smaller. Changed build system to accept multiple build modes in one build and generate seperate objects, libraries and executables for each mode. Removed deferred negation optimization (a * -b => -(a * b)) since this visibly changes operand conversion order. Improved parsing performance by introducing stack guard in preparsing. Without a stack guard preparsing always bails out with stack overflow. git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 03 Jul, 2008 1 commit
-
-
christian.plesner.hansen authored
git-svn-id: http://v8.googlecode.com/svn/trunk@2 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-