aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authora-romanov <Anton.Romanov@ydb.tech>2023-10-31 20:40:50 +0300
committera-romanov <Anton.Romanov@ydb.tech>2023-10-31 20:58:30 +0300
commite58fc64669db6ff8edee0b399d7501d4c83d14cb (patch)
tree12d87fba7a2135d1b16974a4a983f935d6348266
parent3adcbab0b4fbceed6da953627363fb6b5c6f287e (diff)
downloadydb-e58fc64669db6ff8edee0b399d7501d4c83d14cb.tar.gz
YQL-17048 Try to simplify generated llvm.
-rw-r--r--ydb/library/yql/minikql/comp_nodes/mkql_block_top.cpp9
1 files changed, 5 insertions, 4 deletions
diff --git a/ydb/library/yql/minikql/comp_nodes/mkql_block_top.cpp b/ydb/library/yql/minikql/comp_nodes/mkql_block_top.cpp
index 56928ea6ac3..50e787272ed 100644
--- a/ydb/library/yql/minikql/comp_nodes/mkql_block_top.cpp
+++ b/ydb/library/yql/minikql/comp_nodes/mkql_block_top.cpp
@@ -175,10 +175,6 @@ public:
block = read;
- const auto valuesPtr = GetElementPtrInst::CreateInBounds(stateType, stateArg, { stateFields.This(), stateFields.GetPointer() }, "values_ptr", block);
- const auto values = new LoadInst(ptrValuesType, valuesPtr, "values", block);
- SafeUnRefUnboxed(values, ctx, block);
-
const auto getres = GetNodeValues(Flow_, ctx, block);
result->addIncoming(ConstantInt::get(statusType, static_cast<i32>(EFetchResult::Yield)), block);
@@ -189,6 +185,8 @@ public:
block = good;
+ const auto valuesPtr = GetElementPtrInst::CreateInBounds(stateType, stateArg, { stateFields.This(), stateFields.GetPointer() }, "values_ptr", block);
+ const auto values = new LoadInst(ptrValuesType, valuesPtr, "values", block);
Value* array = UndefValue::get(arrayType);
for (auto idx = 0U; idx < getres.second.size(); ++idx) {
const auto value = getres.second[idx](ctx, block);
@@ -352,6 +350,7 @@ private:
}
OutputLength_ += blockLen;
+ Values.assign(Values.size(), NUdf::TUnboxedValuePod());
return;
}
@@ -381,6 +380,8 @@ private:
if (BuilderLength_ + Count_ > BuilderMaxLength_) {
CompressBuilders(false);
}
+
+ Values.assign(Values.size(), NUdf::TUnboxedValuePod());
}
ui64 GetStorageLength() const {