summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--ydb/core/actorlib_impl/ut/ya.make2
-rw-r--r--ydb/core/base/ut_board_subscriber/ya.make2
-rw-r--r--ydb/core/blobstorage/ut_blobstorage/lib/ya.make2
-rw-r--r--ydb/core/client/metadata/ut/ya.make2
-rw-r--r--ydb/core/driver_lib/run/ya.make2
-rw-r--r--ydb/core/fq/libs/checkpointing/ut/ya.make2
-rw-r--r--ydb/core/kqp/runtime/ut/ya.make2
-rw-r--r--ydb/core/kqp/runtime/ya.make2
-rw-r--r--ydb/core/mind/bscontroller/ut_selfheal/ya.make2
-rw-r--r--ydb/core/testlib/basics/ya.make2
-rw-r--r--ydb/core/testlib/ya.make2
-rw-r--r--ydb/core/tx/columnshard/splitter/ut/ya.make2
-rw-r--r--ydb/core/tx/scheme_board/ut_monitoring/ya.make2
-rw-r--r--ydb/core/tx/scheme_board/ut_replica/ya.make2
-rw-r--r--ydb/core/tx/scheme_board/ut_subscriber/ya.make2
-rw-r--r--ydb/core/wrappers/ut/ya.make2
-rw-r--r--ydb/library/binary_json/ut/ya.make2
-rw-r--r--ydb/library/mkql_proto/ut/helpers/ya.make2
-rw-r--r--ydb/library/yql/core/arrow_kernels/registry/ut/ya.make2
-rw-r--r--ydb/library/yql/core/extract_predicate/ut/ya.make6
-rw-r--r--ydb/library/yql/core/ut/ya.make6
-rw-r--r--ydb/library/yql/minikql/arrow/ut/ya.make2
-rw-r--r--ydb/library/yql/minikql/dom/ut/ya.make2
-rw-r--r--ydb/library/yql/minikql/jsonpath/benchmark/ya.make2
-rw-r--r--ydb/library/yql/minikql/jsonpath/ut/ya.make4
-rw-r--r--ydb/library/yql/minikql/perf/block_groupby/ya.make2
-rw-r--r--ydb/library/yql/minikql/perf/mt_param/ya.make2
-rw-r--r--ydb/library/yql/minikql/perf/packer/ya.make2
-rw-r--r--ydb/library/yql/minikql/perf/param/ya.make2
-rw-r--r--ydb/library/yql/minikql/perf/presort/ya.make2
-rw-r--r--ydb/library/yql/minikql/ut/ya.make2
-rw-r--r--ydb/library/yql/parser/pg_catalog/ut/ya.make2
-rw-r--r--ydb/library/yql/parser/pg_wrapper/ut/ya.make4
-rw-r--r--ydb/library/yql/providers/dq/global_worker_manager/ut/ya.make4
-rw-r--r--ydb/library/yql/providers/generic/provider/ut/pushdown/ya.make2
-rw-r--r--ydb/library/yql/providers/yt/codec/codegen/ut/ya.make2
-rw-r--r--ydb/library/yql/providers/yt/codec/codegen/ya.make4
-rw-r--r--ydb/library/yql/providers/yt/codec/ut/ya.make2
-rw-r--r--ydb/library/yql/providers/yt/comp_nodes/dq/ya.make2
-rw-r--r--ydb/library/yql/providers/yt/comp_nodes/llvm/ya.make2
-rw-r--r--ydb/library/yql/providers/yt/comp_nodes/ut/ya.make2
-rw-r--r--ydb/library/yql/providers/yt/gateway/native/ut/ya.make6
-rw-r--r--ydb/library/yql/providers/yt/provider/ut/ya.make6
-rw-r--r--ydb/library/yql/public/embedded/ya.make8
-rw-r--r--ydb/library/yql/public/purecalc/common/ya.make6
-rw-r--r--ydb/library/yql/tools/dq/service_node/ya.make4
-rw-r--r--ydb/library/yql/tools/dq/worker_node/ya.make4
-rw-r--r--ydb/library/yql/tools/dqrun/ya.make6
-rw-r--r--ydb/library/yql/tools/mrjob/ya.make8
-rw-r--r--ydb/library/yql/tools/pgrun/ya.make4
-rw-r--r--ydb/library/yql/tools/yqlrun/ya.make4
-rw-r--r--ydb/library/yql/udfs/common/stat/ut/ya.make2
-rw-r--r--ydb/library/yql/udfs/common/topfreq/ut/ya.make2
-rw-r--r--ydb/library/yql/utils/actors/ut/ya.make2
-rw-r--r--ydb/library/yql/utils/backtrace/fake_llvm_symbolizer/CMakeLists.darwin-arm64.txt18
-rw-r--r--ydb/library/yql/utils/backtrace/fake_llvm_symbolizer/CMakeLists.darwin-x86_64.txt18
-rw-r--r--ydb/library/yql/utils/backtrace/fake_llvm_symbolizer/CMakeLists.linux-aarch64.txt19
-rw-r--r--ydb/library/yql/utils/backtrace/fake_llvm_symbolizer/CMakeLists.linux-x86_64.txt19
-rw-r--r--ydb/library/yql/utils/backtrace/fake_llvm_symbolizer/CMakeLists.txt19
-rw-r--r--ydb/library/yql/utils/backtrace/fake_llvm_symbolizer/CMakeLists.windows-x86_64.txt18
-rw-r--r--ydb/library/yql/utils/backtrace/fake_llvm_symbolizer/fake_llvm_symbolizer.cpp500
-rw-r--r--ydb/library/yql/utils/backtrace/fake_llvm_symbolizer/fake_llvm_symbolizer.h11
-rw-r--r--ydb/library/yql/utils/backtrace/fake_llvm_symbolizer/ya.make11
-rw-r--r--ydb/library/yql/utils/backtrace/symbolize.cpp17
-rw-r--r--ydb/library/yql/utils/backtrace/symbolizer_linux.cpp22
-rw-r--r--ydb/library/yql/utils/backtrace/ya.make10
66 files changed, 112 insertions, 730 deletions
diff --git a/ydb/core/actorlib_impl/ut/ya.make b/ydb/core/actorlib_impl/ut/ya.make
index ed9bf44a031..0a89b3e4b6e 100644
--- a/ydb/core/actorlib_impl/ut/ya.make
+++ b/ydb/core/actorlib_impl/ut/ya.make
@@ -19,7 +19,7 @@ PEERDIR(
library/cpp/svnversion
ydb/core/testlib/actors
ydb/core/testlib/basics/default
- ydb/library/yql/minikql/comp_nodes/llvm
+ ydb/library/yql/minikql/comp_nodes/llvm14
)
SRCS(
diff --git a/ydb/core/base/ut_board_subscriber/ya.make b/ydb/core/base/ut_board_subscriber/ya.make
index e10248b15ee..0272379e7b9 100644
--- a/ydb/core/base/ut_board_subscriber/ya.make
+++ b/ydb/core/base/ut_board_subscriber/ya.make
@@ -13,7 +13,7 @@ PEERDIR(
ydb/core/testlib/basics
ydb/core/base
ydb/core/testlib/basics/default
- ydb/library/yql/minikql/comp_nodes/llvm
+ ydb/library/yql/minikql/comp_nodes/llvm14
)
YQL_LAST_ABI_VERSION()
diff --git a/ydb/core/blobstorage/ut_blobstorage/lib/ya.make b/ydb/core/blobstorage/ut_blobstorage/lib/ya.make
index 856eede91ab..0572ce32b6a 100644
--- a/ydb/core/blobstorage/ut_blobstorage/lib/ya.make
+++ b/ydb/core/blobstorage/ut_blobstorage/lib/ya.make
@@ -34,7 +34,7 @@ PEERDIR(
ydb/core/tx/coordinator
ydb/core/tx/scheme_board
ydb/core/util
- ydb/library/yql/minikql/comp_nodes/llvm
+ ydb/library/yql/minikql/comp_nodes/llvm14
ydb/library/yql/public/udf/service/exception_policy
ydb/library/yql/sql/pg_dummy
)
diff --git a/ydb/core/client/metadata/ut/ya.make b/ydb/core/client/metadata/ut/ya.make
index 7569d1f5f99..72f49bb3a1d 100644
--- a/ydb/core/client/metadata/ut/ya.make
+++ b/ydb/core/client/metadata/ut/ya.make
@@ -5,7 +5,7 @@ SRCS(
)
PEERDIR(
- ydb/library/yql/minikql/invoke_builtins/llvm
+ ydb/library/yql/minikql/invoke_builtins/llvm14
ydb/library/yql/public/udf/service/stub
ydb/library/yql/sql/pg_dummy
)
diff --git a/ydb/core/driver_lib/run/ya.make b/ydb/core/driver_lib/run/ya.make
index b6025b7c4e2..63b1a7f4cc5 100644
--- a/ydb/core/driver_lib/run/ya.make
+++ b/ydb/core/driver_lib/run/ya.make
@@ -133,7 +133,7 @@ PEERDIR(
ydb/library/folder_service/proto
ydb/library/pdisk_io
ydb/library/security
- ydb/library/yql/minikql/comp_nodes/llvm
+ ydb/library/yql/minikql/comp_nodes/llvm14
ydb/library/yql/providers/pq/cm_client
ydb/library/yql/public/udf/service/exception_policy
ydb/public/lib/base
diff --git a/ydb/core/fq/libs/checkpointing/ut/ya.make b/ydb/core/fq/libs/checkpointing/ut/ya.make
index db3fa55800b..d0e7cc3bbaf 100644
--- a/ydb/core/fq/libs/checkpointing/ut/ya.make
+++ b/ydb/core/fq/libs/checkpointing/ut/ya.make
@@ -9,7 +9,7 @@ PEERDIR(
ydb/core/fq/libs/checkpointing
ydb/core/testlib/actors
ydb/core/testlib/basics/default
- ydb/library/yql/minikql/comp_nodes/llvm
+ ydb/library/yql/minikql/comp_nodes/llvm14
)
SIZE(MEDIUM)
diff --git a/ydb/core/kqp/runtime/ut/ya.make b/ydb/core/kqp/runtime/ut/ya.make
index 789b269a29e..71ed82a91c0 100644
--- a/ydb/core/kqp/runtime/ut/ya.make
+++ b/ydb/core/kqp/runtime/ut/ya.make
@@ -14,7 +14,7 @@ YQL_LAST_ABI_VERSION()
PEERDIR(
library/cpp/testing/unittest
ydb/core/testlib/basics/default
- ydb/library/yql/minikql/comp_nodes/llvm
+ ydb/library/yql/minikql/comp_nodes/llvm14
ydb/library/yql/public/udf/service/exception_policy
)
diff --git a/ydb/core/kqp/runtime/ya.make b/ydb/core/kqp/runtime/ya.make
index c7e0494593f..0d702dc0977 100644
--- a/ydb/core/kqp/runtime/ya.make
+++ b/ydb/core/kqp/runtime/ya.make
@@ -34,7 +34,7 @@ PEERDIR(
ydb/core/protos
ydb/core/scheme
ydb/core/ydb_convert
- ydb/library/yql/minikql/computation/llvm
+ ydb/library/yql/minikql/computation/llvm14
ydb/library/yql/minikql/comp_nodes
ydb/library/yql/utils
ydb/library/yql/dq/actors/protos
diff --git a/ydb/core/mind/bscontroller/ut_selfheal/ya.make b/ydb/core/mind/bscontroller/ut_selfheal/ya.make
index ddd713f95fa..c3b4ba28571 100644
--- a/ydb/core/mind/bscontroller/ut_selfheal/ya.make
+++ b/ydb/core/mind/bscontroller/ut_selfheal/ya.make
@@ -20,7 +20,7 @@ PEERDIR(
ydb/core/blobstorage/pdisk/mock
ydb/core/mind/bscontroller
ydb/core/tx/scheme_board
- ydb/library/yql/minikql/comp_nodes/llvm
+ ydb/library/yql/minikql/comp_nodes/llvm14
ydb/library/yql/public/udf/service/stub
ydb/library/yql/sql/pg_dummy
)
diff --git a/ydb/core/testlib/basics/ya.make b/ydb/core/testlib/basics/ya.make
index 21783e66fee..8d0f9802a9b 100644
--- a/ydb/core/testlib/basics/ya.make
+++ b/ydb/core/testlib/basics/ya.make
@@ -26,7 +26,7 @@ PEERDIR(
ydb/core/tx/columnshard
ydb/core/tx/scheme_board
ydb/core/util
- ydb/library/yql/minikql/invoke_builtins/llvm
+ ydb/library/yql/minikql/invoke_builtins/llvm14
ydb/library/yql/public/udf/service/exception_policy
)
diff --git a/ydb/core/testlib/ya.make b/ydb/core/testlib/ya.make
index 02a6fa93e41..e7a93b69ae7 100644
--- a/ydb/core/testlib/ya.make
+++ b/ydb/core/testlib/ya.make
@@ -81,7 +81,7 @@ PEERDIR(
ydb/library/mkql_proto/protos
ydb/library/persqueue/topic_parser
ydb/library/security
- ydb/library/yql/minikql/comp_nodes/llvm
+ ydb/library/yql/minikql/comp_nodes/llvm14
ydb/library/yql/public/udf/service/exception_policy
ydb/public/lib/base
ydb/public/lib/deprecated/kicli
diff --git a/ydb/core/tx/columnshard/splitter/ut/ya.make b/ydb/core/tx/columnshard/splitter/ut/ya.make
index 1b18ea3cfae..47c6c964d86 100644
--- a/ydb/core/tx/columnshard/splitter/ut/ya.make
+++ b/ydb/core/tx/columnshard/splitter/ut/ya.make
@@ -17,7 +17,7 @@ PEERDIR(
ydb/core/tx/tx_proxy
ydb/core/tx
ydb/core/mind
- ydb/library/yql/minikql/comp_nodes/llvm
+ ydb/library/yql/minikql/comp_nodes/llvm14
ydb/library/yql/public/udf/service/exception_policy
ydb/library/yql/sql/pg
)
diff --git a/ydb/core/tx/scheme_board/ut_monitoring/ya.make b/ydb/core/tx/scheme_board/ut_monitoring/ya.make
index d729d5b975e..1bc47df915e 100644
--- a/ydb/core/tx/scheme_board/ut_monitoring/ya.make
+++ b/ydb/core/tx/scheme_board/ut_monitoring/ya.make
@@ -10,7 +10,7 @@ PEERDIR(
ydb/library/actors/core
library/cpp/testing/unittest
ydb/core/testlib/basics/default
- ydb/library/yql/minikql/comp_nodes/llvm
+ ydb/library/yql/minikql/comp_nodes/llvm14
)
YQL_LAST_ABI_VERSION()
diff --git a/ydb/core/tx/scheme_board/ut_replica/ya.make b/ydb/core/tx/scheme_board/ut_replica/ya.make
index 7bd917a9b42..c22600adcc2 100644
--- a/ydb/core/tx/scheme_board/ut_replica/ya.make
+++ b/ydb/core/tx/scheme_board/ut_replica/ya.make
@@ -8,7 +8,7 @@ TIMEOUT(600)
PEERDIR(
library/cpp/testing/unittest
- ydb/library/yql/minikql/comp_nodes/llvm
+ ydb/library/yql/minikql/comp_nodes/llvm14
ydb/core/testlib/basics/default
)
diff --git a/ydb/core/tx/scheme_board/ut_subscriber/ya.make b/ydb/core/tx/scheme_board/ut_subscriber/ya.make
index 7116db78f48..89ff7f8d638 100644
--- a/ydb/core/tx/scheme_board/ut_subscriber/ya.make
+++ b/ydb/core/tx/scheme_board/ut_subscriber/ya.make
@@ -10,7 +10,7 @@ PEERDIR(
ydb/library/actors/interconnect
library/cpp/testing/unittest
ydb/core/testlib/basics/default
- ydb/library/yql/minikql/comp_nodes/llvm
+ ydb/library/yql/minikql/comp_nodes/llvm14
)
YQL_LAST_ABI_VERSION()
diff --git a/ydb/core/wrappers/ut/ya.make b/ydb/core/wrappers/ut/ya.make
index 3062866e442..61e02602c88 100644
--- a/ydb/core/wrappers/ut/ya.make
+++ b/ydb/core/wrappers/ut/ya.make
@@ -11,7 +11,7 @@ IF (NOT OS_WINDOWS)
library/cpp/testing/unittest
ydb/core/protos
ydb/core/testlib/basics/default
- ydb/library/yql/minikql/comp_nodes/llvm
+ ydb/library/yql/minikql/comp_nodes/llvm14
ydb/core/wrappers/ut_helpers
)
SRCS(
diff --git a/ydb/library/binary_json/ut/ya.make b/ydb/library/binary_json/ut/ya.make
index dc7448f93f7..77039711629 100644
--- a/ydb/library/binary_json/ut/ya.make
+++ b/ydb/library/binary_json/ut/ya.make
@@ -22,7 +22,7 @@ ENDIF()
PEERDIR(
ydb/library/binary_json
ydb/library/yql/minikql/dom
- ydb/library/yql/minikql/invoke_builtins/llvm
+ ydb/library/yql/minikql/invoke_builtins/llvm14
ydb/library/yql/public/udf/service/exception_policy
ydb/library/yql/core/issue/protos
ydb/library/yql/sql/pg_dummy
diff --git a/ydb/library/mkql_proto/ut/helpers/ya.make b/ydb/library/mkql_proto/ut/helpers/ya.make
index eadd43cd951..0c7295ae9d8 100644
--- a/ydb/library/mkql_proto/ut/helpers/ya.make
+++ b/ydb/library/mkql_proto/ut/helpers/ya.make
@@ -1,7 +1,7 @@
LIBRARY()
PEERDIR(
- ydb/library/yql/minikql/comp_nodes/llvm
+ ydb/library/yql/minikql/comp_nodes/llvm14
library/cpp/testing/unittest
contrib/libs/protobuf
)
diff --git a/ydb/library/yql/core/arrow_kernels/registry/ut/ya.make b/ydb/library/yql/core/arrow_kernels/registry/ut/ya.make
index ca3853b0bf4..ce69a7bac9c 100644
--- a/ydb/library/yql/core/arrow_kernels/registry/ut/ya.make
+++ b/ydb/library/yql/core/arrow_kernels/registry/ut/ya.make
@@ -14,7 +14,7 @@ PEERDIR(
ydb/library/yql/public/udf
ydb/library/yql/public/udf/service/exception_policy
ydb/library/yql/sql/pg_dummy
- ydb/library/yql/minikql/comp_nodes/llvm
+ ydb/library/yql/minikql/comp_nodes/llvm14
ydb/library/yql/udfs/common/url_base
ydb/library/yql/udfs/common/json2
)
diff --git a/ydb/library/yql/core/extract_predicate/ut/ya.make b/ydb/library/yql/core/extract_predicate/ut/ya.make
index 05f327ea789..bced29996e5 100644
--- a/ydb/library/yql/core/extract_predicate/ut/ya.make
+++ b/ydb/library/yql/core/extract_predicate/ut/ya.make
@@ -19,9 +19,9 @@ PEERDIR(
ydb/library/yql/providers/yt/gateway/file
ydb/library/yql/providers/yt/provider
ydb/library/yql/providers/yt/codec/codegen
- ydb/library/yql/providers/yt/comp_nodes/llvm
- ydb/library/yql/minikql/comp_nodes/llvm
- ydb/library/yql/minikql/invoke_builtins/llvm
+ ydb/library/yql/providers/yt/comp_nodes/llvm14
+ ydb/library/yql/minikql/comp_nodes/llvm14
+ ydb/library/yql/minikql/invoke_builtins/llvm14
ydb/library/yql/sql/pg
)
diff --git a/ydb/library/yql/core/ut/ya.make b/ydb/library/yql/core/ut/ya.make
index 51e01803bf7..30c21f8e6c1 100644
--- a/ydb/library/yql/core/ut/ya.make
+++ b/ydb/library/yql/core/ut/ya.make
@@ -29,9 +29,9 @@ PEERDIR(
ydb/library/yql/providers/yt/gateway/file
ydb/library/yql/providers/yt/provider
ydb/library/yql/providers/yt/codec/codegen
- ydb/library/yql/providers/yt/comp_nodes/llvm
- ydb/library/yql/minikql/comp_nodes/llvm
- ydb/library/yql/minikql/invoke_builtins/llvm
+ ydb/library/yql/providers/yt/comp_nodes/llvm14
+ ydb/library/yql/minikql/comp_nodes/llvm14
+ ydb/library/yql/minikql/invoke_builtins/llvm14
ydb/library/yql/sql/pg
)
diff --git a/ydb/library/yql/minikql/arrow/ut/ya.make b/ydb/library/yql/minikql/arrow/ut/ya.make
index c79440694bd..585d1f8fca4 100644
--- a/ydb/library/yql/minikql/arrow/ut/ya.make
+++ b/ydb/library/yql/minikql/arrow/ut/ya.make
@@ -11,7 +11,7 @@ PEERDIR(
ydb/library/yql/public/udf
ydb/library/yql/public/udf/service/exception_policy
ydb/library/yql/sql/pg_dummy
- ydb/library/yql/minikql/invoke_builtins/llvm
+ ydb/library/yql/minikql/invoke_builtins/llvm14
)
YQL_LAST_ABI_VERSION()
diff --git a/ydb/library/yql/minikql/dom/ut/ya.make b/ydb/library/yql/minikql/dom/ut/ya.make
index a84e23736a1..ece0f6c4eff 100644
--- a/ydb/library/yql/minikql/dom/ut/ya.make
+++ b/ydb/library/yql/minikql/dom/ut/ya.make
@@ -9,7 +9,7 @@ IF (NOT WINDOWS)
SIZE(MEDIUM)
PEERDIR(
- ydb/library/yql/minikql/computation/llvm
+ ydb/library/yql/minikql/computation/llvm14
ydb/library/yql/public/udf/service/exception_policy
ydb/library/yql/sql/pg_dummy
)
diff --git a/ydb/library/yql/minikql/jsonpath/benchmark/ya.make b/ydb/library/yql/minikql/jsonpath/benchmark/ya.make
index 86fd98411e6..85fb6181d29 100644
--- a/ydb/library/yql/minikql/jsonpath/benchmark/ya.make
+++ b/ydb/library/yql/minikql/jsonpath/benchmark/ya.make
@@ -3,7 +3,7 @@ Y_BENCHMARK(jsonpath-benchmark)
PEERDIR(
library/cpp/json
ydb/library/yql/minikql/dom
- ydb/library/yql/minikql/invoke_builtins/llvm
+ ydb/library/yql/minikql/invoke_builtins/llvm14
ydb/library/yql/minikql/jsonpath
ydb/library/yql/public/issue
ydb/library/yql/public/udf/service/exception_policy
diff --git a/ydb/library/yql/minikql/jsonpath/ut/ya.make b/ydb/library/yql/minikql/jsonpath/ut/ya.make
index b70b7a77af1..8e1a8a81db3 100644
--- a/ydb/library/yql/minikql/jsonpath/ut/ya.make
+++ b/ydb/library/yql/minikql/jsonpath/ut/ya.make
@@ -15,9 +15,9 @@ PEERDIR(
library/cpp/json
ydb/library/binary_json
ydb/library/yql/minikql
- ydb/library/yql/minikql/computation/llvm
+ ydb/library/yql/minikql/computation/llvm14
ydb/library/yql/minikql/dom
- ydb/library/yql/minikql/invoke_builtins/llvm
+ ydb/library/yql/minikql/invoke_builtins/llvm14
ydb/library/yql/public/udf/service/exception_policy
ydb/library/yql/core/issue/protos
ydb/library/yql/sql/pg_dummy
diff --git a/ydb/library/yql/minikql/perf/block_groupby/ya.make b/ydb/library/yql/minikql/perf/block_groupby/ya.make
index 29e7fd95ca1..5c98e584f26 100644
--- a/ydb/library/yql/minikql/perf/block_groupby/ya.make
+++ b/ydb/library/yql/minikql/perf/block_groupby/ya.make
@@ -3,7 +3,7 @@ PROGRAM()
PEERDIR(
contrib/libs/apache/arrow
ydb/library/yql/minikql/arrow
- ydb/library/yql/minikql/comp_nodes/llvm
+ ydb/library/yql/minikql/comp_nodes/llvm14
ydb/library/yql/public/udf
ydb/library/yql/public/udf/service/exception_policy
ydb/library/yql/sql/pg_dummy
diff --git a/ydb/library/yql/minikql/perf/mt_param/ya.make b/ydb/library/yql/minikql/perf/mt_param/ya.make
index 1382264456c..675a8d86b40 100644
--- a/ydb/library/yql/minikql/perf/mt_param/ya.make
+++ b/ydb/library/yql/minikql/perf/mt_param/ya.make
@@ -1,7 +1,7 @@
PROGRAM()
PEERDIR(
- ydb/library/yql/minikql/comp_nodes/llvm
+ ydb/library/yql/minikql/comp_nodes/llvm14
ydb/library/yql/public/udf
ydb/library/yql/public/udf/service/exception_policy
ydb/library/yql/sql/pg_dummy
diff --git a/ydb/library/yql/minikql/perf/packer/ya.make b/ydb/library/yql/minikql/perf/packer/ya.make
index d71d307991b..62cfa8e19f3 100644
--- a/ydb/library/yql/minikql/perf/packer/ya.make
+++ b/ydb/library/yql/minikql/perf/packer/ya.make
@@ -3,7 +3,7 @@ PROGRAM()
ALLOCATOR(J)
PEERDIR(
- ydb/library/yql/minikql/comp_nodes/llvm
+ ydb/library/yql/minikql/comp_nodes/llvm14
ydb/library/yql/public/udf
ydb/library/yql/public/udf/service/exception_policy
ydb/library/yql/sql/pg_dummy
diff --git a/ydb/library/yql/minikql/perf/param/ya.make b/ydb/library/yql/minikql/perf/param/ya.make
index 64bc4fefddb..38a597f28d5 100644
--- a/ydb/library/yql/minikql/perf/param/ya.make
+++ b/ydb/library/yql/minikql/perf/param/ya.make
@@ -1,7 +1,7 @@
PROGRAM()
PEERDIR(
- ydb/library/yql/minikql/comp_nodes/llvm
+ ydb/library/yql/minikql/comp_nodes/llvm14
ydb/library/yql/public/udf
ydb/library/yql/public/udf/service/exception_policy
ydb/library/yql/sql/pg_dummy
diff --git a/ydb/library/yql/minikql/perf/presort/ya.make b/ydb/library/yql/minikql/perf/presort/ya.make
index d77793c8852..12df3672279 100644
--- a/ydb/library/yql/minikql/perf/presort/ya.make
+++ b/ydb/library/yql/minikql/perf/presort/ya.make
@@ -2,7 +2,7 @@ PROGRAM()
PEERDIR(
library/cpp/presort
- ydb/library/yql/minikql/invoke_builtins/llvm
+ ydb/library/yql/minikql/invoke_builtins/llvm14
ydb/library/yql/public/udf
ydb/library/yql/public/udf/service/exception_policy
ydb/library/yql/sql/pg_dummy
diff --git a/ydb/library/yql/minikql/ut/ya.make b/ydb/library/yql/minikql/ut/ya.make
index 8a892683fea..c18e60d5e81 100644
--- a/ydb/library/yql/minikql/ut/ya.make
+++ b/ydb/library/yql/minikql/ut/ya.make
@@ -30,7 +30,7 @@ SRCS(
PEERDIR(
contrib/libs/apache/arrow
- ydb/library/yql/minikql/invoke_builtins/llvm
+ ydb/library/yql/minikql/invoke_builtins/llvm14
ydb/library/yql/parser/pg_wrapper
ydb/library/yql/public/udf/service/exception_policy
)
diff --git a/ydb/library/yql/parser/pg_catalog/ut/ya.make b/ydb/library/yql/parser/pg_catalog/ut/ya.make
index 52553031911..748f6e68e5c 100644
--- a/ydb/library/yql/parser/pg_catalog/ut/ya.make
+++ b/ydb/library/yql/parser/pg_catalog/ut/ya.make
@@ -12,7 +12,7 @@ ADDINCL(
PEERDIR(
ydb/library/yql/public/udf
ydb/library/yql/public/udf/service/exception_policy
- ydb/library/yql/minikql/comp_nodes/llvm
+ ydb/library/yql/minikql/comp_nodes/llvm14
ydb/library/yql/parser/pg_wrapper
)
diff --git a/ydb/library/yql/parser/pg_wrapper/ut/ya.make b/ydb/library/yql/parser/pg_wrapper/ut/ya.make
index 848e33acfdf..4622939e6bf 100644
--- a/ydb/library/yql/parser/pg_wrapper/ut/ya.make
+++ b/ydb/library/yql/parser/pg_wrapper/ut/ya.make
@@ -26,9 +26,9 @@ PEERDIR(
ydb/library/yql/minikql/arrow
ydb/library/yql/public/udf
ydb/library/yql/public/udf/service/exception_policy
- ydb/library/yql/minikql/comp_nodes/llvm
+ ydb/library/yql/minikql/comp_nodes/llvm14
ydb/library/yql/parser/pg_catalog
- ydb/library/yql/minikql/codegen/llvm
+ ydb/library/yql/minikql/codegen/llvm14
library/cpp/resource
)
diff --git a/ydb/library/yql/providers/dq/global_worker_manager/ut/ya.make b/ydb/library/yql/providers/dq/global_worker_manager/ut/ya.make
index 24caf872876..b1ae373296d 100644
--- a/ydb/library/yql/providers/dq/global_worker_manager/ut/ya.make
+++ b/ydb/library/yql/providers/dq/global_worker_manager/ut/ya.make
@@ -11,8 +11,8 @@ PEERDIR(
ydb/library/yql/providers/dq/actors/yt
ydb/library/yql/providers/dq/actors
ydb/library/yql/dq/actors/compute
- ydb/library/yql/minikql/computation/llvm
- ydb/library/yql/minikql/comp_nodes/llvm
+ ydb/library/yql/minikql/computation/llvm14
+ ydb/library/yql/minikql/comp_nodes/llvm14
)
SRCS(
diff --git a/ydb/library/yql/providers/generic/provider/ut/pushdown/ya.make b/ydb/library/yql/providers/generic/provider/ut/pushdown/ya.make
index e82d1e399c0..89fccf1534e 100644
--- a/ydb/library/yql/providers/generic/provider/ut/pushdown/ya.make
+++ b/ydb/library/yql/providers/generic/provider/ut/pushdown/ya.make
@@ -17,7 +17,7 @@ PEERDIR(
ydb/library/yql/providers/result/provider
ydb/library/yql/public/udf/service/stub
ydb/library/yql/sql
- ydb/library/yql/minikql/invoke_builtins/llvm
+ ydb/library/yql/minikql/invoke_builtins/llvm14
ydb/library/yql/sql/pg_dummy
)
diff --git a/ydb/library/yql/providers/yt/codec/codegen/ut/ya.make b/ydb/library/yql/providers/yt/codec/codegen/ut/ya.make
index 482864a78c7..57a70021b11 100644
--- a/ydb/library/yql/providers/yt/codec/codegen/ut/ya.make
+++ b/ydb/library/yql/providers/yt/codec/codegen/ut/ya.make
@@ -12,7 +12,7 @@ ENDIF()
PEERDIR(
- ydb/library/yql/minikql/computation/llvm
+ ydb/library/yql/minikql/computation/llvm14
ydb/library/yql/public/udf/service/exception_policy
ydb/library/yql/sql
ydb/library/yql/sql/pg_dummy
diff --git a/ydb/library/yql/providers/yt/codec/codegen/ya.make b/ydb/library/yql/providers/yt/codec/codegen/ya.make
index c915d0f1caf..b7d53a36922 100644
--- a/ydb/library/yql/providers/yt/codec/codegen/ya.make
+++ b/ydb/library/yql/providers/yt/codec/codegen/ya.make
@@ -8,14 +8,14 @@ SRCS(
PEERDIR(
library/cpp/resource
ydb/library/binary_json
- ydb/library/yql/minikql/computation/llvm
+ ydb/library/yql/minikql/computation/llvm14
ydb/library/yql/parser/pg_wrapper/interface
ydb/library/yql/utils
)
IF (NOT MKQL_DISABLE_CODEGEN)
PEERDIR(
- ydb/library/yql/minikql/codegen/llvm
+ ydb/library/yql/minikql/codegen/llvm14
)
LLVM_BC(
yt_codec_bc.cpp
diff --git a/ydb/library/yql/providers/yt/codec/ut/ya.make b/ydb/library/yql/providers/yt/codec/ut/ya.make
index 11ce1a9c49d..dc5cc4dd655 100644
--- a/ydb/library/yql/providers/yt/codec/ut/ya.make
+++ b/ydb/library/yql/providers/yt/codec/ut/ya.make
@@ -6,7 +6,7 @@ SRCS(
PEERDIR(
library/cpp/yson/node
- ydb/library/yql/minikql/computation/llvm
+ ydb/library/yql/minikql/computation/llvm14
ydb/library/yql/public/udf/service/exception_policy
ydb/library/yql/sql
ydb/library/yql/sql/pg_dummy
diff --git a/ydb/library/yql/providers/yt/comp_nodes/dq/ya.make b/ydb/library/yql/providers/yt/comp_nodes/dq/ya.make
index 7bdc790740a..fb431b1fb2f 100644
--- a/ydb/library/yql/providers/yt/comp_nodes/dq/ya.make
+++ b/ydb/library/yql/providers/yt/comp_nodes/dq/ya.make
@@ -2,7 +2,7 @@ LIBRARY()
PEERDIR(
ydb/library/yql/minikql
- ydb/library/yql/minikql/computation/llvm
+ ydb/library/yql/minikql/computation/llvm14
ydb/library/yql/providers/yt/comp_nodes
ydb/library/yql/providers/yt/codec
ydb/library/yql/providers/common/codec
diff --git a/ydb/library/yql/providers/yt/comp_nodes/llvm/ya.make b/ydb/library/yql/providers/yt/comp_nodes/llvm/ya.make
index 69fcd4370d8..d5b691957c8 100644
--- a/ydb/library/yql/providers/yt/comp_nodes/llvm/ya.make
+++ b/ydb/library/yql/providers/yt/comp_nodes/llvm/ya.make
@@ -9,7 +9,7 @@ NO_COMPILER_WARNINGS()
PEERDIR(
ydb/library/yql/minikql/codegen/llvm
- ydb/library/yql/minikql/invoke_builtins/llvm
+ ydb/library/yql/minikql/invoke_builtins/llvm14
contrib/libs/llvm12/lib/IR
contrib/libs/llvm12/lib/ExecutionEngine/MCJIT
contrib/libs/llvm12/lib/Linker
diff --git a/ydb/library/yql/providers/yt/comp_nodes/ut/ya.make b/ydb/library/yql/providers/yt/comp_nodes/ut/ya.make
index f3adf8f6276..97a615f63bb 100644
--- a/ydb/library/yql/providers/yt/comp_nodes/ut/ya.make
+++ b/ydb/library/yql/providers/yt/comp_nodes/ut/ya.make
@@ -18,7 +18,7 @@ SRCS(
PEERDIR(
library/cpp/random_provider
library/cpp/time_provider
- ydb/library/yql/minikql/comp_nodes/llvm
+ ydb/library/yql/minikql/comp_nodes/llvm14
ydb/library/yql/public/udf/service/exception_policy
ydb/library/yql/providers/yt/comp_nodes
ydb/library/yql/sql/pg_dummy
diff --git a/ydb/library/yql/providers/yt/gateway/native/ut/ya.make b/ydb/library/yql/providers/yt/gateway/native/ut/ya.make
index b0c48624f09..632964c3a45 100644
--- a/ydb/library/yql/providers/yt/gateway/native/ut/ya.make
+++ b/ydb/library/yql/providers/yt/gateway/native/ut/ya.make
@@ -8,14 +8,14 @@ PEERDIR(
ydb/library/yql/providers/yt/gateway/native
ydb/library/yql/providers/yt/gateway/file
ydb/library/yql/providers/yt/codec/codegen
- ydb/library/yql/providers/yt/comp_nodes/llvm
+ ydb/library/yql/providers/yt/comp_nodes/llvm14
ydb/library/yql/core/ut_common
library/cpp/testing/mock_server
library/cpp/testing/common
ydb/library/yql/public/udf/service/terminate_policy
ydb/library/yql/sql/pg
- ydb/library/yql/minikql/comp_nodes/llvm
- ydb/library/yql/minikql/invoke_builtins/llvm
+ ydb/library/yql/minikql/comp_nodes/llvm14
+ ydb/library/yql/minikql/invoke_builtins/llvm14
)
YQL_LAST_ABI_VERSION()
diff --git a/ydb/library/yql/providers/yt/provider/ut/ya.make b/ydb/library/yql/providers/yt/provider/ut/ya.make
index 2fc6b06cbcd..d145d947cd3 100644
--- a/ydb/library/yql/providers/yt/provider/ut/ya.make
+++ b/ydb/library/yql/providers/yt/provider/ut/ya.make
@@ -13,7 +13,7 @@ PEERDIR(
ydb/library/yql/providers/yt/provider
ydb/library/yql/providers/yt/gateway/file
ydb/library/yql/providers/yt/codec/codegen
- ydb/library/yql/providers/yt/comp_nodes/llvm
+ ydb/library/yql/providers/yt/comp_nodes/llvm14
ydb/library/yql/core/ut_common
ydb/library/yql/ast
ydb/library/yql/public/udf/service/terminate_policy
@@ -27,8 +27,8 @@ PEERDIR(
ydb/library/yql/providers/dq/provider
ydb/library/yql/providers/result/provider
ydb/library/yql/sql/v1
- ydb/library/yql/minikql/invoke_builtins/llvm
- ydb/library/yql/minikql/comp_nodes/llvm
+ ydb/library/yql/minikql/invoke_builtins/llvm14
+ ydb/library/yql/minikql/comp_nodes/llvm14
ydb/library/yql/sql/pg
)
diff --git a/ydb/library/yql/public/embedded/ya.make b/ydb/library/yql/public/embedded/ya.make
index 321aecc090f..042278d8166 100644
--- a/ydb/library/yql/public/embedded/ya.make
+++ b/ydb/library/yql/public/embedded/ya.make
@@ -22,9 +22,9 @@ PEERDIR(
ydb/library/yql/core/services/mounts
ydb/library/yql/core/user_data
ydb/library/yql/minikql
- ydb/library/yql/minikql/invoke_builtins/llvm
- ydb/library/yql/minikql/comp_nodes/llvm
- ydb/library/yql/minikql/computation/llvm
+ ydb/library/yql/minikql/invoke_builtins/llvm14
+ ydb/library/yql/minikql/comp_nodes/llvm14
+ ydb/library/yql/minikql/computation/llvm14
ydb/library/yql/protos
ydb/library/yql/public/udf/service/exception_policy
ydb/library/yql/utils/backtrace
@@ -40,7 +40,7 @@ PEERDIR(
ydb/library/yql/providers/yt/lib/yt_url_lister
ydb/library/yql/providers/yt/provider
ydb/library/yql/providers/yt/codec/codegen
- ydb/library/yql/providers/yt/comp_nodes/llvm
+ ydb/library/yql/providers/yt/comp_nodes/llvm14
)
YQL_LAST_ABI_VERSION()
diff --git a/ydb/library/yql/public/purecalc/common/ya.make b/ydb/library/yql/public/purecalc/common/ya.make
index 091b58754f6..8baa2cfd504 100644
--- a/ydb/library/yql/public/purecalc/common/ya.make
+++ b/ydb/library/yql/public/purecalc/common/ya.make
@@ -4,9 +4,9 @@ INCLUDE(ya.make.inc)
PEERDIR(
ydb/library/yql/providers/yt/codec/codegen
- ydb/library/yql/minikql/computation/llvm
- ydb/library/yql/minikql/invoke_builtins/llvm
- ydb/library/yql/minikql/comp_nodes/llvm
+ ydb/library/yql/minikql/computation/llvm14
+ ydb/library/yql/minikql/invoke_builtins/llvm14
+ ydb/library/yql/minikql/comp_nodes/llvm14
)
END()
diff --git a/ydb/library/yql/tools/dq/service_node/ya.make b/ydb/library/yql/tools/dq/service_node/ya.make
index 906e344fde9..8d0bb1beae4 100644
--- a/ydb/library/yql/tools/dq/service_node/ya.make
+++ b/ydb/library/yql/tools/dq/service_node/ya.make
@@ -12,7 +12,7 @@ IF (NOT OS_WINDOWS)
ydb/library/yql/utils/log/proto
ydb/library/yql/providers/dq/provider
ydb/library/yql/providers/dq/worker_manager/interface
- ydb/library/yql/minikql/invoke_builtins/llvm
+ ydb/library/yql/minikql/invoke_builtins/llvm14
ydb/library/yql/utils/backtrace
ydb/library/yql/providers/dq/service
ydb/library/yql/providers/dq/metrics
@@ -20,7 +20,7 @@ IF (NOT OS_WINDOWS)
ydb/library/yql/providers/yt/dq_task_preprocessor
ydb/library/yql/providers/dq/global_worker_manager
ydb/library/yql/providers/dq/actors/yt
- ydb/library/yql/providers/yt/comp_nodes/llvm
+ ydb/library/yql/providers/yt/comp_nodes/llvm14
ydb/library/yql/providers/yt/codec/codegen
yt/yt/client
)
diff --git a/ydb/library/yql/tools/dq/worker_node/ya.make b/ydb/library/yql/tools/dq/worker_node/ya.make
index c8b090f9071..6fbbddbd1b4 100644
--- a/ydb/library/yql/tools/dq/worker_node/ya.make
+++ b/ydb/library/yql/tools/dq/worker_node/ya.make
@@ -10,7 +10,7 @@ IF (NOT OS_WINDOWS)
ydb/library/yql/dq/comp_nodes
ydb/library/yql/dq/integration/transform
ydb/library/yql/dq/transform
- ydb/library/yql/minikql/comp_nodes/llvm
+ ydb/library/yql/minikql/comp_nodes/llvm14
ydb/library/yql/providers/clickhouse/actors
ydb/library/yql/providers/common/comp_nodes
ydb/library/yql/providers/dq/runtime
@@ -30,7 +30,7 @@ IF (NOT OS_WINDOWS)
ydb/library/yql/utils/failure_injector
ydb/library/yql/utils/backtrace
ydb/library/yql/providers/yt/comp_nodes/dq
- ydb/library/yql/providers/yt/comp_nodes/llvm
+ ydb/library/yql/providers/yt/comp_nodes/llvm14
ydb/library/yql/providers/yt/codec/codegen
ydb/library/yql/providers/yt/mkql_dq
ydb/library/yql/providers/dq/actors/yt
diff --git a/ydb/library/yql/tools/dqrun/ya.make b/ydb/library/yql/tools/dqrun/ya.make
index 5643a263eac..34114429b79 100644
--- a/ydb/library/yql/tools/dqrun/ya.make
+++ b/ydb/library/yql/tools/dqrun/ya.make
@@ -36,8 +36,8 @@ ENDIF()
ydb/library/yql/dq/comp_nodes
ydb/library/yql/dq/integration/transform
ydb/library/yql/dq/transform
- ydb/library/yql/minikql/comp_nodes/llvm
- ydb/library/yql/minikql/invoke_builtins/llvm
+ ydb/library/yql/minikql/comp_nodes/llvm14
+ ydb/library/yql/minikql/invoke_builtins/llvm14
ydb/library/yql/providers/clickhouse/actors
ydb/library/yql/providers/clickhouse/provider
ydb/library/yql/providers/common/comp_nodes
@@ -75,7 +75,7 @@ ENDIF()
ydb/library/yql/providers/yt/mkql_dq
ydb/library/yql/providers/yt/provider
ydb/library/yql/providers/yt/codec/codegen
- ydb/library/yql/providers/yt/comp_nodes/llvm
+ ydb/library/yql/providers/yt/comp_nodes/llvm14
ydb/library/yql/providers/yt/lib/yt_download
ydb/library/yql/providers/yt/lib/yt_url_lister
ydb/library/yql/providers/yt/lib/config_clusters
diff --git a/ydb/library/yql/tools/mrjob/ya.make b/ydb/library/yql/tools/mrjob/ya.make
index 8839c6eb16c..7bb71e7cb17 100644
--- a/ydb/library/yql/tools/mrjob/ya.make
+++ b/ydb/library/yql/tools/mrjob/ya.make
@@ -21,10 +21,10 @@ PEERDIR(
ydb/library/yql/sql/pg
ydb/library/yql/providers/yt/job
ydb/library/yql/providers/yt/codec/codegen
- ydb/library/yql/providers/yt/comp_nodes/llvm
- ydb/library/yql/minikql/computation/llvm
- ydb/library/yql/minikql/invoke_builtins/llvm
- ydb/library/yql/minikql/comp_nodes/llvm
+ ydb/library/yql/providers/yt/comp_nodes/llvm14
+ ydb/library/yql/minikql/computation/llvm14
+ ydb/library/yql/minikql/invoke_builtins/llvm14
+ ydb/library/yql/minikql/comp_nodes/llvm14
)
YQL_LAST_ABI_VERSION()
diff --git a/ydb/library/yql/tools/pgrun/ya.make b/ydb/library/yql/tools/pgrun/ya.make
index 43fb6932b39..3c0099fe03f 100644
--- a/ydb/library/yql/tools/pgrun/ya.make
+++ b/ydb/library/yql/tools/pgrun/ya.make
@@ -17,7 +17,7 @@ PEERDIR(
ydb/library/yql/core/file_storage/proto
ydb/library/yql/core/file_storage/http_download
ydb/library/yql/core/services/mounts
- ydb/library/yql/minikql/comp_nodes/llvm
+ ydb/library/yql/minikql/comp_nodes/llvm14
ydb/library/yql/protos
ydb/library/yql/public/udf/service/exception_policy
ydb/library/yql/utils/backtrace
@@ -30,7 +30,7 @@ PEERDIR(
ydb/library/yql/providers/common/udf_resolve
ydb/library/yql/providers/dq/provider
ydb/library/yql/providers/yt/gateway/file
- ydb/library/yql/providers/yt/comp_nodes/llvm
+ ydb/library/yql/providers/yt/comp_nodes/llvm14
ydb/library/yql/providers/yt/codec/codegen
ydb/library/yql/providers/pg/provider
ydb/library/yql/core/url_preprocessing
diff --git a/ydb/library/yql/tools/yqlrun/ya.make b/ydb/library/yql/tools/yqlrun/ya.make
index 1c64983b241..79e46a529fd 100644
--- a/ydb/library/yql/tools/yqlrun/ya.make
+++ b/ydb/library/yql/tools/yqlrun/ya.make
@@ -24,7 +24,7 @@ PEERDIR(
ydb/library/yql/core/file_storage/proto
ydb/library/yql/core/file_storage/http_download
ydb/library/yql/core/services/mounts
- ydb/library/yql/minikql/comp_nodes/llvm
+ ydb/library/yql/minikql/comp_nodes/llvm14
ydb/library/yql/protos
ydb/library/yql/public/udf/service/exception_policy
ydb/library/yql/utils/backtrace
@@ -38,7 +38,7 @@ PEERDIR(
ydb/library/yql/providers/dq/provider
ydb/library/yql/providers/yt/gateway/file
ydb/library/yql/providers/yt/codec/codegen
- ydb/library/yql/providers/yt/comp_nodes/llvm
+ ydb/library/yql/providers/yt/comp_nodes/llvm14
ydb/library/yql/core/url_preprocessing
ydb/library/yql/tools/yqlrun/http
ydb/library/yql/parser/pg_wrapper
diff --git a/ydb/library/yql/udfs/common/stat/ut/ya.make b/ydb/library/yql/udfs/common/stat/ut/ya.make
index d5eebe71e42..28ce2323c24 100644
--- a/ydb/library/yql/udfs/common/stat/ut/ya.make
+++ b/ydb/library/yql/udfs/common/stat/ut/ya.make
@@ -5,7 +5,7 @@ SRCS(
)
PEERDIR(
- ydb/library/yql/minikql/comp_nodes/llvm
+ ydb/library/yql/minikql/comp_nodes/llvm14
ydb/library/yql/public/udf/service/exception_policy
ydb/library/yql/sql/pg_dummy
)
diff --git a/ydb/library/yql/udfs/common/topfreq/ut/ya.make b/ydb/library/yql/udfs/common/topfreq/ut/ya.make
index bb03d3dfd30..7f0a9e9b318 100644
--- a/ydb/library/yql/udfs/common/topfreq/ut/ya.make
+++ b/ydb/library/yql/udfs/common/topfreq/ut/ya.make
@@ -5,7 +5,7 @@ SRCS(
)
PEERDIR(
- ydb/library/yql/minikql/comp_nodes/llvm
+ ydb/library/yql/minikql/comp_nodes/llvm14
ydb/library/yql/public/udf/service/exception_policy
ydb/library/yql/sql/pg_dummy
)
diff --git a/ydb/library/yql/utils/actors/ut/ya.make b/ydb/library/yql/utils/actors/ut/ya.make
index 0a5a4347465..871b777b301 100644
--- a/ydb/library/yql/utils/actors/ut/ya.make
+++ b/ydb/library/yql/utils/actors/ut/ya.make
@@ -9,7 +9,7 @@ IF (OS_LINUX OR OS_DARWIN)
PEERDIR(
ydb/core/testlib/basics/default
- ydb/library/yql/minikql/comp_nodes/llvm
+ ydb/library/yql/minikql/comp_nodes/llvm14
)
END()
diff --git a/ydb/library/yql/utils/backtrace/fake_llvm_symbolizer/CMakeLists.darwin-arm64.txt b/ydb/library/yql/utils/backtrace/fake_llvm_symbolizer/CMakeLists.darwin-arm64.txt
deleted file mode 100644
index 17698b5a8f1..00000000000
--- a/ydb/library/yql/utils/backtrace/fake_llvm_symbolizer/CMakeLists.darwin-arm64.txt
+++ /dev/null
@@ -1,18 +0,0 @@
-
-# This file was generated by the build system used internally in the Yandex monorepo.
-# Only simple modifications are allowed (adding source-files to targets, adding simple properties
-# like target_include_directories). These modifications will be ported to original
-# ya.make files by maintainers. Any complex modifications which can't be ported back to the
-# original buildsystem will not be accepted.
-
-
-
-add_library(utils-backtrace-fake_llvm_symbolizer)
-target_link_libraries(utils-backtrace-fake_llvm_symbolizer PUBLIC
- contrib-libs-cxxsupp
- yutil
- lib-DebugInfo-Symbolize
-)
-target_sources(utils-backtrace-fake_llvm_symbolizer PRIVATE
- ${CMAKE_SOURCE_DIR}/ydb/library/yql/utils/backtrace/fake_llvm_symbolizer/fake_llvm_symbolizer.cpp
-)
diff --git a/ydb/library/yql/utils/backtrace/fake_llvm_symbolizer/CMakeLists.darwin-x86_64.txt b/ydb/library/yql/utils/backtrace/fake_llvm_symbolizer/CMakeLists.darwin-x86_64.txt
deleted file mode 100644
index 17698b5a8f1..00000000000
--- a/ydb/library/yql/utils/backtrace/fake_llvm_symbolizer/CMakeLists.darwin-x86_64.txt
+++ /dev/null
@@ -1,18 +0,0 @@
-
-# This file was generated by the build system used internally in the Yandex monorepo.
-# Only simple modifications are allowed (adding source-files to targets, adding simple properties
-# like target_include_directories). These modifications will be ported to original
-# ya.make files by maintainers. Any complex modifications which can't be ported back to the
-# original buildsystem will not be accepted.
-
-
-
-add_library(utils-backtrace-fake_llvm_symbolizer)
-target_link_libraries(utils-backtrace-fake_llvm_symbolizer PUBLIC
- contrib-libs-cxxsupp
- yutil
- lib-DebugInfo-Symbolize
-)
-target_sources(utils-backtrace-fake_llvm_symbolizer PRIVATE
- ${CMAKE_SOURCE_DIR}/ydb/library/yql/utils/backtrace/fake_llvm_symbolizer/fake_llvm_symbolizer.cpp
-)
diff --git a/ydb/library/yql/utils/backtrace/fake_llvm_symbolizer/CMakeLists.linux-aarch64.txt b/ydb/library/yql/utils/backtrace/fake_llvm_symbolizer/CMakeLists.linux-aarch64.txt
deleted file mode 100644
index 940fe1c6bee..00000000000
--- a/ydb/library/yql/utils/backtrace/fake_llvm_symbolizer/CMakeLists.linux-aarch64.txt
+++ /dev/null
@@ -1,19 +0,0 @@
-
-# This file was generated by the build system used internally in the Yandex monorepo.
-# Only simple modifications are allowed (adding source-files to targets, adding simple properties
-# like target_include_directories). These modifications will be ported to original
-# ya.make files by maintainers. Any complex modifications which can't be ported back to the
-# original buildsystem will not be accepted.
-
-
-
-add_library(utils-backtrace-fake_llvm_symbolizer)
-target_link_libraries(utils-backtrace-fake_llvm_symbolizer PUBLIC
- contrib-libs-linux-headers
- contrib-libs-cxxsupp
- yutil
- lib-DebugInfo-Symbolize
-)
-target_sources(utils-backtrace-fake_llvm_symbolizer PRIVATE
- ${CMAKE_SOURCE_DIR}/ydb/library/yql/utils/backtrace/fake_llvm_symbolizer/fake_llvm_symbolizer.cpp
-)
diff --git a/ydb/library/yql/utils/backtrace/fake_llvm_symbolizer/CMakeLists.linux-x86_64.txt b/ydb/library/yql/utils/backtrace/fake_llvm_symbolizer/CMakeLists.linux-x86_64.txt
deleted file mode 100644
index 940fe1c6bee..00000000000
--- a/ydb/library/yql/utils/backtrace/fake_llvm_symbolizer/CMakeLists.linux-x86_64.txt
+++ /dev/null
@@ -1,19 +0,0 @@
-
-# This file was generated by the build system used internally in the Yandex monorepo.
-# Only simple modifications are allowed (adding source-files to targets, adding simple properties
-# like target_include_directories). These modifications will be ported to original
-# ya.make files by maintainers. Any complex modifications which can't be ported back to the
-# original buildsystem will not be accepted.
-
-
-
-add_library(utils-backtrace-fake_llvm_symbolizer)
-target_link_libraries(utils-backtrace-fake_llvm_symbolizer PUBLIC
- contrib-libs-linux-headers
- contrib-libs-cxxsupp
- yutil
- lib-DebugInfo-Symbolize
-)
-target_sources(utils-backtrace-fake_llvm_symbolizer PRIVATE
- ${CMAKE_SOURCE_DIR}/ydb/library/yql/utils/backtrace/fake_llvm_symbolizer/fake_llvm_symbolizer.cpp
-)
diff --git a/ydb/library/yql/utils/backtrace/fake_llvm_symbolizer/CMakeLists.txt b/ydb/library/yql/utils/backtrace/fake_llvm_symbolizer/CMakeLists.txt
deleted file mode 100644
index d863ebd1806..00000000000
--- a/ydb/library/yql/utils/backtrace/fake_llvm_symbolizer/CMakeLists.txt
+++ /dev/null
@@ -1,19 +0,0 @@
-
-# This file was generated by the build system used internally in the Yandex monorepo.
-# Only simple modifications are allowed (adding source-files to targets, adding simple properties
-# like target_include_directories). These modifications will be ported to original
-# ya.make files by maintainers. Any complex modifications which can't be ported back to the
-# original buildsystem will not be accepted.
-
-
-if (CMAKE_SYSTEM_NAME STREQUAL "Linux" AND CMAKE_SYSTEM_PROCESSOR STREQUAL "x86_64" AND NOT HAVE_CUDA)
- include(CMakeLists.linux-x86_64.txt)
-elseif (CMAKE_SYSTEM_NAME STREQUAL "Linux" AND CMAKE_SYSTEM_PROCESSOR STREQUAL "aarch64" AND NOT HAVE_CUDA)
- include(CMakeLists.linux-aarch64.txt)
-elseif (CMAKE_SYSTEM_NAME STREQUAL "Darwin" AND CMAKE_SYSTEM_PROCESSOR STREQUAL "x86_64")
- include(CMakeLists.darwin-x86_64.txt)
-elseif (CMAKE_SYSTEM_NAME STREQUAL "Darwin" AND CMAKE_SYSTEM_PROCESSOR STREQUAL "arm64")
- include(CMakeLists.darwin-arm64.txt)
-elseif (WIN32 AND CMAKE_SYSTEM_PROCESSOR STREQUAL "AMD64" AND NOT HAVE_CUDA)
- include(CMakeLists.windows-x86_64.txt)
-endif()
diff --git a/ydb/library/yql/utils/backtrace/fake_llvm_symbolizer/CMakeLists.windows-x86_64.txt b/ydb/library/yql/utils/backtrace/fake_llvm_symbolizer/CMakeLists.windows-x86_64.txt
deleted file mode 100644
index 17698b5a8f1..00000000000
--- a/ydb/library/yql/utils/backtrace/fake_llvm_symbolizer/CMakeLists.windows-x86_64.txt
+++ /dev/null
@@ -1,18 +0,0 @@
-
-# This file was generated by the build system used internally in the Yandex monorepo.
-# Only simple modifications are allowed (adding source-files to targets, adding simple properties
-# like target_include_directories). These modifications will be ported to original
-# ya.make files by maintainers. Any complex modifications which can't be ported back to the
-# original buildsystem will not be accepted.
-
-
-
-add_library(utils-backtrace-fake_llvm_symbolizer)
-target_link_libraries(utils-backtrace-fake_llvm_symbolizer PUBLIC
- contrib-libs-cxxsupp
- yutil
- lib-DebugInfo-Symbolize
-)
-target_sources(utils-backtrace-fake_llvm_symbolizer PRIVATE
- ${CMAKE_SOURCE_DIR}/ydb/library/yql/utils/backtrace/fake_llvm_symbolizer/fake_llvm_symbolizer.cpp
-)
diff --git a/ydb/library/yql/utils/backtrace/fake_llvm_symbolizer/fake_llvm_symbolizer.cpp b/ydb/library/yql/utils/backtrace/fake_llvm_symbolizer/fake_llvm_symbolizer.cpp
deleted file mode 100644
index b0eb4a30c0a..00000000000
--- a/ydb/library/yql/utils/backtrace/fake_llvm_symbolizer/fake_llvm_symbolizer.cpp
+++ /dev/null
@@ -1,500 +0,0 @@
-#include "fake_llvm_symbolizer.h"
-
-#include <contrib/libs/llvm12/lib/DebugInfo/Symbolize/SymbolizableObjectFile.h>
-#include <util/string/builder.h>
-#include <llvm/DebugInfo/Symbolize/DIPrinter.h>
-#include <llvm/DebugInfo/Symbolize/SymbolizableModule.h>
-#include <llvm/DebugInfo/DWARF/DWARFContext.h>
-#include <llvm/Object/Binary.h>
-#include <llvm/Object/ObjectFile.h>
-#include <llvm/Object/ELFObjectFile.h>
-#include <llvm/Object/COFF.h>
-#include <llvm/Object/MachO.h>
-#include <llvm/Object/MachOUniversal.h>
-#include <llvm/Demangle/Demangle.h>
-#include <llvm/Support/Error.h>
-#include <llvm/Support/CRC.h>
-#include <llvm/Support/raw_ostream.h>
-#include <algorithm>
-#include <cstdint>
-#include <map>
-#include <memory>
-#include <string>
-#include <sstream>
-#include <utility>
-#include <vector>
-
-namespace NYql {
-namespace NBacktrace {
-namespace {
-
-using ObjectPair = std::pair<const llvm::object::ObjectFile *, const llvm::object::ObjectFile *>;
-std::map<std::string, std::unique_ptr<llvm::symbolize::SymbolizableModule>, std::less<>>
- Modules;
-std::map<std::pair<std::string, std::string>, ObjectPair>
- ObjectPairForPathArch;
-std::map<std::string, llvm::object::OwningBinary<llvm::object::Binary>> BinaryForPath;
-std::map<std::pair<std::string, std::string>, std::unique_ptr<llvm::object::ObjectFile>>
- ObjectForUBPathAndArch;
-
-// Fuctions are from llvm's Symbolize.cpp
-llvm::Expected<llvm::object::ObjectFile *> GetOrCreateObject(const std::string &Path, const std::string &ArchName) {
- llvm::object::Binary *Bin;
- auto Pair = BinaryForPath.emplace(Path, llvm::object::OwningBinary<llvm::object::Binary>());
- if (!Pair.second) {
- Bin = Pair.first->second.getBinary();
- } else {
- llvm::Expected<llvm::object::OwningBinary<llvm::object::Binary>> BinOrErr = llvm::object::createBinary(Path);
- if (!BinOrErr)
- return BinOrErr.takeError();
- Pair.first->second = std::move(BinOrErr.get());
- Bin = Pair.first->second.getBinary();
- }
-
- if (!Bin)
- return static_cast<llvm::object::ObjectFile *>(nullptr);
-
- if (llvm::object::MachOUniversalBinary *UB = llvm::dyn_cast_or_null<llvm::object::MachOUniversalBinary>(Bin)) {
- auto I = ObjectForUBPathAndArch.find(std::make_pair(Path, ArchName));
- if (I != ObjectForUBPathAndArch.end())
- return I->second.get();
-
- llvm::Expected<std::unique_ptr<llvm::object::ObjectFile>> ObjOrErr =
- UB->getMachOObjectForArch(ArchName);
- if (!ObjOrErr) {
- ObjectForUBPathAndArch.emplace(std::make_pair(Path, ArchName),
- std::unique_ptr<llvm::object::ObjectFile>());
- return ObjOrErr.takeError();
- }
- llvm::object::ObjectFile *Res = ObjOrErr->get();
- ObjectForUBPathAndArch.emplace(std::make_pair(Path, ArchName),
- std::move(ObjOrErr.get()));
- return Res;
- }
- if (Bin->isObject()) {
- return llvm::cast<llvm::object::ObjectFile>(Bin);
- }
- return llvm::errorCodeToError(llvm::object::object_error::arch_not_found);
-}
-
-bool CheckFileCRC(llvm::StringRef Path, uint32_t CRCHash) {
- llvm::ErrorOr<std::unique_ptr<llvm::MemoryBuffer>> MB =
- llvm::MemoryBuffer::getFileOrSTDIN(Path);
- if (!MB)
- return false;
- return CRCHash == llvm::crc32(arrayRefFromStringRef(MB.get()->getBuffer()));
-}
-
-bool FindDebugBinary(const std::string &OrigPath, const std::string &DebuglinkName, uint32_t CRCHash, const std::string &FallbackDebugPath, std::string &Result) {
- llvm::SmallString<16> OrigDir(OrigPath);
- llvm::sys::path::remove_filename(OrigDir);
- llvm::SmallString<16> DebugPath = OrigDir;
- // Try relative/path/to/original_binary/debuglink_name
- llvm::sys::path::append(DebugPath, DebuglinkName);
- if (CheckFileCRC(DebugPath, CRCHash)) {
- Result = std::string(DebugPath.str());
- return true;
- }
- // Try relative/path/to/original_binary/.debug/debuglink_name
- DebugPath = OrigDir;
- llvm::sys::path::append(DebugPath, ".debug", DebuglinkName);
- if (CheckFileCRC(DebugPath, CRCHash)) {
- Result = std::string(DebugPath.str());
- return true;
- }
- // Make the path absolute so that lookups will go to
- // "/usr/lib/debug/full/path/to/debug", not
- // "/usr/lib/debug/to/debug"
- llvm::sys::fs::make_absolute(OrigDir);
- if (!FallbackDebugPath.empty()) {
- // Try <FallbackDebugPath>/absolute/path/to/original_binary/debuglink_name
- DebugPath = FallbackDebugPath;
- } else {
- #if defined(__NetBSD__)
- // Try /usr/libdata/debug/absolute/path/to/original_binary/debuglink_name
- DebugPath = "/usr/libdata/debug";
- #else
- // Try /usr/lib/debug/absolute/path/to/original_binary/debuglink_name
- DebugPath = "/usr/lib/debug";
- #endif
- }
- llvm::sys::path::append(DebugPath, llvm::sys::path::relative_path(OrigDir),
- DebuglinkName);
- if (CheckFileCRC(DebugPath, CRCHash)) {
- Result = std::string(DebugPath.str());
- return true;
- }
- return false;
-}
-
-template <typename ELFT>
-llvm::Optional<llvm::ArrayRef<uint8_t>> GetBuildID(const llvm::object::ELFFile<ELFT> &Obj) {
- auto PhdrsOrErr = Obj.program_headers();
- if (!PhdrsOrErr) {
- consumeError(PhdrsOrErr.takeError());
- return {};
- }
- for (const auto &P : *PhdrsOrErr) {
- if (P.p_type != llvm::ELF::PT_NOTE)
- continue;
- llvm::Error Err = llvm::Error::success();
- for (auto N : Obj.notes(P, Err))
- if (N.getType() == llvm::ELF::NT_GNU_BUILD_ID && N.getName() == llvm::ELF::ELF_NOTE_GNU)
- return N.getDesc();
- consumeError(std::move(Err));
- }
- return {};
-}
-
-llvm::Optional<llvm::ArrayRef<uint8_t>> GetBuildID(const llvm::object::ELFObjectFileBase *Obj) {
- llvm::Optional<llvm::ArrayRef<uint8_t>> BuildID;
- if (auto *O = llvm::dyn_cast<llvm::object::ELFObjectFile<llvm::object::ELF32LE>>(Obj))
- BuildID = GetBuildID(O->getELFFile());
- else if (auto *O = llvm::dyn_cast<llvm::object::ELFObjectFile<llvm::object::ELF32BE>>(Obj))
- BuildID = GetBuildID(O->getELFFile());
- else if (auto *O = llvm::dyn_cast<llvm::object::ELFObjectFile<llvm::object::ELF64LE>>(Obj))
- BuildID = GetBuildID(O->getELFFile());
- else if (auto *O = llvm::dyn_cast<llvm::object::ELFObjectFile<llvm::object::ELF64BE>>(Obj))
- BuildID = GetBuildID(O->getELFFile());
- else
- llvm_unreachable("unsupported file format");
- return BuildID;
-}
-
-std::string GetDarwinDWARFResourceForPath(const std::string &Path, const std::string &Basename) {
- llvm::SmallString<16> ResourceName = llvm::StringRef(Path);
- if (llvm::sys::path::extension(Path) != ".dSYM") {
- ResourceName += ".dSYM";
- }
- llvm::sys::path::append(ResourceName, "Contents", "Resources", "DWARF");
- llvm::sys::path::append(ResourceName, Basename);
- return std::string(ResourceName.str());
-}
-
-bool DarwinDsymMatchesBinary(const llvm::object::MachOObjectFile *DbgObj, const llvm::object::MachOObjectFile *Obj) {
- llvm::ArrayRef<uint8_t> dbg_uuid = DbgObj->getUuid();
- llvm::ArrayRef<uint8_t> bin_uuid = Obj->getUuid();
- if (dbg_uuid.empty() || bin_uuid.empty())
- return false;
- return !memcmp(dbg_uuid.data(), bin_uuid.data(), dbg_uuid.size());
-}
-
-llvm::object::ObjectFile* LookUpDsymFile(const std::string &ExePath, const llvm::object::MachOObjectFile *MachExeObj, const std::string &ArchName) {
- // On Darwin we may find DWARF in separate object file in
- // resource directory.
- std::vector<std::string> DsymPaths;
- llvm::StringRef Filename = llvm::sys::path::filename(ExePath);
- DsymPaths.push_back(
- GetDarwinDWARFResourceForPath(ExePath, std::string(Filename)));
- for (const auto &Path : DsymPaths) {
- auto DbgObjOrErr = GetOrCreateObject(Path, ArchName);
- if (!DbgObjOrErr) {
- // Ignore errors, the file might not exist.
- consumeError(DbgObjOrErr.takeError());
- continue;
- }
- llvm::object::ObjectFile *DbgObj = DbgObjOrErr.get();
- if (!DbgObj)
- continue;
- const llvm::object::MachOObjectFile *MachDbgObj = llvm::dyn_cast<const llvm::object::MachOObjectFile>(DbgObj);
- if (!MachDbgObj)
- continue;
- if (DarwinDsymMatchesBinary(MachDbgObj, MachExeObj))
- return DbgObj;
- }
- return nullptr;
-}
-
-bool GetGNUDebuglinkContents(const llvm::object::ObjectFile *Obj, std::string &DebugName, uint32_t &CRCHash) {
- if (!Obj)
- return false;
- for (const llvm::object::SectionRef &Section : Obj->sections()) {
- llvm::StringRef Name;
- if (llvm::Expected<llvm::StringRef> NameOrErr = Section.getName())
- Name = *NameOrErr;
- else
- consumeError(NameOrErr.takeError());
-
- Name = Name.substr(Name.find_first_not_of("._"));
- if (Name == "gnu_debuglink") {
- llvm::Expected<llvm::StringRef> ContentsOrErr = Section.getContents();
- if (!ContentsOrErr) {
- consumeError(ContentsOrErr.takeError());
- return false;
- }
- llvm::DataExtractor DE(*ContentsOrErr, Obj->isLittleEndian(), 0);
- uint64_t Offset = 0;
- if (const char *DebugNameStr = DE.getCStr(&Offset)) {
- // 4-byte align the offset.
- Offset = (Offset + 3) & ~0x3;
- if (DE.isValidOffsetForDataOfSize(Offset, 4)) {
- DebugName = DebugNameStr;
- CRCHash = DE.getU32(&Offset);
- return true;
- }
- }
- break;
- }
- }
- return false;
-}
-
-llvm::object::ObjectFile* LookUpDebuglinkObject(const std::string &Path, const llvm::object::ObjectFile *Obj, const std::string &ArchName) {
- std::string DebuglinkName;
- uint32_t CRCHash;
- std::string DebugBinaryPath;
- if (!GetGNUDebuglinkContents(Obj, DebuglinkName, CRCHash))
- return nullptr;
- if (!FindDebugBinary(Path, DebuglinkName, CRCHash, "", DebugBinaryPath))
- return nullptr;
- auto DbgObjOrErr = GetOrCreateObject(DebugBinaryPath, ArchName);
- if (!DbgObjOrErr) {
- // Ignore errors, the file might not exist.
- consumeError(DbgObjOrErr.takeError());
- return nullptr;
- }
- return DbgObjOrErr.get();
-}
-
-bool FindDebugBinary(const std::vector<std::string> &DebugFileDirectory, const llvm::ArrayRef<uint8_t> BuildID, std::string &Result) {
- auto getDebugPath = [&](llvm::StringRef Directory) {
- llvm::SmallString<128> Path{Directory};
- llvm::sys::path::append(Path, ".build-id",
- llvm::toHex(BuildID[0], /*LowerCase=*/true),
- llvm::toHex(BuildID.slice(1), /*LowerCase=*/true));
- Path += ".debug";
- return Path;
- };
- if (DebugFileDirectory.empty()) {
- llvm::SmallString<128> Path = getDebugPath(
- #if defined(__NetBSD__)
- // Try /usr/libdata/debug/.build-id/../...
- "/usr/libdata/debug"
- #else
- // Try /usr/lib/debug/.build-id/../...
- "/usr/lib/debug"
- #endif
- );
- if (llvm::sys::fs::exists(Path)) {
- Result = std::string(Path.str());
- return true;
- }
- } else {
- for (const auto &Directory : DebugFileDirectory) {
- // Try <debug-file-directory>/.build-id/../...
- llvm::SmallString<128> Path = getDebugPath(Directory);
- if (llvm::sys::fs::exists(Path)) {
- Result = std::string(Path.str());
- return true;
- }
- }
- }
- return false;
-}
-
-llvm::object::ObjectFile* LookUpBuildIDObject(const std::string &Path, const llvm::object::ELFObjectFileBase *Obj, const std::string &ArchName) {
- Y_UNUSED(Path);
- auto BuildID = GetBuildID(Obj);
- if (!BuildID)
- return nullptr;
- if (BuildID->size() < 2)
- return nullptr;
- std::string DebugBinaryPath;
- if (!FindDebugBinary({}, *BuildID, DebugBinaryPath))
- return nullptr;
- auto DbgObjOrErr = GetOrCreateObject(DebugBinaryPath, ArchName);
- if (!DbgObjOrErr) {
- consumeError(DbgObjOrErr.takeError());
- return nullptr;
- }
- return DbgObjOrErr.get();
-}
-
-llvm::Expected<ObjectPair> GetOrCreateObjectPair(const std::string &Path, const std::string &ArchName) {
- auto I = ObjectPairForPathArch.find(std::make_pair(Path, ArchName));
- if (I != ObjectPairForPathArch.end())
- return I->second;
-
- auto ObjOrErr = GetOrCreateObject(Path, ArchName);
- if (!ObjOrErr) {
- ObjectPairForPathArch.emplace(std::make_pair(Path, ArchName),
- ObjectPair(nullptr, nullptr));
- return ObjOrErr.takeError();
- }
-
- llvm::object::ObjectFile *Obj = ObjOrErr.get();
- assert(Obj != nullptr);
- llvm::object::ObjectFile *DbgObj = nullptr;
-
- if (auto MachObj = llvm::dyn_cast<const llvm::object::MachOObjectFile>(Obj))
- DbgObj = LookUpDsymFile(Path, MachObj, ArchName);
- else if (auto ELFObj = llvm::dyn_cast<const llvm::object::ELFObjectFileBase>(Obj))
- DbgObj = LookUpBuildIDObject(Path, ELFObj, ArchName);
- if (!DbgObj)
- DbgObj = LookUpDebuglinkObject(Path, Obj, ArchName);
- if (!DbgObj)
- DbgObj = Obj;
- ObjectPair Res = std::make_pair(Obj, DbgObj);
- ObjectPairForPathArch.emplace(std::make_pair(Path, ArchName), Res);
- return Res;
-}
-
-llvm::Expected<llvm::symbolize::SymbolizableModule *> CreateModuleInfo(const llvm::object::ObjectFile *Obj, std::unique_ptr<llvm::DIContext> Context, llvm::StringRef ModuleName) {
- auto InfoOrErr = llvm::symbolize::SymbolizableObjectFile::create(Obj, std::move(Context), false);
- std::unique_ptr<llvm::symbolize::SymbolizableModule> SymMod;
- if (InfoOrErr)
- SymMod = std::move(*InfoOrErr);
- auto InsertResult = Modules.insert(
- std::make_pair(std::string(ModuleName), std::move(SymMod)));
- assert(InsertResult.second);
- if (!InfoOrErr)
- return InfoOrErr.takeError();
- return InsertResult.first->second.get();
-}
-
-void DoNothing(llvm::Error) {
-};
-
-llvm::Expected<llvm::symbolize::SymbolizableModule*> GetOrCreateModuleInfo(const std::string &ModuleName) {
- auto I = Modules.find(ModuleName);
- if (I != Modules.end())
- return I->second.get();
-
- std::string BinaryName = ModuleName;
- std::string ArchName = ""; // (!) is set to empty
- size_t ColonPos = ModuleName.find_last_of(':');
- // Verify that substring after colon form a valid arch name.
- if (ColonPos != std::string::npos) {
- std::string ArchStr = ModuleName.substr(ColonPos + 1);
- if (llvm::Triple(ArchStr).getArch() != llvm::Triple::UnknownArch) {
- BinaryName = ModuleName.substr(0, ColonPos);
- ArchName = ArchStr;
- }
- }
-
- auto ObjectsOrErr = GetOrCreateObjectPair(BinaryName, ArchName);
- if (!ObjectsOrErr) {
- // Failed to find valid object file.
- Modules.emplace(ModuleName, std::unique_ptr<llvm::symbolize::SymbolizableModule>());
- return ObjectsOrErr.takeError();
- }
-
- ObjectPair Objects = ObjectsOrErr.get();
-
- // Only DWARF available on linux
- std::unique_ptr<llvm::DIContext> Context = llvm::DWARFContext::create(*Objects.second, nullptr, "", DoNothing, DoNothing);
- return CreateModuleInfo(Objects.first, std::move(Context), ModuleName);
-}
-
-llvm::StringRef DemanglePE32ExternCFunc(llvm::StringRef SymbolName) {
- // Remove any '_' or '@' prefix.
- char Front = SymbolName.empty() ? '\0' : SymbolName[0];
- if (Front == '_' || Front == '@')
- SymbolName = SymbolName.drop_front();
-
- // Remove any '@[0-9]+' suffix.
- if (Front != '?') {
- size_t AtPos = SymbolName.rfind('@');
- if (AtPos != llvm::StringRef::npos &&
- all_of(drop_begin(SymbolName, AtPos + 1), llvm::isDigit))
- SymbolName = SymbolName.substr(0, AtPos);
- }
-
- // Remove any ending '@' for vectorcall.
- if (SymbolName.endswith("@"))
- SymbolName = SymbolName.drop_back();
-
- return SymbolName;
-}
-
-std::string DemangleName(const std::string &Name, const llvm::symbolize::SymbolizableModule *DbiModuleDescriptor) {
- // We can spoil names of symbols with C linkage, so use an heuristic
- // approach to check if the name should be demangled.
- if (Name.substr(0, 2) == "_Z") {
- int status = 0;
- char *DemangledName = llvm::itaniumDemangle(Name.c_str(), nullptr, nullptr, &status);
- if (status != 0)
- return Name;
- std::string Result = DemangledName;
- free(DemangledName);
- return Result;
- }
-
- if (!Name.empty() && Name.front() == '?') {
- // Only do MSVC C++ demangling on symbols starting with '?'.
- int status = 0;
- char *DemangledName = microsoftDemangle(
- Name.c_str(), nullptr, nullptr, nullptr, &status,
- llvm::MSDemangleFlags(llvm::MSDF_NoAccessSpecifier | llvm::MSDF_NoCallingConvention |
- llvm::MSDF_NoMemberType | llvm::MSDF_NoReturnType));
- if (status != 0)
- return Name;
- std::string Result = DemangledName;
- free(DemangledName);
- return Result;
- }
-
- if (DbiModuleDescriptor && DbiModuleDescriptor->isWin32Module())
- return std::string(DemanglePE32ExternCFunc(Name));
- return Name;
-}
-
-llvm::Expected<llvm::DILineInfo> SymbolizeCodeCommon(llvm::symbolize::SymbolizableModule *Info, llvm::object::SectionedAddress ModuleOffset) {
- // A null module means an error has already been reported. Return an empty
- // result.
- if (!Info)
- return llvm::DILineInfo();
-
- llvm::DILineInfo LineInfo = Info->symbolizeCode(
- ModuleOffset, llvm::DILineInfoSpecifier(llvm::DILineInfoSpecifier::FileLineInfoKind::AbsoluteFilePath, llvm::DILineInfoSpecifier::FunctionNameKind::LinkageName),
- true);
- LineInfo.FunctionName = DemangleName(LineInfo.FunctionName, Info);
- return LineInfo;
-}
-
-class TRawOStreamProxy: public llvm::raw_ostream {
-public:
- TRawOStreamProxy(std::ostream& out)
- : llvm::raw_ostream(true) // unbuffered
- , Slave_(out)
- {
- }
- void write_impl(const char* ptr, size_t size) override {
- Slave_.write(ptr, size);
- }
- uint64_t current_pos() const override {
- return 0;
- }
- size_t preferred_buffer_size() const override {
- return 0;
- }
-private:
- std::ostream& Slave_;
-};
-
-}
-
-TString SymbolizeAndDumpToString(const std::string &moduleName, llvm::object::SectionedAddress moduleOffset, ui64 offset) {
- llvm::Expected<llvm::symbolize::SymbolizableModule *> InfoOrErr = GetOrCreateModuleInfo(moduleName);
- if (!InfoOrErr)
- return TStringBuilder() << "Can't create module info for '" << moduleName << "'";
- auto resOrErr = SymbolizeCodeCommon(*InfoOrErr, moduleOffset);
- if (resOrErr) {
- auto value = resOrErr.get();
- if (value.FileName == "<invalid>" && offset > 0) {
- value.FileName = moduleName;
- }
-
- std::stringstream ss;
- TRawOStreamProxy stream_proxy(ss);
- llvm::symbolize::DIPrinter printer(stream_proxy, true, true, false);
- printer << value;
- ss.flush();
-
- return ss.str();
- } else {
- return TStringBuilder() << "LLVMSymbolizer: error reading file of module '" << moduleName << "'";
- }
-}
-}
-}
diff --git a/ydb/library/yql/utils/backtrace/fake_llvm_symbolizer/fake_llvm_symbolizer.h b/ydb/library/yql/utils/backtrace/fake_llvm_symbolizer/fake_llvm_symbolizer.h
deleted file mode 100644
index 11925672491..00000000000
--- a/ydb/library/yql/utils/backtrace/fake_llvm_symbolizer/fake_llvm_symbolizer.h
+++ /dev/null
@@ -1,11 +0,0 @@
-#pragma once
-
-#include <util/generic/string.h>
-#include <util/system/types.h>
-#include "llvm/Object/ObjectFile.h"
-
-namespace NYql {
-namespace NBacktrace {
-TString SymbolizeAndDumpToString(const std::string &moduleName, llvm::object::SectionedAddress moduleOffset, ui64 offset);
-}
-}
diff --git a/ydb/library/yql/utils/backtrace/fake_llvm_symbolizer/ya.make b/ydb/library/yql/utils/backtrace/fake_llvm_symbolizer/ya.make
deleted file mode 100644
index b41861e8b2a..00000000000
--- a/ydb/library/yql/utils/backtrace/fake_llvm_symbolizer/ya.make
+++ /dev/null
@@ -1,11 +0,0 @@
-LIBRARY()
-
-SRCS(
- fake_llvm_symbolizer.cpp
-)
-
-PEERDIR(
- contrib/libs/llvm12/lib/DebugInfo/Symbolize
-)
-
-END()
diff --git a/ydb/library/yql/utils/backtrace/symbolize.cpp b/ydb/library/yql/utils/backtrace/symbolize.cpp
index 85706e24f4d..e94830ea12c 100644
--- a/ydb/library/yql/utils/backtrace/symbolize.cpp
+++ b/ydb/library/yql/utils/backtrace/symbolize.cpp
@@ -1,7 +1,7 @@
#include "backtrace.h"
#include "symbolizer.h"
-#include "fake_llvm_symbolizer/fake_llvm_symbolizer.h"
+#include <library/cpp/dwarf_backtrace/backtrace.h>
#include <util/string/split.h>
#include <util/stream/str.h>
@@ -57,9 +57,18 @@ TString Symbolize(const TString& input, const THashMap<TString, TString>& mappin
for (const auto& frame : frames) {
#ifdef _linux_
- llvm::object::SectionedAddress secAddr;
- secAddr.Address = frame.Address - frame.Offset;
- out << NYql::NBacktrace::SymbolizeAndDumpToString(frame.ModulePath, secAddr, frame.Offset) << Endl;
+ std::array<const void*, 1> addrs = { (const void*)frame.Address };
+ auto error = NDwarf::ResolveBacktraceLocked(addrs, [&](const NDwarf::TLineInfo& info) {
+ if (!info.FileName.Empty())
+ out << info.FileName << ":" << info.Line << ":" << info.Col << " ";
+ if (!info.FunctionName.Empty())
+ out << "in " << info.FunctionName << " ";
+ return NDwarf::EResolving::Continue;
+ });
+
+ if (error) {
+ out << "LibBacktrace failed: (" << error->Code << ") " << error->Message;
+ }
#else
out << "StackFrame: " << frame.ModulePath << " " << frame.Address << " " << frame.Offset << Endl;
#endif
diff --git a/ydb/library/yql/utils/backtrace/symbolizer_linux.cpp b/ydb/library/yql/utils/backtrace/symbolizer_linux.cpp
index 1baa6eeb322..428ff65fa49 100644
--- a/ydb/library/yql/utils/backtrace/symbolizer_linux.cpp
+++ b/ydb/library/yql/utils/backtrace/symbolizer_linux.cpp
@@ -1,8 +1,8 @@
#include "symbolizer.h"
-#include "fake_llvm_symbolizer/fake_llvm_symbolizer.h"
#include <library/cpp/deprecated/atomic/atomic.h>
#include <library/cpp/malloc/api/malloc.h>
+#include <library/cpp/dwarf_backtrace/backtrace.h>
#include <util/generic/hash.h>
#include <util/system/execpath.h>
@@ -68,9 +68,23 @@ public:
return TStringBuilder() << "StackFrame: " << modulePath << " " << address << " " << offset << "\n";
}
- llvm::object::SectionedAddress secAddr;
- secAddr.Address = address - offset;
- return NYql::NBacktrace::SymbolizeAndDumpToString(modulePath, secAddr, offset);
+ std::array<const void*, 1> addrs = { (const void*)address };
+ TString output;
+ TStringOutput out(output);
+
+ auto error = NDwarf::ResolveBacktraceLocked(addrs, [&](const NDwarf::TLineInfo& info) {
+ if (!info.FileName.Empty())
+ out << info.FileName << ":" << info.Line << ":" << info.Col << " ";
+ if (!info.FunctionName.Empty())
+ out << "in " << info.FunctionName << " ";
+ return NDwarf::EResolving::Continue;
+ });
+
+ if (error) {
+ out << "LibBacktrace failed: (" << error->Code << ") " << error->Message;
+ }
+
+ return output;
}
private:
diff --git a/ydb/library/yql/utils/backtrace/ya.make b/ydb/library/yql/utils/backtrace/ya.make
index 15836994993..94122aa2484 100644
--- a/ydb/library/yql/utils/backtrace/ya.make
+++ b/ydb/library/yql/utils/backtrace/ya.make
@@ -10,29 +10,21 @@ IF (OS_LINUX AND ARCH_X86_64)
symbolizer_linux.cpp
)
PEERDIR(
- ydb/library/yql/utils/backtrace/fake_llvm_symbolizer
contrib/libs/libunwind
+ library/cpp/dwarf_backtrace
)
ELSE()
SRCS(
symbolizer_dummy.cpp
)
- PEERDIR(
- ydb/library/yql/utils/backtrace/fake_llvm_symbolizer
- )
ENDIF()
PEERDIR(
- contrib/libs/llvm12/lib/DebugInfo/Symbolize
library/cpp/deprecated/atomic
)
END()
-RECURSE(
- fake_llvm_symbolizer
-)
-
RECURSE_FOR_TESTS(
ut
)