unpackWarpResult
Unpacks a warp_run result — (resPtr << 32) | (resLen & 0xFFFF_FFFF) — into its unsigned pointer/length words.
This is the one shared implementation of the warp-ABI result unpack: every WasmRuntime implementation whose decode runs in Kotlin must use it (plus requireInBounds or the composed decodeWarpResult) rather than re-deriving the arithmetic, because the unsigned treatment is the safety-critical part and has been hand-rolled wrong before.