Yeah, I also thought of this after posting. It looks slightly better (and saves a few keystrokes to type) but in both cases the compiler has the same knowledge, it's copying array with constant boundaries.
Also note that dmd doesn't use this, it will simply call `memcpy`.
It should be fairly simple to add an optimization because the backend already has an IR elem `OPmemcpy` and also directly uses `rep movsq` for struct blitting.