In the following example, Vivado HLS reports a warning message and less than expected II and pipeline results.
R = M[ax] ;
R = M[ay];
To ensure Vivado HLS can optimize HDL outputs, modify the code as shown below.
A = ax ;
A = ay;
// next do the actual read
This issue is fixed from release 2012.2 on.