aboutsummaryrefslogtreecommitdiffstats
path: root/yql/essentials/minikql/comp_nodes/mkql_switch.cpp
diff options
context:
space:
mode:
authorvvvv <vvvv@yandex-team.com>2025-01-14 11:57:29 +0300
committervvvv <vvvv@yandex-team.com>2025-01-14 12:19:19 +0300
commit5593aaf904fb630ebded70fb964bc73b39bc053a (patch)
tree8d52fa90c984c79168da59d5f12a0a13c1d8a61b /yql/essentials/minikql/comp_nodes/mkql_switch.cpp
parentc84f9bf19d66e2e3d96a52f6f2181676ebca8a52 (diff)
downloadydb-5593aaf904fb630ebded70fb964bc73b39bc053a.tar.gz
minikql - llvm16 compatibility (opaque pointers and some other stuff)
commit_hash:c166e0d029d87d2a10e5adfc3acf20a849670881
Diffstat (limited to 'yql/essentials/minikql/comp_nodes/mkql_switch.cpp')
-rw-r--r--yql/essentials/minikql/comp_nodes/mkql_switch.cpp12
1 files changed, 5 insertions, 7 deletions
diff --git a/yql/essentials/minikql/comp_nodes/mkql_switch.cpp b/yql/essentials/minikql/comp_nodes/mkql_switch.cpp
index b13dd029b0..1dab916ca8 100644
--- a/yql/essentials/minikql/comp_nodes/mkql_switch.cpp
+++ b/yql/essentials/minikql/comp_nodes/mkql_switch.cpp
@@ -292,7 +292,6 @@ private:
ctx.Func = cast<Function>(module.getOrInsertFunction(name.c_str(), funcType).getCallee());
DISubprogramAnnotator annotator(ctx, ctx.Func);
-
const auto main = BasicBlock::Create(context, "main", ctx.Func);
ctx.Ctx = &*ctx.Func->arg_begin();
@@ -393,7 +392,7 @@ public:
const auto exit = BasicBlock::Create(context, "exit", ctx.Func);
const auto result = PHINode::Create(valueType, Handlers.size() + 2U, "result", exit);
- BranchInst::Create(make, main, IsInvalid(statePtr, block), block);
+ BranchInst::Create(make, main, IsInvalid(statePtr, block, context), block);
block = make;
const auto ptrType = PointerType::getUnqual(StructType::get(context));
@@ -457,8 +456,8 @@ public:
const auto item = GetNodeValue(Flow, ctx, block);
- const auto finsh = IsFinish(item, block);
- const auto yield = IsYield(item, block);
+ const auto finsh = IsFinish(item, block, context);
+ const auto yield = IsYield(item, block, context);
const auto special = BinaryOperator::CreateOr(finsh, yield, "special", block);
const auto fin = SelectInst::Create(finsh, ConstantInt::get(statusType, static_cast<ui32>(NUdf::EFetchStatus::Finish)), ConstantInt::get(statusType, static_cast<ui32>(NUdf::EFetchStatus::Ok)), "fin", block);
@@ -512,7 +511,7 @@ public:
if (const auto offset = Handlers[i].ResultVariantOffset) {
const auto good = BasicBlock::Create(context, (TString("good_") += ToString(i)).c_str(), ctx.Func);
- BranchInst::Create(next, good, IsSpecial(output, block), block);
+ BranchInst::Create(next, good, IsSpecial(output, block, context), block);
block = good;
const auto unpack = Handlers[i].IsOutputVariant ? GetVariantParts(output, ctx, block) : std::make_pair(ConstantInt::get(indexType, 0), output);
@@ -522,7 +521,7 @@ public:
BranchInst::Create(exit, block);
} else {
result->addIncoming(output, block);
- BranchInst::Create(next, exit, IsSpecial(output, block), block);
+ BranchInst::Create(next, exit, IsSpecial(output, block, context), block);
}
}
@@ -826,7 +825,6 @@ private:
ctx.Func = cast<Function>(module.getOrInsertFunction(name.c_str(), funcType).getCallee());
DISubprogramAnnotator annotator(ctx, ctx.Func);
-
auto args = ctx.Func->arg_begin();