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/ast/scopes.h" | 5 #include "src/ast/scopes.h" |
6 #include "src/compiler/code-generator.h" | 6 #include "src/compiler/code-generator.h" |
7 #include "src/compiler/code-generator-impl.h" | 7 #include "src/compiler/code-generator-impl.h" |
8 #include "src/compiler/gap-resolver.h" | 8 #include "src/compiler/gap-resolver.h" |
9 #include "src/compiler/node-matchers.h" | 9 #include "src/compiler/node-matchers.h" |
10 #include "src/compiler/osr.h" | 10 #include "src/compiler/osr.h" |
(...skipping 1108 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1119 break; | 1119 break; |
1120 } | 1120 } |
1121 case kMips64TruncUlS: { | 1121 case kMips64TruncUlS: { |
1122 FPURegister scratch = kScratchDoubleReg; | 1122 FPURegister scratch = kScratchDoubleReg; |
1123 // TODO(plind): Fix wrong param order of Trunc_ul_s() macro-asm function. | 1123 // TODO(plind): Fix wrong param order of Trunc_ul_s() macro-asm function. |
1124 __ Trunc_ul_s(i.InputDoubleRegister(0), i.OutputRegister(), scratch); | 1124 __ Trunc_ul_s(i.InputDoubleRegister(0), i.OutputRegister(), scratch); |
1125 break; | 1125 break; |
1126 } | 1126 } |
1127 case kMips64TruncUlD: { | 1127 case kMips64TruncUlD: { |
1128 FPURegister scratch = kScratchDoubleReg; | 1128 FPURegister scratch = kScratchDoubleReg; |
| 1129 Register result = instr->OutputCount() > 1 ? i.OutputRegister(1) : no_reg; |
1129 // TODO(plind): Fix wrong param order of Trunc_ul_d() macro-asm function. | 1130 // TODO(plind): Fix wrong param order of Trunc_ul_d() macro-asm function. |
1130 __ Trunc_ul_d(i.InputDoubleRegister(0), i.OutputRegister(), scratch); | 1131 __ Trunc_ul_d(i.InputDoubleRegister(0), i.OutputRegister(0), scratch, |
| 1132 result); |
1131 break; | 1133 break; |
1132 } | 1134 } |
1133 case kMips64BitcastDL: | 1135 case kMips64BitcastDL: |
1134 __ dmfc1(i.OutputRegister(), i.InputDoubleRegister(0)); | 1136 __ dmfc1(i.OutputRegister(), i.InputDoubleRegister(0)); |
1135 break; | 1137 break; |
1136 case kMips64BitcastLD: | 1138 case kMips64BitcastLD: |
1137 __ dmtc1(i.InputRegister(0), i.OutputDoubleRegister()); | 1139 __ dmtc1(i.InputRegister(0), i.OutputDoubleRegister()); |
1138 break; | 1140 break; |
1139 case kMips64Float64ExtractLowWord32: | 1141 case kMips64Float64ExtractLowWord32: |
1140 __ FmoveLow(i.OutputRegister(), i.InputDoubleRegister(0)); | 1142 __ FmoveLow(i.OutputRegister(), i.InputDoubleRegister(0)); |
(...skipping 707 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1848 padding_size -= v8::internal::Assembler::kInstrSize; | 1850 padding_size -= v8::internal::Assembler::kInstrSize; |
1849 } | 1851 } |
1850 } | 1852 } |
1851 } | 1853 } |
1852 | 1854 |
1853 #undef __ | 1855 #undef __ |
1854 | 1856 |
1855 } // namespace compiler | 1857 } // namespace compiler |
1856 } // namespace internal | 1858 } // namespace internal |
1857 } // namespace v8 | 1859 } // namespace v8 |
OLD | NEW |