I'm reading through the source code of a library (QNNPack) and noticed this line (https://github.com/pytorch/QNNPACK/blob/24d57f21503ba8ab0f8bb5d24148754a91266b9c/src/q8gemm/6x4-neon.c#L23):
void funcName(...,
const union some_union_type some_union_arg[restrict static 1]) {
// ...
}
I understand the keyword restrict and static in general, but I'm afraid I do not know the reason behind this. I didn't find anything on Google, perhaps I searched wrong.
I'm guessing here it's a way of telling the compiler that this pointer points to a single object. But I lack the optimization knowledge to explain further.
Thanks!