aboutsummaryrefslogtreecommitdiff
path: root/test/link/macho
diff options
context:
space:
mode:
authorJakub Konka <kubkon@jakubkonka.com>2022-06-22 00:49:20 +0200
committerJakub Konka <kubkon@jakubkonka.com>2022-06-22 00:49:22 +0200
commitb5601a2da60df2f8f2bc6ac1ef287d4733a47df2 (patch)
tree6c73dbbb4ec63423a2982b545cddd41b69c5ea75 /test/link/macho
parent3bb4d65b2f8d7cbaf1586b85909c7e45f6b5eec2 (diff)
downloadzig-b5601a2da60df2f8f2bc6ac1ef287d4733a47df2.tar.gz
zig-b5601a2da60df2f8f2bc6ac1ef287d4733a47df2.zip
link-tests: extract values into variables
We can then collect multiple variables (currently assumed always in global scope) and run a comparison with some very basic arithmetic on the values.
Diffstat (limited to 'test/link/macho')
-rw-r--r--test/link/macho/entry/build.zig11
1 files changed, 10 insertions, 1 deletions
diff --git a/test/link/macho/entry/build.zig b/test/link/macho/entry/build.zig
index 24037ba8eb..e8c0901b20 100644
--- a/test/link/macho/entry/build.zig
+++ b/test/link/macho/entry/build.zig
@@ -14,8 +14,17 @@ pub fn build(b: *Builder) void {
exe.entry_symbol_name = "_non_main";
const check_exe = exe.checkMachO();
+
+ check_exe.check("segname __TEXT");
+ check_exe.checkNextExtract("vmaddr {vmaddr}");
+
check_exe.check("cmd MAIN");
- check_exe.checkNext("entryoff {x}");
+ check_exe.checkNextExtract("entryoff {entryoff}");
+
+ check_exe.checkInSymtab();
+ check_exe.checkNextExtract("_non_main {n_value}");
+
+ check_exe.checkCompare("{vmaddr entryoff +}", .{ .varr = "n_value" });
test_step.dependOn(&check_exe.step);