Replaced unary negation by multiplication with -1.
authorsvenpanne@chromium.org <svenpanne@chromium.org@ce2b1a6d-e550-0410-aec6-3dcde31c8c00>
Fri, 2 Aug 2013 11:56:35 +0000 (11:56 +0000)
committersvenpanne@chromium.org <svenpanne@chromium.org@ce2b1a6d-e550-0410-aec6-3dcde31c8c00>
Fri, 2 Aug 2013 11:56:35 +0000 (11:56 +0000)
commitbf71023ba51e8870a8e658a1aa6ea4cfda491d23
treeadf2a0ee8591795be106aba1f52be5a7a3a7eb49
parent1e296936eb20f7ce1c23269d1c28665c51bb53e7
Replaced unary negation by multiplication with -1.

This fixes a deopt loop in the Epic Citadel demo and removes some code. Apart from that, this change is performance-neutral.

When we do something similar for BIT_NOT, the whole UnaryOp stuff can go away.

R=jkummerow@chromium.org

Review URL: https://codereview.chromium.org/21782002

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16029 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
src/arm/full-codegen-arm.cc
src/code-stubs-hydrogen.cc
src/hydrogen.cc
src/ia32/full-codegen-ia32.cc
src/mips/full-codegen-mips.cc
src/parser.cc
src/typing.cc
src/x64/full-codegen-x64.cc
test/mjsunit/unary-minus-deopt.js [new file with mode: 0644]