Pull Request已成功合入, 合并人@openeuler-ci-bot
(感谢 huang-xiaoquan 的贡献)Welcome To openEuler Community
Hey @huang-xiaoquan , thanks for your contribution to the community.
Bot Usage Manual
I'm the Bot here serving you. You can find the instructions on how to interact with me at Here . That means you can comment below every pull request or issue to trigger Bot Commands.
Contact Guide
If you have any questions, please contact the SIG: sig-golang ,
and any of the maintainers: @genedna, @jing-rui ,
and any of the committers: @fuowang, @wd-gitcode .


门禁正在运行, 您可以通过以下链接查看实时门禁检查结果.
若您对门禁结果含义不清晰或者遇到问题不知如何解决,可参考门禁指导手册
门禁入口及编码规范检查: multiarch/openeuler/trigger/golang/63/console


建议标题和commit信息修改一下,以Module: xxx的格式,可以参考这个提交 https://gitcode.com/openeuler/golang/pull/57


/ai review


🔵 Low Priority
goexperiment.Flags.ForceInline 在 src 目录下全代码搜索无任何引用。功能完全通过 base.Debug.ForceInline(debug.go)控制。该字段为死代码,可能源于不完整的移植。


🟠 High Priority
runtime 包中仅存在 deductAssistCredit,不存在 deductAssistCredit2。该条目永不匹配。
同一段代码其他问题
forceInlineMap 中 runtime.mallocgc1 和 mallocgc2 不存在:runtime 包中不存在 mallocgc1 和 mallocgc2 函数,仅有 mallocgc。这两个条目永不会匹配任何函数。


🟠 High Priority
Go 1.24.6 运行时中不存在 heapBitsSetType 函数。相关功能已重构为 heapSetTypeNoHeader / heapSetTypeSmallHeader / heapSetTypeLarge。该条目永不会匹配任何函数,导致此强制内联目标失效。
同一段代码其他问题
forceInlineMap 中 runtime.writeHeapBits.flush 和 .write 不存在:运行时中不存在 writeHeapBits 类型。writeHeapBitsSmall 是 *mspan 的方法,而非独立类型。flush 和 write 方法均不存在。这两个条目永不会匹配。缩进不一致:使用空格代替制表符:第 182-183 行使用空格缩进,而 Go 惯用制表符。第 183 行还包含尾随空格。不影响编译但违反 Go 代码风格。


门禁正在运行, 您可以通过以下链接查看实时门禁检查结果.
若您对门禁结果含义不清晰或者遇到问题不知如何解决,可参考门禁指导手册
门禁入口及编码规范检查: multiarch/openeuler/trigger/golang/67/console


/lgtm
/approve


Summary
Adds a Kunpeng-targeted forceinline pass for
runtime.mallocgc(and selected hot paths), gated by-gcflags='all=-d=forceinline=1'.Usage
Verification (Kunpeng arm64 + SVE2, NUMA node 2)
./make.bash+./run.bash(numactl -N 2 -m 2)--- FAILcountGO_GCFLAGS=-d=forceinline=1Both phases printed
ALL TESTS PASSED. The default-off run guarantees this PR introduces no regression to the standard test suite when the gate is closed.BenchmarkMalloc(runtime, GOMAXPROCS=1, 6 runs of-benchtime=1s, realbenchstat)All 5 sub-benchmarks regress significantly in the favorable direction (p ≤ 0.009).