protected Instruction placeGuestInstruction(int guestRangeLength) throws Throwable {
		try (Transaction tx = tb.startTransaction()) {
			tb.trace.getMemoryManager()
					.addRegion("Memory[.text]", Lifespan.nowOn(0), tb.range(0x00400000, 0x0040ffff),
						Set.of(TraceMemoryFlag.READ, TraceMemoryFlag.EXECUTE));
			TraceGuestPlatform toy = tb.trace.getPlatformManager()
					.addGuestPlatform(getToyBE64Language().getDefaultCompilerSpec());
			Address hostEntry = tb.addr(0x00400000);
			Address guestEntry = tb.addr(toy, 0x00000000);
			toy.addMappedRange(hostEntry, guestEntry, guestRangeLength);

			Assembler asm = Assemblers.getAssembler(toy.getLanguage());
			AssemblyBuffer buf = new AssemblyBuffer(asm, guestEntry);
			buf.assemble("call 0x123");
			Instruction callInstr =
				tb.addInstruction(0, hostEntry, toy, ByteBuffer.wrap(buf.getBytes()));

			return callInstr;
		}
	}
Because goToDyn has to retry, it can generate many read requests. Turn off auto-read and
then flush out any pending reads, so that all the tasks can complete.
Ghidra/Test/DebuggerIntegrationTest/src/test/java/ghidra/app/plugin/core/debug/gui/listing/DebuggerListingProviderTest.java