Lines Matching defs:Assume

46 bool hasMatchesExactlyAttributes(AssumeInst *Assume, Value *WasOn,
56 if (ShouldHaveAttr != hasAttributeInAssume(*Assume, WasOn, Attr))
62 bool hasTheRightValue(AssumeInst *Assume, Value *WasOn,
65 if (!hasAttributeInAssume(*Assume, WasOn, Kind, &ArgVal))
89 auto *Assume = buildAssumeFromInst(I);
90 Assume->insertBefore(I->getIterator());
91 ASSERT_TRUE(hasMatchesExactlyAttributes(Assume, I->getOperand(0),
93 ASSERT_TRUE(hasMatchesExactlyAttributes(Assume, I->getOperand(1),
95 ASSERT_TRUE(hasMatchesExactlyAttributes(Assume, I->getOperand(2),
97 ASSERT_TRUE(hasTheRightValue(Assume, I->getOperand(0),
99 ASSERT_TRUE(hasTheRightValue(Assume, I->getOperand(0),
101 ASSERT_TRUE(hasTheRightValue(Assume, I->getOperand(0),
111 auto *Assume = buildAssumeFromInst(I);
112 Assume->insertBefore(I->getIterator());
113 ASSERT_TRUE(hasMatchesExactlyAttributes(Assume, I->getOperand(0),
115 ASSERT_TRUE(hasMatchesExactlyAttributes(Assume, I->getOperand(1),
117 ASSERT_TRUE(hasMatchesExactlyAttributes(Assume, I->getOperand(2),
119 ASSERT_TRUE(hasMatchesExactlyAttributes(Assume, I->getOperand(3),
121 ASSERT_TRUE(hasTheRightValue(Assume, I->getOperand(0),
123 ASSERT_TRUE(hasTheRightValue(Assume, I->getOperand(0),
125 ASSERT_TRUE(hasTheRightValue(Assume, I->getOperand(1),
131 auto *Assume = buildAssumeFromInst(I);
132 Assume->insertBefore(I->getIterator());
134 Assume, nullptr,
140 auto *Assume = cast<AssumeInst>(I);
141 ASSERT_TRUE(hasMatchesExactlyAttributes(Assume, nullptr, ""));
150 auto *Assume = buildAssumeFromInst(I);
151 Assume->insertBefore(I->getIterator());
153 Assume, I->getOperand(0),
155 ASSERT_TRUE(hasMatchesExactlyAttributes(Assume, I->getOperand(1),
157 ASSERT_TRUE(hasMatchesExactlyAttributes(Assume, I->getOperand(2),
159 ASSERT_TRUE(hasMatchesExactlyAttributes(Assume, I->getOperand(3),
161 ASSERT_TRUE(hasTheRightValue(Assume, I->getOperand(0),
163 ASSERT_TRUE(hasTheRightValue(Assume, I->getOperand(0),
165 ASSERT_TRUE(hasTheRightValue(Assume, I->getOperand(1),
167 ASSERT_TRUE(hasTheRightValue(Assume, I->getOperand(1),
169 ASSERT_TRUE(hasTheRightValue(Assume, I->getOperand(2),
171 ASSERT_TRUE(hasTheRightValue(Assume, I->getOperand(2),
173 ASSERT_TRUE(hasTheRightValue(Assume, I->getOperand(3),
175 ASSERT_TRUE(hasTheRightValue(Assume, I->getOperand(3),
186 auto *Assume = buildAssumeFromInst(I);
187 Assume->insertBefore(I->getIterator());
192 Assume, I->getOperand(0),
194 ASSERT_TRUE(hasMatchesExactlyAttributes(Assume, I->getOperand(1),
196 ASSERT_TRUE(hasMatchesExactlyAttributes(Assume, I->getOperand(2),
198 ASSERT_TRUE(hasMatchesExactlyAttributes(Assume, I->getOperand(3),
200 ASSERT_TRUE(hasTheRightValue(Assume, I->getOperand(0),
202 ASSERT_TRUE(hasTheRightValue(Assume, I->getOperand(0),
209 auto *Assume = buildAssumeFromInst(I);
210 Assume->insertBefore(I->getIterator());
213 ASSERT_TRUE(hasMatchesExactlyAttributes(Assume, New, ""));
214 ASSERT_TRUE(hasMatchesExactlyAttributes(Assume, Old,
217 ASSERT_TRUE(hasMatchesExactlyAttributes(Assume, New,
219 ASSERT_TRUE(hasMatchesExactlyAttributes(Assume, Old, ""));
266 auto *Assume = buildAssumeFromInst(I);
267 Assume->insertBefore(I->getIterator());
270 fillMapFromAssume(*Assume, Map);
278 Map, Assume, {I->getOperand(0), Attribute::Dereferenceable}, {16, 16}));
279 ASSERT_TRUE(MapHasRightValue(Map, Assume, {I->getOperand(0), Attribute::Alignment},
281 ASSERT_TRUE(MapHasRightValue(Map, Assume, {I->getOperand(0), Attribute::Alignment},
291 auto *Assume = buildAssumeFromInst(I);
292 Assume->insertBefore(I->getIterator());
295 fillMapFromAssume(*Assume, Map);
306 Map, Assume, {I->getOperand(0), Attribute::Dereferenceable},
309 Map, Assume, {I->getOperand(0), Attribute::Alignment}, {64, 64}));
314 auto *Assume = buildAssumeFromInst(I);
315 Assume->insertBefore(I->getIterator());
318 fillMapFromAssume(*Assume, Map);
339 auto *Assume = buildAssumeFromInst(I);
340 Assume->insertBefore(I->getIterator());
343 fillMapFromAssume(*Assume, Map);
353 ASSERT_TRUE(MapHasRightValue(Map, Assume, {I->getOperand(0), Attribute::Alignment},
356 Map, Assume, {I->getOperand(0), Attribute::Dereferenceable}, {48, 48}));
358 Map, Assume, {I->getOperand(1), Attribute::Dereferenceable}, {28, 28}));
359 ASSERT_TRUE(MapHasRightValue(Map, Assume, {I->getOperand(1), Attribute::Alignment},
361 ASSERT_TRUE(MapHasRightValue(Map, Assume, {I->getOperand(2), Attribute::Alignment},
364 Map, Assume, {I->getOperand(2), Attribute::Dereferenceable}, {4, 4}));
365 ASSERT_TRUE(MapHasRightValue(Map, Assume, {I->getOperand(3), Attribute::Alignment},
368 Map, Assume, {I->getOperand(3), Attribute::Dereferenceable}, {12, 12}));
376 auto *Assume = buildAssumeFromInst(I);
377 Assume->insertBefore(I->getIterator());
380 fillMapFromAssume(*Assume, Map);
389 fillMapFromAssume(*Assume, Map);
469 auto *Assume = cast<AssumeInst>(CallInst::Create(
471 Assume->insertBefore(F->begin()->begin());
473 fillMapFromAssume(*Assume, Map);
481 MinMax MM = LookupIt->second[Assume];
528 ASSERT_EQ(AR[0].Assume, &*Second);
532 ASSERT_EQ(AR[0].Assume, &*First);
537 ASSERT_EQ(AR[0].Assume, &*First);
539 ASSERT_EQ(AR[1].Assume, &*Second);
541 ASSERT_EQ(AR[2].Assume, &*First);
545 ASSERT_EQ(AR[0].Assume, &*Second);
554 ASSERT_EQ(AR[0].Assume, &*First);
556 ASSERT_EQ(AR[1].Assume, nullptr);
558 ASSERT_EQ(AR[2].Assume, &*First);
563 ASSERT_EQ(AR[0].Assume, &*First);