> On Oct 14, 2025, at 19:22, David Rowley <[email protected]> wrote:
>
> What makes you think making them inline would make the performance the
> same as before? The previous functions were not inlined, and I've not
> made any changes that should affect the compiler's ability to choose
> to inline these functions or not.
Ah… You are right. The old code:
static int
pathkeys_useful_for_ordering(PlannerInfo *root, List *pathkeys)
{
int n_common_pathkeys;
(void) pathkeys_count_contained_in(root->sort_pathkeys, pathkeys,
&n_common_pathkeys);
return n_common_pathkeys;
}
Your patch’s code:
static int
count_common_leading_pathkeys_ordered(List *keys1, List *keys2)
{
int ncommon;
(void) pathkeys_count_contained_in(keys1, keys2, &ncommon);
return ncommon;
}
They both call pathkeys_count_contained_in(), you are NOT adding an extra
wrapper. So, I withdraw the “inline” comment.
Best regards,
--
Chao Li (Evan)
HighGo Software Co., Ltd.
https://www.highgo.com/