Add a separate path for MethodHandle invokeExact from transforms

This simplifies the logic in the MethodHandle invoke paths and perhaps
opens the door for faster implementation of the direct cases.

It also changes the logic around the ShadowFrame for invokes from
transforms trying to avoid the frame being GC reachable via two
routes.

Bug: 221894167
Test: atest CtsLibcoreOjTestCases:java.lang.invoke
Test: art/test/run-test --host {712,956,957,958}
Test: art/test.py --host --64 --gcstress -r
Change-Id: If94cfc982c58a36047e7acf417e6cee1be314fd8
9 files changed