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/ast-graph-builder.h" | 5 #include "src/compiler/ast-graph-builder.h" |
6 | 6 |
7 #include "src/compiler.h" | 7 #include "src/compiler.h" |
8 #include "src/compiler/control-builders.h" | 8 #include "src/compiler/control-builders.h" |
9 #include "src/compiler/machine-operator.h" | 9 #include "src/compiler/machine-operator.h" |
10 #include "src/compiler/node-properties.h" | 10 #include "src/compiler/node-properties.h" |
(...skipping 1243 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1254 } | 1254 } |
1255 PrepareFrameState(callee_value, property->LoadId(), | 1255 PrepareFrameState(callee_value, property->LoadId(), |
1256 OutputFrameStateCombine::Push()); | 1256 OutputFrameStateCombine::Push()); |
1257 receiver_value = environment()->Pop(); | 1257 receiver_value = environment()->Pop(); |
1258 // Note that a PROPERTY_CALL requires the receiver to be wrapped into an | 1258 // Note that a PROPERTY_CALL requires the receiver to be wrapped into an |
1259 // object for sloppy callees. This could also be modeled explicitly here, | 1259 // object for sloppy callees. This could also be modeled explicitly here, |
1260 // thereby obsoleting the need for a flag to the call operator. | 1260 // thereby obsoleting the need for a flag to the call operator. |
1261 flags = CALL_AS_METHOD; | 1261 flags = CALL_AS_METHOD; |
1262 break; | 1262 break; |
1263 } | 1263 } |
| 1264 case Call::SUPER_CALL: { |
| 1265 // todo(dslomov): implement super calls in turbofan. |
| 1266 UNIMPLEMENTED(); |
| 1267 break; |
| 1268 } |
1264 case Call::POSSIBLY_EVAL_CALL: | 1269 case Call::POSSIBLY_EVAL_CALL: |
1265 possibly_eval = true; | 1270 possibly_eval = true; |
1266 // Fall through. | 1271 // Fall through. |
1267 case Call::OTHER_CALL: | 1272 case Call::OTHER_CALL: |
1268 VisitForValue(callee); | 1273 VisitForValue(callee); |
1269 callee_value = environment()->Pop(); | 1274 callee_value = environment()->Pop(); |
1270 receiver_value = jsgraph()->UndefinedConstant(); | 1275 receiver_value = jsgraph()->UndefinedConstant(); |
1271 break; | 1276 break; |
1272 } | 1277 } |
1273 | 1278 |
(...skipping 837 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2111 DCHECK(NodeProperties::GetFrameStateInput(node)->opcode() == | 2116 DCHECK(NodeProperties::GetFrameStateInput(node)->opcode() == |
2112 IrOpcode::kDead); | 2117 IrOpcode::kDead); |
2113 NodeProperties::ReplaceFrameStateInput( | 2118 NodeProperties::ReplaceFrameStateInput( |
2114 node, environment()->Checkpoint(ast_id, combine)); | 2119 node, environment()->Checkpoint(ast_id, combine)); |
2115 } | 2120 } |
2116 } | 2121 } |
2117 | 2122 |
2118 } | 2123 } |
2119 } | 2124 } |
2120 } // namespace v8::internal::compiler | 2125 } // namespace v8::internal::compiler |
OLD | NEW |