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 #include "src/compiler/code-generator-impl.h" | 6 #include "src/compiler/code-generator-impl.h" |
7 #include "src/compiler/gap-resolver.h" | 7 #include "src/compiler/gap-resolver.h" |
8 #include "src/compiler/node-matchers.h" | 8 #include "src/compiler/node-matchers.h" |
9 #include "src/compiler/osr.h" | 9 #include "src/compiler/osr.h" |
10 #include "src/mips/macro-assembler-mips.h" | 10 #include "src/mips/macro-assembler-mips.h" |
(...skipping 916 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
927 FPURegister scratch = kScratchDoubleReg; | 927 FPURegister scratch = kScratchDoubleReg; |
928 __ dmtc1(i.InputRegister(0), scratch); | 928 __ dmtc1(i.InputRegister(0), scratch); |
929 __ cvt_d_l(i.OutputDoubleRegister(), scratch); | 929 __ cvt_d_l(i.OutputDoubleRegister(), scratch); |
930 break; | 930 break; |
931 } | 931 } |
932 case kMips64CvtDUw: { | 932 case kMips64CvtDUw: { |
933 FPURegister scratch = kScratchDoubleReg; | 933 FPURegister scratch = kScratchDoubleReg; |
934 __ Cvt_d_uw(i.OutputDoubleRegister(), i.InputRegister(0), scratch); | 934 __ Cvt_d_uw(i.OutputDoubleRegister(), i.InputRegister(0), scratch); |
935 break; | 935 break; |
936 } | 936 } |
| 937 case kMips64CvtDUl: { |
| 938 __ Cvt_d_ul(i.OutputDoubleRegister(), i.InputRegister(0)); |
| 939 break; |
| 940 } |
937 case kMips64TruncWD: { | 941 case kMips64TruncWD: { |
938 FPURegister scratch = kScratchDoubleReg; | 942 FPURegister scratch = kScratchDoubleReg; |
939 // Other arches use round to zero here, so we follow. | 943 // Other arches use round to zero here, so we follow. |
940 __ trunc_w_d(scratch, i.InputDoubleRegister(0)); | 944 __ trunc_w_d(scratch, i.InputDoubleRegister(0)); |
941 __ mfc1(i.OutputRegister(), scratch); | 945 __ mfc1(i.OutputRegister(), scratch); |
942 break; | 946 break; |
943 } | 947 } |
944 case kMips64TruncUwD: { | 948 case kMips64TruncUwD: { |
945 FPURegister scratch = kScratchDoubleReg; | 949 FPURegister scratch = kScratchDoubleReg; |
946 // TODO(plind): Fix wrong param order of Trunc_uw_d() macro-asm function. | 950 // TODO(plind): Fix wrong param order of Trunc_uw_d() macro-asm function. |
(...skipping 714 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1661 padding_size -= v8::internal::Assembler::kInstrSize; | 1665 padding_size -= v8::internal::Assembler::kInstrSize; |
1662 } | 1666 } |
1663 } | 1667 } |
1664 } | 1668 } |
1665 | 1669 |
1666 #undef __ | 1670 #undef __ |
1667 | 1671 |
1668 } // namespace compiler | 1672 } // namespace compiler |
1669 } // namespace internal | 1673 } // namespace internal |
1670 } // namespace v8 | 1674 } // namespace v8 |
OLD | NEW |