diff options
author | vvvv <vvvv@ydb.tech> | 2022-09-15 13:53:43 +0300 |
---|---|---|
committer | vvvv <vvvv@ydb.tech> | 2022-09-15 13:53:43 +0300 |
commit | b045f0ef145bd0dcfa83f7977184e5bae77851b3 (patch) | |
tree | 7ae0c0ee0026be9b5f238fc7abc53b36ee2fd84e /library/cpp/cppparser | |
parent | 239edf05410a4716215db2bf9a0027c05b5d8126 (diff) | |
download | ydb-b045f0ef145bd0dcfa83f7977184e5bae77851b3.tar.gz |
support of partial vectorization in WideMap* family
Запрос из теста
SELECT
2*(key+subkey),1ul+key+key+key,subkey+2ul,key
FROM Input
выполняется как
(lambda '($18) (block '(
(let $19 (lambda '($21 $22) (block '(
(let $23 (BlockFunc '"add" $21 $22))
(let $24 (BlockFunc '"add" (AsScalar (Uint64 '1)) $21))
(let $25 (BlockFunc '"add" $24 $21))
(let $26 (BlockFunc '"add" $25 $21))
(let $27 (BlockFunc '"add" $22 (AsScalar (Uint64 '"2"))))
(return $23 $26 $27 $21)
))))
(let $20 (lambda '($28 $29 $30 $31) (* (Int32 '"2") $28) $29 $30 $31))
(return (WideMap (WideFromBlocks (WideMap (WideToBlocks $18) $19)) $20))
)
т.е. умножение не было векторизовано
Diffstat (limited to 'library/cpp/cppparser')
0 files changed, 0 insertions, 0 deletions