Optimize out-of-bounds checks with unsigned compare
Optimize out-of-bounds checks with unsigned compare

Also separate the out-of-bounds handling from the offset calculations.

Bug: b/155862459
Change-Id: Ib6c5ea029d16fc411d792e6c129b37386d48fc1d
Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/45092
Tested-by: Nicolas Capens <51edc787c30f24c4904e8ffbb5523c3a9f7a451d@google.com>
Reviewed-by: Alexis Hétu <1c7141772178a7e80858c3db5052b328076f08f4@google.com>
Kokoro-Result: kokoro <2ac7b1f3fa578934c95181d4272be0d3bca00121@google.com>

bkaradzic/SwiftShader,bkaradzic/SwiftShader,bkaradzic/SwiftShader,bkaradzic/SwiftShader,bkaradzic/SwiftShader,google/swiftshader,google/swiftshader,google/swiftshader