search for: reversememoryssa

Displaying 2 results from an estimated 2 matches for "reversememoryssa".

2018 Oct 02
2
Reordering of load/stores using MemorySSA
Hello all, It seems that it is insufficient to rely on MemorySSA to correctly reorder load/stores. For example, we have this following code: v = load q store 10, p => store 10, p v = load q // This is incorrect if p and q may alias In the MemorySSA representation however, there's no syntactic dependency between load/store, because MemorySSA before transformation would look like this:
2018 Oct 02
0
Reordering of load/stores using MemorySSA
...as you can buys you almost nothing in >> practice. >> However, it makes for a much faster memorydependenceanalysis (which in >> llvm is also only upwards and not downwards). >> >> Here, it's not clear that GVNHoist is slow enough to make building an >> entire ReverseMemorySSA form worth it. >> In particular, building reverse MemorySSA will double the number of >> alias checks in most cases. >> You would almost certainly have to fix the BasicAA caching issues and >> finally split BasicAA or something to make it viable. >> (MemorySSA already...