Lines Matching +full:- +full:- +full:user
1 //===- OperationSupportTest.cpp - Operation support unit tests ------------===//
5 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
7 //===----------------------------------------------------------------------===//
25 context->allowUnregisteredDialects(); in createOp()
38 Value operand = useOp->getResult(0); in TEST()
40 // Create a non-resizable operation with one operand. in TEST()
41 Operation *user = createOp(&context, operand); in TEST() local
44 user->setOperands(operand); in TEST()
45 EXPECT_EQ(user->getNumOperands(), 1u); in TEST()
48 user->setOperands(std::nullopt); in TEST()
49 EXPECT_EQ(user->getNumOperands(), 0u); in TEST()
52 user->destroy(); in TEST()
53 useOp->destroy(); in TEST()
62 Value operand = useOp->getResult(0); in TEST()
65 Operation *user = createOp(&context, operand); in TEST() local
68 user->setOperands(operand); in TEST()
69 EXPECT_EQ(user->getNumOperands(), 1u); in TEST()
72 user->setOperands(std::nullopt); in TEST()
73 EXPECT_EQ(user->getNumOperands(), 0u); in TEST()
76 user->setOperands({operand, operand, operand}); in TEST()
77 EXPECT_EQ(user->getNumOperands(), 3u); in TEST()
80 user->destroy(); in TEST()
81 useOp->destroy(); in TEST()
90 Value operand = useOp->getResult(0); in TEST()
93 Operation *user = createOp(&context, operand); in TEST() local
96 user->setOperands(/*start=*/0, /*length=*/1, operand); in TEST()
97 EXPECT_EQ(user->getNumOperands(), 1u); in TEST()
100 user->setOperands(/*start=*/0, /*length=*/1, {operand, operand, operand}); in TEST()
101 EXPECT_EQ(user->getNumOperands(), 3u); in TEST()
104 user->setOperands(/*start=*/1, /*length=*/2, {operand}); in TEST()
105 EXPECT_EQ(user->getNumOperands(), 2u); in TEST()
108 user->setOperands(/*start=*/2, /*length=*/0, {operand}); in TEST()
109 EXPECT_EQ(user->getNumOperands(), 3u); in TEST()
112 user->setOperands(/*start=*/0, /*length=*/3, {}); in TEST()
113 EXPECT_EQ(user->getNumOperands(), 0u); in TEST()
116 user->destroy(); in TEST()
117 useOp->destroy(); in TEST()
126 Value operand = useOp->getResult(0); in TEST()
129 Operation *user = createOp(&context, operand); in TEST() local
132 MutableOperandRange mutableOperands(user); in TEST()
135 EXPECT_EQ(user->getNumOperands(), 1u); in TEST()
140 EXPECT_EQ(user->getNumOperands(), 3u); in TEST()
145 EXPECT_EQ(user->getNumOperands(), 5u); in TEST()
150 EXPECT_EQ(user->getNumOperands(), 0u); in TEST()
153 user->destroy(); in TEST()
154 useOp->destroy(); in TEST()
164 Value operand1 = useOp->getResult(0); in TEST()
165 Value operand2 = useOp->getResult(1); in TEST()
168 Operation *user = in TEST() local
170 BitVector eraseIndices(user->getNumOperands()); in TEST()
173 user->eraseOperands(eraseIndices); in TEST()
174 EXPECT_EQ(user->getNumOperands(), 4u); in TEST()
179 user->eraseOperands(eraseIndices); in TEST()
180 EXPECT_EQ(user->getNumOperands(), 2u); in TEST()
181 EXPECT_EQ(user->getOperand(0), operand1); in TEST()
182 EXPECT_EQ(user->getOperand(1), operand2); in TEST()
185 user->destroy(); in TEST()
186 useOp->destroy(); in TEST()
196 Region ®ion = containerOp->getRegion(0); in TEST()
205 block->push_back(frontOp); in TEST()
206 block->push_back(backOp); in TEST()
212 block->getOperations().insert(backOp->getIterator(), op); in TEST()
213 ASSERT_TRUE(op->isBeforeInBlock(backOp)); in TEST()
215 ASSERT_FALSE(block->verifyOpOrder()); in TEST()
218 containerOp->destroy(); in TEST()
228 ASSERT_STREQ(str.c_str(), "\"foo.bar\"() : () -> ()"); in TEST()
230 op->destroy(); in TEST()
243 EXPECT_EQ(it->getName(), b.getStringAttr("foo")); in TEST()
244 EXPECT_EQ(it->getValue(), b.getStringAttr("bar")); in TEST()
246 EXPECT_EQ(it->getName(), b.getStringAttr("baz")); in TEST()
247 EXPECT_EQ(it->getValue(), b.getStringAttr("boo")); in TEST()
267 EXPECT_EQ(it->getName(), b.getStringAttr("foo")); in TEST()
268 EXPECT_EQ(it->getValue(), b.getStringAttr("f")); in TEST()
270 EXPECT_EQ(it->getName(), b.getStringAttr("zoo")); in TEST()
271 EXPECT_EQ(it->getValue(), b.getStringAttr("z")); in TEST()
289 auto opt = op->getInherentAttr("default_valued_attr"); in TEST()
292 op->destroy(); in TEST()
302 op2->setLoc(NameLoc::get(StringAttr::get(&context, "foo"))); in TEST()
312 op1->destroy(); in TEST()
313 op2->destroy(); in TEST()