一、版本信息
R6.2.1版本是在R6.0.0版本基础上进行升级,加入对Ingenic Mxu3(Simd512)向量的支持。该版本采用的c库是glibc2.38,为了修复y2038问题,编译出的程序只能运行在linux 5.10版本内核。本次发布包如下:
mips-xburst2-linux-toolchain-r6.2.1.tar.bz2
二、工具链版本信息表
表1 - 工具链版本信息对照表 | ||||
工具链版本 | Release5.1.9-GCC7.2.0-Default | Release6.0.0-GCC12.1.0-Glibc2.33 | Release6.2.1-GCC12.1.0-Glibc2.38 | |
库版本 | glibc | 2.29 | 2.33 | 2.38 |
uclibc | 0.9.33.2 | / | / | |
newlibc | / | / | / | |
工具版本 | gcc | 7.2.0 | 12.1.0 | 12.1.0 |
binutils | 2.27 | 2.39 | 2.39 | |
gdb | 7.11.50 | 10.1 | 10.1 | |
GCC OBJDUMP AS 添加的选项 | gcc | -mmsa -mno-msa -mmxa -mno-mxa -mmxu -mno-mxu -mmxu2 -mno-mxu2 -mmxu3 -mno-mxu3 -mmxu3.1 -mno-mxu3.1 | -mmsa -mno-msa -mmxa -mno-mxa | -mmsa -mno-msa -mmxa -mno-mxa -mmxu3 -mno-mxu3 |
objdump | -Mmxa -Mmxu -Mmxu2 -Mmxu3 -Mmxu3.1 | -Mmxa | -Mmxa -Mxu3 -Mxu3.1 | |
as | -mmsa -mmxa -mmxu -mmxu2 -mmxu3 -mmxu3.1 | -mmsa -mmxa | -mmxa -mxu3 -mxu3.1 |
表2 - 工具链适配表 | ||
工具链版本 | Release6.2.1-GCC12.1.0-Glibc2.38 | |
库版本 | glibc | 2.38 |
uclibc | / | |
newlibc | / | |
工具版本 | gcc | 12.1.0 |
binutils | 2.39 | |
gdb | 10.1 | |
适用芯片 | X2000(MSA)、T40、 A1、T41、x2500 |
表3 - Spec2000-train (t40-1.2ghz)(双核单进程) 性能测试表 | |||
type | name | gcc7.2.0-glibc2.29-O2 (单位:s) | gcc12.1.0-glibc2.38-O2 (单位:s) |
INT | 164.gzip | 43.5 | 45.8 |
175.vpr | 46.5 | 37.7 | |
176.gcc | 4.24 | 4.01 | |
181.mcf | 55.9 | 55.8 | |
186.crafty | 28.9 | 26.8 | |
197.parser | 11.9 | 10.9 | |
252.eon | 18.9 | 11.3 | |
253.perlbmk | 80.3 | 70.2 | |
254.gap | 7.41 | 7.14 | |
255.vortex | 16.8 | 16.2 | |
256.bzip2 | 45.6 | 45.2 | |
300.twolf | 18.6 | 18.8 | |
FP | 168.wupwise | X | X |
171.swim | 41.8 | 34.2 | |
172.mgrid | 47.6 | 19.7 | |
173.applu | 36.7 | 20.4 | |
177.mesa | 77.7 | 56.3 | |
178.galgel | 82.1 | 29.0 | |
179.art | 35.2 | 22.7 | |
183.equake | 77.0 | 42.7 | |
187.facerec | 57.2 | 33.7 | |
188.ammp | 115 | 93.0 | |
189.lucas | 99.6 | 57.2 | |
191.fma3d | 472 | 308 | |
200.sixtrack | 211 | 129 | |
301.apsi | X | X |
三、工具链主要支持功能
1.GCC
支持:Golang 语言编译器;
支持:选项-mmxa;MSA 和 MXA(君正自主研发的SIMD128指令)指令;
支持:选项-mmxa;MSA 和 MXA(君正自主研发的SIMD128指令)指令的intrinsic函数;
支持:选项-mmxu3;MXU3(君正自主研发的SIMD512指令)指令;
支持:选项-mmxu3;MXU3(君正自主研发的SIMD512指令)指令的intrinsic函数;
支持:选项-mmxu3.1;MXU3.1(君正自主研发的SIMD512指令)指令;
支持:选项-mmxu3.1;MXU3.1(君正自主研发的SIMD512指令)指令的intrinsic函数;
支持:Sanitizer检测工具;
2.Binutils:
支持:选项-mmsa;MSA 和MXA 指令;
支持:选项-mmxu3;MXU3指令;
支持:选项-mmxu3.1;MXU3.1指令;
3.Glibc 2.38:
解决Y2038时间问题,使用方法请参考附件《mips Y2038-safe GCC工具链使用说明》。
四、获取工具链
温馨提醒:工具链是按不同的运行环境、目标环境、目标芯片分类打包
工具链中名字带elf编译出的程序用在裸机上运行
工具链中名字带linux编译出的程序用在linux系统上运行
下载工具链之前请认真查看对应信息,选择适合自己使用的工具链
外网下载地址:
(Ingenic Linux-Release6.2.1-Default_xburst2_mxu3_glibc2.38 build at 2023.10-20 10:13:19)工具链
适用于x86_64(64位)host PC: