Prevent concurrent GC stack-walks during deoptimization

We could end up modifying the instrumentation stack at the same time
the GC or thread-flip stack walks are occurring. This could cause
crashes or check-failures as the stack is in an inconsistent state.

To fix this we changed the deoptimization process to block GC stack

We also standardized deoptimization to use a single

Bug: 72608560
Test: ./ --host
Test: ./tools/

Change-Id: I942ff891930d22a579345265897916cf84842a1c
6 files changed