Go to file
svenpanne@chromium.org dbce27047e Fixed and improved code for integral division. Fixed and extended tests.
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
2014-02-18 10:45:27 +00:00
benchmarks Fix bug in nextWeaker function of deltablue benchmark. 2013-10-25 13:21:46 +00:00
build Merge experimental/a64 to bleeding_edge. 2014-02-12 09:19:30 +00:00
include Do not visit smis in the root list during GC. 2014-02-17 10:41:25 +00:00
samples Prepare removal of ObjectTemplate::New without Isolate parameter. 2014-01-08 06:53:31 +00:00
src Fixed and improved code for integral division. Fixed and extended tests. 2014-02-18 10:45:27 +00:00
test Fixed and improved code for integral division. Fixed and extended tests. 2014-02-18 10:45:27 +00:00
tools Make tools/bash-completion.sh robust against arbitrary CWD 2014-02-18 09:12:11 +00:00
.clang-format Change clang-format config to allow for two empty lines between functions 2013-12-03 10:39:21 +00:00
.gitignore Migrate to new test status file syntax 2013-09-24 12:08:33 +00:00
AUTHORS Add ARM contributors to AUTHORS. 2014-02-12 11:54:34 +00:00
ChangeLog Prepare push to trunk. Now working on version 3.24.40. 2014-02-14 01:05:20 +00:00
codereview.settings Add settings for try server. 2013-12-17 12:24:25 +00:00
DEPS Roll gyp 1830:1831 2014-01-08 15:54:46 +00:00
LICENSE Update LICENSE file 2012-01-03 16:38:42 +00:00
LICENSE.strongtalk Add LICENSE.v8, LICENSE.strongtalk and LICENSE.valgrind to the v8 2011-02-03 07:10:06 +00:00
LICENSE.v8 Add LICENSE.v8, LICENSE.strongtalk and LICENSE.valgrind to the v8 2011-02-03 07:10:06 +00:00
LICENSE.valgrind Add LICENSE.v8, LICENSE.strongtalk and LICENSE.valgrind to the v8 2011-02-03 07:10:06 +00:00
Makefile Also compile A64 for quickcheck target 2014-02-18 08:53:51 +00:00
Makefile.android Merge experimental/a64 to bleeding_edge. 2014-02-12 09:19:30 +00:00
Makefile.nacl Fix standalone Android and NaCl Makefiles to support arm_version=7 and optdebug 2013-12-16 15:50:34 +00:00
OWNERS Add jarin to OWNERS file. 2014-01-23 07:55:58 +00:00
PRESUBMIT.py Revert "Add debug output to presubmit script for investigating tree check behavior." and "Add more temporary debugging output to PRESUBMIT.py". 2014-01-10 15:17:49 +00:00
WATCHLISTS Add myself to a watchlist for the public API. 2013-10-10 11:37:48 +00:00