<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>