mirror of
https://github.com/postgres/postgres.git
synced 2025-10-29 22:49:41 +03:00
Quick adaption of JIT tuple deforming to the fast default patch.
Instead using memset to set tts_isnull, call the new slot_getmissingattrs(). Also fix a bug (= instead of >=) in the code generation. Normally = is correct, but when repeatedly deforming fields not in a tuple (e.g. deform up to natts + 1 and then natts + 2) >= is needed. Discussion: https://postgr.es/m/20180328010053.i2qvsuuusst4lgmc@alap3.anarazel.de
This commit is contained in:
@@ -179,5 +179,6 @@ extern void slot_getsomeattrs(TupleTableSlot *slot, int attnum);
|
||||
extern bool slot_attisnull(TupleTableSlot *slot, int attnum);
|
||||
extern bool slot_getsysattr(TupleTableSlot *slot, int attnum,
|
||||
Datum *value, bool *isnull);
|
||||
extern void slot_getmissingattrs(TupleTableSlot *slot, int startAttNum, int lastAttNum);
|
||||
|
||||
#endif /* TUPTABLE_H */
|
||||
|
||||
@@ -78,6 +78,7 @@ extern LLVMValueRef AttributeTemplate;
|
||||
extern LLVMValueRef FuncStrlen;
|
||||
extern LLVMValueRef FuncVarsizeAny;
|
||||
extern LLVMValueRef FuncSlotGetsomeattrs;
|
||||
extern LLVMValueRef FuncSlotGetmissingattrs;
|
||||
extern LLVMValueRef FuncHeapGetsysattr;
|
||||
extern LLVMValueRef FuncMakeExpandedObjectReadOnlyInternal;
|
||||
extern LLVMValueRef FuncExecEvalArrayRefSubscript;
|
||||
|
||||
Reference in New Issue
Block a user