Assert mutator doesn't get mark-stack assigned once destroyed

Write a non-null value to thread-local mark-stack pointer when
a mutator revokes the previously assigned thread-local mark-stack
so that we can catch the mutator if it ever invokes the read-barrier
or executes the flip function, both of which may assign mark-stack
to the mutator.

Test: art/test/testrunner/testrunner.py
Bug:140119552
Change-Id: I82f43c8a3aab6dacb0f6bd35471fc2cdd969b154
3 files changed