mirror of
https://github.com/postgres/postgres.git
synced 2025-08-22 21:53:06 +03:00
Move EEOP_*_SYSVAR evaluation out of line.
This mainly de-duplicates code. As evaluating a system variable isn't the hottest path and the current inline implementation ends up calling out to an external function anyway, this is OK from a performance POV. The main motivation for de-duplicating is the upcoming slot abstraction work, after which there's not guaranteed to be a HeapTuple backing the slot. Author: Andres Freund, Amit Khandekar Discussion: https://postgr.es/m/20181105210039.hh4vvi4vwoq5ba2q@alap3.anarazel.de
This commit is contained in:
@@ -81,9 +81,9 @@ LLVMValueRef FuncStrlen;
|
||||
LLVMValueRef FuncVarsizeAny;
|
||||
LLVMValueRef FuncSlotGetsomeattrs;
|
||||
LLVMValueRef FuncSlotGetmissingattrs;
|
||||
LLVMValueRef FuncHeapGetsysattr;
|
||||
LLVMValueRef FuncMakeExpandedObjectReadOnlyInternal;
|
||||
LLVMValueRef FuncExecEvalArrayRefSubscript;
|
||||
LLVMValueRef FuncExecEvalSysVar;
|
||||
LLVMValueRef FuncExecAggTransReparent;
|
||||
LLVMValueRef FuncExecAggInitGroup;
|
||||
|
||||
@@ -822,9 +822,9 @@ llvm_create_types(void)
|
||||
FuncVarsizeAny = LLVMGetNamedFunction(mod, "varsize_any");
|
||||
FuncSlotGetsomeattrs = LLVMGetNamedFunction(mod, "slot_getsomeattrs");
|
||||
FuncSlotGetmissingattrs = LLVMGetNamedFunction(mod, "slot_getmissingattrs");
|
||||
FuncHeapGetsysattr = LLVMGetNamedFunction(mod, "heap_getsysattr");
|
||||
FuncMakeExpandedObjectReadOnlyInternal = LLVMGetNamedFunction(mod, "MakeExpandedObjectReadOnlyInternal");
|
||||
FuncExecEvalArrayRefSubscript = LLVMGetNamedFunction(mod, "ExecEvalArrayRefSubscript");
|
||||
FuncExecEvalSysVar = LLVMGetNamedFunction(mod, "ExecEvalSysVar");
|
||||
FuncExecAggTransReparent = LLVMGetNamedFunction(mod, "ExecAggTransReparent");
|
||||
FuncExecAggInitGroup = LLVMGetNamedFunction(mod, "ExecAggInitGroup");
|
||||
|
||||
|
Reference in New Issue
Block a user