Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Adjust FPGA IVDep translation for embedded loops
The semantics of the `"!llvm.loop.parallel_access_indices"` loop metadata node could be defined as follows: ``` The IVDep hint of this loop applies to all arrays whose GEP instructions are marked with: 1. !llvm.index.group metadata nodes that are operands of the given !llvm.loop.parallel_access_indices node 2. !llvm.index.group metadata nodes that are used by the operands of the given !llvm.loop.parallel_access_indices node ``` Case **2** is vital for IVDep's representation on loop nests. This patch fixes its improper translation by mapping **all** operands of a given !llvm.index.group (if present) onto the affected array IDs. Additionally, the test was updated to include the legacy ivdep metadata (Clang emits it alongside the `parallel_access_indices`-based layout). Signed-off-by: Artem Gindinson <artem.gindinson@intel.com>
- Loading branch information