Revoke thread-local mark stack for CC in ~Thread

Move revoking thread-local mark stack from Thread::Destroy() to
Thread::~Thread. We also don't need to perform this revocation with
ScopedObjectAccess.
Also, updated the assertion in RevokeThreadLocalMarkStack for cases
where an exiting thread during marking phase of the 2-phase full-heap GC
invokes it.

Bug: 140119552
Test: art/testrunner/testrunner.py
Change-Id: I64c6cc52ca802bd3ddfb210ac9254f37f059ea03
2 files changed