wsmoses / Tapir-LLVM

Tapir extension to LLVM for optimizing Parallel Programs
Other
132 stars 24 forks source link

[AliasAnalysis] Avoid unnecessary recursion on nested detaches. #93

Closed VictorYing closed 5 years ago

VictorYing commented 5 years ago

This addresses https://github.com/wsmoses/Tapir-LLVM/issues/92

This ensures getModRefInfo runs in linear time, and avoids unbounded stack growth.

VictorYing commented 5 years ago

Weird, the failing CircleCI build failing in a place that seems unrelated to my change, when the CircleCI tests passed on the previous commit: https://circleci.com/gh/wsmoses/Tapir-LLVM/725

neboat commented 5 years ago

Thanks for the pull request. We definitely should fix this issue.

The CI seems to fail here, which is related to your change:

/root/project/lib/Analysis/AliasAnalysis.cpp:675:26: error: no match for 'operator*' (operand type is 'const llvm::Instruction')
       if (isa<SyncInst>(&*I) || isa<DetachInst>(&*I))
                          ^
VictorYing commented 5 years ago

Oops, thanks for pointing out my mistake.