Alexey Milovidov
58d7d1e451
Resolved some of PVS-Studio warnings
2019-04-22 19:07:09 +03:00
Alexey Milovidov
571bc7065a
Removed unused code related to MemoryTracker
2019-04-06 01:35:56 +03:00
alesapin
55fc095c98
Fix big dates comparison with compile expressions (Date and DateTime are not signed types anymore).
2019-02-11 17:36:54 +03:00
alesapin
a9550c5a43
Update ExpressionJIT.cpp
2019-01-12 10:19:18 +03:00
alesapin
748bcb0a3c
Remove accident changes
2019-01-12 00:18:57 +03:00
alesapin
00200615e8
Trying to remove redundant objects from CompiledExpressionsCache (LLVMFunction), also remove CompiledExpressionsCacheBytes metric because it's not connected with real size
2019-01-12 00:16:49 +03:00
alesapin
6401628dc8
Fix clang-7 werrors
2019-01-10 14:25:59 +03:00
Alexey Milovidov
e33e5150b7
Miscellaneous [#CLICKHOUSE-2]
2019-01-02 09:44:36 +03:00
proller
160ffb2283
Build fixes (clang 7.0.0+) ( #3582 )
2018-11-16 15:22:51 +03:00
alesapin
72ef357a02
Fix typo assignment
2018-10-12 17:52:39 +03:00
alesapin
17150fd688
CLICKHOUSE-4060: Use individual context for each function
2018-10-12 16:03:57 +03:00
Alexey Milovidov
7d6365d139
LLVM compiler: better exception messages [#CLICKHOUSE-2]
2018-10-11 23:31:41 +03:00
Nikolai Kochetov
d526859011
Added cache for low cardinality function result. [#CLICKHOUSE-3904]
2018-09-25 16:48:52 +03:00
alexey-milovidov
c275764647
Merge pull request #3124 from yandex/CLICKHOUSE-3800
...
CLICKHOUSE-3800: Enable compilation to llvm by default
2018-09-17 21:50:45 +03:00
Alexey Milovidov
2963e056ef
Whitespaces [#CLICKHOUSE-3800]
2018-09-17 18:34:43 +03:00
alesapin
d8a2b063dc
CLICKHOUSE-3800: More convinient names for functions, comments and new profile event.
2018-09-14 13:08:38 +03:00
alesapin
fc3153e64c
CLICKHOUSE-3800: Fix rare race condition
2018-09-14 13:08:38 +03:00
alesapin
a3bc82c745
CLICKHOUSE-3800: Fix segfault
2018-09-14 13:08:38 +03:00
Alexey Milovidov
a56413884d
Added clarification [#CLICKHOUSE-3]
2018-09-13 21:45:14 +03:00
alesapin
e815260363
CLICKHOUSE-3800: Improve cache and turn on compilation by default
2018-09-07 23:17:40 +03:00
Alexander Sapin
03174e131d
Merge remote-tracking branch 'upstream/master'
2018-09-06 12:39:42 +03:00
Alexander Sapin
3cbcd23a17
CLICKHOUSE-3800:Add if's for old llvm version
2018-09-06 12:10:40 +03:00
Nikolai Kochetov
f18f6323c8
Fix build.
2018-09-05 13:31:00 +03:00
alesapin
a7bd2b42e8
CLICKHOUSE-3800: Review fixes
2018-09-03 13:14:05 +03:00
alesapin
66eb5402b0
Fix style
2018-08-31 16:25:33 +03:00
alesapin
a3ebbea3a0
Fix style
2018-08-31 16:23:56 +03:00
alesapin
650d15696f
CLICKHOUSE-3800: Add memory comsumption profile_event of compiled expression cache
2018-08-31 15:39:27 +03:00
alesapin
ac6ab62c6f
CLICKHOUSE-3800: Remove use after free of context
2018-08-31 13:27:08 +03:00
alesapin
6e64067a70
CLICKHOUSE-3800: Move cache to context, change hashing algorithm, add drop instruction for compiled expressions cache
2018-08-30 19:31:20 +03:00
alesapin
647446c45e
CLICKHOUSE-3800: More correct compilated function call counter
2018-08-29 23:05:31 +03:00
alesapin
d2a5efb11b
CLICKHOUSE-3800: Add perf test
2018-08-29 20:49:43 +03:00
alesapin
1a85271702
CLICKHOUSE-3800: Add expression cache
2018-08-28 20:06:42 +03:00
Alexey Milovidov
6043ea02de
Style #2913
2018-08-24 08:25:00 +03:00
Nikolai Kochetov
c339313d8b
Fix LowCardinality conversions for defaults.
2018-08-09 13:52:33 +03:00
Nikolai Kochetov
c8457abb1b
Made IFunction::isDeterministic and IFunction::isDeterministicInScopeOfQuery are const. Disabled default implementation with dictionary for not isDeterministicInScopeOfQuery functions.
2018-08-08 14:26:18 +03:00
proller
e1ae5233df
Add // Y_IGNORE tags
2018-06-21 18:24:36 +03:00
Alexey Milovidov
65a08210ac
Merge branch 'llvm-jit' of https://github.com/pyos/ClickHouse into pyos-llvm-jit
2018-05-10 22:09:47 +03:00
pyos
e5ebc24657
Revert the part of bd332b that moved a read after std::move.
2018-05-10 21:19:41 +03:00
pyos
1718e575a7
Bridge between incompatible LLVM APIs
2018-05-10 20:31:24 +03:00
Alexey Milovidov
4d9088d3d4
Merge branch 'llvm-jit' of https://github.com/pyos/ClickHouse into pyos-llvm-jit
2018-05-10 18:23:53 +03:00
Alexey Milovidov
d3b7bafedf
Miscellaneous #2277
2018-05-10 18:22:54 +03:00
pyos
bd332b9171
Allow calling into libc from jitted code.
...
Mostly for intrinsics like memcpy/memset/memmove, which are inserted
during optimization by LLVM itself. (With a null resolver, a compiled
version of something like `Uint64 < 0` would segfault.)
2018-05-10 17:00:32 +03:00
Alexey Milovidov
72ab282bca
Removed hack #2277
2018-05-10 00:03:03 +03:00
pyos
32fd123010
Select an *exact* target machine, not an approximation.
...
Required for enabling advanced features such as AVX and AVX2.
Code mostly copied from LLVM's tools/opt/opt.cpp.
2018-05-07 19:06:13 +03:00
pyos
d4b5c01a1e
Fix addModule check for LLVM < 7
...
It returns `Expected`, so false-y is a failure. (In >= 7 it returns
an `Error`, so truth-y is a failure. Wow, that's confusing.)
2018-05-07 16:04:07 +03:00
pyos
0e09138405
Assume output and one input of LLVMFunction is non-const
2018-05-07 16:03:26 +03:00
Alexey Milovidov
01bbf650f8
Build fixes #2277
2018-05-07 11:59:24 +03:00
Alexey Milovidov
147919928d
Better error checks #2277
2018-05-07 09:49:56 +03:00
Alexey Milovidov
d1b4b5c836
Fixed error; added ProfileEvent #2277
2018-05-07 09:23:18 +03:00
Alexey Milovidov
a687c90100
Allow to link with LLVM if it was compiled without RTTI #2277
2018-05-07 03:00:12 +03:00