ARM64: Remove all uses of BlockPoolsScope.

BlockPoolsScope should not be used because it is a VIXL scope
for VIXL internal usage only. In arm64 backend the intent was to
block pools between a particular instruction (Ldr, Str, Blr, etc)
and a subsequent MaybeRecordImplicitNullCheck or RecordPcInfo call.
However pools should be emitted at the opening of a scope if this
is required to satisfy branch/ldr ranges. This is not done by the
BlockPoolsScope, so proper scopes are now used now:
ExactAssemblyScope and EmissionCheckScope.

Test: test-art-host
Test: test-art-target

Bug: 34850123

Change-Id: I30365ad63c644cf9dd85d5a3c2118f9c57be9d20
3 files changed