aboutsummaryrefslogtreecommitdiff
path: root/src/InternPool.zig
diff options
context:
space:
mode:
authorAlex Rønne Petersen <alex@alexrp.com>2025-10-18 16:59:05 +0200
committerAlex Rønne Petersen <alex@alexrp.com>2025-10-19 22:27:19 +0200
commitdbf9c7b548a56653c9267dbb615d7119974ecca5 (patch)
tree91593852dcb3aaf381f64e25be289beb6370f305 /src/InternPool.zig
parent49eea79ec20b319ee2aa89bcbfd481111b5caa27 (diff)
downloadzig-dbf9c7b548a56653c9267dbb615d7119974ecca5.tar.gz
zig-dbf9c7b548a56653c9267dbb615d7119974ecca5.zip
compiler: add support for arc_interrupt calling convention
Only for use with the C backend at the moment.
Diffstat (limited to 'src/InternPool.zig')
-rw-r--r--src/InternPool.zig9
1 files changed, 9 insertions, 0 deletions
diff --git a/src/InternPool.zig b/src/InternPool.zig
index 17fafe320e..445245fbe9 100644
--- a/src/InternPool.zig
+++ b/src/InternPool.zig
@@ -12950,6 +12950,11 @@ const PackedCallingConvention = packed struct(u18) {
.incoming_stack_alignment = .fromByteUnits(pl.incoming_stack_alignment orelse 0),
.extra = pl.register_params,
},
+ std.builtin.CallingConvention.ArcInterruptOptions => .{
+ .tag = tag,
+ .incoming_stack_alignment = .fromByteUnits(pl.incoming_stack_alignment orelse 0),
+ .extra = @intFromEnum(pl.type),
+ },
std.builtin.CallingConvention.ArmInterruptOptions => .{
.tag = tag,
.incoming_stack_alignment = .fromByteUnits(pl.incoming_stack_alignment orelse 0),
@@ -12984,6 +12989,10 @@ const PackedCallingConvention = packed struct(u18) {
.incoming_stack_alignment = cc.incoming_stack_alignment.toByteUnits(),
.register_params = @intCast(cc.extra),
},
+ std.builtin.CallingConvention.ArcInterruptOptions => .{
+ .incoming_stack_alignment = cc.incoming_stack_alignment.toByteUnits(),
+ .type = @enumFromInt(cc.extra),
+ },
std.builtin.CallingConvention.ArmInterruptOptions => .{
.incoming_stack_alignment = cc.incoming_stack_alignment.toByteUnits(),
.type = @enumFromInt(cc.extra),