| OLD | NEW |
| 1 // Copyright 2012 the V8 project authors. All rights reserved. | 1 // Copyright 2012 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/v8.h" | 5 #include "src/v8.h" |
| 6 | 6 |
| 7 #include "src/codegen.h" | 7 #include "src/codegen.h" |
| 8 #include "src/compiler.h" | 8 #include "src/compiler.h" |
| 9 #include "src/debug.h" | 9 #include "src/debug.h" |
| 10 #include "src/full-codegen.h" | 10 #include "src/full-codegen.h" |
| (...skipping 387 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 398 masm_->set_predictable_code_size(true); | 398 masm_->set_predictable_code_size(true); |
| 399 } | 399 } |
| 400 | 400 |
| 401 | 401 |
| 402 void FullCodeGenerator::PrepareForBailout(Expression* node, State state) { | 402 void FullCodeGenerator::PrepareForBailout(Expression* node, State state) { |
| 403 PrepareForBailoutForId(node->id(), state); | 403 PrepareForBailoutForId(node->id(), state); |
| 404 } | 404 } |
| 405 | 405 |
| 406 | 406 |
| 407 void FullCodeGenerator::CallLoadIC(ContextualMode contextual_mode, | 407 void FullCodeGenerator::CallLoadIC(ContextualMode contextual_mode, |
| 408 LoadIC::PropertyLookupMode property_lookup_mo
de, |
| 408 TypeFeedbackId id) { | 409 TypeFeedbackId id) { |
| 409 ExtraICState extra_state = LoadIC::ComputeExtraICState(contextual_mode); | 410 ExtraICState extra_state = LoadIC::ComputeExtraICState( |
| 411 contextual_mode, property_lookup_mode); |
| 410 Handle<Code> ic = LoadIC::initialize_stub(isolate(), extra_state); | 412 Handle<Code> ic = LoadIC::initialize_stub(isolate(), extra_state); |
| 411 CallIC(ic, id); | 413 CallIC(ic, id); |
| 412 } | 414 } |
| 413 | 415 |
| 414 | 416 |
| 417 void FullCodeGenerator::CallKeyedLoadIC( |
| 418 LoadIC::PropertyLookupMode property_lookup_mode, |
| 419 TypeFeedbackId id) { |
| 420 ExtraICState extra_state = LoadIC::ComputeExtraICState( |
| 421 NOT_CONTEXTUAL, property_lookup_mode); |
| 422 Handle<Code> ic = KeyedLoadIC::initialize_stub(isolate(), extra_state); |
| 423 CallIC(ic, id); |
| 424 } |
| 425 |
| 426 |
| 415 void FullCodeGenerator::CallStoreIC(TypeFeedbackId id) { | 427 void FullCodeGenerator::CallStoreIC(TypeFeedbackId id) { |
| 416 Handle<Code> ic = StoreIC::initialize_stub(isolate(), strict_mode()); | 428 Handle<Code> ic = StoreIC::initialize_stub(isolate(), strict_mode()); |
| 417 CallIC(ic, id); | 429 CallIC(ic, id); |
| 418 } | 430 } |
| 419 | 431 |
| 420 | 432 |
| 421 void FullCodeGenerator::RecordJSReturnSite(Call* call) { | 433 void FullCodeGenerator::RecordJSReturnSite(Call* call) { |
| 422 // We record the offset of the function return so we can rebuild the frame | 434 // We record the offset of the function return so we can rebuild the frame |
| 423 // if the function was inlined, i.e., this is the return address in the | 435 // if the function was inlined, i.e., this is the return address in the |
| 424 // inlined function's frame. | 436 // inlined function's frame. |
| (...skipping 1257 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1682 } | 1694 } |
| 1683 return true; | 1695 return true; |
| 1684 } | 1696 } |
| 1685 #endif // DEBUG | 1697 #endif // DEBUG |
| 1686 | 1698 |
| 1687 | 1699 |
| 1688 #undef __ | 1700 #undef __ |
| 1689 | 1701 |
| 1690 | 1702 |
| 1691 } } // namespace v8::internal | 1703 } } // namespace v8::internal |
| OLD | NEW |