impala-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Tim Armstrong (Code Review)" <>
Subject [Impala-ASF-CR] IMPALA-3637,IMPALA-3636: refactor codegen constant replacement
Date Thu, 04 Aug 2016 22:09:28 GMT
Tim Armstrong has uploaded a new change for review.

Change subject: IMPALA-3637,IMPALA-3636: refactor codegen constant replacement

IMPALA-3637,IMPALA-3636: refactor codegen constant replacement

Merge the disparate codegen constant replacement mechanisms into a
single general-purpose mechanism that can replace function calls,
or function calls with a constant argument, with constants. This
new mechanism should be more easily extensible to handle further
instances of constant replacement.

Use the new infrastructure to replace CpuInfo::IsSupported() calls
in all codegen'd functions using the new infastructure.

This also provides an immediate benefit that some interpreted code paths
that previously called Expr::GetConstant() will be faster, since they
are now just simple inlinable function calls, instead of going through
more levels of runtime indirection.

We have good coverage of expression and operator codegen through
end-to-end tests. Update the expr-codegen-test unit test to test the new
mechanism along with the CpuInfo::IsSupported() mechanism.

Change-Id: I6ba029ed8589698eb15dbfb0a20dd2a7ea752635
M be/src/codegen/CMakeLists.txt
A be/src/codegen/
A be/src/codegen/
A be/src/codegen/constant-replacement.h
M be/src/codegen/
M be/src/codegen/llvm-codegen.h
M be/src/exec/CMakeLists.txt
A be/src/exec/
A be/src/exec/hash-table-constant-replacer.h
M be/src/exec/
M be/src/exec/hash-table.h
M be/src/exec/
M be/src/exec/
M be/src/exprs/CMakeLists.txt
M be/src/exprs/
M be/src/exprs/
M be/src/exprs/
M be/src/exprs/
D be/src/exprs/
A be/src/exprs/
A be/src/exprs/expr-constant-replacement.h
M be/src/exprs/
M be/src/exprs/expr.h
M be/src/exprs/
M be/src/exprs/
M be/src/runtime/types.h
M be/src/udf/udf-internal.h
M be/src/util/
M be/src/util/cpu-info.h
M testdata/workloads/functional-query/queries/QueryTest/exprs.test
30 files changed, 1,034 insertions(+), 626 deletions(-)

  git pull ssh:// refs/changes/43/3843/1
To view, visit
To unsubscribe, visit

Gerrit-MessageType: newchange
Gerrit-Change-Id: I6ba029ed8589698eb15dbfb0a20dd2a7ea752635
Gerrit-PatchSet: 1
Gerrit-Project: Impala-ASF
Gerrit-Branch: master
Gerrit-Owner: Tim Armstrong <>

View raw message