Add special case fast-paths for strict functions
Daniel Gustafsson <dgustafsson@postgresql.org>
Add special case fast-paths for strict functions Many STRICT function calls will have one or two arguments, in which case we can speed up checking for NULL input by avoiding setting up a loop over the arguments. This adds EEOP_FUNCEXPR_STRICT_1 and the corresponding EEOP_FUNCEXPR_STRICT_2 for functions with one and two arguments respectively. Author: Andres Freund <andres@anarazel.de> Co-authored-by: Daniel Gustafsson <daniel@yesql.se> Reviewed-by: Andreas Karlsson <andreas@proxel.se> Discussion: https://postgr.es/m/415721CE-7D2E-4B74-B5D9-1950083BA03E@yesql.se Discussion: https://postgr.es/m/20191023163849.sosqbfs5yenocez3@alap3.anarazel.de
Files
| Path | Change | +/− |
|---|---|---|
| src/backend/executor/execExpr.c | modified | +12 −1 |
| src/backend/executor/execExprInterp.c | modified | +73 −1 |
| src/backend/jit/llvm/llvmjit_expr.c | modified | +6 −1 |
| src/include/executor/execExpr.h | modified | +5 −2 |
Discussion
- Special-case executor expression steps for common combinations 16 messages · 2023-10-12 → 2025-03-12
- WIP: expression evaluation improvements 25 messages · 2019-10-23 → 2021-11-05