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/instruction-selector.h" | 5 #include "src/compiler/instruction-selector.h" |
6 | 6 |
7 #include <limits> | 7 #include <limits> |
8 | 8 |
9 #include "src/base/adapters.h" | 9 #include "src/base/adapters.h" |
10 #include "src/compiler/instruction-selector-impl.h" | 10 #include "src/compiler/instruction-selector-impl.h" |
(...skipping 1058 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1069 return MarkAsWord32(node), VisitImpossibleToWord32(node); | 1069 return MarkAsWord32(node), VisitImpossibleToWord32(node); |
1070 case IrOpcode::kImpossibleToWord64: | 1070 case IrOpcode::kImpossibleToWord64: |
1071 return MarkAsWord64(node), VisitImpossibleToWord64(node); | 1071 return MarkAsWord64(node), VisitImpossibleToWord64(node); |
1072 case IrOpcode::kImpossibleToFloat32: | 1072 case IrOpcode::kImpossibleToFloat32: |
1073 return MarkAsFloat32(node), VisitImpossibleToFloat32(node); | 1073 return MarkAsFloat32(node), VisitImpossibleToFloat32(node); |
1074 case IrOpcode::kImpossibleToFloat64: | 1074 case IrOpcode::kImpossibleToFloat64: |
1075 return MarkAsFloat64(node), VisitImpossibleToFloat64(node); | 1075 return MarkAsFloat64(node), VisitImpossibleToFloat64(node); |
1076 case IrOpcode::kImpossibleToTagged: | 1076 case IrOpcode::kImpossibleToTagged: |
1077 MarkAsRepresentation(MachineType::PointerRepresentation(), node); | 1077 MarkAsRepresentation(MachineType::PointerRepresentation(), node); |
1078 return VisitImpossibleToTagged(node); | 1078 return VisitImpossibleToTagged(node); |
| 1079 case IrOpcode::kImpossibleToTaggedSigned: |
| 1080 MarkAsRepresentation(MachineType::PointerRepresentation(), node); |
| 1081 return VisitImpossibleToTagged(node); |
| 1082 case IrOpcode::kImpossibleToTaggedPointer: |
| 1083 MarkAsRepresentation(MachineType::PointerRepresentation(), node); |
| 1084 return VisitImpossibleToTagged(node); |
1079 case IrOpcode::kImpossibleToBit: | 1085 case IrOpcode::kImpossibleToBit: |
1080 return MarkAsWord32(node), VisitImpossibleToBit(node); | 1086 return MarkAsWord32(node), VisitImpossibleToBit(node); |
1081 case IrOpcode::kFloat64SilenceNaN: | 1087 case IrOpcode::kFloat64SilenceNaN: |
1082 MarkAsFloat64(node); | 1088 MarkAsFloat64(node); |
1083 if (CanProduceSignalingNaN(node->InputAt(0))) { | 1089 if (CanProduceSignalingNaN(node->InputAt(0))) { |
1084 return VisitFloat64SilenceNaN(node); | 1090 return VisitFloat64SilenceNaN(node); |
1085 } else { | 1091 } else { |
1086 return EmitIdentity(node); | 1092 return EmitIdentity(node); |
1087 } | 1093 } |
1088 case IrOpcode::kTruncateFloat64ToUint32: | 1094 case IrOpcode::kTruncateFloat64ToUint32: |
(...skipping 975 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2064 return new (instruction_zone()) FrameStateDescriptor( | 2070 return new (instruction_zone()) FrameStateDescriptor( |
2065 instruction_zone(), state_info.type(), state_info.bailout_id(), | 2071 instruction_zone(), state_info.type(), state_info.bailout_id(), |
2066 state_info.state_combine(), parameters, locals, stack, | 2072 state_info.state_combine(), parameters, locals, stack, |
2067 state_info.shared_info(), outer_state); | 2073 state_info.shared_info(), outer_state); |
2068 } | 2074 } |
2069 | 2075 |
2070 | 2076 |
2071 } // namespace compiler | 2077 } // namespace compiler |
2072 } // namespace internal | 2078 } // namespace internal |
2073 } // namespace v8 | 2079 } // namespace v8 |
OLD | NEW |