阅读 43

swiftc 的一些指令

因为swift前端编译用的是swiftc,所以之前玩occlang指令也不再好用了。所以记录下swiftc的一些指令。

swift文件

func getName() -> String {
    return "dow"
}

let name = getName()
print(name)
复制代码

语法分析生成抽象语法树

swiftc -dump-ast s.swift
复制代码

生成中间层语言

swiftc -emit-sil s.swift
复制代码

llvm中间表示层

swiftc -emit-ir s.swift
复制代码

显示目标文件

swiftc -emit-assembly s.swift
复制代码

生成目标文件并执行

swiftc -o s.o s.swift
复制代码
./s.o
复制代码

参考

Swift的高级中间语言:SIL

iOS ~ 编译 Clang 、swiftc 、LLVM