Zig版本
0.11.0-dev.3299 +34865d693
问题
我希望能够看到我的程序的汇编输出,理想情况下,文件名和行号Map到汇编指令,这样我就可以快速推理它们来自哪里。
项目中的文件
build.zig
const std = @import("std");
pub fn build(b: *std.Build.Builder) !void {
// Determine compilation target
const target = b.standardTargetOptions(.{});
// Setup optimisation settings
const optimize = b.standardOptimizeOption(.{});
// Create executable for our example
const exe = b.addExecutable(.{
.name = "app",
.root_source_file = .{ .path = "main.zig" },
.target = target,
.optimize = optimize,
});
// Install the executable into the prefix when invoking "zig build"
b.installArtifact(exe);
}
main.zig
const std = @import("std");
pub fn main() void {
std.debug.print("Hello, {s}!\n", .{"World"});
}
1条答案
按热度按时间snvhrwxg1#
通过将以下内容添加到构建设置来更新build.zig以发出程序集。这将使Zig输出一个“app.s”文件。
据我所知,目前似乎没有办法获得与汇编指令相关的文件名和行号。
完整示例:
汇编输出片段: