Skip to content

Commit 17c5c19

Browse files
authored
[Verifier] Always verify all assume bundles. (#145586)
For some reason, some of the checks for specific assumbe bundle elements exit early if the check pass, meaning we don't verify other entries. Replace the early returns with early continues. This also requires removing some tests that are currently rejected. They will be added back as part of #128436. PR: #145586
1 parent 4ac4726 commit 17c5c19

File tree

4 files changed

+3
-440
lines changed

4 files changed

+3
-440
lines changed

llvm/lib/IR/Verifier.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5517,7 +5517,7 @@ void Verifier::visitIntrinsicCall(Intrinsic::ID ID, CallBase &Call) {
55175517
Call.getOperand(Elem.Begin + 1)->getType()->isPointerTy(),
55185518
"arguments to separate_storage assumptions should be pointers",
55195519
Call);
5520-
return;
5520+
continue;
55215521
}
55225522
Check(Elem.Tag->getKey() == "ignore" ||
55235523
Attribute::isExistingAttribute(Elem.Tag->getKey()),
@@ -5534,7 +5534,7 @@ void Verifier::visitIntrinsicCall(Intrinsic::ID ID, CallBase &Call) {
55345534
if (ArgCount == 3)
55355535
Check(Call.getOperand(Elem.Begin + 2)->getType()->isIntegerTy(),
55365536
"third argument should be an integer if present", Call);
5537-
return;
5537+
continue;
55385538
}
55395539
Check(ArgCount <= 2, "too many arguments", Call);
55405540
if (Kind == Attribute::None)

0 commit comments

Comments
 (0)