aboutsummaryrefslogtreecommitdiff
path: root/src/InternPool.zig
diff options
context:
space:
mode:
authorAndrew Kelley <andrew@ziglang.org>2025-05-18 14:36:33 -0400
committerGitHub <noreply@github.com>2025-05-18 14:36:33 -0400
commitb77e6013422a6e7066a14dbe82e8512636ba13d2 (patch)
tree0ce64ba78449b0cfdee7d926fb1f3c35ad364e7f /src/InternPool.zig
parent74a3ae492797b1b2cf1936f0c91560585efdf6c6 (diff)
parenta4eabd39794014c871670937155c94e11fce991b (diff)
downloadzig-b77e6013422a6e7066a14dbe82e8512636ba13d2.tar.gz
zig-b77e6013422a6e7066a14dbe82e8512636ba13d2.zip
Merge pull request #23834 from jacobly0/x86_64-rewrite
x86_64: finish rewriting scalar overflow and saturate operations
Diffstat (limited to 'src/InternPool.zig')
-rw-r--r--src/InternPool.zig20
1 files changed, 20 insertions, 0 deletions
diff --git a/src/InternPool.zig b/src/InternPool.zig
index 195ebfedd6..d1fd17633f 100644
--- a/src/InternPool.zig
+++ b/src/InternPool.zig
@@ -4572,6 +4572,7 @@ pub const Index = enum(u32) {
slice_const_u8_type,
slice_const_u8_sentinel_0_type,
+ vector_8_i8_type,
vector_16_i8_type,
vector_32_i8_type,
vector_1_u8_type,
@@ -4580,8 +4581,10 @@ pub const Index = enum(u32) {
vector_8_u8_type,
vector_16_u8_type,
vector_32_u8_type,
+ vector_4_i16_type,
vector_8_i16_type,
vector_16_i16_type,
+ vector_4_u16_type,
vector_8_u16_type,
vector_16_u16_type,
vector_4_i32_type,
@@ -4592,6 +4595,7 @@ pub const Index = enum(u32) {
vector_4_i64_type,
vector_2_u64_type,
vector_4_u64_type,
+ vector_2_u128_type,
vector_4_f16_type,
vector_8_f16_type,
vector_2_f32_type,
@@ -5090,6 +5094,8 @@ pub const static_keys = [_]Key{
},
} },
+ // @Vector(8, i8)
+ .{ .vector_type = .{ .len = 8, .child = .i8_type } },
// @Vector(16, i8)
.{ .vector_type = .{ .len = 16, .child = .i8_type } },
// @Vector(32, i8)
@@ -5106,10 +5112,14 @@ pub const static_keys = [_]Key{
.{ .vector_type = .{ .len = 16, .child = .u8_type } },
// @Vector(32, u8)
.{ .vector_type = .{ .len = 32, .child = .u8_type } },
+ // @Vector(4, i16)
+ .{ .vector_type = .{ .len = 4, .child = .i16_type } },
// @Vector(8, i16)
.{ .vector_type = .{ .len = 8, .child = .i16_type } },
// @Vector(16, i16)
.{ .vector_type = .{ .len = 16, .child = .i16_type } },
+ // @Vector(4, u16)
+ .{ .vector_type = .{ .len = 4, .child = .u16_type } },
// @Vector(8, u16)
.{ .vector_type = .{ .len = 8, .child = .u16_type } },
// @Vector(16, u16)
@@ -5130,6 +5140,8 @@ pub const static_keys = [_]Key{
.{ .vector_type = .{ .len = 2, .child = .u64_type } },
// @Vector(8, u64)
.{ .vector_type = .{ .len = 4, .child = .u64_type } },
+ // @Vector(2, u128)
+ .{ .vector_type = .{ .len = 2, .child = .u128_type } },
// @Vector(4, f16)
.{ .vector_type = .{ .len = 4, .child = .f16_type } },
// @Vector(8, f16)
@@ -11777,6 +11789,7 @@ pub fn typeOf(ip: *const InternPool, index: Index) Index {
.single_const_pointer_to_comptime_int_type,
.slice_const_u8_type,
.slice_const_u8_sentinel_0_type,
+ .vector_8_i8_type,
.vector_16_i8_type,
.vector_32_i8_type,
.vector_1_u8_type,
@@ -11785,8 +11798,10 @@ pub fn typeOf(ip: *const InternPool, index: Index) Index {
.vector_8_u8_type,
.vector_16_u8_type,
.vector_32_u8_type,
+ .vector_4_i16_type,
.vector_8_i16_type,
.vector_16_i16_type,
+ .vector_4_u16_type,
.vector_8_u16_type,
.vector_16_u16_type,
.vector_4_i32_type,
@@ -11797,6 +11812,7 @@ pub fn typeOf(ip: *const InternPool, index: Index) Index {
.vector_4_i64_type,
.vector_2_u64_type,
.vector_4_u64_type,
+ .vector_2_u128_type,
.vector_4_f16_type,
.vector_8_f16_type,
.vector_2_f32_type,
@@ -12121,6 +12137,7 @@ pub fn zigTypeTag(ip: *const InternPool, index: Index) std.builtin.TypeId {
.slice_const_u8_sentinel_0_type,
=> .pointer,
+ .vector_8_i8_type,
.vector_16_i8_type,
.vector_32_i8_type,
.vector_1_u8_type,
@@ -12129,8 +12146,10 @@ pub fn zigTypeTag(ip: *const InternPool, index: Index) std.builtin.TypeId {
.vector_8_u8_type,
.vector_16_u8_type,
.vector_32_u8_type,
+ .vector_4_i16_type,
.vector_8_i16_type,
.vector_16_i16_type,
+ .vector_4_u16_type,
.vector_8_u16_type,
.vector_16_u16_type,
.vector_4_i32_type,
@@ -12141,6 +12160,7 @@ pub fn zigTypeTag(ip: *const InternPool, index: Index) std.builtin.TypeId {
.vector_4_i64_type,
.vector_2_u64_type,
.vector_4_u64_type,
+ .vector_2_u128_type,
.vector_4_f16_type,
.vector_8_f16_type,
.vector_2_f32_type,