[mlir][arith] Add comparison-based integration tests
Introduces a simple framework for runtime tests of the wide integer emulation.
In these tests, we are only interested in checking that both wide and narrow calculation
produce the same results, and do not check for exact results. This allows us to cover
more of the input space, as we do not have to hardcode each of the expected outputs.
Introduce common helper functions to check the results, print a message on mismatch,
and sample the input space.
Implement runtime comparrison tests for `arith.muli` and `arith.shrui`.
Reviewed By: antiagainst
Differential Revision: https://reviews.llvm.org/D134184