Revision: 6458
Author: [email protected]
Date: Tue Jan 25 04:17:02 2011
Log: Do not shuffle parameters when doing sub on ia32 and arm.
Review URL: http://codereview.chromium.org/6283012
http://code.google.com/p/v8/source/detail?r=6458
Modified:
/branches/bleeding_edge/src/arm/lithium-arm.cc
/branches/bleeding_edge/src/ia32/lithium-ia32.cc
=======================================
--- /branches/bleeding_edge/src/arm/lithium-arm.cc Tue Jan 25 02:35:57 2011
+++ /branches/bleeding_edge/src/arm/lithium-arm.cc Tue Jan 25 04:17:02 2011
@@ -1294,8 +1294,8 @@
if (instr->representation().IsInteger32()) {
ASSERT(instr->left()->representation().IsInteger32());
ASSERT(instr->right()->representation().IsInteger32());
- LOperand* left = UseRegisterAtStart(instr->LeastConstantOperand());
- LOperand* right = UseOrConstantAtStart(instr->MostConstantOperand());
+ LOperand* left = UseRegisterAtStart(instr->left());
+ LOperand* right = UseOrConstantAtStart(instr->right());
LSubI* sub = new LSubI(left, right);
LInstruction* result = DefineSameAsFirst(sub);
if (instr->CheckFlag(HValue::kCanOverflow)) {
=======================================
--- /branches/bleeding_edge/src/ia32/lithium-ia32.cc Tue Jan 25 02:35:57
2011
+++ /branches/bleeding_edge/src/ia32/lithium-ia32.cc Tue Jan 25 04:17:02
2011
@@ -1327,8 +1327,8 @@
if (instr->representation().IsInteger32()) {
ASSERT(instr->left()->representation().IsInteger32());
ASSERT(instr->right()->representation().IsInteger32());
- LOperand* left = UseRegisterAtStart(instr->LeastConstantOperand());
- LOperand* right = UseOrConstantAtStart(instr->MostConstantOperand());
+ LOperand* left = UseRegisterAtStart(instr->left());
+ LOperand* right = UseOrConstantAtStart(instr->right());
LSubI* sub = new LSubI(left, right);
LInstruction* result = DefineSameAsFirst(sub);
if (instr->CheckFlag(HValue::kCanOverflow)) {
--
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev