中文
注册
我要评分
文档获取效率
文档正确性
内容完整性
文档易理解
在线提单
论坛求助
鲲鹏小智

代码迁移—编译宏移植

一份较好的代码通常会基于不同的运行平台实现对应的代码段分支,这样做是为了充分发挥出平台特性的优势,获得最佳的性能。而编译宏就是指引编译器编译和执行当前平台对应分支的路标。

编译宏分为两类,一类是编译器自定义的宏,在编码可直接使用,编译器能够自动识别。另一类是用户自定义宏,这类宏是编码人员自行定义的,通常带有一些平台属性意义。

编译器自定义宏的移植:X86下 __x86_64__或__x86_64分支对应修改为鲲鹏处理器下的__aarch64__。

用户自定义编译宏的移植:X86下的X86__64、HAVE_X86_64可替换为ARM_64、HAVE_AARCH64。

获取当前编译器平台支持的编译宏可通过以下命令查看: 使用gcc -march=x86-64 -dM -E - < /dev/null查看编译器自定义宏(鲲鹏下-march=armv8-a)。