Calculates the offset from a pointer.
This is implemented as an intrinsic to avoid converting to and from an integer, since the conversion would throw away aliasing information.
Both the starting and resulting pointer must be either in bounds or one byte past the end of an allocated object. If either pointer is out of bounds or arithmetic overflow occurs then any further use of the returned value will result in undefined behavior.
The stabilized version of this intrinsic is