开发者
我要评分
获取效率
正确性
完整性
易理解
在线提单
论坛求助

修改源代码

  1. 单击源码迁移报告中“需要迁移的源码文件”右侧的“展开”按钮,如图1所示。
    图1 查看建议源码
  2. 根据迁移报告,确认有两个文件需要修改。检查每个文件的修改建议,并根据建议进行源代码修改。

修改Makefile文件

根据源码迁移报告中Makefile文件的源码处理建议,修改Makefile文件,如图2所示。

图2 Makefile文件源码迁移建议

根据以上建议,Makefile文件中需要给CFLAGS变量添加选项“-march=armv8.2-a -fsigned-char”,同时,还需要删除CFLAGS变量中的“-mpopcnt”和“-msse3”选项。获取并安装鲲鹏系统库(BoostKit-ksl_2.3.1.zip)后,在GLIBS变量中添加“-I /usr/local/ksl/include/ -L /usr/local/ksl/lib/ -lavx2ki”。

该示例以编译器GCC 4.8.5为例,高版本“-march=armv8.2-a -fsigned-char”选项会有不同,请根据提示建议进行修改。

修改后的代码(修改时进行了x86_64分支和aarch64分支的区分处理),如图3所示。

图3 修改后的Makefile

修改ksw.c文件

根据源码迁移报告中Makefile文件的源码处理建议修改ksw.c文件,如图4所示。

图4 ksw.c文件源码迁移建议

根据示例建议,需针对x86和AArch64分别设置头文件包含的分支定义,以确保在代码同时适配x86和AArch64两种架构的情况下完成代码的修改,如下方回显内容所示(以编辑器版本GCC 4.8.5为例)。

1    #if defined(__aarch64__)
2       #include "avx2ki.h"
3    #endif
...
31   #if defined(__x86_64__)
32      #include <emmintrin.h>
33   #endif