At the moment [1, ..256] creates 2 * 256 instructions. LLVM will optimize it back to a loop or a memset, but it would better to start with that in the first place and rely on the unrolling heuristics for small loops (which may or not be enabled right now).