aboutsummaryrefslogtreecommitdiff
path: root/src/codegen.zig
diff options
context:
space:
mode:
authorjoachimschmidt557 <joachim.schmidt557@outlook.com>2021-01-03 16:56:47 +0100
committerAndrew Kelley <andrew@ziglang.org>2021-01-06 15:53:10 -0800
commit480d6182ad543ea9e2d7cf0897f6fad7cbefc572 (patch)
tree94103992dbca47181142ceb10d69bcbaf54c3bf9 /src/codegen.zig
parent5afd6204e8e67020659010a17dbb4dffa1cc45ad (diff)
downloadzig-480d6182ad543ea9e2d7cf0897f6fad7cbefc572.tar.gz
zig-480d6182ad543ea9e2d7cf0897f6fad7cbefc572.zip
stage2 ARM: fix offsets in exitlude jump relocations
Diffstat (limited to 'src/codegen.zig')
-rw-r--r--src/codegen.zig4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/codegen.zig b/src/codegen.zig
index c2537a1ca0..981f88abc3 100644
--- a/src/codegen.zig
+++ b/src/codegen.zig
@@ -612,8 +612,8 @@ fn Function(comptime arch: std.Target.Cpu.Arch) type {
// jump
self.code.items.len -= 4;
} else for (self.exitlude_jump_relocs.items) |jmp_reloc| {
- const amt = self.code.items.len - (jmp_reloc + 4);
- if (amt == 0) {
+ const amt = @intCast(i32, self.code.items.len) - @intCast(i32, jmp_reloc + 8);
+ if (amt == -4) {
// This return is at the end of the
// code block. We can't just delete
// the space because there may be