02848e0b80
The randomly generated offset+width may exceeds 32, which causes a left shift operation with 32-offset-width. As an unsigned number that is greater than 32 and causes undefined behavior. When the test is compiled without -mavx it is still OK. However when the test is compiled with -mavx, the undefined behavior causes wrong results and test failure. This patch adjusts width so that offset+width<=32 always.