如何解决避免警告:在RUNNING_ON_VALGRIND上使用PGI'忽略了“ cc”垃圾箱?
我们收到警告类型
"/var/lib/buildbot/slaves/athor-linux-pgi-c-nompi/petsc/src/sys/objects/pinit.c
",line 1493: warning: "cc" clobber ignored
if (!(RUNNING_ON_VALGRIND)) {
使用NVIDIA / PGI C编译器的最新社区版本进行编译时。
我们希望将所有警告标记都编译为打开,因此,如果可能的话,不要关闭警告标记。
RUNNING_ON_VALGRIND在valgrind.h中定义为最终成为
的用途#define __SPECIAL_INSTRUCTION_PREAMBLE \
"roll $3,%%edi ; roll $13,%%edi\n\t" \
"roll $29,%%edi ; roll $19,%%edi\n\t"
#define VALGRIND_DO_CLIENT_REQUEST_EXPR( \
_zzq_default,_zzq_request,\
_zzq_arg1,_zzq_arg2,_zzq_arg3,_zzq_arg4,_zzq_arg5) \
__extension__ \
({volatile unsigned int _zzq_args[6]; \
volatile unsigned int _zzq_result; \
_zzq_args[0] = (unsigned int)(_zzq_request); \
_zzq_args[1] = (unsigned int)(_zzq_arg1); \
_zzq_args[2] = (unsigned int)(_zzq_arg2); \
_zzq_args[3] = (unsigned int)(_zzq_arg3); \
_zzq_args[4] = (unsigned int)(_zzq_arg4); \
_zzq_args[5] = (unsigned int)(_zzq_arg5); \
__asm__ volatile(__SPECIAL_INSTRUCTION_PREAMBLE \
/* %EDX = client_request ( %EAX ) */ \
"xchgl %%ebx,%%ebx" \
: "=d" (_zzq_result) \
: "a" (&_zzq_args[0]),"0" (_zzq_default) \
: "cc","memory" \
); \
_zzq_result; \
})
有什么方法可以避免产生破坏性消息吗?
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。