Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit1a4be10

Browse files
committed
Convert PageAddItem into a macro to save a few cycles.
Nowadays this is just a backwards-compatibility wrapper aroundPageAddItemExtended, so let's avoid the extra level of function call.In addition, because pretty much all callers are passing constantsfor the two bool arguments, compilers will be able to constant-foldthe conversion to a flags bitmask.Discussion: <552.1473445163@sss.pgh.pa.us>
1 parentb1328d7 commit1a4be10

File tree

2 files changed

+5
-22
lines changed

2 files changed

+5
-22
lines changed

‎src/backend/storage/page/bufpage.c

Lines changed: 0 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -338,26 +338,6 @@ PageAddItemExtended(Page page,
338338
returnoffsetNumber;
339339
}
340340

341-
/*
342-
*PageAddItem
343-
*
344-
*Add an item to a page. Return value is offset at which it was
345-
*inserted, or InvalidOffsetNumber if the item is not inserted for
346-
*any reason.
347-
*
348-
*Passing the 'overwrite' and 'is_heap' parameters as true causes the
349-
*PAI_OVERWRITE and PAI_IS_HEAP flags to be set, respectively.
350-
*
351-
*!!! EREPORT(ERROR) IS DISALLOWED HERE !!!
352-
*/
353-
OffsetNumber
354-
PageAddItem(Pagepage,Itemitem,Sizesize,OffsetNumberoffsetNumber,
355-
booloverwrite,boolis_heap)
356-
{
357-
returnPageAddItemExtended(page,item,size,offsetNumber,
358-
overwrite ?PAI_OVERWRITE :0 |
359-
is_heap ?PAI_IS_HEAP :0);
360-
}
361341

362342
/*
363343
* PageGetTempPage

‎src/include/storage/bufpage.h

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -410,10 +410,13 @@ do { \
410410
#definePAI_OVERWRITE(1 << 0)
411411
#definePAI_IS_HEAP(1 << 1)
412412

413+
#definePageAddItem(page,item,size,offsetNumber,overwrite,is_heap) \
414+
PageAddItemExtended(page, item, size, offsetNumber, \
415+
((overwrite) ? PAI_OVERWRITE : 0) | \
416+
((is_heap) ? PAI_IS_HEAP : 0))
417+
413418
externvoidPageInit(Pagepage,SizepageSize,SizespecialSize);
414419
externboolPageIsVerified(Pagepage,BlockNumberblkno);
415-
externOffsetNumberPageAddItem(Pagepage,Itemitem,Sizesize,
416-
OffsetNumberoffsetNumber,booloverwrite,boolis_heap);
417420
externOffsetNumberPageAddItemExtended(Pagepage,Itemitem,Sizesize,
418421
OffsetNumberoffsetNumber,intflags);
419422
externPagePageGetTempPage(Pagepage);

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp