From c1171743e2600ce38c1531e0ce3c0429d2f59b71 Mon Sep 17 00:00:00 2001 From: soumyadeep2007 Date: Tue, 17 Sep 2019 21:44:26 -0700 Subject: [PATCH v2 2/2] Minor refactor JIT deform or not --- src/backend/jit/llvm/llvmjit_expr.c | 15 +++++---------- 1 file changed, 5 insertions(+), 10 deletions(-) diff --git a/src/backend/jit/llvm/llvmjit_expr.c b/src/backend/jit/llvm/llvmjit_expr.c index 52f20fe787..6910460822 100644 --- a/src/backend/jit/llvm/llvmjit_expr.c +++ b/src/backend/jit/llvm/llvmjit_expr.c @@ -277,7 +277,7 @@ llvm_compile_expr(ExprState *state) LLVMValueRef v_slot; LLVMBasicBlockRef b_fetch; LLVMValueRef v_nvalid; - LLVMValueRef l_jit_deform = NULL; + LLVMValueRef deform_function = NULL; const TupleTableSlotOps *tts_ops = NULL; if (op->d.fetch.known_desc) @@ -327,30 +327,25 @@ llvm_compile_expr(ExprState *state) */ if (tts_ops && desc && (context->base.flags & PGJIT_DEFORM)) { - l_jit_deform = + deform_function = slot_compile_deform(context, desc, tts_ops, op->d.fetch.last_var); - } - - if (l_jit_deform) - { LLVMValueRef params[1]; - params[0] = v_slot; - - LLVMBuildCall(b, l_jit_deform, + LLVMBuildCall(b, deform_function, params, lengthof(params), ""); } else { + deform_function = llvm_get_decl(mod, FuncSlotGetsomeattrsInt); LLVMValueRef params[2]; params[0] = v_slot; params[1] = l_int32_const(op->d.fetch.last_var); LLVMBuildCall(b, - llvm_get_decl(mod, FuncSlotGetsomeattrsInt), + deform_function, params, lengthof(params), ""); } -- 2.23.0