Moved initialization of xmm3 making sure it is initialized on all paths in GeneratePow - solves the sputnik failure on mac.

Review URL: http://codereview.chromium.org/661177

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3973 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
This commit is contained in:
ricow@chromium.org 2010-02-26 12:28:25 +00:00
parent 0e0594dcbc
commit 46440e6f77

View File

@ -5296,6 +5296,10 @@ void CodeGenerator::GeneratePow(ZoneList<Expression*>* args) {
ASSERT(x.is_valid());
ASSERT(y.is_valid());
// Save 1 in xmm3 - we need this several times later on
__ mov(p.reg(), Immediate(1));
__ cvtsi2sd(xmm3, Operand(p.reg()));
Label y_nonsmi;
Label x_is_double;
// If y is a heap number go to that specific case.
@ -5321,9 +5325,7 @@ void CodeGenerator::GeneratePow(ZoneList<Expression*>* args) {
// Save y in x as we need to check if y is negative later.
__ mov(x.reg(), y.reg());
// Save 1 in xmm3 - we need this several times later on
__ mov(p.reg(), Immediate(1));
__ cvtsi2sd(xmm3, Operand(p.reg()));
// Get absolute value of y.
Label no_neg;