aboutsummaryrefslogtreecommitdiff
path: root/src/link
diff options
context:
space:
mode:
authorDavid Rubin <daviru007@icloud.com>2024-05-05 19:41:23 -0700
committerDavid Rubin <daviru007@icloud.com>2024-06-13 02:21:38 -0700
commit381a1043eb53971b9fe5bde088211d04e63dfd58 (patch)
tree2b3d06a7206f4d30ec64c099ebce70ee46547f78 /src/link
parent6603a9c26cda297e9c0baaa48e2fb263de60484d (diff)
downloadzig-381a1043eb53971b9fe5bde088211d04e63dfd58.tar.gz
zig-381a1043eb53971b9fe5bde088211d04e63dfd58.zip
ZigObject: enforce min function alignement on riscv
Diffstat (limited to 'src/link')
-rw-r--r--src/link/Elf/ZigObject.zig5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/link/Elf/ZigObject.zig b/src/link/Elf/ZigObject.zig
index b27601b420..451c363f56 100644
--- a/src/link/Elf/ZigObject.zig
+++ b/src/link/Elf/ZigObject.zig
@@ -906,7 +906,9 @@ fn updateDeclCode(
log.debug("updateDeclCode {}{*}", .{ decl_name.fmt(&mod.intern_pool), decl });
- const required_alignment = decl.getAlignment(mod);
+ const required_alignment = decl.getAlignment(mod).max(
+ target_util.minFunctionAlignment(mod.getTarget()),
+ );
const sym = elf_file.symbol(sym_index);
const esym = &self.local_esyms.items(.elf_sym)[sym.esym_index];
@@ -1634,6 +1636,7 @@ const log = std.log.scoped(.link);
const mem = std.mem;
const relocation = @import("relocation.zig");
const trace = @import("../../tracy.zig").trace;
+const target_util = @import("../../target.zig");
const std = @import("std");
const Air = @import("../../Air.zig");