每周一龙:第 31 期
每周一都为大家报道 LoongArch 社区最前线的第一手新鲜资讯! 上周的进展主要有 Linux 和工具链。 详情点进来看!
如无特别说明,文中提及的日期、时间都为北京时间(UTC+8)。
本期周报的实际发稿时间是周二晚间,因为周一是元旦假期。新年快乐 🎉!
先「马」再看
本栏目的内容具有一定延续性,将持续追踪报道 LoongArch 领域的重要或长期项目(坑)。
Linux
Xi Ruoyao 查明并修复了龙架构上 Linux 一直以来的偶现问题: 创建新进程时,新进程可能继承到不干净的 FCSR(浮点控制状态寄存器)内容,导致后续做浮点操作时迟早发生非预期行为甚至崩溃。 此 bug 是从 MIPS 内核带来的遗产。由于 MIPS 的 FCSR 初始化需要考虑程序的执行域(personality),Xi Ruoyao 不知道怎么修, 所以只能报告了该问题, 等待 MIPS 相关维护者处理。
xen0n 修复了使用最新
binutils、gcc 构建内核时 modpost
会崩溃的问题。
工具链
binutils
由常佳琛同学操刀的,周报第 27 期提到的 LoongArch TLS LE relaxation 特性的 binutils 部分,成功进入主线了。 让我们祝贺 :ta: 加入上游贡献者的行列 🎉!
GCC
Xi Ruoyao 修复了 xen0n 报告的 bug: XWayland 等软件中存在个别内含大量浮点比较操作的函数,编译这些函数时 gcc 会崩溃。
Xi Ruoyao 还允许了利用
{,x}vf{min,max}
四种指令来向量化循环中的取最大/最小值操作。LoongArch 的这四种指令设计上就符合 IEEE 754-2008 语义,
因而可用。
周报第 30 期提到的 Xi Ruoyao 当时「正在调整」的补丁,现已完成改进工作,进入主线了。
由 Lulu Cheng 开发的,上一节中提到的 TLS LE relaxation 特性的 gcc 部分, 也进入主线了。
LLVM
yjijd 按照 LoongArch psABI v2.30,修复了先前会用向量寄存器传递向量参数的问题。
wangleiat 修复了一系列 SIMD 代码生成上的错误:
Go 团队的 abner-chenc 和 Xiaolin Zhao 来 LLVM 上游串门了::ta: 们给 TSan
增加了 Go loong64
支持。
杂闻播报
Slackwareloong 维护者 shipujin 说:Slackware 中文社区在 Slackwareloong LTS 1.0 系统下, 成功验证了构建、运行 KDE Plasma 6 Beta 2 版本桌面环境。 后面会把构建好的相关软件包发布到 Slackwareloong 下的 KDE6 testing 仓库。 感谢 shipujin 提供新闻线索!
社区整活:儿:
本栏目接受任何网友的投稿,只要内容与 LoongArch 有关,并可以为读者带来价值, 无论严肃贡献(整的大活:儿:)或是博君一笑都一概欢迎!
LoongArch 非官方开源社区(LA UOSC)版主杜比发起了 FreeBSD 移植项目,工作进度放在了 Gitee 上。 无尘(yu shan wei)同学也单独维护了补丁集合。 感谢 Haowu Ge 在群聊中投递新闻线索!
张贴栏
本栏目可供张贴公益性质的各种信息。
- 友情扩散:安同开源社区(AOSC)的龙架构移植主线化工作「合龙」仍在如火如荼进行中, 此工作完成后龙架构将升格为 AOSC OS 的 Tier 1 架构。 欢迎同学们试用、反馈,也欢迎有志之士一同加入(沟通渠道详见 AOSC 网站相关栏目)。
- 本周报持续接受网友投稿。欢迎来上游坐坐!