As discussed in https://reviews.llvm.org/D103492, input to the RewriteStatepointsForGC pass is only valid if the address space used for GC pointers is specified as non-integral.
This patch makes the RS4GC pass actually check this, and produce a fatal error if it isn't the case.
Exactly one of the existing tests for RS4GC actually marked address space 1 as non-integral, so I updated the rest of them to do that.
That actually means that previously, optimization passes could perform invalid optimizations on the test cases had they been run, so it could have been a latent soundness issue.
This patch hardcodes address space 1 as marking GC pointers.
Theoretically it should be configurable, but it was already hardcoded in other places so another patch is still needed to support that.
clang-format: please reformat the code
2 diff lines are omitted. See full path.