<html><head><style type="text/css"><!-- DIV {margin:0px;} --></style></head><body><div style="font-family:arial,helvetica,sans-serif;font-size:10pt;color:#000000;"><div>Hi,<br><br>I plan to do some speculative parallelization in LLVM using Polly and I target loops that contain pointers and indirect references. As far as I know, Polly generates optimized code starting from the SCoPs, therefore I plan to replace all pointer accesses with array accesses, such that Polly will accept the code. Each array access should use a liner function of the enclosing loops indices. <br><br>This is how I plan to implement it:<br><br>1) parse the alloca instructions and find declarations of pointers<br>2) for each pointer <br>        3) delete the alloca instruction<br>        4) create a new alloca instruction for the new array<br>        5) replace all uses of the pointer
 with the new array<br><br><br>Feed this code into Polly, get an optimized version and replace back the array accesses with the original corresponding pointers.<br><br>Please advise me whether this is a good strategy to replace the pointer accesses.<br><br>Thank you,<br>Alexandra<br></div>



</div></body></html>