OLD | NEW |
1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2012, 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/object.h" | 5 #include "vm/object.h" |
6 | 6 |
7 #include "include/dart_api.h" | 7 #include "include/dart_api.h" |
8 #include "platform/assert.h" | 8 #include "platform/assert.h" |
9 #include "vm/assembler.h" | 9 #include "vm/assembler.h" |
10 #include "vm/cpu.h" | 10 #include "vm/cpu.h" |
(...skipping 13316 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
13327 INC_STAT(Thread::Current(), total_code_size, assembler->CodeSize()); | 13327 INC_STAT(Thread::Current(), total_code_size, assembler->CodeSize()); |
13328 | 13328 |
13329 // Copy the instructions into the instruction area and apply all fixups. | 13329 // Copy the instructions into the instruction area and apply all fixups. |
13330 // Embedded pointers are still in handles at this point. | 13330 // Embedded pointers are still in handles at this point. |
13331 MemoryRegion region(reinterpret_cast<void*>(instrs.EntryPoint()), | 13331 MemoryRegion region(reinterpret_cast<void*>(instrs.EntryPoint()), |
13332 instrs.size()); | 13332 instrs.size()); |
13333 assembler->FinalizeInstructions(region); | 13333 assembler->FinalizeInstructions(region); |
13334 VerifiedMemory::Accept(region.start(), region.size()); | 13334 VerifiedMemory::Accept(region.start(), region.size()); |
13335 CPU::FlushICache(instrs.EntryPoint(), instrs.size()); | 13335 CPU::FlushICache(instrs.EntryPoint(), instrs.size()); |
13336 | 13336 |
13337 code.set_compile_timestamp(OS::GetCurrentTimeMicros()); | 13337 code.set_compile_timestamp(OS::GetCurrentTraceMicros()); |
13338 CodeObservers::NotifyAll(name, | 13338 CodeObservers::NotifyAll(name, |
13339 instrs.EntryPoint(), | 13339 instrs.EntryPoint(), |
13340 assembler->prologue_offset(), | 13340 assembler->prologue_offset(), |
13341 instrs.size(), | 13341 instrs.size(), |
13342 optimized); | 13342 optimized); |
13343 { | 13343 { |
13344 NoSafepointScope no_safepoint; | 13344 NoSafepointScope no_safepoint; |
13345 const ZoneGrowableArray<intptr_t>& pointer_offsets = | 13345 const ZoneGrowableArray<intptr_t>& pointer_offsets = |
13346 assembler->GetPointerOffsets(); | 13346 assembler->GetPointerOffsets(); |
13347 ASSERT(pointer_offsets.length() == pointer_offset_count); | 13347 ASSERT(pointer_offsets.length() == pointer_offset_count); |
(...skipping 8574 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
21922 return tag_label.ToCString(); | 21922 return tag_label.ToCString(); |
21923 } | 21923 } |
21924 | 21924 |
21925 | 21925 |
21926 void UserTag::PrintJSONImpl(JSONStream* stream, bool ref) const { | 21926 void UserTag::PrintJSONImpl(JSONStream* stream, bool ref) const { |
21927 Instance::PrintJSONImpl(stream, ref); | 21927 Instance::PrintJSONImpl(stream, ref); |
21928 } | 21928 } |
21929 | 21929 |
21930 | 21930 |
21931 } // namespace dart | 21931 } // namespace dart |
OLD | NEW |