aboutsummaryrefslogtreecommitdiff
path: root/lib/std/target.zig
diff options
context:
space:
mode:
Diffstat (limited to 'lib/std/target.zig')
-rw-r--r--lib/std/target.zig11
1 files changed, 9 insertions, 2 deletions
diff --git a/lib/std/target.zig b/lib/std/target.zig
index 3fd5cd5f94..faebe665ab 100644
--- a/lib/std/target.zig
+++ b/lib/std/target.zig
@@ -664,8 +664,15 @@ pub const Target = struct {
return @ptrCast(*const [byte_count]u8, &set.ints);
}
- pub fn eql(set: Set, other: Set) bool {
- return mem.eql(usize, &set.ints, &other.ints);
+ pub fn eql(set: Set, other_set: Set) bool {
+ return mem.eql(usize, &set.ints, &other_set.ints);
+ }
+
+ pub fn isSuperSetOf(set: Set, other_set: Set) bool {
+ const V = std.meta.Vector(usize_count, usize);
+ const set_v: V = set.ints;
+ const other_v: V = other_set.ints;
+ return @reduce(.And, (set_v & other_v) == other_v);
}
};