From 9a9390fe591929b3b8cb07ff6abc8eb672877a33 Mon Sep 17 00:00:00 2001 From: Amit Langote Date: Tue, 18 Jun 2024 14:09:38 +0900 Subject: [PATCH v1] SQL/JSON: Remove src/backend/jit changes for testing --- src/backend/jit/llvm/llvmjit_expr.c | 108 --------------------------- src/backend/jit/llvm/llvmjit_types.c | 3 - 2 files changed, 111 deletions(-) diff --git a/src/backend/jit/llvm/llvmjit_expr.c b/src/backend/jit/llvm/llvmjit_expr.c index 9e0efd2668..2a7d84f046 100644 --- a/src/backend/jit/llvm/llvmjit_expr.c +++ b/src/backend/jit/llvm/llvmjit_expr.c @@ -1930,114 +1930,6 @@ llvm_compile_expr(ExprState *state) LLVMBuildBr(b, opblocks[opno + 1]); break; - case EEOP_JSONEXPR_PATH: - { - JsonExprState *jsestate = op->d.jsonexpr.jsestate; - LLVMValueRef v_ret; - - /* - * Call ExecEvalJsonExprPath(). It returns the address of - * the step to perform next. - */ - v_ret = build_EvalXFunc(b, mod, "ExecEvalJsonExprPath", - v_state, op, v_econtext); - - /* - * Build a switch to map the return value (v_ret above), - * which is a runtime value of the step address to perform - * next, to either jump_empty, jump_error, - * jump_eval_coercion, or jump_end. - */ - if (jsestate->jump_empty >= 0 || - jsestate->jump_error >= 0 || - jsestate->jump_eval_coercion >= 0) - { - LLVMValueRef v_jump_empty; - LLVMValueRef v_jump_error; - LLVMValueRef v_jump_coercion; - LLVMValueRef v_switch; - LLVMBasicBlockRef b_done, - b_empty, - b_error, - b_coercion; - - b_empty = - l_bb_before_v(opblocks[opno + 1], - "op.%d.jsonexpr_empty", opno); - b_error = - l_bb_before_v(opblocks[opno + 1], - "op.%d.jsonexpr_error", opno); - b_coercion = - l_bb_before_v(opblocks[opno + 1], - "op.%d.jsonexpr_coercion", opno); - b_done = - l_bb_before_v(opblocks[opno + 1], - "op.%d.jsonexpr_done", opno); - - v_switch = LLVMBuildSwitch(b, - v_ret, - b_done, - 3); - /* Returned jsestate->jump_empty? */ - if (jsestate->jump_empty >= 0) - { - v_jump_empty = l_int32_const(lc, jsestate->jump_empty); - LLVMAddCase(v_switch, v_jump_empty, b_empty); - } - /* ON EMPTY code */ - LLVMPositionBuilderAtEnd(b, b_empty); - if (jsestate->jump_empty >= 0) - LLVMBuildBr(b, opblocks[jsestate->jump_empty]); - else - LLVMBuildUnreachable(b); - - /* Returned jsestate->jump_error? */ - if (jsestate->jump_error >= 0) - { - v_jump_error = l_int32_const(lc, jsestate->jump_error); - LLVMAddCase(v_switch, v_jump_error, b_error); - } - /* ON ERROR code */ - LLVMPositionBuilderAtEnd(b, b_error); - if (jsestate->jump_error >= 0) - LLVMBuildBr(b, opblocks[jsestate->jump_error]); - else - LLVMBuildUnreachable(b); - - /* Returned jsestate->jump_eval_coercion? */ - if (jsestate->jump_eval_coercion >= 0) - { - v_jump_coercion = l_int32_const(lc, jsestate->jump_eval_coercion); - LLVMAddCase(v_switch, v_jump_coercion, b_coercion); - } - /* coercion_expr code */ - LLVMPositionBuilderAtEnd(b, b_coercion); - if (jsestate->jump_eval_coercion >= 0) - LLVMBuildBr(b, opblocks[jsestate->jump_eval_coercion]); - else - LLVMBuildUnreachable(b); - - LLVMPositionBuilderAtEnd(b, b_done); - } - - LLVMBuildBr(b, opblocks[jsestate->jump_end]); - break; - } - - case EEOP_JSONEXPR_COERCION: - build_EvalXFunc(b, mod, "ExecEvalJsonCoercion", - v_state, op, v_econtext); - - LLVMBuildBr(b, opblocks[opno + 1]); - break; - - case EEOP_JSONEXPR_COERCION_FINISH: - build_EvalXFunc(b, mod, "ExecEvalJsonCoercionFinish", - v_state, op); - - LLVMBuildBr(b, opblocks[opno + 1]); - break; - case EEOP_AGGREF: { LLVMValueRef v_aggno; diff --git a/src/backend/jit/llvm/llvmjit_types.c b/src/backend/jit/llvm/llvmjit_types.c index f93c383fd5..7d7aeee1f2 100644 --- a/src/backend/jit/llvm/llvmjit_types.c +++ b/src/backend/jit/llvm/llvmjit_types.c @@ -173,9 +173,6 @@ void *referenced_functions[] = ExecEvalXmlExpr, ExecEvalJsonConstructor, ExecEvalJsonIsPredicate, - ExecEvalJsonCoercion, - ExecEvalJsonCoercionFinish, - ExecEvalJsonExprPath, MakeExpandedObjectReadOnlyInternal, slot_getmissingattrs, slot_getsomeattrs_int, -- 2.43.0