Rebased onto more recent github/main.
Feb 18 2021
Feb 10 2021
Feb 9 2021
Change from loops with early retuns to llvm::any_of and llvm::none_of.
Is it important for the memory accesses here to be done via addrspace 0, or is that just an artifact of making the pointer type match up? It seems that for many architectures with multiple memory spaces, it won't be possible to address all memory via addrspace 0, and memory accesses should be done in the addrspace their memref lives in (as in https://reviews.llvm.org/D96380); but I'm not sure whether making that change would affect the use case this was meant for.