Revision: 5216
Author: [email protected]
Date: Mon Aug 9 07:54:23 2010
Log: Fix bug in binary operations code. When loading a 32-bit integer as a
64-bit integer to the stack, the high and low parts of the 64-bit
value were pushed in the wrong order.
[email protected]
Review URL: http://codereview.chromium.org/3010060
http://code.google.com/p/v8/source/detail?r=5216
Modified:
/branches/bleeding_edge/src/ia32/codegen-ia32.cc
=======================================
--- /branches/bleeding_edge/src/ia32/codegen-ia32.cc Mon Aug 9 06:12:02
2010
+++ /branches/bleeding_edge/src/ia32/codegen-ia32.cc Mon Aug 9 07:54:23
2010
@@ -1366,8 +1366,8 @@
__ movdbl(FieldOperand(left_, HeapNumber::kValueOffset), xmm0);
} else {
if (op_ == Token::SHR) {
- __ push(dst_);
__ push(Immediate(0)); // High word of unsigned value.
+ __ push(dst_);
__ fild_d(Operand(esp, 0));
__ Drop(2);
} else {
--
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev