# ivdep Attribute

**Syntax**

[[intelfpga::ivdep]]

[[intelfpga::ivdep(safelen)]]

[[intelfpga::ivdep(array)]]

[[intelfpga::ivdep(array, safelen)]]

[[intelfpga::ivdep(safelen, array)]]

// No loop-carried dependencies for accesses to arrays A and B [[intelfpga::ivdep]] for (int i = 0; i < N; i++) { A[i] = A[i - X[i]]; B[i] = B[i - Y[i]]; } // No loop-carried dependencies for accesses to array A // Compiler inserts hardware that reinforces dependency constraints for B [[intelfpga::ivdep(A)]] for (int i = 0; i < N; i++) { A[i] = A[i - X[i]]; B[i] = B[i - Y[i]]; } // No loop-carried dependencies for array A inside struct [[intelfpga::ivdep(S.A)]] for (int i = 0; i < N; i++) { S.A[i] = S.A[i - X[i]]; } // No loop-carried dependencies for array A inside the struct pointed by S [[intelfpga::ivdep(S->X[2][3].A)]] for (int i = 0; i < N; i++) { S->X[2][3].A[i] = S.A[i - X[i]]; }