OLD | NEW |
1 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file |
2 // for details. All rights reserved. Use of this source code is governed by a | 2 // for details. All rights reserved. Use of this source code is governed by a |
3 // BSD-style license that can be found in the LICENSE file. | 3 // BSD-style license that can be found in the LICENSE file. |
4 | 4 |
5 #include "vm/globals.h" // Needed here to get TARGET_ARCH_XXX. | 5 #include "vm/globals.h" // Needed here to get TARGET_ARCH_XXX. |
6 | 6 |
7 #include "vm/flow_graph_compiler.h" | 7 #include "vm/flow_graph_compiler.h" |
8 | 8 |
9 #include "vm/bit_vector.h" | 9 #include "vm/bit_vector.h" |
10 #include "vm/cha.h" | 10 #include "vm/cha.h" |
(...skipping 531 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
542 inline_id = Smi::New(id); | 542 inline_id = Smi::New(id); |
543 caller_inline_id = Smi::New(caller_inline_id_[intervals[i].inlining_id]); | 543 caller_inline_id = Smi::New(caller_inline_id_[intervals[i].inlining_id]); |
544 | 544 |
545 const intptr_t p = i * Code::kInlIntNumEntries; | 545 const intptr_t p = i * Code::kInlIntNumEntries; |
546 inlined_code_intervals_.SetAt(p + Code::kInlIntStart, start_h); | 546 inlined_code_intervals_.SetAt(p + Code::kInlIntStart, start_h); |
547 inlined_code_intervals_.SetAt(p + Code::kInlIntInliningId, inline_id); | 547 inlined_code_intervals_.SetAt(p + Code::kInlIntInliningId, inline_id); |
548 } | 548 } |
549 } | 549 } |
550 set_current_block(NULL); | 550 set_current_block(NULL); |
551 if (FLAG_trace_inlining_intervals && is_optimizing()) { | 551 if (FLAG_trace_inlining_intervals && is_optimizing()) { |
552 LogBlock lb(Isolate::Current()); | 552 LogBlock lb(Thread::Current()); |
553 ISL_Print("Intervals:\n"); | 553 ISL_Print("Intervals:\n"); |
554 for (intptr_t cc = 0; cc < caller_inline_id_.length(); cc++) { | 554 for (intptr_t cc = 0; cc < caller_inline_id_.length(); cc++) { |
555 ISL_Print(" iid: %" Pd " caller iid: %" Pd "\n", | 555 ISL_Print(" iid: %" Pd " caller iid: %" Pd "\n", |
556 cc, caller_inline_id_[cc]); | 556 cc, caller_inline_id_[cc]); |
557 } | 557 } |
558 Smi& temp = Smi::Handle(); | 558 Smi& temp = Smi::Handle(); |
559 for (intptr_t i = 0; i < inlined_code_intervals_.Length(); | 559 for (intptr_t i = 0; i < inlined_code_intervals_.Length(); |
560 i += Code::kInlIntNumEntries) { | 560 i += Code::kInlIntNumEntries) { |
561 temp ^= inlined_code_intervals_.At(i + Code::kInlIntStart); | 561 temp ^= inlined_code_intervals_.At(i + Code::kInlIntStart); |
562 ASSERT(!temp.IsNull()); | 562 ASSERT(!temp.IsNull()); |
(...skipping 1269 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1832 | 1832 |
1833 | 1833 |
1834 void FlowGraphCompiler::FrameStateClear() { | 1834 void FlowGraphCompiler::FrameStateClear() { |
1835 ASSERT(!is_optimizing()); | 1835 ASSERT(!is_optimizing()); |
1836 frame_state_.TruncateTo(0); | 1836 frame_state_.TruncateTo(0); |
1837 } | 1837 } |
1838 #endif | 1838 #endif |
1839 | 1839 |
1840 | 1840 |
1841 } // namespace dart | 1841 } // namespace dart |
OLD | NEW |