Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(146)

Unified Diff: src/crankshaft/x64/lithium-codegen-x64.cc

Issue 1416053010: [x64] Replace addsd, subsd, mulsd, divsd with AVX versions under AVX. (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: Created 5 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « no previous file | src/x64/code-stubs-x64.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: src/crankshaft/x64/lithium-codegen-x64.cc
diff --git a/src/crankshaft/x64/lithium-codegen-x64.cc b/src/crankshaft/x64/lithium-codegen-x64.cc
index 930fb2e9f58a7cd3577eb279ad83afbefdabbc39..335591899bbbe5605fe579b2438b3a86dc6b507c 100644
--- a/src/crankshaft/x64/lithium-codegen-x64.cc
+++ b/src/crankshaft/x64/lithium-codegen-x64.cc
@@ -3565,8 +3565,8 @@ void LCodeGen::DoMathAbs(LMathAbs* instr) {
XMMRegister scratch = double_scratch0();
XMMRegister input_reg = ToDoubleRegister(instr->value());
__ Xorpd(scratch, scratch);
- __ subsd(scratch, input_reg);
- __ andps(input_reg, scratch);
+ __ Subsd(scratch, input_reg);
+ __ Andpd(input_reg, scratch);
} else if (r.IsInteger32()) {
EmitIntegerMathAbs(instr);
} else if (r.IsSmi()) {
@@ -3658,7 +3658,7 @@ void LCodeGen::DoMathRound(LMathRound* instr) {
__ j(above, &below_one_half, Label::kNear);
// CVTTSD2SI rounds towards zero, since 0.5 <= x, we use floor(0.5 + x).
- __ addsd(xmm_scratch, input_reg);
+ __ Addsd(xmm_scratch, input_reg);
__ Cvttsd2si(output_reg, xmm_scratch);
// Overflow is signalled with minint.
__ cmpl(output_reg, Immediate(0x1));
@@ -3674,7 +3674,7 @@ void LCodeGen::DoMathRound(LMathRound* instr) {
// CVTTSD2SI rounds towards zero, we use ceil(x - (-0.5)) and then
// compare and compensate.
__ Movapd(input_temp, input_reg); // Do not alter input_reg.
- __ subsd(input_temp, xmm_scratch);
+ __ Subsd(input_temp, xmm_scratch);
__ Cvttsd2si(output_reg, input_temp);
// Catch minint due to overflow, and to prevent overflow when compensating.
__ cmpl(output_reg, Immediate(0x1));
@@ -3740,13 +3740,13 @@ void LCodeGen::DoMathPowHalf(LMathPowHalf* instr) {
__ j(carry, &sqrt, Label::kNear);
// If input is -Infinity, return Infinity.
__ Xorpd(input_reg, input_reg);
- __ subsd(input_reg, xmm_scratch);
+ __ Subsd(input_reg, xmm_scratch);
__ jmp(&done, Label::kNear);
// Square root.
__ bind(&sqrt);
__ Xorpd(xmm_scratch, xmm_scratch);
- __ addsd(input_reg, xmm_scratch); // Convert -0 to +0.
+ __ Addsd(input_reg, xmm_scratch); // Convert -0 to +0.
__ Sqrtsd(input_reg, input_reg);
__ bind(&done);
}
@@ -4259,7 +4259,7 @@ void LCodeGen::DoStoreKeyedFixedDoubleArray(LStoreKeyed* instr) {
XMMRegister xmm_scratch = double_scratch0();
// Turn potential sNaN value into qNaN.
__ Xorpd(xmm_scratch, xmm_scratch);
- __ subsd(value, xmm_scratch);
+ __ Subsd(value, xmm_scratch);
}
Operand double_store_operand = BuildFastArrayOperand(
« no previous file with comments | « no previous file | src/x64/code-stubs-x64.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698