【小记录】arm64下的原子加
发布时间:2020-12-14 00:19:16 所属栏目:Linux 来源:网络整理
导读:1.代码中使用atomic_add aarch64下面并没有任何关于atomic的头文件 编译出现错误: /Users/ahfu/code/android/android-ndk-r14b/toolchains/llvm/prebuilt/darwin-x86_64/bin/clang++ ....../..//thread_util.cpp:92:7: error: use of undeclared identifier
1.代码中使用atomic_add
/Users/ahfu/code/android/android-ndk-r14b/toolchains/llvm/prebuilt/darwin-x86_64/bin/clang++ .... ../..//thread_util.cpp:92:7: error: use of undeclared identifier 'atomic_add' atomic_add(&(obj->m_start_idx),1); 2.怀疑是clang的问题,尝试换gcc编译Application.mk 中加上一行: /Users/ahfu/code/android/android-ndk-r14b/toolchains/aarch64-linux-android-4.9/prebuilt/darwin-x86_64/bin/aarch64-linux-android-g++ ... ../..//thread_util.cpp:92:40: error: 'atomic_add' was not declared in this scope atomic_add(&(obj->m_start_idx),1); 3. 最后想起来,atomic变成了gcc内置指令了于是把 atomic_add更换为 __sync_fetch_and_add(&(obj->m_start_idx),1); 问题解决。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |