进程在aix上的ptrgl_64._ptrgl函数中失败 [英] process is failing in ptrgl_64._ptrgl functionon aix

查看:65
本文介绍了进程在aix上的ptrgl_64._ptrgl函数中失败的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我们正在尝试将代码从HPX移植到AIX,但是在运行exe时出现核心转储。

We are trying to port our code from HPX to AIX but getting core dump while running exe.

它无法执行某些未知功能ptrgl_64._ptrgl。

its failing in some unknown function ptrgl_64._ptrgl.

> ptrgl_64._ptrgl() at 0x900000084da0e48
> dfile_Proc(o_record =
> 0x0000000400000004, fileType =
> "^O\377\377\377\377\377TH^O\377\377\377\377\377TQ^O\377\377\377\377\377Ta^O\377\377\377\377\377T}",
> dist_dest = (nil), indicator = '\0',
> i_acCounters = (nil)), line 621 in
> "DISTfile.c" main(i_argc = 4, i_argv =
> 0x0fffffffffff34e8), line 66 in
> "main_EXEC.c"

关于此问题的任何想法??
预先感谢。

any idea about this issue?? Thanks in advance.

推荐答案

这称为指针胶,用于通过PowerPC上的指针调用函数。因为指针可能指向另一个模块/共享对象中的函数,所以需要使用指针粘连为该模块设置正确的RTOC和环境指针,然后跳转到函数入口点。如果函数指针无效,则可能会在指针胶中崩溃,因为实际上是指针被取消引用的地方。

This is called pointer glue, and is used to call functions through a pointer on PowerPC. Because the pointer could point to a function in another module/shared object, the pointer glue is needed to set up the correct RTOC and environment pointer for that module and then jump to the function entry point. If the function pointer was not valid then it will likely crash in the pointer glue, since that is where the pointer is actually dereferenced.

请参见< a href = https://www-01.ibm.com/chips/techlib/techlib.nsf/techdocs/852569B20050FF7785256996007558C6 rel = nofollow noreferrer>《 PowerPC编译器编写指南》 ,如果您对完整的详细信息。

See section A.3.3 of the PowerPC Compiler Writer's Guide if you are interested in the full details.

这篇关于进程在aix上的ptrgl_64._ptrgl函数中失败的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆