OLD | NEW |
1 // Copyright 2013 the V8 project authors. All rights reserved. | 1 // Copyright 2013 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/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 892 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
903 __ xorpd(i.OutputDoubleRegister(), kScratchDoubleReg); | 903 __ xorpd(i.OutputDoubleRegister(), kScratchDoubleReg); |
904 break; | 904 break; |
905 } | 905 } |
906 case kSSEFloat64Sqrt: | 906 case kSSEFloat64Sqrt: |
907 ASSEMBLE_SSE_UNOP(sqrtsd); | 907 ASSEMBLE_SSE_UNOP(sqrtsd); |
908 break; | 908 break; |
909 case kSSEFloat64Round: { | 909 case kSSEFloat64Round: { |
910 CpuFeatureScope sse_scope(masm(), SSE4_1); | 910 CpuFeatureScope sse_scope(masm(), SSE4_1); |
911 RoundingMode const mode = | 911 RoundingMode const mode = |
912 static_cast<RoundingMode>(MiscField::decode(instr->opcode())); | 912 static_cast<RoundingMode>(MiscField::decode(instr->opcode())); |
913 __ roundsd(i.OutputDoubleRegister(), i.InputDoubleRegister(0), mode); | 913 __ Roundsd(i.OutputDoubleRegister(), i.InputDoubleRegister(0), mode); |
914 break; | 914 break; |
915 } | 915 } |
916 case kSSEFloat64ToFloat32: | 916 case kSSEFloat64ToFloat32: |
917 ASSEMBLE_SSE_UNOP(Cvtsd2ss); | 917 ASSEMBLE_SSE_UNOP(Cvtsd2ss); |
918 break; | 918 break; |
919 case kSSEFloat64ToInt32: | 919 case kSSEFloat64ToInt32: |
920 if (instr->InputAt(0)->IsDoubleRegister()) { | 920 if (instr->InputAt(0)->IsDoubleRegister()) { |
921 __ Cvttsd2si(i.OutputRegister(), i.InputDoubleRegister(0)); | 921 __ Cvttsd2si(i.OutputRegister(), i.InputDoubleRegister(0)); |
922 } else { | 922 } else { |
923 __ Cvttsd2si(i.OutputRegister(), i.InputOperand(0)); | 923 __ Cvttsd2si(i.OutputRegister(), i.InputOperand(0)); |
(...skipping 907 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1831 int padding_size = last_lazy_deopt_pc_ + space_needed - current_pc; | 1831 int padding_size = last_lazy_deopt_pc_ + space_needed - current_pc; |
1832 __ Nop(padding_size); | 1832 __ Nop(padding_size); |
1833 } | 1833 } |
1834 } | 1834 } |
1835 | 1835 |
1836 #undef __ | 1836 #undef __ |
1837 | 1837 |
1838 } // namespace compiler | 1838 } // namespace compiler |
1839 } // namespace internal | 1839 } // namespace internal |
1840 } // namespace v8 | 1840 } // namespace v8 |
OLD | NEW |