Skip to content

Commit 38fd697

Browse files
committed
llvm: Set target-abi module flag.
LLVM is increasingly making use of this module flag when present.
1 parent 87af9f8 commit 38fd697

File tree

1 file changed

+11
-1
lines changed

1 file changed

+11
-1
lines changed

src/codegen/llvm.zig

+11-1
Original file line numberDiff line numberDiff line change
@@ -1108,14 +1108,24 @@ pub const Object = struct {
11081108
}
11091109

11101110
{
1111-
var module_flags = try std.ArrayList(Builder.Metadata).initCapacity(o.gpa, 7);
1111+
var module_flags = try std.ArrayList(Builder.Metadata).initCapacity(o.gpa, 8);
11121112
defer module_flags.deinit();
11131113

11141114
const behavior_error = try o.builder.metadataConstant(try o.builder.intConst(.i32, 1));
11151115
const behavior_warning = try o.builder.metadataConstant(try o.builder.intConst(.i32, 2));
11161116
const behavior_max = try o.builder.metadataConstant(try o.builder.intConst(.i32, 7));
11171117
const behavior_min = try o.builder.metadataConstant(try o.builder.intConst(.i32, 8));
11181118

1119+
if (target_util.llvmMachineAbi(comp.root_mod.resolved_target.result)) |abi| {
1120+
module_flags.appendAssumeCapacity(try o.builder.metadataModuleFlag(
1121+
behavior_error,
1122+
try o.builder.metadataString("target-abi"),
1123+
try o.builder.metadataConstant(
1124+
try o.builder.stringConst(try o.builder.string(abi)),
1125+
),
1126+
));
1127+
}
1128+
11191129
const pic_level = target_util.picLevel(comp.root_mod.resolved_target.result);
11201130
if (comp.root_mod.pic) {
11211131
module_flags.appendAssumeCapacity(try o.builder.metadataModuleFlag(

0 commit comments

Comments
 (0)