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

Side by Side Diff: src/compiler/arm/code-generator-arm.cc

Issue 990963003: [turbofan] Unify Math.floor / Math.ceil optimization. (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: Created 5 years, 9 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 unified diff | Download patch
« no previous file with comments | « no previous file | src/compiler/arm/instruction-codes-arm.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2014 the V8 project authors. All rights reserved. 1 // Copyright 2014 the V8 project authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "src/compiler/code-generator.h" 5 #include "src/compiler/code-generator.h"
6 6
7 #include "src/arm/macro-assembler-arm.h" 7 #include "src/arm/macro-assembler-arm.h"
8 #include "src/compiler/code-generator-impl.h" 8 #include "src/compiler/code-generator-impl.h"
9 #include "src/compiler/gap-resolver.h" 9 #include "src/compiler/gap-resolver.h"
10 #include "src/compiler/node-matchers.h" 10 #include "src/compiler/node-matchers.h"
(...skipping 546 matching lines...) Expand 10 before | Expand all | Expand 10 after
557 __ CallCFunction(ExternalReference::mod_two_doubles_operation(isolate()), 557 __ CallCFunction(ExternalReference::mod_two_doubles_operation(isolate()),
558 0, 2); 558 0, 2);
559 // Move the result in the double result register. 559 // Move the result in the double result register.
560 __ MovFromFloatResult(i.OutputFloat64Register()); 560 __ MovFromFloatResult(i.OutputFloat64Register());
561 DCHECK_EQ(LeaveCC, i.OutputSBit()); 561 DCHECK_EQ(LeaveCC, i.OutputSBit());
562 break; 562 break;
563 } 563 }
564 case kArmVsqrtF64: 564 case kArmVsqrtF64:
565 __ vsqrt(i.OutputFloat64Register(), i.InputFloat64Register(0)); 565 __ vsqrt(i.OutputFloat64Register(), i.InputFloat64Register(0));
566 break; 566 break;
567 case kArmVfloorF64: 567 case kArmVrintmF64:
568 __ vrintm(i.OutputFloat64Register(), i.InputFloat64Register(0)); 568 __ vrintm(i.OutputFloat64Register(), i.InputFloat64Register(0));
569 break; 569 break;
570 case kArmVceilF64: 570 case kArmVrintpF64:
571 __ vrintp(i.OutputFloat64Register(), i.InputFloat64Register(0)); 571 __ vrintp(i.OutputFloat64Register(), i.InputFloat64Register(0));
572 break; 572 break;
573 case kArmVroundTruncateF64: 573 case kArmVrintzF64:
574 __ vrintz(i.OutputFloat64Register(), i.InputFloat64Register(0)); 574 __ vrintz(i.OutputFloat64Register(), i.InputFloat64Register(0));
575 break; 575 break;
576 case kArmVroundTiesAwayF64: 576 case kArmVrintaF64:
577 __ vrinta(i.OutputFloat64Register(), i.InputFloat64Register(0)); 577 __ vrinta(i.OutputFloat64Register(), i.InputFloat64Register(0));
578 break; 578 break;
579 case kArmVnegF64: 579 case kArmVnegF64:
580 __ vneg(i.OutputFloat64Register(), i.InputFloat64Register(0)); 580 __ vneg(i.OutputFloat64Register(), i.InputFloat64Register(0));
581 break; 581 break;
582 case kArmVcvtF32F64: { 582 case kArmVcvtF32F64: {
583 __ vcvt_f32_f64(i.OutputFloat32Register(), i.InputFloat64Register(0)); 583 __ vcvt_f32_f64(i.OutputFloat32Register(), i.InputFloat64Register(0));
584 DCHECK_EQ(LeaveCC, i.OutputSBit()); 584 DCHECK_EQ(LeaveCC, i.OutputSBit());
585 break; 585 break;
586 } 586 }
(...skipping 514 matching lines...) Expand 10 before | Expand all | Expand 10 after
1101 } 1101 }
1102 } 1102 }
1103 MarkLazyDeoptSite(); 1103 MarkLazyDeoptSite();
1104 } 1104 }
1105 1105
1106 #undef __ 1106 #undef __
1107 1107
1108 } // namespace compiler 1108 } // namespace compiler
1109 } // namespace internal 1109 } // namespace internal
1110 } // namespace v8 1110 } // namespace v8
OLDNEW
« no previous file with comments | « no previous file | src/compiler/arm/instruction-codes-arm.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698