Baltoli / project-docs

Documents for my Part III project
0 stars 0 forks source link

Data Flow Analysis for acq-rel #1

Closed Baltoli closed 7 years ago

Baltoli commented 7 years ago

Previously I've implemented a set of experiments for demonstrating the properties of my acq_rel automaton. In order to statically analyse these automata, I need to work out how best to perform the data flow analysis on the LLVM IR.

Things that need to be done in order for this to go ahead:

Baltoli commented 7 years ago

Have written up the informal specifications for the behaviour of acq_rel.

Baltoli commented 7 years ago

Looking into adding an LLVM pass to the static analysis now. I think what I need to do is:

Baltoli commented 7 years ago

Important

The argument collection code will modify the module IR it is run on. This is because it creates load instructions for the values in scope, and so the module pass will always need to return a value that indicates it has modified the IR.

Baltoli commented 7 years ago

For the most part this is done now - there are some edge cases that aren't totally covered, but the majority of the analysis exists and can be run on a module.