forked from tinygrad/tinygrad
undo the view and make it a mask, this fuses the setitem with any pending compute too. one behavior change is that for target not backed by a buffer (const and arange), rangeify makes output contiguous under the hood. this is stricter better than raise and ask user to call contiguous, as that would no longer be fuse-able.
Three groups of tests run in CI backend -- tests that run on each backend null -- tests that don't require any backend unit -- tests that only run on a single backend in CI