Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
Greenplum
Gpdb
提交
63d5fd17
G
Gpdb
项目概览
Greenplum
/
Gpdb
通知
7
Star
1
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
G
Gpdb
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
63d5fd17
编写于
1月 31, 1998
作者:
B
Bruce Momjian
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Inline fmgr_faddr() for speed.
上级
726c3854
变更
2
显示空白变更内容
内联
并排
Showing
2 changed file
with
19 addition
and
15 deletion
+19
-15
src/backend/utils/Gen_fmgrtab.sh.in
src/backend/utils/Gen_fmgrtab.sh.in
+16
-6
src/backend/utils/fmgr/fmgr.c
src/backend/utils/fmgr/fmgr.c
+3
-9
未找到文件。
src/backend/utils/Gen_fmgrtab.sh.in
浏览文件 @
63d5fd17
...
...
@@ -8,7 +8,7 @@
#
#
# IDENTIFICATION
# $Header: /cvsroot/pgsql/src/backend/utils/Attic/Gen_fmgrtab.sh.in,v 1.
6 1998/01/15 19:44:50 pgsql
Exp $
# $Header: /cvsroot/pgsql/src/backend/utils/Attic/Gen_fmgrtab.sh.in,v 1.
7 1998/01/31 05:22:41 momjian
Exp $
#
# NOTES
# Passes any -D options on to cpp prior to generating the list
...
...
@@ -81,7 +81,7 @@ cat > $HFILE <<FuNkYfMgRsTuFf
*
* Copyright (c) 1994, Regents of the University of California
*
*
$Id
: Gen_fmgrtab.sh.in,v 1.
6 1998/01/15 19:44:50 pgsql
Exp $
*
$Id
: Gen_fmgrtab.sh.in,v 1.
7 1998/01/31 05:22:41 momjian
Exp $
*
* NOTES
* ******************************
...
...
@@ -123,7 +123,6 @@ typedef struct {
*/
extern char *fmgr_c(FmgrInfo *finfo, FmgrValues *values, bool *isNull);
extern void fmgr_info(Oid procedureId, FmgrInfo *finfo);
extern func_ptr fmgr_faddr(FmgrInfo *finfo);
extern char *fmgr(Oid procedureId, ... );
extern char *fmgr_ptr(FmgrInfo *finfo, ... );
extern char *fmgr_array_args(Oid procedureId, int nargs,
...
...
@@ -135,7 +134,6 @@ extern char *fmgr_array_args(Oid procedureId, int nargs,
extern func_ptr fmgr_dynamic(Oid procedureId, int *pronargs);
extern void load_file(char *filename);
/*
* For performance reasons, we often want to simply jump through a
* a function pointer (if it's valid, that is). These calls have
...
...
@@ -143,12 +141,24 @@ extern void load_file(char *filename);
* sanity-checking (and so we can track them down more easily when
* we must).
*/
#define fmgr_faddr(finfo)
\
(
\
fmgr_pl_finfo = (finfo),
\
(func_ptr)(finfo)->fn_addr
\
)
#ifdef TRACE_FMGR_PTR
#define FMGR_PTR2(FINFO, ARG1, ARG2)
\
fmgr_ptr(FINFO, 2, ARG1, ARG2)
#else
#define FMGR_PTR2(FINFO, ARG1, ARG2)
\
(((FINFO)->fn_addr) ? (*(fmgr_faddr(FINFO)))(ARG1, ARG2) : fmgr((FINFO)->fn_oid, ARG1, ARG2))
(
\
((FINFO)->fn_addr) ?
\
(*(fmgr_faddr(FINFO)))(ARG1, ARG2)
\
:
\
fmgr((FINFO)->fn_oid, ARG1, ARG2)
\
)
#endif
/*
...
...
@@ -182,7 +192,7 @@ cat > $TABCFILE <<FuNkYfMgRtAbStUfF
*
*
* IDENTIFICATION
*
$Header
: /cvsroot/pgsql/src/backend/utils/Attic/Gen_fmgrtab.sh.in,v 1.
6 1998/01/15 19:44:50 pgsql
Exp $
*
$Header
: /cvsroot/pgsql/src/backend/utils/Attic/Gen_fmgrtab.sh.in,v 1.
7 1998/01/31 05:22:41 momjian
Exp $
*
* NOTES
*
...
...
src/backend/utils/fmgr/fmgr.c
浏览文件 @
63d5fd17
...
...
@@ -7,7 +7,7 @@
*
*
* IDENTIFICATION
* $Header: /cvsroot/pgsql/src/backend/utils/fmgr/fmgr.c,v 1.1
1 1998/01/15 22:31:3
3 momjian Exp $
* $Header: /cvsroot/pgsql/src/backend/utils/fmgr/fmgr.c,v 1.1
2 1998/01/31 05:22:4
3 momjian Exp $
*
*-------------------------------------------------------------------------
*/
...
...
@@ -33,7 +33,8 @@
#include "commands/trigger.h"
static
FmgrInfo
*
fmgr_pl_finfo
;
/* We don't make this static so fmgr_faddr() macros can access it */
FmgrInfo
*
fmgr_pl_finfo
;
static
char
*
fmgr_pl
(
char
*
arg0
,
...)
...
...
@@ -248,13 +249,6 @@ fmgr_info(Oid procedureId, FmgrInfo *finfo)
}
}
func_ptr
fmgr_faddr
(
FmgrInfo
*
finfo
)
{
fmgr_pl_finfo
=
finfo
;
return
finfo
->
fn_addr
;
}
/*
* fmgr - return the value of a function call
*
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录