|
|
|
|
|
by cv5005
171 days ago
|
|
For systems programming the correct way is to have explicit annotations so you can tell the compiler things like: void foo(void *a, void *b, int n) {
assume_aligned(a, 16);
assume_stride(a, 16);
assume_distinct(a, b);
... go and vectorize!
}
|
|
Just look at the utter failure of `restrict`. It was so rarely used in C that it took several years of constant nagging from Rust developers to iron out various bugs in compilers caused by it.