| Index: src/ia32/lithium-codegen-ia32.cc
|
| diff --git a/src/ia32/lithium-codegen-ia32.cc b/src/ia32/lithium-codegen-ia32.cc
|
| index 07ee7d62dcac1ff852626c3dcc745477de1db9ce..25606fb3947f5236ad3feba37dd7c564e52bc69d 100644
|
| --- a/src/ia32/lithium-codegen-ia32.cc
|
| +++ b/src/ia32/lithium-codegen-ia32.cc
|
| @@ -1137,7 +1137,7 @@ void LCodeGen::DoConstantD(LConstantD* instr) {
|
| // Use xor to produce +0.0 in a fast and compact way, but avoid to
|
| // do so if the constant is -0.0.
|
| if (BitCast<uint64_t, double>(v) == 0) {
|
| - __ xorpd(res, res);
|
| + __ xorps(res, res);
|
| } else {
|
| Register temp = ToRegister(instr->TempAt(0));
|
| uint64_t int_val = BitCast<uint64_t, double>(v);
|
| @@ -1151,7 +1151,7 @@ void LCodeGen::DoConstantD(LConstantD* instr) {
|
| __ Set(temp, Immediate(upper));
|
| __ pinsrd(res, Operand(temp), 1);
|
| } else {
|
| - __ xorpd(res, res);
|
| + __ xorps(res, res);
|
| __ Set(temp, Immediate(upper));
|
| __ pinsrd(res, Operand(temp), 1);
|
| }
|
| @@ -1341,7 +1341,7 @@ void LCodeGen::DoBranch(LBranch* instr) {
|
| EmitBranch(true_block, false_block, not_zero);
|
| } else if (r.IsDouble()) {
|
| XMMRegister reg = ToDoubleRegister(instr->InputAt(0));
|
| - __ xorpd(xmm0, xmm0);
|
| + __ xorps(xmm0, xmm0);
|
| __ ucomisd(reg, xmm0);
|
| EmitBranch(true_block, false_block, not_equal);
|
| } else {
|
| @@ -2718,7 +2718,7 @@ void LCodeGen::DoMathAbs(LUnaryMathOperation* instr) {
|
| if (r.IsDouble()) {
|
| XMMRegister scratch = xmm0;
|
| XMMRegister input_reg = ToDoubleRegister(instr->InputAt(0));
|
| - __ pxor(scratch, scratch);
|
| + __ xorps(scratch, scratch);
|
| __ subsd(scratch, input_reg);
|
| __ pand(input_reg, scratch);
|
| } else if (r.IsInteger32()) {
|
| @@ -2740,7 +2740,7 @@ void LCodeGen::DoMathFloor(LUnaryMathOperation* instr) {
|
| XMMRegister xmm_scratch = xmm0;
|
| Register output_reg = ToRegister(instr->result());
|
| XMMRegister input_reg = ToDoubleRegister(instr->InputAt(0));
|
| - __ xorpd(xmm_scratch, xmm_scratch); // Zero the register.
|
| + __ xorps(xmm_scratch, xmm_scratch); // Zero the register.
|
| __ ucomisd(input_reg, xmm_scratch);
|
|
|
| if (instr->hydrogen()->CheckFlag(HValue::kBailoutOnMinusZero)) {
|
| @@ -2816,7 +2816,7 @@ void LCodeGen::DoMathPowHalf(LUnaryMathOperation* instr) {
|
| XMMRegister xmm_scratch = xmm0;
|
| XMMRegister input_reg = ToDoubleRegister(instr->InputAt(0));
|
| ASSERT(ToDoubleRegister(instr->result()).is(input_reg));
|
| - __ xorpd(xmm_scratch, xmm_scratch);
|
| + __ xorps(xmm_scratch, xmm_scratch);
|
| __ addsd(input_reg, xmm_scratch); // Convert -0 to +0.
|
| __ sqrtsd(input_reg, input_reg);
|
| }
|
| @@ -2886,7 +2886,7 @@ void LCodeGen::DoMathLog(LUnaryMathOperation* instr) {
|
| ASSERT(instr->InputAt(0)->Equals(instr->result()));
|
| XMMRegister input_reg = ToDoubleRegister(instr->InputAt(0));
|
| NearLabel positive, done, zero, negative;
|
| - __ xorpd(xmm0, xmm0);
|
| + __ xorps(xmm0, xmm0);
|
| __ ucomisd(input_reg, xmm0);
|
| __ j(above, &positive);
|
| __ j(equal, &zero);
|
|
|