aboutsummaryrefslogtreecommitdiff
path: root/src/codegen
diff options
context:
space:
mode:
authorJacob Young <jacobly0@users.noreply.github.com>2025-05-27 19:06:50 -0400
committerJacob Young <jacobly0@users.noreply.github.com>2025-05-28 15:10:22 -0400
commit8bacf3e75703b312c345a79e9bd995d186d63b7d (patch)
treed7aea9c62cde920ee4f243ed3132fba179c4ab04 /src/codegen
parent3fd3358f37668e54d214aec57033861ea17fd76d (diff)
downloadzig-8bacf3e75703b312c345a79e9bd995d186d63b7d.tar.gz
zig-8bacf3e75703b312c345a79e9bd995d186d63b7d.zip
x86_64: implement integer `@reduce(.Max)`
Diffstat (limited to 'src/codegen')
-rw-r--r--src/codegen/c/Type.zig15
1 files changed, 15 insertions, 0 deletions
diff --git a/src/codegen/c/Type.zig b/src/codegen/c/Type.zig
index 783e887324..7d3a485e2a 100644
--- a/src/codegen/c/Type.zig
+++ b/src/codegen/c/Type.zig
@@ -1747,6 +1747,21 @@ pub const Pool = struct {
};
return pool.fromFields(allocator, .@"struct", &fields, kind);
},
+ .vector_2_i32_type => {
+ const vector_ctype = try pool.getVector(allocator, .{
+ .elem_ctype = .i32,
+ .len = 2,
+ });
+ if (!kind.isParameter()) return vector_ctype;
+ var fields = [_]Info.Field{
+ .{
+ .name = .{ .index = .array },
+ .ctype = vector_ctype,
+ .alignas = AlignAs.fromAbiAlignment(Type.i32.abiAlignment(zcu)),
+ },
+ };
+ return pool.fromFields(allocator, .@"struct", &fields, kind);
+ },
.vector_4_i32_type => {
const vector_ctype = try pool.getVector(allocator, .{
.elem_ctype = .i32,