| Index: src/x64/code-stubs-x64.cc
|
| diff --git a/src/x64/code-stubs-x64.cc b/src/x64/code-stubs-x64.cc
|
| index a617d521f3378c01418bcbe38c4993399585bbaf..46a5487c7149c4279267252b5ecf2e74762fe8fc 100644
|
| --- a/src/x64/code-stubs-x64.cc
|
| +++ b/src/x64/code-stubs-x64.cc
|
| @@ -2181,11 +2181,9 @@ void MathPowStub::Generate(MacroAssembler* masm) {
|
| __ movsd(double_scratch2, double_result); // Load double_exponent with 1.
|
|
|
| // Get absolute value of exponent.
|
| - Label no_neg, while_true, no_multiply;
|
| - __ cmpl(scratch, Immediate(0));
|
| - __ j(positive, &no_neg, Label::kNear);
|
| - __ negl(scratch);
|
| - __ bind(&no_neg);
|
| + Label while_true, no_multiply;
|
| + const uint32_t kClearSignBitMask = 0x7FFFFFFF;
|
| + __ andl(scratch, Immediate(kClearSignBitMask));
|
|
|
| __ bind(&while_true);
|
| __ shrl(scratch, Immediate(1));
|
|
|