Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
bingbingbingbing
mono
提交
4f588961
M
mono
项目概览
bingbingbingbing
/
mono
与 Fork 源项目一致
从无法访问的项目Fork
通知
35
Star
0
Fork
1
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
M
mono
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
4f588961
编写于
9月 27, 2010
作者:
Z
Zoltan Varga
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Mov the jit map generation code from tramp-x86.c to mini-trampolines.c, add amd64 support.
上级
61da08a4
变更
4
隐藏空白更改
内联
并排
Showing
4 changed file
with
25 addition
and
22 deletion
+25
-22
mono/mini/mini-amd64.c
mono/mini/mini-amd64.c
+12
-0
mono/mini/mini-trampolines.c
mono/mini/mini-trampolines.c
+10
-0
mono/mini/tramp-amd64.c
mono/mini/tramp-amd64.c
+3
-0
mono/mini/tramp-x86.c
mono/mini/tramp-x86.c
+0
-22
未找到文件。
mono/mini/mini-amd64.c
浏览文件 @
4f588961
...
...
@@ -7044,6 +7044,18 @@ get_delegate_invoke_impl (gboolean has_target, guint32 param_count, guint32 *cod
if
(
code_len
)
*
code_len
=
code
-
start
;
if
(
mono_jit_map_is_enabled
())
{
char
*
buff
;
if
(
has_target
)
buff
=
(
char
*
)
"delegate_invoke_has_target"
;
else
buff
=
g_strdup_printf
(
"delegate_invoke_no_target_%d"
,
param_count
);
mono_emit_jit_tramp
(
start
,
code
-
start
,
buff
);
if
(
!
has_target
)
g_free
(
buff
);
}
return
start
;
}
...
...
mono/mini/mini-trampolines.c
浏览文件 @
4f588961
...
...
@@ -1079,6 +1079,8 @@ create_trampoline_code (MonoTrampolineType tramp_type)
code
=
mono_arch_create_generic_trampoline
(
tramp_type
,
&
info
,
FALSE
);
if
(
info
)
{
mono_save_trampoline_xdebug_info
(
info
);
if
(
mono_jit_map_is_enabled
())
mono_emit_jit_tramp
(
info
->
code
,
info
->
code_size
,
info
->
name
);
mono_tramp_info_free
(
info
);
}
...
...
@@ -1205,6 +1207,8 @@ mono_create_generic_class_init_trampoline (void)
if
(
info
)
{
mono_save_trampoline_xdebug_info
(
info
);
if
(
mono_jit_map_is_enabled
())
mono_emit_jit_tramp
(
info
->
code
,
info
->
code_size
,
info
->
name
);
mono_tramp_info_free
(
info
);
}
}
...
...
@@ -1383,6 +1387,8 @@ mono_create_rgctx_lazy_fetch_trampoline (guint32 offset)
tramp
=
mono_arch_create_rgctx_lazy_fetch_trampoline
(
offset
,
&
info
,
FALSE
);
if
(
info
)
{
mono_save_trampoline_xdebug_info
(
info
);
if
(
mono_jit_map_is_enabled
())
mono_emit_jit_tramp
(
info
->
code
,
info
->
code_size
,
info
->
name
);
mono_tramp_info_free
(
info
);
}
ptr
=
mono_create_ftnptr
(
mono_get_root_domain
(),
tramp
);
...
...
@@ -1426,6 +1432,8 @@ mono_create_monitor_enter_trampoline (void)
code
=
mono_arch_create_monitor_enter_trampoline
(
&
info
,
FALSE
);
if
(
info
)
{
mono_save_trampoline_xdebug_info
(
info
);
if
(
mono_jit_map_is_enabled
())
mono_emit_jit_tramp
(
info
->
code
,
info
->
code_size
,
info
->
name
);
mono_tramp_info_free
(
info
);
}
}
...
...
@@ -1458,6 +1466,8 @@ mono_create_monitor_exit_trampoline (void)
code
=
mono_arch_create_monitor_exit_trampoline
(
&
info
,
FALSE
);
if
(
info
)
{
mono_save_trampoline_xdebug_info
(
info
);
if
(
mono_jit_map_is_enabled
())
mono_emit_jit_tramp
(
info
->
code
,
info
->
code_size
,
info
->
name
);
mono_tramp_info_free
(
info
);
}
}
...
...
mono/mini/tramp-amd64.c
浏览文件 @
4f588961
...
...
@@ -610,6 +610,9 @@ mono_arch_get_nullified_class_init_trampoline (MonoTrampInfo **info)
if
(
info
)
*
info
=
mono_tramp_info_create
(
g_strdup_printf
(
"nullified_class_init_trampoline"
),
buf
,
code
-
buf
,
NULL
,
NULL
);
if
(
mono_jit_map_is_enabled
())
mono_emit_jit_tramp
(
buf
,
code
-
buf
,
"nullified_class_init_trampoline"
);
return
buf
;
}
...
...
mono/mini/tramp-x86.c
浏览文件 @
4f588961
...
...
@@ -509,13 +509,6 @@ mono_arch_create_generic_trampoline (MonoTrampolineType tramp_type, MonoTrampInf
nullified_class_init_trampoline
=
mono_arch_get_nullified_class_init_trampoline
(
NULL
);
}
if
(
mono_jit_map_is_enabled
())
{
char
*
buff
;
buff
=
mono_get_generic_trampoline_name
(
tramp_type
);
mono_emit_jit_tramp
(
buf
,
code
-
buf
,
buff
);
g_free
(
buff
);
}
return
buf
;
}
...
...
@@ -659,12 +652,6 @@ mono_arch_create_rgctx_lazy_fetch_trampoline (guint32 slot, MonoTrampInfo **info
if
(
info
)
*
info
=
mono_tramp_info_create
(
mono_get_rgctx_fetch_trampoline_name
(
slot
),
buf
,
code
-
buf
,
ji
,
unwind_ops
);
if
(
mono_jit_map_is_enabled
())
{
char
*
buff
=
mono_get_rgctx_fetch_trampoline_name
(
slot
);
mono_emit_jit_tramp
(
buf
,
code
-
buf
,
buff
);
g_free
(
buff
);
}
return
buf
;
}
...
...
@@ -719,9 +706,6 @@ mono_arch_create_generic_class_init_trampoline (MonoTrampInfo **info, gboolean a
if
(
info
)
*
info
=
mono_tramp_info_create
(
g_strdup_printf
(
"generic_class_init_trampoline"
),
buf
,
code
-
buf
,
ji
,
unwind_ops
);
if
(
mono_jit_map_is_enabled
())
mono_emit_jit_tramp
(
buf
,
code
-
buf
,
"generic_class_init_trampoline"
);
return
buf
;
}
...
...
@@ -854,9 +838,6 @@ mono_arch_create_monitor_enter_trampoline (MonoTrampInfo **info, gboolean aot)
if
(
info
)
*
info
=
mono_tramp_info_create
(
g_strdup_printf
(
"monitor_enter_trampoline"
),
buf
,
code
-
buf
,
ji
,
unwind_ops
);
if
(
mono_jit_map_is_enabled
())
mono_emit_jit_tramp
(
buf
,
code
-
buf
,
"monitor_enter_trampoline"
);
return
buf
;
}
...
...
@@ -956,9 +937,6 @@ mono_arch_create_monitor_exit_trampoline (MonoTrampInfo **info, gboolean aot)
if
(
info
)
*
info
=
mono_tramp_info_create
(
g_strdup_printf
(
"monitor_exit_trampoline"
),
buf
,
code
-
buf
,
ji
,
unwind_ops
);
if
(
mono_jit_map_is_enabled
())
mono_emit_jit_tramp
(
buf
,
code
-
buf
,
"monitor_exit_trampoline"
);
return
buf
;
}
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录