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. TBR=erik.corry@gmail.com Review URL: http://codereview.chromium.org/3010060 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5216 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
This commit is contained in:
parent
751ec5d099
commit
9677b96b7b
@ -1366,8 +1366,8 @@ void DeferredInlineBinaryOperation::GenerateAnswerOutOfRange() {
|
||||
__ 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 {
|
||||
|
Loading…
Reference in New Issue
Block a user