回应模式 - No.67821632


No.67821632 - 技术宅


无标题无名氏No.67821632 只看PO

2026-01-08(四)15:20:10 ID:vslNeW2 回应

一个并不是从零开始的 llvm 开发日志

编译器开发什么的真是令人头大|ー` )

之前在博客写了不少开发日志,不过由于更新网站要开电脑跑 awk 脚本,并不是很方便,所以准备在这里开个串做一点简单记录 (`・ω・)

无标题无名氏No.67867477

2026-01-15(四)10:59:08 ID: vslNeW2 (PO主)

今天下午两点有软件所主办的 LLVM Tech Meetup:

https://community.riscv.org/e/m29dgj/

报名+参会免费,主题是 RVV 向量化和RISC-V P 扩展及其 LLVM 支持现状简介,在北京的友友感兴趣可以去看看(

无标题无名氏No.67928268

2026-01-23(五)17:36:21 ID: vslNeW2 (PO主)

/dev/log04

在折腾完内核开发赛(并把剩余参赛队当鱼炸)后进入了摆烂模式,醒着的时候就在 Minecraft 启动,昨天又开始拉电线坐牢,感觉这破游戏玩不下去一点。

期末周计算机网络和概率论的一天速通非常成功,两门一点都没学的课居然都没挂,喜提 3.3,感谢老师不杀之恩 ( ´∀`)

LLVM 这里有一点产出,但不多:

- 修了一个和宏相关的 assertion failure 问题。

- 修了一个 parenthesized functions 的错误 fixits。

- 把之前 Clang-tidy 中 CUDA 相关的文档给合进去了,新的文档可以在这里看:https://clang.llvm.org/extra/clang-tidy/#running-clang-tidy-on-cuda-files

- doc8 配置更新:在 Google 两位工程师 (Florian Mayer 和 Rohan Jacob-Rao) 的清理后,clang-tidy 的 doc8 配置终于不需要各种奇怪的 hack 了,好事。

- 尝试修了下 check_clang_tidy.py,这个 python 脚本居然不支持检查头文件,这个缺失功能就这么放了一年,简直离谱!所以趁有时间就顺手修掉了,不过现在还没有足够的 Reviewer 来审。唉,Reviewing Bandwith.

- 修了一个 21.1.8 下的 False Positive,不过现在还没什么人来审。鬼故事:在修这个 FP 的时候又发现了一个新的 FP:https://clang-tidy.godbolt.org/z/e8eMav36f

- 有一个没有及时合并的修复需要重新拉进 22.x 的分支里,借这个机会学习了一下怎么给 LLVM 的 Commits 做 backport,只需要在评论区输入 /cherry-pick <hash> 就可以了,感觉很方便。

- 每日两到三个 Code Review,有了 Gemini 这个反而成了花力气最少的部分。

这个月其他的也不想干了,剩下时间就继续拉电线了。这辈子彻底有了,哈哈。

无标题无名氏No.68010775

2026-02-04(三)21:45:37 ID: vslNeW2 (PO主)

/dev/log05

做手术前再来💧一篇开发日志,虽然这十天其实也没干什么|ー` )

首先,在卡池里经历了漫长的折磨后,我卸载了拉电线神游。

不打游戏省出来的时间主要在忙着重构博客 <del>抄明日方舟的设计</del>,拼尽全力糊出来一个能跑的玩意: https://broken.life/ (建议用电脑/平板,我前端能力一坨,手机端不知道怎么做适配直接摆了)

然后闲着没事干重新排了一份简历,抱着半玩票的心态投给了 2012,虽然感觉看到我本科都没毕业大概直接就被筛了.. 上次 2012 员工找我聊天的时候问了我年龄,随后直接变成了 "想了解开源社区的项目随时交流",难绷(

实验室的项目目前进展也不太良好,上次和导师开完小会给完方案后就躺了,打算手术后看看怎么实现,寄。

虽然最近疯狂摸鱼,但在 LLVM 里也还是做了一些事情:

- 修了下 bugprone-macro-parentheses 的诊断信息

虽然 clang-tidy 不应该诊断命令行的参数,但这个 check 添加支持很简单,那顺手修了也挺好。

- 修了下 performance-enum-size 对 extern "C" 的一些错误分析,日常改 Matcher..

- 为 readability-non-const-parameter 加了一些 corner case 的支持

- 修了一个有 bug 的 python 脚本,顺带给文档和 list.rst 打了个补丁

之前在 Review 其他 PR 时,在 list.rst 里时不时就能发现一些很奇怪的修改,原先以为是 PR 作者在 Merging 的时候出了问题,后面发现好像并不是。添加 check 的脚本对代码库做了一些不完全正确的假设,导致重新生成内容的时候搞乱了整个排序。

- 给 MLIR 修了一个 arith.select 相关的 crash,这个 PATCH 没什么技术含量

- 修了 clang-tidy 代码库里的 unchecked-optional-access 警告,之前已经遇到过因为这些警告而导致程序崩溃的例子了,故干脆一起修了。

- 每日 3-4 个 PR Review,感觉已经快成 daily routine 了

今天凌晨另一位国内的 Contributor 私信我了一个 RFC:https://discourse.llvm.org/t/rfc-remove-80-column-limit-in-documentation-files/89678,很不幸的是 clang-tidy 文档相关的 CI 是我搓的,那后面还得更进一下这个 RFC 的进展,可能还要改配置,但已有的文档怎么处理就不知道了

以及 GSoC 2026 要开始了,LLVM 相关的 Project 已经可以在 https://discourse.llvm.org/tag/gsoc2026 看到了,GCC 相关的讨论目前似乎还只是在邮件列表里,三月份应该会公开具体信息。

完成项目的话应该能拿几千美刀和一个 Google 发的证书,感兴趣可以看看,不一定要有很强的编译器相关背景,例如:https://discourse.llvm.org/t/gsoc-2026-improving-clang-doc/89662 这个关于文档优化的项目会前端就行。