I am a beginner and have encountered some errors while building the alive2
tool. I am using the latest version of LLVM.
work/alive2/alive2/llvm_util/llvm2alive.cpp:1498:38: error: no member named 'ArgMem' in 'llvm::MemoryEffectsBase<llvm::IRMemLocation>'
1498 | make_pair(llvm::MemoryEffects::ArgMem, MemoryAccess::Args),
| ~~~~~~~~~~~~~~~~~~~~~^
work/alive2/alive2/llvm_util/llvm2alive.cpp:1499:38: error: no member named 'InaccessibleMem' in 'llvm::MemoryEffectsBase<llvm::IRMemLocation>'; did you mean 'inaccessibleMemOnly'?
1499 | make_pair(llvm::MemoryEffects::InaccessibleMem,
| ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
| inaccessibleMemOnly
tools/llvm16/llvm-project-main/llvm/include/llvm/Support/ModRef.h:138:3: note: 'inaccessibleMemOnly' declared here
138 | inaccessibleMemOnly(ModRefInfo MR = ModRefInfo::ModRef) {
| ^
work/alive2/alive2/llvm_util/llvm2alive.cpp:1501:17: error: no member named 'Other' in 'llvm::MemoryEffectsBase<llvm::IRMemLocation>'; did you mean 'IR::MemoryAccess::Other'?
1501 | make_pair(llvm::MemoryEffects::Other, MemoryAccess::Other),
| ^~~~~~~~~~~~~~~~~~~~~~~~~~
| IR::MemoryAccess::Other
work/alive2/alive2/ir/attrs.h:25:57: note: 'IR::MemoryAccess::Other' declared here
25 | enum AccessType { Args, Globals, Inaccessible, Errno, Other, NumTypes };
| ^
work/alive2/alive2/llvm_util/llvm2alive.cpp:1502:17: error: no member named 'Other' in 'llvm::MemoryEffectsBase<llvm::IRMemLocation>'; did you mean 'IR::MemoryAccess::Other'?
1502 | make_pair(llvm::MemoryEffects::Other, MemoryAccess::Globals),
| ^~~~~~~~~~~~~~~~~~~~~~~~~~
| IR::MemoryAccess::Other
work/alive2/alive2/ir/attrs.h:25:57: note: 'IR::MemoryAccess::Other' declared here
25 | enum AccessType { Args, Globals, Inaccessible, Errno, Other, NumTypes };
| ^
work/alive2/alive2/llvm_util/llvm2alive.cpp:1503:17: error: no member named 'Other' in 'llvm::MemoryEffectsBase<llvm::IRMemLocation>'; did you mean 'IR::MemoryAccess::Other'?
1503 | make_pair(llvm::MemoryEffects::Other, MemoryAccess::Errno),
| ^~~~~~~~~~~~~~~~~~~~~~~~~~
| IR::MemoryAccess::Other
work/alive2/alive2/ir/attrs.h:25:57: note: 'IR::MemoryAccess::Other' declared here
25 | enum AccessType { Args, Globals, Inaccessible, Errno, Other, NumTypes };
| ^
5 errors generated.
[50/61] Building CXX object tv/CMakeFiles/tv.dir/tv.cpp.o
How can this issue be resolved? Is it necessary to change the version of LLVM? Thanks!