Gopls:支持 Go *.s 汇编文件
Gopls 为 Go 汇编文件提供了基本的 LSP 操作支持。
Go 汇编文件使用 .s
作为文件扩展名。LSP 客户端需要配置才能将 .s
文件识别为 Go 汇编文件,因为此文件扩展名也用于其他语言的汇编文件。一个好的判断依据是,如果一个名为 *.s
的文件属于一个包含至少一个 *.go
文件的目录,那么该 .s
文件就是 Go 汇编文件,其对应的语言服务器就是 gopls。
目前仅支持定义 (textDocument/definition
) 请求。例如,在 GOROOT/src/runtime/asm.s 文件中的 sigpanic
符号上发出定义请求
JMP ·sigpanic<ABIInternal>(SB)
将返回 GOROOT/src/runtime/signal_go.go 中函数声明的位置
//go:linkname sigpanic
func sigpanic() {
另请参阅 https://golang.ac.cn/issue/71754,该问题跟踪 Go 汇编文件中 LSP 功能的开发情况。
本文档的源代码可以在 golang.org/x/tools/gopls/doc 下找到。