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/node-properties-inl.h" | 10 #include "src/compiler/node-properties-inl.h" |
(...skipping 901 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
912 case Constant::kFloat64: | 912 case Constant::kFloat64: |
913 __ Move(dst, | 913 __ Move(dst, |
914 isolate()->factory()->NewNumber(src.ToFloat64(), TENURED)); | 914 isolate()->factory()->NewNumber(src.ToFloat64(), TENURED)); |
915 break; | 915 break; |
916 case Constant::kExternalReference: | 916 case Constant::kExternalReference: |
917 __ Move(dst, src.ToExternalReference()); | 917 __ Move(dst, src.ToExternalReference()); |
918 break; | 918 break; |
919 case Constant::kHeapObject: | 919 case Constant::kHeapObject: |
920 __ Move(dst, src.ToHeapObject()); | 920 __ Move(dst, src.ToHeapObject()); |
921 break; | 921 break; |
| 922 case Constant::kRpoNumber: |
| 923 UNREACHABLE(); // TODO(dcarney): load of labels on x64. |
| 924 break; |
922 } | 925 } |
923 if (destination->IsStackSlot()) { | 926 if (destination->IsStackSlot()) { |
924 __ movq(g.ToOperand(destination), kScratchRegister); | 927 __ movq(g.ToOperand(destination), kScratchRegister); |
925 } | 928 } |
926 } else if (src.type() == Constant::kFloat32) { | 929 } else if (src.type() == Constant::kFloat32) { |
927 // TODO(turbofan): Can we do better here? | 930 // TODO(turbofan): Can we do better here? |
928 uint32_t src_const = bit_cast<uint32_t>(src.ToFloat32()); | 931 uint32_t src_const = bit_cast<uint32_t>(src.ToFloat32()); |
929 if (destination->IsDoubleRegister()) { | 932 if (destination->IsDoubleRegister()) { |
930 __ Move(g.ToDoubleRegister(destination), src_const); | 933 __ Move(g.ToDoubleRegister(destination), src_const); |
931 } else { | 934 } else { |
(...skipping 100 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1032 } | 1035 } |
1033 } | 1036 } |
1034 MarkLazyDeoptSite(); | 1037 MarkLazyDeoptSite(); |
1035 } | 1038 } |
1036 | 1039 |
1037 #undef __ | 1040 #undef __ |
1038 | 1041 |
1039 } // namespace internal | 1042 } // namespace internal |
1040 } // namespace compiler | 1043 } // namespace compiler |
1041 } // namespace v8 | 1044 } // namespace v8 |
OLD | NEW |