Skip to content

Commit 58b5963

Browse files
committed
llvm: Set target-abi module flag.
LLVM is increasingly making use of this module flag when present.
1 parent 0a7146b commit 58b5963

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
@@ -1107,14 +1107,24 @@ pub const Object = struct {
11071107
}
11081108

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

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

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

0 commit comments

Comments
 (0)