OLD | NEW |
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/arm64/frames-arm64.h" | 7 #include "src/arm64/frames-arm64.h" |
8 #include "src/arm64/macro-assembler-arm64.h" | 8 #include "src/arm64/macro-assembler-arm64.h" |
9 #include "src/compiler/code-generator-impl.h" | 9 #include "src/compiler/code-generator-impl.h" |
10 #include "src/compiler/gap-resolver.h" | 10 #include "src/compiler/gap-resolver.h" |
(...skipping 752 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
763 break; | 763 break; |
764 case kArm64Tst32: | 764 case kArm64Tst32: |
765 __ Tst(i.InputRegister32(0), i.InputOperand32(1)); | 765 __ Tst(i.InputRegister32(0), i.InputOperand32(1)); |
766 break; | 766 break; |
767 case kArm64Float32Cmp: | 767 case kArm64Float32Cmp: |
768 if (instr->InputAt(1)->IsDoubleRegister()) { | 768 if (instr->InputAt(1)->IsDoubleRegister()) { |
769 __ Fcmp(i.InputFloat32Register(0), i.InputFloat32Register(1)); | 769 __ Fcmp(i.InputFloat32Register(0), i.InputFloat32Register(1)); |
770 } else { | 770 } else { |
771 DCHECK(instr->InputAt(1)->IsImmediate()); | 771 DCHECK(instr->InputAt(1)->IsImmediate()); |
772 // 0.0 is the only immediate supported by fcmp instructions. | 772 // 0.0 is the only immediate supported by fcmp instructions. |
773 DCHECK(i.InputDouble(1) == 0.0); | 773 DCHECK(i.InputFloat32(1) == 0.0f); |
774 __ Fcmp(i.InputFloat32Register(0), i.InputDouble(1)); | 774 __ Fcmp(i.InputFloat32Register(0), i.InputFloat32(1)); |
775 } | 775 } |
776 break; | 776 break; |
777 case kArm64Float32Add: | 777 case kArm64Float32Add: |
778 __ Fadd(i.OutputFloat32Register(), i.InputFloat32Register(0), | 778 __ Fadd(i.OutputFloat32Register(), i.InputFloat32Register(0), |
779 i.InputFloat32Register(1)); | 779 i.InputFloat32Register(1)); |
780 break; | 780 break; |
781 case kArm64Float32Sub: | 781 case kArm64Float32Sub: |
782 __ Fsub(i.OutputFloat32Register(), i.InputFloat32Register(0), | 782 __ Fsub(i.OutputFloat32Register(), i.InputFloat32Register(0), |
783 i.InputFloat32Register(1)); | 783 i.InputFloat32Register(1)); |
784 break; | 784 break; |
(...skipping 633 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1418 padding_size -= kInstructionSize; | 1418 padding_size -= kInstructionSize; |
1419 } | 1419 } |
1420 } | 1420 } |
1421 } | 1421 } |
1422 | 1422 |
1423 #undef __ | 1423 #undef __ |
1424 | 1424 |
1425 } // namespace compiler | 1425 } // namespace compiler |
1426 } // namespace internal | 1426 } // namespace internal |
1427 } // namespace v8 | 1427 } // namespace v8 |
OLD | NEW |