static long readLongLE4(byte[] arr, int offset) {
		return Byte.toUnsignedLong(arr[offset]) |
			Byte.toUnsignedLong(arr[offset + 1]) << 8 |
			Byte.toUnsignedLong(arr[offset + 2]) << 16 |
			Byte.toUnsignedLong(arr[offset + 3]) << 24;
	}
Read an {@link IntJitType#I4 int4} from the given array at the given offset in little endian.

<p>
This is invoked by dynamically generated code. While an {@link IntJitType#I4 int4} can fit in
a JVM int, this method is used when reading 4 bytes of a {@link LongJitType larger int} that
spans a page boundary.

@param arr the array
@param offset the offset
@return the value as a JVM long
Ghidra/Framework/Emulation/src/main/java/ghidra/pcode/emu/jit/gen/tgt/JitCompiledPassage.java