Details
Diff Detail
- Repository
- rL LLVM
Event Timeline
test/ScopInfo/intrinsics_misc.ll | ||
---|---|---|
1 ↗ | (On Diff #101003) | Remove -S. It is ignored when you also specify -analyze. The result of this command is: Printing analysis 'Polly - Create polyhedral description of Scops' for region: 'for.cond1 => for.end' in function '_Z2jdv': Invalid Scop! Printing analysis 'Polly - Create polyhedral description of Scops' for region: 'for.cond => for.end12' in function '_Z2jdv': Invalid Scop! Printing analysis 'Polly - Create polyhedral description of Scops' for region: 'entry => <Function Return>' in function '_Z2jdv': Invalid Scop! that is, there is no valid scop detection in this function. Test cases should fail without the change you are intending to make. |
The test case still does not fail when I undo the change in ScopBuilder.cpp
Instead of CHECK-NOT, try a positive match (CHECK-NEXT) of all the instruction list that are supposed to be in there.
You test case is relatively large for such a simple check. Can you find a smaller one? The one in D33163 was a lot smaller. Only a loop and a store in its body is required for the smallest scop. I prefer manually crafted IR over clang-generated IR. Avoid unnamed values (e.g. %0) which can cause a problems with finding unique names in LLVM. The pass -instnamer gives ever value a name.