0002-Minor-refactor-JIT-deform-or-not.patch
application/octet-stream
Filename: 0002-Minor-refactor-JIT-deform-or-not.patch
Type: application/octet-stream
Part: 1
Patch
Format: format-patch
Series: patch 0002
Subject: Minor refactor JIT deform or not
| File | + | − |
|---|---|---|
| src/backend/jit/llvm/llvmjit_expr.c | 5 | 10 |
From 5df004bb985b9c58187bc7656b5f571402d6b622 Mon Sep 17 00:00:00 2001
From: soumyadeep2007 <sochakraborty@pivotal.io>
Date: Tue, 17 Sep 2019 21:44:26 -0700
Subject: [PATCH 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 e159255627..468bf2f7e6 100644
--- a/src/backend/jit/llvm/llvmjit_expr.c
+++ b/src/backend/jit/llvm/llvmjit_expr.c
@@ -275,7 +275,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)
@@ -323,30 +323,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