/art/test/121-simple-suspend-check/src/ |
H A D | Main.java | 19 SpinThread thread = new SpinThread(); 20 thread.setDaemon(true); 21 thread.start();
|
/art/runtime/ |
H A D | thread_list.cc | 39 #include "thread.h" 76 // Detach the current thread if necessary. If we failed to start, there might not be any threads. 77 // We need to detach the current thread here in case there's another thread waiting to join with 95 // TODO: there's an unaddressed race here where a thread may attach during shutdown, see 100 bool ThreadList::Contains(Thread* thread) { argument 101 return find(list_.begin(), list_.end(), thread) != list_.end(); 105 for (const auto& thread : list_) { 106 if (thread->GetTid() == tid) { 120 for (const auto& thread 683 Resume(Thread* thread, bool for_debugger) argument 745 Thread* thread; local 859 Thread* thread = nullptr; local [all...] |
H A D | instrumentation.h | 57 // the events they are listening for. The call backs supply the thread, method and dex_pc the event 58 // occurred upon. The thread may or may not be Thread::Current(). 64 virtual void MethodEntered(Thread* thread, mirror::Object* this_object, 69 virtual void MethodExited(Thread* thread, mirror::Object* this_object, 76 virtual void MethodUnwind(Thread* thread, mirror::Object* this_object, 81 virtual void DexPcMoved(Thread* thread, mirror::Object* this_object, 86 virtual void FieldRead(Thread* thread, mirror::Object* this_object, ArtMethod* method, 90 virtual void FieldWritten(Thread* thread, mirror::Object* this_object, ArtMethod* method, 94 virtual void ExceptionCaught(Thread* thread, mirror::Throwable* exception_object) 98 virtual void Branch(Thread* thread, [all...] |
H A D | nth_caller_visitor.h | 29 NthCallerVisitor(Thread* thread, size_t n_in, bool include_runtime_and_upcalls = false) argument 30 : StackVisitor(thread, nullptr, StackVisitor::StackWalkKind::kIncludeInlinedFrames),
|
H A D | trace.h | 67 // u1 thread ID 72 // u2 thread ID 77 // u2 thread ID 137 void CompareAndUpdateStackTrace(Thread* thread, std::vector<ArtMethod*>* stack_trace) 141 void MethodEntered(Thread* thread, mirror::Object* this_object, 145 void MethodExited(Thread* thread, mirror::Object* this_object, 150 void MethodUnwind(Thread* thread, mirror::Object* this_object, 154 void DexPcMoved(Thread* thread, mirror::Object* this_object, 158 void FieldRead(Thread* thread, mirror::Object* this_object, 161 void FieldWritten(Thread* thread, mirro [all...] |
H A D | instrumentation.cc | 40 #include "thread.h" 171 static void InstrumentationInstallStack(Thread* thread, void* arg) 281 thread->GetThreadName(thread_name); 288 InstallStackVisitor visitor(thread, context.get(), instrumentation_exit_pc); 290 CHECK_EQ(visitor.dex_pcs_.size(), thread->GetInstrumentationStack()->size()); 293 // Create method enter events for all methods currently on the thread's stack. We only do this 296 for (auto isi = thread->GetInstrumentationStack()->rbegin(), 297 end = thread->GetInstrumentationStack()->rend(); isi != end; ++isi) { 299 instrumentation->MethodEnterEvent(thread, (*ssi).this_object_, (*ssi).method_, 0); 305 instrumentation->MethodEnterEvent(thread, (*is 312 InstrumentThreadStack(Thread* thread) argument 632 ResetQuickAllocEntryPointsForThread(Thread* thread, void* arg ATTRIBUTE_UNUSED) argument 905 MethodEnterEventImpl(Thread* thread, mirror::Object* this_object, ArtMethod* method, uint32_t dex_pc) const argument 917 MethodExitEventImpl(Thread* thread, mirror::Object* this_object, ArtMethod* method, uint32_t dex_pc, const JValue& return_value) const argument 929 MethodUnwindEvent(Thread* thread, mirror::Object* this_object, ArtMethod* method, uint32_t dex_pc) const argument 941 DexPcMovedEventImpl(Thread* thread, mirror::Object* this_object, ArtMethod* method, uint32_t dex_pc) const argument 951 BranchImpl(Thread* thread, ArtMethod* method, uint32_t dex_pc, int32_t offset) const argument 962 InvokeVirtualOrInterfaceImpl(Thread* thread, mirror::Object* this_object, ArtMethod* caller, uint32_t dex_pc, ArtMethod* callee) const argument 977 FieldReadEventImpl(Thread* thread, mirror::Object* this_object, ArtMethod* method, uint32_t dex_pc, ArtField* field) const argument 987 FieldWriteEventImpl(Thread* thread, mirror::Object* this_object, ArtMethod* method, uint32_t dex_pc, ArtField* field, const JValue& field_value) const argument 997 ExceptionCaughtEvent(Thread* thread, mirror::Throwable* exception_object) const argument [all...] |
H A D | trace.cc | 41 #include "thread.h" 55 explicit BuildStackTraceVisitor(Thread* thread) argument 56 : StackVisitor(thread, nullptr, StackVisitor::StackWalkKind::kIncludeInlinedFrames), 222 static void GetSample(Thread* thread, void* arg) SHARED_REQUIRES(Locks::mutator_lock_) { 223 BuildStackTraceVisitor build_trace_visitor(thread); 227 the_trace->CompareAndUpdateStackTrace(thread, stack_trace); 230 static void ClearThreadStackTraceAndClockBase(Thread* thread, void* arg ATTRIBUTE_UNUSED) { argument 231 thread->SetTraceClockBase(0); 232 std::vector<ArtMethod*>* stack_trace = thread->GetStackTraceSample(); 233 thread 237 CompareAndUpdateStackTrace(Thread* thread, std::vector<ArtMethod*>* stack_trace) argument 785 MethodEntered(Thread* thread, mirror::Object* this_object ATTRIBUTE_UNUSED, ArtMethod* method, uint32_t dex_pc ATTRIBUTE_UNUSED) argument 794 MethodExited(Thread* thread, mirror::Object* this_object ATTRIBUTE_UNUSED, ArtMethod* method, uint32_t dex_pc ATTRIBUTE_UNUSED, const JValue& return_value ATTRIBUTE_UNUSED) argument 804 MethodUnwind(Thread* thread, mirror::Object* this_object ATTRIBUTE_UNUSED, ArtMethod* method, uint32_t dex_pc ATTRIBUTE_UNUSED) argument 834 ReadClocks(Thread* thread, uint32_t* thread_clock_diff, uint32_t* wall_clock_diff) argument 869 RegisterThread(Thread* thread) argument 915 LogMethodTraceEvent(Thread* thread, ArtMethod* method, instrumentation::Instrumentation::InstrumentationEvent event, uint32_t thread_clock_diff, uint32_t wall_clock_diff) argument 1038 StoreExitingThreadInfo(Thread* thread) argument [all...] |
H A D | monitor.cc | 34 #include "thread.h" 65 * Only one thread can own the monitor at any time. There may be several threads waiting on it 146 // The owner_ is suspended but another thread beat us to install a monitor. 174 void Monitor::AppendToWaitSet(Thread* thread) { argument 176 DCHECK(thread != nullptr); 177 DCHECK(thread->GetWaitNext() == nullptr) << thread->GetWaitNext(); 179 wait_set_ = thread; 188 t->SetWaitNext(thread); 191 void Monitor::RemoveFromWaitSet(Thread *thread) { argument 466 ThreadToString(Thread* thread) argument 472 oss << *thread; local 723 Thread* thread = wait_set_; local 746 Thread* thread = wait_set_; local 1106 DescribeWait(std::ostream& os, const Thread* thread) argument 1156 GetContendedMonitor(Thread* thread) argument [all...] |
/art/test/051-thread/src/ |
H A D | Main.java | 20 * Test some basic thread stuff. 25 System.out.println("thread test starting"); 31 System.out.println("thread test done"); 35 * Simple thread capacity test. 43 for (TestCapacityThread thread : threads) { 44 thread.start(); 46 for (TestCapacityThread thread : threads) { 47 thread.join(); 50 System.out.println("testThreadCapacity thread count: " + TestCapacityThread.mCount); 71 System.out.print("testThreadDaemons starting thread '" [all...] |
/art/test/129-ThreadGetId/src/ |
H A D | Main.java | 37 System.out.println("current thread's ID is not positive"); 41 for (Thread thread : stMap.keySet()) { 42 if (thread.getId() <= 0) { 43 System.out.println("thread's ID is not positive: " + thread.getName());
|
/art/runtime/interpreter/mterp/mips64/ |
H A D | op_throw.S | 2 * Throw an exception object in the current thread. 9 sd a0, THREAD_EXCEPTION_OFFSET(rSELF) # thread->exception <- obj
|
/art/runtime/native/ |
H A D | java_lang_Thread.cc | 26 #include "thread.h" 44 Thread* thread = Thread::FromManagedThread(soa, java_thread); local 45 return (thread != nullptr) ? thread->IsInterrupted() : JNI_FALSE; 50 // There are sections in the zygote that forbid thread creation. 74 Thread* thread = Thread::FromManagedThread(soa, java_thread); local 75 if (thread != nullptr) { 76 internal_thread_state = thread->GetState(); 106 LOG(ERROR) << "Unexpected thread state: " << internal_thread_state; 118 Thread* thread local 125 Thread* thread = Thread::FromManagedThread(soa, java_thread); local 146 Thread* thread = thread_list->SuspendThreadByPeer(peer, true, false, &timed_out); local 167 Thread* thread = Thread::FromManagedThread(soa, java_thread); local [all...] |
H A D | dalvik_system_VMStack.cc | 37 // Suspend thread to build stack trace. 41 Thread* thread = thread_list->SuspendThreadByPeer(peer, true, false, &timed_out); local 42 if (thread != nullptr) { 46 trace = thread->CreateInternalStackTrace<false>(soa); 48 // Restart suspended thread. 49 thread_list->Resume(thread, false); 51 LOG(ERROR) << "Trying to get thread's stack failed as the thread failed to suspend within a " 76 // The caller is an attached native thread. 84 explicit ClosestUserClassLoaderVisitor(Thread* thread) argument [all...] |
H A D | org_apache_harmony_dalvik_ddmc_DdmVmInternal.cc | 60 // Check for valid thread 65 // Suspend thread to build stack trace. 66 Thread* thread = thread_list->SuspendThreadByThreadId(thin_lock_id, false, &timed_out); local 67 if (thread != nullptr) { 70 jobject internal_trace = thread->CreateInternalStackTrace<false>(soa); 73 // Restart suspended thread. 74 thread_list->Resume(thread, false); 77 LOG(ERROR) << "Trying to get thread's stack by id failed as the thread failed to suspend " 101 * (2b) thread coun [all...] |
/art/runtime/interpreter/mterp/arm/ |
H A D | op_throw.S | 2 * Throw an exception object in the current thread. 10 str r1, [rSELF, #THREAD_EXCEPTION_OFFSET] @ thread->exception<- obj
|
/art/runtime/interpreter/mterp/mips/ |
H A D | op_throw.S | 2 * Throw an exception object in the current thread. 10 sw a1, THREAD_EXCEPTION_OFFSET(rSELF) # thread->exception <- obj
|
/art/runtime/gc/space/ |
H A D | bump_pointer_space.cc | 96 size_t BumpPointerSpace::RevokeThreadLocalBuffers(Thread* thread) { argument 98 RevokeThreadLocalBuffersLocked(thread); 106 // TODO: Not do a copy of the thread list? 108 for (Thread* thread : thread_list) { 109 RevokeThreadLocalBuffers(thread); 114 void BumpPointerSpace::AssertThreadLocalBuffersAreRevoked(Thread* thread) { argument 117 DCHECK(!thread->HasTlab()); 126 // TODO: Not do a copy of the thread list? 128 for (Thread* thread : thread_list) { 129 AssertThreadLocalBuffersAreRevoked(thread); 249 RevokeThreadLocalBuffersLocked(Thread* thread) argument [all...] |
H A D | region_space.cc | 359 size_t RegionSpace::RevokeThreadLocalBuffers(Thread* thread) { argument 361 RevokeThreadLocalBuffersLocked(thread); 365 void RegionSpace::RevokeThreadLocalBuffersLocked(Thread* thread) { argument 366 uint8_t* tlab_start = thread->GetTlabStart(); 367 DCHECK_EQ(thread->HasTlab(), tlab_start != nullptr); 372 DCHECK_EQ(thread->GetThreadLocalBytesAllocated(), kRegionSize); 373 r->RecordThreadLocalAllocations(thread->GetThreadLocalObjectsAllocated(), 374 thread->GetThreadLocalBytesAllocated()); 378 thread->SetTlab(nullptr, nullptr); 386 for (Thread* thread 392 AssertThreadLocalBuffersAreRevoked(Thread* thread) argument [all...] |
/art/test/570-checker-osr/ |
H A D | osr.cc | 30 explicit OsrVisitor(Thread* thread, const char* method_name) 32 : StackVisitor(thread, nullptr, StackVisitor::StackWalkKind::kIncludeInlinedFrames), 92 explicit ProfilingInfoVisitor(Thread* thread, const char* method_name) 94 : StackVisitor(thread, nullptr, StackVisitor::StackWalkKind::kIncludeInlinedFrames), 126 OsrCheckVisitor(Thread* thread, const char* method_name) 128 : StackVisitor(thread, nullptr, StackVisitor::StackWalkKind::kIncludeInlinedFrames), 138 // Sleep to yield to the compiler thread.
|
/art/test/004-ReferenceMap/ |
H A D | stack_walk_refmap_jni.cc | 37 explicit ReferenceMap2Visitor(Thread* thread) SHARED_REQUIRES(Locks::mutator_lock_) 38 : CheckReferenceMapVisitor(thread) {}
|
/art/test/004-StackWalk/ |
H A D | stack_walk_jni.cc | 33 explicit TestReferenceMapVisitor(Thread* thread) SHARED_REQUIRES(Locks::mutator_lock_) 34 : CheckReferenceMapVisitor(thread) {}
|
/art/test/466-get-live-vreg/ |
H A D | get_live_vreg_jni.cc | 23 #include "thread.h" 31 TestVisitor(Thread* thread, Context* context) SHARED_REQUIRES(Locks::mutator_lock_) 32 : StackVisitor(thread, context, StackVisitor::StackWalkKind::kIncludeInlinedFrames) {}
|
/art/test/595-profile-saving/ |
H A D | profile-saving.cc | 29 #include "thread.h" 36 explicit CreateProfilingInfoVisitor(Thread* thread, const char* method_name) 38 : StackVisitor(thread, nullptr, StackVisitor::StackWalkKind::kIncludeInlinedFrames),
|
/art/runtime/jit/ |
H A D | jit.cc | 95 LOG(FATAL) << "Priority thread weight is above the warmup threshold."; 97 LOG(FATAL) << "Priority thread weight cannot be 0."; 283 thread_pool_.reset(new ThreadPool("Jit thread pool", 1)); 385 bool Jit::MaybeDoOnStackReplacement(Thread* thread, argument 399 if (UNLIKELY(__builtin_frame_address(0) < thread->GetStackEnd())) { 417 // Fetch some data before looking up for an OSR method. We don't want thread 429 ScopedAssertNoThreadSuspension sts(thread, "Holding OSR method"); 472 shadow_frame = thread->PopShadowFrame(); 513 thread->PushManagedStackFragment(&fragment); 519 thread); 660 MethodEntered(Thread* thread, ArtMethod* method) argument 681 InvokeVirtualOrInterface(Thread* thread, mirror::Object* this_object, ArtMethod* caller, uint32_t dex_pc, ArtMethod* callee ATTRIBUTE_UNUSED) argument [all...] |
/art/test/114-ParallelGC/src/ |
H A D | Main.java | 24 // Timeout in minutes. Make it larger than the run-test timeout to get a native thread dump by 51 for (Thread thread : threads) { 52 thread.join(); 131 System.out.println("Waited too long for the last thread.");
|